论文笔记:Compact Multi-Party Confidential Transactions

https://link.springer.com/chapter/10.1007/978-3-030-65411-5_21

A compact, private, Multi-Party Confidential Transactions (MCT)

  • 紧凑型多方机密交易(Compact MCT):MCT的长度与常规的单一所有者交易一样短;换句话说,多方承诺、签名和范围证明与单方的承诺、签名和范围证明无法区分
  • 私密型多方机密交易(Private MCT)- 涉及多个方参与(以及他们的数量)的事实被隐藏起来。
  • 提出两种结构:一个更简单的N方一致转移和一个通用的T/N阈值转移

Intro

案例:

  • 正常情况:
    Alice发送预交易 ( C v , k 1 + k 2 , v , k 1 ) (C_{v,k_1+k_2}, v, k_1) (Cv,k1+k2,v,k1)给Bob、 ( C v , k 1 + k 2 , v , k 2 ) (C_{v,k_1+k_2}, v, k_2) (Cv,k1+k2,v,k2)给Charles,意图是需要两个共同所有者的同意才能花费这些硬币,因为他们都不知道 k 1 + k 2 k_1 + k_2 k1+k2。Bob和Charles随机生成各自的密钥 k 1 ′ k_1' k1 k 2 ′ k_2' k2,并共享部分承诺,如 C B o b = C v / 2 , k 1 C_{Bob} = C_{v/2,k_1} CBob=Cv/2,k1 C C h a r l e s = C v / 2 , k 2 C_{Charles} = C_{v/2,k_2} CCharles=Cv/2,k2,旨在创建一个新的硬币束 C ′ C' C
    在这里插入图片描述

  • 欺骗攻击:
    Bob等待Charles的部分交易承诺 C v / 2 , k 2 C_{v/2,k_2} Cv/2,k2,并与Charles共享一个欺骗性的部分承诺 C B o b = C v / 2 , k 1 ⋅ ( C v / 2 , k 2 ) − 1 C_{Bob} = C_{v/2,k_1} \cdot (C_{v/2,k_2})^{-1} CBob=Cv/2,k1(Cv/2,k2)1 C ′ C' C变成:
    在这里插入图片描述
    现在,硬币可以不经过Charles同意被花费。

  • 抵御恶意密钥攻击:Bob和Charles相互分享 P B o b = C 0 , k 1 ′ P_{Bob} = C_{0,k_1'} PBob=C0,k1 P C h a r l e s = C 0 , k 2 ′ P_{Charles} = C_{0,k_2'} PCharles=C0,k2。然后,他们各自计算:
    在这里插入图片描述
    (抗攻击的原理是哈希函数的单向性,计算 C B o b C_{Bob} CBob C C h a r l e s C_{Charles} CCharles时对应的P已经固定)

  • Bob仍然可以在交易上运行 C ′ ⋅ ( P C h a r l e s H ( P C h a r l e s , S ) ) − 1 C'·(P_{Charles}^{H(P_{Charles},S)})^{−1} C(PCharlesH(PCharles,S))1
    ( = C B o b ⋅ C v / 2 , 0 = C v , H ( P B o b , S ) k 1 ′ =C_{Bob}\cdot C_{v/2,0}=C_{v,H(P_{Bob},S)k_1'} =CBobCv/2,0=Cv,H(PBob,S)k1)
    解决:保密交易对 E = C ′ ⋅ C − 1 E = C'·C^{−1} E=CC1进行签名,而不是一个空消息,将 C ′ C' C提交承诺给交易。

Preliminaries

Compact Multi Signature Scheme

定义:(其他安全性质见原文)
在这里插入图片描述

Non-interactive Zero-Knowledge Compact Multi-party Range Proofs

在这里插入图片描述
定义以下范围证明的完整性、稳健性、零知识、不可延展性以及对诚实但好奇的组合者的安全性。
(安全性定义略,见原文)

Compact Multi-party Confidential Transactions

(构建块的定义交代清楚了,正式给出机密交易的协议)
两种MCT协议和安全模型。注意,与签署空消息的麦克斯韦CT不同,MCT协议签署了多余的值E

MCT所需的基本协议

在这里插入图片描述

Rogue Key Attack Resistant Commitment Generation.

在这里插入图片描述

通用多方资金转移

我们紧凑的私有MCT协议的工作原理如下。

  • 资产或币束的共同所有人自己计算密钥,但与其他共同所有人共享公共信息。
  • 最后,每个共同所有者生成部分交易,共同所有者(组合者)将部分交易组合起来生成最终交易。

( v , k , C ) (\boldsymbol{v, k, C}) (v,k,C)是输入的硬币束, ρ \boldsymbol ρ ρ是输出的硬币数量数组(每组都是共享账户,有多个接收者),应该发送到 ∣ m ∣ ( = ∣ ρ ∣ ) \boldsymbol{|m|(= |ρ|)} m(=ρ)组接收者,其中每组 i i i m i m_i mi个接收者组成。

资金发送功能MCT.Send

资金发送功能MCT.Send通过发送交易 t x tx tx来根据 ρ \boldsymbol ρ ρ隔离硬币,并将密钥分配 p t x \boldsymbol{ptx} ptx用于N-fund转账或 t p t x \boldsymbol{tptx} tptx用于T/N-fund转账,其中 m i m_i mi个接收方中的 t i t_i ti个必须同意花费硬币束 i i i。为了功能实现,我们一起输入盲密钥集 k \boldsymbol{k} k。但是, k j , i ′ \boldsymbol{k}_{j,i'} kj,i是属于第 i ′ i' i(输入币束)的第 j j j个共同所有者的部分秘密密钥,并且部分密钥不与任何人共享。

m \boldsymbol m m-接收方共享账户数组,每个 m i m_i mi代表一个接收者账户的共享所有者数量。
(交易的输出一般等于发送给接收方的若干账户+找零账户,所以 ∣ ρ ∣ = ∣ m ∣ = ∣ v ′ ∣ − 1 |\boldsymbol \rho|=|\boldsymbol m|=|\boldsymbol v'|-1 ρ=m=v1
v , v ′ \boldsymbol {v,v'} v,v-交易输入、输出金额数组, ∑ j = 1 n v = ∑ i = 1 ∣ ρ ∣ + 1 v ′ \sum_{j=1}^n \boldsymbol v=\sum_{i=1}^{|\boldsymbol \rho|+1} \boldsymbol v' j=1nv=i=1ρ+1v
ρ \boldsymbol \rho ρ-除找零外的交易输出

  • 首先是合法性验证和密钥生成,有n个co-owner,每个co-o j有一组主密钥 k j , P j \boldsymbol k_j,\boldsymbol P_j kj,Pj,面向每个账户各有一个分量,因为输入账户有 ∣ v ∣ |v| v个,所以每个主密钥都有对应的共 ∣ v ∣ |v| v个分量。
  • 输入小于输出,确保输入账户有足够的金额进行合法花费
  • 分享 P j \boldsymbol P_j Pj后,每个co-owner分别计算本次交易输出的交易密钥对
  • 当有余额时,将余额作为一个新的输出,为余额新初始化一组交易密钥。
    在这里插入图片描述
    每个co-owner,分别计算:
  • 把余额的交易密钥分量加入输出账户的主密钥集中
  • 生成自己的部分交易,并分享
  • 用收到的所有部分交易,计算总共的E
  • 验证E的合法性: ( ∏ i ′ = 1 ∣ v ′ ∣ g s k i ′ ⋅ h ∑ v ) ⋅ ∏ C − 1 (\prod_{i'=1}^{|\boldsymbol v'|} g^{\boldsymbol{sk}_{i'}}\cdot h^{\sum \boldsymbol v})\cdot\prod\boldsymbol C^{-1} (i=1vgskihv)C1,如果 ∑ v = ∑ v ′ \sum v=\sum v' v=v,E合法
  • 生成总签名和证明
  • 整合方将所有部分交易补全为总交易。

(这段是交易的发送方的操作,所有的co-owner拿出共同拥有的 ∣ v ∣ |v| v个输入账户, v ′ v' v个输出账户,需要的话,输出账户中包含一个新生成的找零账户,签名固定所有交易信息和交易密钥;交易合法性验证;输出账户的范围证明)

在这里插入图片描述
两种情况:

  • 门限为空,直接返回交易;(每个输出账户的使用都不设门限,所有co-owner同意才能交易)
  • 有输出账户的门限大于0,秘密共享SS生成交易。
    在这里插入图片描述

Threshold Key Sharing

我们使用Shamir秘密共享(SS)方案[23],其中有t个交易商,t为阈值。每个交易商分别选择一个秘密主密钥,最终密钥是所有t个主密钥的总和

在这里插入图片描述

资金接收方MCT.Receive

  • 共同接收方初始化接收账户的交易密钥,生成部分交易,并共享
  • 用接收到的所有部分交易整合成总体的E值
  • 验证E值
  • 共同所有者生成的总体签名和范围证明,整合
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/724151.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端面试知识点合集(持续性更新)

原型和原型链 任何函数都可以作为构造函数。当该函数通过 new 关键字调用的时候,就称之为构造函数。 var Parent function(){}//定义一个函数,那它只是一个普通的函数,不能称它为构造函数var instance new Parent(); //这时这个Parent就不…

使用vscode前面几行被定住

当我们使用 vscode 滚动代码文档的时候,发现前面几行被定住了,想 css 的 sticky 一样,可能是之前我们不小心点到了这里,取消就好了

SoundTouch对音频处理(Android)

SoundTouch对音频处理(Android) SoundTouch介绍 SoundTouch 是一个用于音频处理的开源库,主要用于改变音频的速度、音调和音量等特征。您可以在项目中使用 SoundTouch 库来实现音频处理的功能,比如变速播放、音高变化、混响效果…

2024年阿里云服务器配置选择指南_个人和企业如何选择ECS实例规格?

阿里云服务器配置怎么选择?CPU内存、公网带宽和系统盘怎么选择?个人开发者或中小企业选择轻量应用服务器、ECS经济型e实例,企业用户选择ECS通用算力型u1云服务器、ECS计算型c7、通用型g7云服务器,阿里云服务器网aliyunfuwuqi.com整…

亿发生产管控新篇章:mes系统专业推进,引领广州制造厂家数智转型

信息技术在企业发展中扮演着至关重要的角色。然而,随着生产组织方式向多品种、小批量转变,订单不断调整,制定计划需要根据市场和实际作业执行状态,不能仅仅依赖于物料和库存来控制生产。传统的生产现场管理已无法满足当今竞争激烈…

学习计算天数

学习计算天数 题目描述:解法思路:解法代码:运行结果: 题目描述: 输入y和m两个整数,y表示年份,m表示月份,计算y年m月有多少天,并输出天数。 测试1: 输⼊&…

MySQL基础-----SQL语句之DCL数据控制语句

目录 前言 一、管理用户 1.查询用户 2.创建用户 3.修改用户密码 4.删除用户 案例 二、权限控制 1.查询权限 2.授予权限 3.撤销权限 案例 前言 本期我们学习SQL语句的最后一部分内容,也就是数据控制语句DCL。DCL英文全称是Data Control Language(数据控制语…

HarmonyOS NEXT应用开发案例集

概述 随着应用代码的复杂度提升,为了使应用有更好的可维护性和可扩展性,良好的应用架构设计变得尤为重要。本篇文章将介绍一个应用通用架构的设计思路,以减少模块间的耦合、提升团队开发效率,为开发者呈现一个清晰且结构化的开发…

深度学习模型九大经典初始化方案

注意:本文引用自专业人工智能社区Venus AI 更多AI知识请参考原站 ([www.aideeplearning.cn]) 1. 正态分布初始化 正态分布初始化将权重初始化为来自正态(或高斯)分布的随机数。该分布通常以0为均值,其标…

HTTPS是什么,那些行业适合部署呢?

随着在线活动的增加,对您共享的关键数据的威胁已经产生了严重的后果,包括欺诈性金融交易、在线身份盗窃等。此外,随着技术使用的增加,网络攻击也变得更加复杂和具有挑战性。 毫无疑问,互联网用户的数据安全意识成倍增长…

友思特应用 | 轻装上阵:便携式光谱仪,助力食品安全的便捷保障

欢迎访问官网了解更多:智能化手持光谱仪 | Linksqaure光谱仪 | 近红外便携式光谱仪 | 价液体检测台 | 广州友思特科技有限公司 导读 食品安全是一个备受瞩目的话题。在消费电子和光子学的进步推动下,手持式光学仪器可用于食品安全以及质量的评估&#x…

PaddleOCR CPU 文本文字识别 docker部署

需求: 需要把所有滑块图片的数据文字提取出来 启动服务 mkdir paddle cd paddle docker run -itd --name ppocr -v $PWD:/paddle --networkhost -it registry.baidubce.com/paddlepaddle/paddle:2.1.3-gpu-cuda10.2-cudnn7 /bin/bash docker exec -it ppocr bash …

蓝牙网关在智慧医疗的应用

蓝牙网关在智慧医疗的应用已经逐渐得到广泛关注。作为一种无线通信技术,蓝牙网关能够将各种蓝牙设备连接起来,实现数据传输和信息共享。在智慧医疗领域,蓝牙网关的应用不仅可以提高医疗服务的效率和质量,还可以为患者带来更好的医…

2024年Android开发陷入饱和,,面试杀手锏

背景介绍 现在是一个信息大爆炸的时代,互联网世界中存在着无数的数据。信息就是这个时代最宝贵的资源,拥有了资源就相当于。互联网是块风水宝地,里面藏了无数的宝藏!能不能挖到就看本事了。谁拥有了最全、最准确的信息&#xff0…

Jmeter 压测 —— 利用Docker分布式压测!

Jmeter分布式测试环境中有两个角色:Master 和 Slaves Master节点:向参与的Slaves节点发送测试脚本,并聚合Agent节点的执行结果。Slaves节点:接收并执行Master节点发送过来的测试脚本,并将执行结果返回给Master。 为什…

threejs展示glb模型

原模型为rvt模型 <template><div ref"threeJsContainer"class"three-js-container"></div> </template> <script> import { defineComponent } from "vue"; import * as THREE from "three"; import…

npm 私服以及使用

在工作中&#xff0c;公司有很多内部的包并不希望发布到npm官网仓库&#xff0c;因为可能涉及到一些私有代码不能暴露。对于前端来讲&#xff0c;这时就可以选择在公司内网搭建npm私有仓库。当前比较主流的几种解决方案&#xff1a;verdaccio、nexus、cnpm。大家可以按照自己的…

GEE遥感云大数据林业应用典型案例实践及GPT模型应用

近年来遥感技术得到了突飞猛进的发展&#xff0c;航天、航空、临近空间等多遥感平台不断增加&#xff0c;数据的空间、时间、光谱分辨率不断提高&#xff0c;数据量猛增&#xff0c;遥感数据已经越来越具有大数据特征。遥感大数据的出现为相关研究提供了前所未有的机遇&#xf…

SDWAN专线,解决银行网络搭建痛点

金融行业的不断发展和数字化转型&#xff0c;银行网络的搭建和管理面临着诸多挑战和痛点。SD-WAN&#xff08;Software-Defined Wide Area Network&#xff0c;软件定义广域网&#xff09;专线作为一种创新的网络解决方案&#xff0c;为银行解决了诸多网络搭建痛点&#xff0c;…

【教程】uni-app iOS打包解决profile文件与私钥证书不匹配问题

摘要 当在uni-app中进行iOS打包时&#xff0c;有时会遇到profile文件与私钥证书不匹配的问题。本文将介绍如何解决这一问题&#xff0c;以及相关的技术细节和操作步骤。 引言 在uni-app开发过程中&#xff0c;iOS打包是一个常见的操作。然而&#xff0c;有时会出现profile文…