【技术实现步骤摘要】
【国外来华专利技术】用于去信任零知识或有支付的计算机实现的系统及方法
本说明书总体上涉及适用于在计算机处理器(例如,区块链网络的节点)或成组的此类处理器中实施的计算机实现的方法和系统。提供了一种生成证明的改进方法,该方法能够实现对语句(statement)的有效零知识验证。该方法适用于并入到现有的针对不需要使用双线性配对友好椭圆曲线的电路可满足性的基于离散对数的零知识证明协议中。本专利技术特别适合于但不限于数据的去信任公平交换。各方之一可以在不透露所述语句的情况下证明知道密钥或语句,以便在所述参与者之间产生安全的去信任交换。特别地,交换的数据能够实现为区块链网络上的指定虚荣地址(vanityaddress)确定私钥。
技术介绍
在本文献中,术语“区块链”用来包括所有形式的电子的、基于计算机的、分布式的账本。这些包括基于共识的区块链和交易链技术、被许可的和未被许可的账本、共享账本及其变型。尽管已经提出并开发了其他区块链实现,但是区块链技术最广为人知的应用是比特币帐本。尽管为了方便和说明的目的在本文中可能提及比特币,但是应当注意,本专利技术 ...
【技术保护点】
1.一种计算机实现的方法,用于在来自卖方或证明者的访问数据的交换中实现来自买方或验证者的奖励数据的去信任零知识或有支付或交换,所述方法包括:/n从买方接收买方公钥(pk
【技术特征摘要】 【专利技术属性】
【国外来华专利技术】20180323 GB 1804739.9;20180323 GB 1804742.3;2018031.一种计算机实现的方法,用于在来自卖方或证明者的访问数据的交换中实现来自买方或验证者的奖励数据的去信任零知识或有支付或交换,所述方法包括:
从买方接收买方公钥(pkB),所述买方公钥(pkB)是从将买方秘密密钥(skB)与椭圆曲线生成器点(G)相乘导出的;
生成卖方公钥(pks),所述卖方公钥(pks)是从将卖方秘密密钥(i)与椭圆曲线生成器点(G)相乘确定的,其中,所述卖方秘密密钥是访问数据或被用于保护买方所需的访问数据;
准备数据集并将数据集发送给买方,所述数据集包括零知识证明语句,所述零知识证明语句是:对于表示所述语句的算术电路的给定功能电路输出和椭圆曲线点,功能电路输入等于卖方秘密密钥(i),其中,所述语句使得买方能够确定所述电路得到满足并且验证所述语句,从而确定卖方拥有解锁访问数据所需的卖方秘密密钥;
从买方接收第一交易Tx1,所述第一交易Tx1包含将奖励数据分配给买方的输出,所述奖励数据是使用卖方秘密密钥(i)可访问的;
在区块链上签署并广播第一交易,以便所述第一交易被挖掘成区块,以及通过提供第二交易Tx2来访问来自第一交易Tx1的输出的奖励数据,所述第二交易Tx2提供卖方秘密密钥(i)以解锁奖励数据,然后所述奖励数据被透漏在区块链上,从而使得买方能够获得由卖方提供的访问数据。
2.根据权利要求1所述的计算机实现的方法,其中,所述证明者或卖方从验证者或买方接收椭圆曲线公钥pkB,所述买方已经从安全的随机秘密密钥skB生成了所述公钥,其中
pkB=skB×G,且G为椭圆曲线点,并且
所述证明者或卖方确保要为访问数据提供锁定值i,以使得
访问数据=pkB+i×G
并且所述卖方将其公钥(pks)和来自功能电路的输出f(i)包括在发送给买方的数据集中,其中,pkS=i×G,且功能电路输入是锁定值i。
3.根据权利要求2所述的计算机实现的方法,其中,所述卖方从买方接收包含输出的交易Tx1,所述输出包含要接收的奖励数据,所述奖励数据通过来自卖方的签名和功能电路输入i来访问,
所述卖方在交易被挖掘成区块的区块链上签署和广播交易,使得通过提供第二交易Tx2卖方能够从交易Tx1的输出获得访问数据,所述第二交易Tx2提供其签名和值i以解锁交易,然后所述交易被透漏在区块链上,从而使得买方能够识别锁定值i并获得由卖方提供的访问数据,其中
sk=skB+i,
其中,pk=sk×G
4.一种计算机实现的方法,用于在来自卖方或证明者的访问数据的交换中实现来自买方或验证者的奖励数据的去信任零知识或有支付或交换,所述方法包括:
向卖方发送买方公钥(pkB),所述买方公钥(pkB)是从将买方秘密密钥(skB)与椭圆曲线生成器点(G)相乘导出的;
从卖方接收数据集,所述数据集包括零知识证明语句,所述零知识证明语句是对于表示所述语句的算术电路的给定功能电路输出和椭圆曲线点,功能电路输入等于卖方秘密密钥(i),其中,卖方的公钥(pks)是从将卖方秘密密钥(i)与椭圆曲线生成器点(G)相乘导出的,其中,所述卖方秘密密钥是访问数据或被用于保护访问数据;
验证证明;
向买方发送包含输出的第一交易Tx1,所述输出在用于获得访问数据的交换中将奖励数据分配给买方,所述奖励数据是使用卖方秘密密钥(i)可访问的;
在区块链上确认卖方已签署并广播了第一交易,以便所述第一交易被挖掘成区块,从而使得通过提供第二交易Tx2卖方能够访问来自第一交易Tx1的输出的奖励数据,所述第二交易Tx2提供其签名和卖方秘密密钥(i)以解锁奖励数据;以及
获得由卖方提供的访问数据。
5.根据权利要求4所述的计算机实现的方法,还包括向卖方发送椭圆曲线公钥pkB,所述买方已从安全的随机秘密密钥skB生成了所述公钥,其中
pk=skB×G,且G为椭圆曲线点,并且
所述卖方确保要为访问数据提供锁定值i,从而
访问数据=pkB+i×G
以及利用数据集,从卖方接收其公钥pkS和来自功能电路的输出f(i),其中,pkS=i×G,且功能电路输入是锁定值i。
6.根据权利要求5所述的计算机实现的方法,还包括向买方发送包含输出的交易Tx1,所述输出包含要接收的访问数据,所述访问数据通过来自卖方的签名和功能电路输入i来访问,
其中,所述卖方在交易被挖掘成区块的区块链上签署和广播交易,使得通过提供第二交易Tx2卖方能够访问来自交易Tx1的输出的数据,所述第二交易Tx2提供其签名和值i以解锁交易,然后所述交易被透漏在区块链上,
访问区块链以识别锁定值i并访问由卖方提供的数字内容,其中
sk=skB+i,
其中,pk=sk×G
7.根据任一前述权利要求所述的计算机实现的方法,其中,要从所述卖方接收的奖励数据包括加密货币支付。
技术研发人员:T·特维森,
申请(专利权)人:区块链控股有限公司,
类型:发明
国别省市:安提瓜和巴布达;AG
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。