当前位置: 首页 > news >正文

Bulletproofs++

1. 引言

前序博客:

  • Bulletproofs: Short Proofs for Confidential Transactions and More学习笔记
  • Bulletproofs 代码解析
  • Bulletproofs+: Shorter Proofs for Privacy-Enhanced Distributed Ledger学习笔记
  • Bulletproofs+ 代码解析

Liam Eagen 2022年3月论文《Bulletproofs++》。
开源代码实现见:

  • https://github.com/sanket1729/rust-bulletproofs-pp(Rust)

Bulletproofs++ 在 Bulletproofs 和 Bulletproofs+ 的基础上,实现了:

  • 1)新的range proof:具有更短的proof size的同时,具有更短的witness length。

    • 1.1)将(weighted)inner product协议修改为可证明norm relation——即self inner product,与此同时,仅需要对该vector commit一次。
    • 1.2)借助norm relation argument,构建了a binary digit range proof,其witness length仅为 Bulletproofs和Bulletproofs+ 的一半。
    • 1.3)借鉴由BG12论文派生的logarithmic permutation argument,以及本文的norm argument,构建了一组具有任意bases的range proof方案。
      • 1.3.1)对于64 bit range proof:采用16个十六进制数字,reciprocal range proofs中包含10个曲线点和3个标量,其proof size对应Curve25519为416字节,对应SECP256k1为418字节。
        该proof size比Bulletproofs+ 小约27%,比Bulletproofs小约38%。
      • 1.3.2)witness length与Verification Complexity成比例,缩小了约6倍,随着range number的增加,可缩小约8倍。
  • 2)新的confidential transaction协议:支持多种currency类型。
    使用permutation argument构建了支持多种currency类型的 zero knowledge confidential transaction protocol:

    • 采用one multiplication per input and per output,并支持多方证明,从而大大改进基于ring signature以及Bulletproof所构建的confidential transactions。

具体range proof证明性能对比为:
在这里插入图片描述
range proof验证性能对比为:
在这里插入图片描述
不同range proof的proof size对比为:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

相关文章:

Bulletproofs++

1. 引言 前序博客: Bulletproofs: Short Proofs for Confidential Transactions and More学习笔记Bulletproofs 代码解析Bulletproofs: Shorter Proofs for Privacy-Enhanced Distributed Ledger学习笔记Bulletproofs 代码解析 Liam Eagen 2022年3月论文《Bullet…...

毕业设计(1)-AFLGO的安装

AFLGO是一个模糊测试工具,在CSDN上的安装教程不多,自己在安装过程中也出现了很多教程之外的错误,最后反复安装了2天终于安装成功这里记录一下安装工程中的错误 使用的平台:Ubuntu18.04 配置: 内存:6G&…...

基于Opencv的缺陷检测任务

数据及代码见文末 1.任务需求和环境配置 任务需求:使用opencv检测出手套上的缺陷并且进行计数 环境配置:pip install opencv-python 2.整体流程 首先,我们需要定义几个参数。 图像大小,原图像比较大,首先将图像resize一下再做后续处理图像阈值处理的相应阈值反转阈值的…...

Android Gradle脚本打包

1、背景资料 1.1 Android-Gradle-Groovy-Java-JVM 之间的关系 1.2 Android Gradle Plugin Version版本 与 Gradle Version版本的对应关系 Android Gradle Plugin Version版本Gradle Version版本1.0.0 - 1.1.32.2.1 - 2.31.2.0 - 1.3.12.2.1 - 2.91.5.02.2.1 - 2.132.0.0 -…...

平滑KDJ指标公式,减少无效金叉死叉

软件自带的KDJ指标比较敏感,在震荡上涨或者震荡下跌时会反复出现金叉死叉信号,不利于指标的使用以及进一步开发。为了减少无效金叉死叉,本文对KDJ指标公式进行平滑处理。 一、KDJ指标对比 以下为软件自带的KDJ指标,加上了图标。本…...

大势前瞻!文旅还是短视频,你弯道超车风口在这了

三年前,新冠疫情的影响波及整个各行各业行业,互联网寒冬,房地产崩盘,教培团灭,在这样的背景下,行业都进入了发展“冰雪期”。老话说大疫后必有大变,如今风雪融化,万物复苏&#xff0…...

JAVA基础常见面试题

1.Java接口和抽象类的区别? 接口 接口中不能定义构造器 方法全部都是抽象方法,JDK8提供方法默认实现 接口中的成员都是public的 接口中定义的成员变量实际上都是常量 一个类可以实现多个接口 抽象类 抽象类中可以定义构造器 可以有抽象方法和具体…...

通过一张照片来定位拍摄地点和网站的域名 LA CTF 2023

简介 这次打ctf遇到了一个比较经典的osint类题目,在这里分享一下如何做此类题目 题目链接: https://platform.lac.tf/challs题目简介: 你能猜出这个猫天堂的名字吗?答案是此位置的网站域。例如,如果答案是 ucla&…...

SpringBoot(powernode)(内含教学视频+源代码)

SpringBoot(powernode)(内含教学视频源代码) 教学视频源代码下载链接地址:https://download.csdn.net/download/weixin_46411355/87484637 目录SpringBoot(powernode)(内含教学视频…...

TEMU联盟计划用意何在?做推广达人真的能收入满满吗?

据东哥近期了解,Temu在北美市场表现十分火爆,甚至冲上了AppStore下载榜第一名。Temu在美国市场上采用了类似PDD的病毒式传播策略,以实惠的产品和折扣吸引消费者并动员普通人大量传播链接和App下载,所以有了TEMU联盟计划&#xff0…...

【概念辨析】二维数组传参的集中可能性

一、二维数组传参竟然不是用二级指针进行接收? 今天进行再一次的二级指针学习时,发现了一条以前没怎么注意过的知识点:二维数组进行传参只能用二维数组(不能省略列)进行接收或者是数组指针。 问题复现代码如下&#xf…...

Photon Vectorized Engine 学习记录

Photon Hash Aggregation Vectorization Photon Hash Join 的向量化的要点是:使用开放地址法。步骤: 向量化计算 hash 值基于 hash 向量化计算 bucket 下标,得到 bucket index 向量基于 bucket index 向量中记录的下标找到 bucket&#xff…...

webRTC学习-基础知识

webRTC学习1、webRTC简介1.1什么是webRTC?1.2、作用2、webRTC通信原理2.1、媒体协商(SDP)2.2、网络协商(candidate)2.2.1、STUN2.2.2、TURN2.3、媒体协商网络协商数据的交换通道webRTC官网1、webRTC简介 1.1什么是web…...

MySQL数据库——JDBC编程

文章目录一、什么是Java的JDBC二、JDBC编程三、代码整体展示一、什么是Java的JDBC JDBC,即Java Database Connectivity。意思是java数据库连接。是一种用来执行 SQL 语句的 JavaAPI,是Java中数据库的连接规范。这个 API 由 java.sql* 和 javax.sql* 包中…...

【面向小白】你见过这样讲解队列的吗?(阅此文可学会用纯C手撕一个队列)

目录 0.前言 1.什么是队列 2.选择什么结构实现队列 3.用C语言实现队列 3.1用什么可以封装代表一个队列 3.2队列接口的设计 3.3 队列的初始化 3.4 队列的销毁 3.5* 队列的状态分析 3.6 队列的插入 3.7 队列的删除 3.8 队列的大小(有效元素的数目&#xff…...

[element plus] 对话框组件再封装使用 - vue

学习关键语句: 饿了么组件dialog组件使用 dialog组件二次封装 vue3中封住的组件使用update触发更新 vue3中封装组件使用v-model:属性值来传值 写在前面 这是我遇到的一个页面需求 , 其中一个对话框的内容是很常用的 , 所以我将它封装出来才写的一篇文章 现在给出如下需求: 封…...

Markdown基本语法简介

前言:当你在git平台创建一个仓库时,平台会自动创建一个README.md文件,并将它的内容展现在web端页面,方面其他读者查阅。README.md实则是一个适用Markdown语法的文本文件,从他的后缀md即可看出它是Markdown的缩写。在gi…...

分布式服务的接口幂等性如何设计

1.1 概述 所谓幂等: 多次调用方法或者接口不会改变业务状态,可以保证重复调用的结果和单次调用的结果一致。 基于RESTful API的角度对部分常见类型请求的幂等性特点进行分析 举个例子: 假如你有个某多多 有个服务 服务提供一个接口,结果这个服务部署在…...

视频流截取保存到本地路径(打包jar包CMD运行)

需求:现在有一批https的监控视频流URL,需要对视频流进行每三秒截屏一次,并保存到本地路径,png格式,以当前时间命名。代码:import org.bytedeco.javacv.FFmpegFrameGrabber; import org.bytedeco.javacv.Fra…...

mysql索引失效的几种情况

失效的几种情况 1、select * from xxx 2、索引列上有计算 3、索引列上有函数 4、like左边包含‘%’ 5、使用or关键字 6、not in和not exists 7、order by 8、不满足最左匹配原则 给code、age和name这3个字段建好联合索引:idx_code_age_name。 该索引字段的顺…...

基于QT(C++)+Oracle实现的(界面)教务管理系统

一、选题背景 教务管理系统是基本每个高校都有的一个系统,教务系统管理系统充分利用互联网络B/S管理系统模式,以网络为平台,为各个学校教务系统的管理提供一个平台,帮助学校管理教务,用一个账号解决学校教务教学管理&…...

Java final关键字详解:用法、场景、面试题全解析

哈喽,各位Java学习者!今天咱们拆解一个Java中高频且核心的关键字——final。它看似简单,仅表示“最终的、不可修改的”,但在实际开发和面试中都高频出现,稍不注意就会踩坑。本文全程围绕final的核心用法展开&#xff0…...

突破3D资产生产瓶颈:Hunyuan3D-2赋能企业级内容创作的实战案例

突破3D资产生产瓶颈:Hunyuan3D-2赋能企业级内容创作的实战案例 【免费下载链接】Hunyuan3D-2 High-Resolution 3D Assets Generation with Large Scale Hunyuan3D Diffusion Models. 项目地址: https://gitcode.com/GitHub_Trending/hu/Hunyuan3D-2 Hunyuan3…...

暗黑破坏神II终极存档编辑指南:Diablo Edit2让你的角色随心所欲

暗黑破坏神II终极存档编辑指南:Diablo Edit2让你的角色随心所欲 【免费下载链接】diablo_edit Diablo II Character editor. 项目地址: https://gitcode.com/gh_mirrors/di/diablo_edit 还在为暗黑破坏神II中加点错误而烦恼吗?还在为刷不到心仪装…...

保姆级教程:在Ubuntu 20.04上为Unitree L1雷达配置Point-LIO,5分钟搞定SLAM环境

5分钟极速部署:Ubuntu 20.04下Unitree L1雷达与Point-LIO的SLAM实战指南 当一台崭新的Unitree L1雷达摆在面前,如何快速验证其SLAM性能?传统LIO-SAM方案需要复杂的参数调整,而官方适配的Point-LIO却能实现近乎零配置的快速部署。本…...

如何通过多平台同步推流提升直播效率?开源工具obs-multi-rtmp的全场景应用指南

如何通过多平台同步推流提升直播效率?开源工具obs-multi-rtmp的全场景应用指南 【免费下载链接】obs-multi-rtmp OBS複数サイト同時配信プラグイン 项目地址: https://gitcode.com/gh_mirrors/ob/obs-multi-rtmp 在直播行业蓬勃发展的今天,内容创…...

告别窗口限制:WindowResizer让Windows桌面管理效率提升300%

告别窗口限制:WindowResizer让Windows桌面管理效率提升300% 【免费下载链接】WindowResizer 一个可以强制调整应用程序窗口大小的工具 项目地址: https://gitcode.com/gh_mirrors/wi/WindowResizer 在Windows系统使用过程中,您是否经常遭遇窗口尺…...

混合储能系统容量优化配置中的信号分解与容量分配算法解析

混合储能容量优化配置(钠硫电池、超级电容) 基于emd和vmd容量配置 1、先用vmd进行输入功率分解,通过分解出高频信号和低频信号,混合储能的功率分配,分给钠硫电池、超级电容。 2、分解后再求出储能的额定容量和额定功率…...

BLIP-2:如何通过Q-Former桥接冻结视觉与大语言模型实现高效多模态预训练

1. BLIP-2为什么能成为多模态预训练的里程碑 第一次看到BLIP-2论文时,最让我惊讶的是它用如此"简单"的方式解决了多模态预训练的两个核心痛点。传统方法就像要求一个厨师同时精通中餐和西餐,而BLIP-2的创新在于让中餐主厨和西餐主厨各司其职&a…...

暗黑3自动化工具终极指南:如何用智能技能宏提升游戏效率

暗黑3自动化工具终极指南:如何用智能技能宏提升游戏效率 【免费下载链接】D3keyHelper D3KeyHelper是一个有图形界面,可自定义配置的暗黑3鼠标宏工具。 项目地址: https://gitcode.com/gh_mirrors/d3/D3keyHelper D3KeyHelper是一款专为暗黑破坏神…...