CN112865980A - 区块链加密投票方法、计算机设备和存储介质 - Google Patents
区块链加密投票方法、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN112865980A CN112865980A CN202110138682.2A CN202110138682A CN112865980A CN 112865980 A CN112865980 A CN 112865980A CN 202110138682 A CN202110138682 A CN 202110138682A CN 112865980 A CN112865980 A CN 112865980A
- Authority
- CN
- China
- Prior art keywords
- voting
- vote
- transaction
- public key
- contract
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000004590 computer program Methods 0.000 claims description 9
- 238000012795 verification Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0442—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3218—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
- H04L2209/463—Electronic voting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种区块链加密投票方法、计算机设备和存储介质,该方法包括:通过投票合约执行投票注册交易,将第一投票的第一公钥记录到区块链上;通过投票合约分别执行各第一投票交易,在执行成功时将相应的第一加密投票信息和第二公钥记录到投票合约中;通过投票合约执行包括第一公钥所对应的第一私钥的投票结算交易:分别根据第一私钥和合约中记录的各第二公钥对相应的第一加密投票信息进行解密以获取相应的投票内容;根据所获取的各投票内容对第一投票进行结算。本发明实现了在投票过程中对所有的投票内容保密,而只要通过投票结算交易提供第一私钥即可解密获取所有的投票内容以完成投票的结算。
Description
技术领域
本申请涉及互联网技术领域,具体涉及一种区块链加密投票方法、计算机设备和存储介质。
背景技术
当前的区块链投票方案中,每一次投票的投票内容都是公开记录在区块链上,因为如果每个投票者分别对自己的投票内容加密,则会导致结算投票时需要每个投票者分别提供解密的投票内容和验证方式,导致投票过程太过繁琐。因此现有的区块链投票方案难以满足在投票过程中对投票内容保密的业务需求。
此外,现有的区块链投票解决方案通常都是公开投票,原因在于,投票合约需要验证投票者是否具有投票权,而投票者在投票时所提交的用于供投票合约验证投票权的信息会记录在区块链上并向所有人公开,导致难以隐藏投票者的身份。
发明内容
鉴于现有技术中的上述缺陷或不足,期望提供一种在投票过程中对投票内容保密、同时可以便捷地结算投票的区块链加密投票方法、计算机设备和存储介质,并进一步期望在此基础上实现匿名的区块链投票。
第一方面,本发明提供一种适用于区块链节点的区块链加密投票方法,区块链上配置有投票合约,该方法包括:
通过投票合约执行投票注册交易,将第一投票的第一公钥记录到区块链上,以供参与第一投票的各用户端:
获取第一公钥;
生成各自的第二私钥和第二公钥;
根据第二私钥和第一公钥通过Diffie-Hellman算法对投票内容加密以生成第一加密投票信息;
生成包括第一加密投票信息、第二公钥的第一投票交易并发送至区块链网络;
通过投票合约分别执行各第一投票交易,在执行成功时将相应的第一加密投票信息和第二公钥记录到投票合约中;
通过投票合约执行包括第一公钥所对应的第一私钥的投票结算交易:
分别根据第一私钥和合约中记录的各第二公钥对相应的第一加密投票信息进行解密以获取相应的投票内容;
根据所获取的各投票内容对第一投票进行结算。
第二方面,本发明提供一种适用于用户端的区块链加密投票方法,区块链上配置有投票合约,该方法包括:
为待注册的第一投票生成第一私钥和相应的第一公钥;
生成包括第一公钥的投票注册交易并发送至区块链网络,以供区块链节点通过投票合约执行,将第一投票的第一公钥记录到区块链上,以供参与第一投票的各用户端:
获取第一公钥;
生成各自的第二私钥和第二公钥;
根据第二私钥和第一公钥通过Diffie-Hellman算法对投票内容加密以生成第一加密投票信息;
生成包括第一加密投票信息、第二公钥的第一投票交易并发送至区块链网络,以供区块链节点通过投票合约执行,在执行成功时将第一加密投票信息和第二公钥记录到投票合约中;
生成包括第一私钥的投票结算交易并发送至区块链网络,以供区块链节点通过投票合约执行:
分别根据第一私钥和合约中记录的各第二公钥对相应的第一加密投票信息进行解密以获取相应的投票内容;
根据所获取的各投票内容对第一投票进行结算。
第三方面,本发明还提供另一种适用于用户端的区块链加密投票方法,区块链上配置有投票合约,该方法包括:
获取区块链上记录的第一投票的第一公钥;其中,第一公钥由区块链节点通过投票合约执行投票注册交易成功后记录到区块链上;
生成第二私钥和第二公钥;
根据第二私钥和第一公钥通过Diffie-Hellman算法对投票内容加密以生成第一加密投票信息;
生成包括第一加密投票信息、第二公钥的第一投票交易并发送至区块链网络,以供区块链节点通过投票合约执行,在执行成功时将第一加密投票信息和第二公钥记录到投票合约中;
投票合约还用于执行包括第一公钥所对应的第一私钥的投票结算交易:
分别根据第一私钥和合约中记录的各公钥对相应的加密投票信息进行解密以获取相应的投票内容;
根据所获取的各投票内容对第一投票进行结算。
第四方面,本发明还提供一种设备,包括一个或多个处理器和存储器,其中存储器包含可由该一个或多个处理器执行的指令以使得该一个或多个处理器执行根据本发明各实施例提供的区块链加密投票方法。
第五方面,本发明还提供一种存储有计算机程序的存储介质,该计算机程序使计算机执行根据本发明各实施例提供的区块链加密投票方法。
本发明诸多实施例提供的区块链加密投票方法、计算机设备和存储介质通过在注册投票时将第一公钥记录在区块链上,由投票的客户端根据第二私钥和第一公钥通过Diffie-Hellman算法对投票内容加密,同时在投票交易中提供第二公钥,实现了在投票过程中对所有的投票内容保密,而只要通过投票结算交易提供第一私钥即可解密获取所有的投票内容以完成投票的结算;
本发明一些实施例提供的区块链加密投票方法、计算机设备和存储介质进一步通过在合约中配置用于验证投票权限的零知识证明电路,使得合约可以将投票用户端以通过同态加密算法加密后提交的若干信息输入零知识证明电路来验证投票用户是否具有投票权,从而实现了区块链上的匿名投票;
本发明一些实施例提供的区块链加密投票方法、计算机设备和存储介质进一步通过配置投票id来解决相同投票人群的不同投票难以区分的问题;
本发明一些实施例提供的区块链加密投票方法、计算机设备和存储介质进一步通过在零知识证明电路中配置基于投票私钥和投票id的验证,保障了同一个私钥对于同一个投票无法重复投票。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本发明一实施例提供的一种区块链加密投票方法的流程图。
图2为本发明一实施例提供的另一种区块链加密投票方法的流程图。
图3为本发明一实施例提供的又一种区块链加密投票方法的流程图。
图4为本发明一实施例提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1为本发明一实施例提供的一种区块链加密投票方法的流程图。
如图1所示,在本实施例中,本发明提供一种适用于区块链节点的区块链加密投票方法,区块链上配置有投票合约,该方法包括:
S11:通过投票合约执行投票注册交易,将第一投票的第一公钥记录到区块链上,以供参与第一投票的各用户端:
获取第一公钥;
生成各自的第二私钥和第二公钥;
根据第二私钥和第一公钥通过Diffie-Hellman算法对投票内容加密以生成第一加密投票信息;
生成包括第一加密投票信息、第二公钥的第一投票交易并发送至区块链网络;
S13:通过投票合约分别执行各第一投票交易,在执行成功时将相应的第一加密投票信息和第二公钥记录到投票合约中;
S15:通过投票合约执行包括第一公钥所对应的第一私钥的投票结算交易:
S151:分别根据第一私钥和合约中记录的各第二公钥对相应的第一加密投票信息进行解密以获取相应的投票内容;
S153:根据所获取的各投票内容对第一投票进行结算。
以下以用户A注册一项不匿名、投票过程中内容保密的投票,用户BCDEF参与该投票为例,对上述方法进行示例性的阐述。
首先,用户A的用户端为该待注册的投票生成第一私钥p1和相应的第一公钥P1。
在生成上述公私钥对之后,用户A的用户端生成包括第一公钥P1的投票注册交易tx1并发送至区块链网络。
在步骤S11中,区块链节点接收、广播、打包、通过投票合约执行tx1,将该投票与第一公钥P1的对应关系记录到区块链上。
以用户B投票为例:
用户B的用户端从区块链上获取到该投票的第一公钥P1,并生成第二私钥p2-B和第二公钥P2-B,以P1*p2-B作为加密密钥通过Diffie-Hellman算法对投票内容vote_B进行加密,生成第一加密投票信息E(vote_B),再生成包括第一加密投票信息E(vote_B)和第二公钥P2-B的第一投票交易tx2,将tx2发送至区块链网络。
同理,用户C-F的用户端分别生成包括E(vote_C)和P2-C的第一投票交易tx3、包括E(vote_D)和P2-D的第一投票交易tx4、包括E(vote_E)和P2-E的第一投票交易tx5、包括E(vote_F)和P2-F的第一投票交易tx6,并分别将tx3/tx4/tx5/tx6发送至区块链网络。
在步骤S13中,以执行tx2为例:
区块链节点接收、广播、打包、通过投票合约执行tx2,在执行成功时将第一加密投票信息E(vote_B)和第二公钥P2-B记录到投票合约中。
tx3-tx6的执行过程与tx2相同,不再一一赘述。
当用户A看到合约中记录的加密投票信息的数量足以结算该投票时,用户A的用户端生成包括第一私钥p1的投票结算交易tx7,将tx7发送至区块链网络。
在步骤S15中,区块链节点接收、广播、打包、通过投票合约执行tx7:
在步骤S151中,以p1*P2-B作为解密密钥通过Diffie-Hellman算法对E(vote_B)进行解密以获取投票内容vote_B;
以p1*P2-C作为解密密钥通过Diffie-Hellman算法对E(vote_C)进行解密以获取投票内容vote_C;
以p1*P2-D作为解密密钥通过Diffie-Hellman算法对E(vote_D)进行解密以获取投票内容vote_D;
以p1*P2-E作为解密密钥通过Diffie-Hellman算法对E(vote_E)进行解密以获取投票内容vote_E;
以p1*P2-F作为解密密钥通过Diffie-Hellman算法对E(vote_F)进行解密以获取投票内容vote_F;
在步骤S153中,根据步骤S151解密获取的各投票内容对该投票进行结算,并将结算结果记录在投票合约中。
在上述投票过程中,在第一私钥p1公开之前,各投票内容是无法被解密的,而在结算投票时只需要提交p1即可由合约完成投票内容的解密和投票的结算。
上述实施例通过在注册投票时将第一公钥记录在区块链上,由投票的客户端根据第二私钥和第一公钥通过Diffie-Hellman算法对投票内容加密,同时在投票交易中提供第二公钥,实现了在投票过程中对所有的投票内容保密,而只要通过投票结算交易提供第一私钥即可解密获取所有的投票内容以完成投票的结算。
上述实施例阐述了对于不匿名的投票如何实现在投票过程中对投票内容保密、同时可以便捷地结算投票;以下的优选实施例将进一步阐述,如何在实现上述技术效果的同时进一步实现匿名投票。
在一优选实施例中,投票合约中配置有用于验证匿名投票的投票权限的零知识证明电路;
当第一投票为匿名投票时:
上述通过投票合约执行投票注册交易还包括:根据具有第一投票的投票权的各第一账户的第三公钥或第三地址生成并保存第一默克尔树;其中,第一默克尔树用于供控制第一账户的用户端获取第一默克尔树根和相应的默克尔路径;
通过投票合约执行第一投票交易还包括:
根据私密提交的第三私钥、私密提交的第三公钥或第三地址,以及,零知识证明电路验证匿名投票账户是否具有第三地址的控制权:否,则第一投票交易执行失败;
根据公开提交的第一默克尔树根、私密提交的第一默克尔路径、私密提交的第三公钥或第三地址,以及,零知识证明电路验证匿名投票账户是否具有第一投票的投票权:否,则第一投票交易执行失败。
其中,私密提交为通过同态加密算法加密后提交的参数提交方式。
具体地,以用户A注册另一项匿名投票,用户BCDEF参与该投票为例:
在本实施例中,用户BCDEF各自持有一个投票账户,例如,用户B持有投票账户b(第三私钥p3-b—第三公钥P3-b—第三地址addr3-b)、用户C持有投票账户c(第三私钥p3-c—第三公钥P3-c—第三地址addr3-c)、…,等等。
用户A的用户端同样生成为待注册的投票生成第一私钥p4和相应的第一公钥P4,并获取用户BCDEF的投票账户的各第三地址addr3-b、addr3-c、addr3-d、addr3-e、addr3-f,生成包括各第三地址addr3-b-addr3-f和第一公钥P4的投票注册交易tx10并发送至区块链网络。
在步骤S11中,区块链节点接收、广播、打包、通过投票合约执行tx10,以tx1所指定的具有该投票的投票权的各第三地址addr3-b-addr3-f作为第一默克尔树的叶子节点,生成第一默克尔树,将该投票与第一公钥P4、第一默克尔树的对应关系记录到区块链上。
以用户B投票为例:
用户B的用户端从区块链上获取到该投票的第一公钥P1和第一默克尔树之后:
一方面,获取第一默克尔树的第一默克尔树根root1,并获取第三地址addr3-b在第一默克尔树中的第一默克尔路径path1,再通过投票合约指定的同态加密算法对第三私钥p3-b、第三地址addr3-b、第一默克尔路径path1进行加密;
另一方面,生成第二私钥p2-B和第二公钥P2-B,以P4*p2-B作为加密密钥通过Diffie-Hellman算法对投票内容vote_B`进行加密,生成第一加密投票信息E(vote_B`);
最后,用户B的用户端生成包括公开提交的第一默克尔树根root1、私密提交的第三私钥p3-b、私密提交的第三地址addr3-b、私密提交的第一默克尔路径path1、第一加密投票信息E(vote_B`)和第二公钥P2-B的匿名投票交易tx11,并将tx11发送至区块链网络。
同理,用户C-F的用户端以相同的方式分别生成并发送匿名投票交易tx12-tx15,具体过程不再一一赘述。
在步骤S13中,以执行tx11为例:
区块链节点接收、广播、打包、通过投票合约执行tx11:
首先,区块链节点将tx11私密提交的第三私钥p3-b和私密提交的第三地址addr3-b输入匿名投票合约所配置的零知识证明电路进行验证。
具体地,该步骤所验证的是,投票者是否具有第三地址addr3-b的控制权。因为匿名的原因,该步骤无法采用本领域常用的提供私钥签名、通过公钥验证签名的方式来进行验证(该验证方式显而易见会暴露身份)。因此,本实施例采用了通过零知识证明电路对通过同态加密算法所加密提交的数据进行验证的方式。本领域技术人员可以理解,通过本领域常用的同态加密算法可以实现加法或乘法的同态隐藏验证:
例如,对于同态加密算法E(x)→X,有:
E(ax1+bx2)=a*E(x1)+b*E(x2);
又例如,对于同态加密算法e(X,Y)→Z,有:
e(P+R,Q)=e(P,Q)+e(R,Q);
等等。
因此,在上述步骤中,零知识证明电路可以基于同态加密算法的特性和私钥—公钥—地址的映射关系实现验证加密的第三私钥p3-b是否具有加密的第三地址addr3-b的控制权:
否,则说明tx11的发送者无法证明其具有第三地址addr3-b的控制权,即,tx11的发送者无法证明其是投票账户b的控制者,无论投票账户b是否有投票权,tx11的投票均无效,tx11执行失败;
是,则继续进行下一项验证,区块链节点将tx11公开提交的第一默克尔树根root1、私密提交的第一默克尔路径path1、私密提交的第三地址addr3-b输入零知识证明电路进行验证。
具体地,本领域技术人员可以理解,如何根据不加密的默克尔树根、默克尔路径和叶子节点进行互相之间的验证,因此,本领域技术人员同样可以理解,在此基础上如何通过零知识证明电路对不加密的root1、加密的path1、加密的addr3-b进行验证。
当该步骤的验证失败时,说明无法证明addr3-b具有该投票的投票权,tx11执行失败;
当该步骤的验证成功时,说明成功验证了addr3-b具有该投票的投票权,则tx11执行成功,将第一加密投票信息E(vote_B`)和第二公钥P2-B记录到投票合约中。
tx12-tx15的执行过程与tx11相同,不再一一赘述。
在用户BCDEF分别投票之后,该投票的结算过程(通过发送包括第一私钥p4的投票结算交易触发投票合约进行解密和结算)与上述不匿名投票的结算过程完全相同,具体过程不再重复赘述。
上述实施例以根据具有投票权的各投票账户的第三地址生成第一默克尔树、匿名投票交易包括私密提交的第三地址为例,对上述方法进行了示例性的阐述;在另一实施例中,也可以配置为根据具有投票权的各投票账户的第三公钥生成第一默克尔树、匿名投票交易包括私密提交的第三公钥,可实现相同的技术效果。
上述实施例进一步通过在合约中配置用于验证投票权限的零知识证明电路,使得合约可以将投票用户端以通过同态加密算法加密后提交的若干信息输入零知识证明电路来验证投票用户是否具有投票权,从而实现了区块链上的匿名投票。
上述匿名投票方案存在一个问题,在于,不同的投票之间以各自的默克尔树根作为区分的标识,然而当完全相同的投票者以完全相同的投票账户同时进行多项不同的投票时,会导致合约无法区分这些投票。
针对上述问题,在一优选实施例中,上述通过投票合约执行投票注册交易还包括:为第一投票分配第一投票id;
第一投票交易还包括公开提交的第一投票id。
具体地,不同投票的投票id显而易见是各不相同的,可以保障在完全相同的投票者以完全相同的投票账户同时进行多项不同的投票时,合约也可以准确地区分各项投票。
上述实施例进一步通过配置投票id来解决相同投票人群的不同投票难以区分的问题。
上述匿名投票方案还存在另一个问题,在于,如果投票者对于同一个投票进行重复的恶意投票,合约无法判断该恶意投票是否重复投票。
针对上述问题,本申请进一步改进了技术方案。
在一优选实施例中,当第一投票为匿名投票时,第一投票交易还包括公开提交的第一哈希值,第一哈希值为第三私钥和第一投票id的运算结果的哈希值;
上述通过投票合约执行第一投票交易还包括:
根据私密提交的第三私钥、第一投票id和零知识证明电路验证第一哈希值;以及,
根据第一哈希值验证是否重复投票:是,则第一投票交易执行失败。
具体地,以用户B的用户端对于同一项匿名投票在发送匿名投票交易tx11之后,重复发送匿名投票交易tx21为例:
在本实施例中,tx11还包括公开提交的hash1=hash(p3-b+voteid);
在执行tx11时,区块链节点还将公开提交的hash1、公开提交的voteid、私密提交的p3-b输入零知识证明电路进行验证:
验证失败,则tx11执行失败;
验证成功,则判断投票合约中是否已经记录有hash1:
是,则说明tx11是重复投票,tx11执行失败;
否,则说明tx11不是重复投票,将hash1记录到投票合约中。
当用户B的用户端重复发送匿名投票交易tx21时,如果tx21包括错误的第一哈希值hash2,则tx21无法通过零知识证明电路的验证;如果tx21包括正确的第一哈希值hash1,则tx21无法通过第一哈希值的查重验证。因此,在本实施例中,重复投票的匿名投票交易无法通过合约的验证。
上述实施例进一步通过在零知识证明电路中配置基于投票私钥和投票id的验证,保障了同一个私钥对于同一个投票无法重复投票。
图2为本发明一实施例提供的另一种区块链加密投票方法的流程图。图2所示的方法可配合图1所示的方法执行。
如图2所示,在本实施例中,本发明还提供一种适用于用户端的区块链加密投票方法,区块链上配置有投票合约,该方法包括:
S21:为待注册的第一投票生成第一私钥和相应的第一公钥;
S23:生成包括第一公钥的投票注册交易并发送至区块链网络,以供区块链节点通过投票合约执行,将第一投票的第一公钥记录到区块链上,以供参与第一投票的各用户端:
获取第一公钥;
生成各自的第二私钥和第二公钥;
根据第二私钥和第一公钥通过Diffie-Hellman算法对投票内容加密以生成第一加密投票信息;
生成包括第一加密投票信息、第二公钥的第一投票交易并发送至区块链网络,以供区块链节点通过投票合约执行,在执行成功时将第一加密投票信息和第二公钥记录到投票合约中;
S25:生成包括第一私钥的投票结算交易并发送至区块链网络,以供区块链节点通过投票合约执行:
分别根据第一私钥和合约中记录的各第二公钥对相应的第一加密投票信息进行解密以获取相应的投票内容;
根据所获取的各投票内容对第一投票进行结算。
在一优选实施例中,投票合约中配置有用于验证匿名投票的投票权限的零知识证明电路;
当第一投票为匿名投票时:
投票注册交易还包括具有第一投票的投票权的各第一账户的第三公钥或第三地址;
投票合约还用于在执行投票注册交易时根据各第三公钥或第三地址生成并保存第一默克尔树;其中,第一默克尔树用于供控制第一账户的用户端获取第一默克尔树根和相应的默克尔路径;
投票合约还用于在执行第一投票交易时:
根据私密提交的第三私钥、私密提交的第三公钥或第三地址,以及,零知识证明电路验证匿名投票账户是否具有第三地址的控制权:否,则第一投票交易执行失败;
根据公开提交的第一默克尔树根、私密提交的第一默克尔路径、私密提交的第三公钥或第三地址,以及,零知识证明电路验证匿名投票账户是否具有第一投票的投票权:否,则第一投票交易执行失败。
其中,私密提交为通过同态加密算法加密后提交的参数提交方式。
进一步优选地,投票合约还用于在执行投票注册交易时为第一投票分配第一投票id;第一投票交易还包括公开提交的第一投票id。
进一步优选地,当第一投票为匿名投票时,第一投票交易还包括公开提交的第一哈希值,第一哈希值为第三私钥和第一投票id的运算结果的哈希值;
投票合约还用于在执行第一投票交易时:
根据私密提交的第三私钥、第一投票id和零知识证明电路验证第一哈希值;以及,
根据第一哈希值验证是否重复投票:是,则第一投票交易执行失败。
图2所示方法的投票原理可参照图1所示的各实施例,不再一一赘述。
图3为本发明一实施例提供的又一种区块链加密投票方法的流程图。图3所示的方法可配合图1和图2所示的方法执行。
如图3所示,在本实施例中,本发明还提供另一种适用于用户端的区块链加密投票方法,区块链上配置有投票合约,该方法包括:
S31:获取区块链上记录的第一投票的第一公钥;其中,第一公钥由区块链节点通过投票合约执行投票注册交易成功后记录到区块链上;
S33:生成第二私钥和第二公钥;
S35:根据第二私钥和第一公钥通过Diffie-Hellman算法对投票内容加密以生成第一加密投票信息;
S37:生成包括第一加密投票信息、第二公钥的第一投票交易并发送至区块链网络,以供区块链节点通过投票合约执行,在执行成功时将第一加密投票信息和第二公钥记录到投票合约中;
投票合约还用于执行包括第一公钥所对应的第一私钥的投票结算交易:
分别根据第一私钥和合约中记录的各公钥对相应的加密投票信息进行解密以获取相应的投票内容;
根据所获取的各投票内容对第一投票进行结算。
在一优选实施例中,投票合约中配置有用于验证匿名投票的投票权限的零知识证明电路;
当第一投票为匿名投票时:
上述生成包括第一加密投票信息、第二公钥的第一投票交易并发送至区块链网络之前还包括:
获取区块链上记录的第一投票的第一默克尔树;其中,第一默克尔树由区块链节点通过投票合约执行投票注册交易,根据具有第一投票的投票权的各第一账户的第三公钥或第三地址生成并保存;
根据第一默克尔树获取第一默克尔树根,以及,当前投票账户所对应的第一默克尔路径;
第一投票交易还包括公开提交的第一默克尔树根、私密提交的第一默克尔路径、私密提交的当前投票账户的第三私钥、私密提交的当前投票账户的第三公钥或第三地址;
投票合约还用于在执行第一投票交易时:
根据私密提交的第三私钥、私密提交的第三公钥或第三地址,以及,零知识证明电路验证当前投票账户是否具有第三地址的控制权:否,则第一投票交易执行失败;
根据公开提交的第一默克尔树根、私密提交的第一默克尔路径、私密提交的第三公钥或第三地址,以及,零知识证明电路验证当前投票账户是否具有第一投票的投票权:否,则第一投票交易执行失败;
其中,私密提交为通过同态加密算法加密后提交的参数提交方式。
进一步优选地,投票合约还用于在执行投票注册交易时为第一投票分配第一投票id;第一投票交易还包括公开提交的第一投票id。
进一步优选地,当第一投票为匿名投票时,第一投票交易还包括公开提交的第一哈希值,第一哈希值为第三私钥和第一投票id的运算结果的哈希值;
投票合约还用于在执行第一投票交易时:
根据私密提交的第三私钥、第一投票id和零知识证明电路验证第一哈希值;以及,
根据第一哈希值验证是否重复投票:是,则第一投票交易执行失败。
图3所示方法的投票原理同样可参照图1所示的各实施例,不再一一赘述。
图4为本发明一实施例提供的一种设备的结构示意图。
如图4所示,作为另一方面,本申请还提供了一种设备400,包括一个或多个中央处理单元(CPU)401,其可以根据存储在只读存储器(ROM)402中的程序或者从存储部分408加载到随机访问存储器(RAM)403中的程序而执行各种适当的动作和处理。在RAM403中,还存储有设备400操作所需的各种程序和数据。CPU401、ROM402以及RAM403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
以下部件连接至I/O接口405:包括键盘、鼠标等的输入部分406;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分407;包括硬盘等的存储部分408;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分409。通信部分409经由诸如因特网的网络执行通信处理。驱动器410也根据需要连接至I/O接口405。可拆卸介质411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器410上,以便于从其上读出的计算机程序根据需要被安装入存储部分408。
特别地,根据本公开的实施例,上述任一实施例描述的方法可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,计算机程序包含用于执行上述任一方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分409从网络上被下载和安装,和/或从可拆卸介质411被安装。
作为又一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例的装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,该程序被一个或者一个以上的处理器用来执行描述于本申请提供的方法。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这根据所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以通过执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以通过专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,各单元可以是设置在计算机或移动智能设备中的软件程序,也可以是单独配置的硬件装置。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离本申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (14)
1.一种区块链加密投票方法,其特征在于,区块链上配置有投票合约,所述方法适用于区块链节点,所述方法包括:
通过所述投票合约执行投票注册交易,将第一投票的第一公钥记录到区块链上,以供参与所述第一投票的各用户端:
获取所述第一公钥;
生成各自的第二私钥和第二公钥;
根据所述第二私钥和所述第一公钥通过Diffie-Hellman算法对投票内容加密以生成第一加密投票信息;
生成包括所述第一加密投票信息、所述第二公钥的第一投票交易并发送至区块链网络;
通过所述投票合约分别执行各所述第一投票交易,在执行成功时将相应的第一加密投票信息和第二公钥记录到所述投票合约中;
通过所述投票合约执行包括所述第一公钥所对应的第一私钥的投票结算交易:
分别根据所述第一私钥和合约中记录的各所述第二公钥对相应的第一加密投票信息进行解密以获取相应的投票内容;
根据所获取的各投票内容对所述第一投票进行结算。
2.根据权利要求1所述的方法,其特征在于,所述投票合约中配置有用于验证匿名投票的投票权限的零知识证明电路;
当所述第一投票为匿名投票时:
所述通过所述投票合约执行投票注册交易还包括:根据具有第一投票的投票权的各第一账户的第三公钥或第三地址生成并保存第一默克尔树;其中,所述第一默克尔树用于供控制所述第一账户的用户端获取第一默克尔树根和相应的默克尔路径;
通过所述投票合约执行所述第一投票交易还包括:
根据私密提交的第三私钥、私密提交的第三公钥或第三地址,以及,所述零知识证明电路验证匿名投票账户是否具有所述第三地址的控制权:否,则所述第一投票交易执行失败;
根据公开提交的所述第一默克尔树根、私密提交的第一默克尔路径、所述私密提交的第三公钥或第三地址,以及,所述零知识证明电路验证所述匿名投票账户是否具有所述第一投票的投票权:否,则所述第一投票交易执行失败;
其中,私密提交为通过同态加密算法加密后提交的参数提交方式。
3.根据权利要求2所述的方法,其特征在于,所述通过所述投票合约执行投票注册交易还包括:为所述第一投票分配第一投票id;
所述第一投票交易还包括公开提交的所述第一投票id。
4.根据权利要求3所述的方法,其特征在于,当所述第一投票为匿名投票时,所述第一投票交易还包括公开提交的第一哈希值,所述第一哈希值为所述第三私钥和所述第一投票id的运算结果的哈希值;
所述通过所述投票合约执行所述第一投票交易还包括:
根据私密提交的第三私钥、所述第一投票id和所述零知识证明电路验证所述第一哈希值;以及,
根据所述第一哈希值验证是否重复投票:是,则所述第一投票交易执行失败。
5.一种区块链加密投票方法,其特征在于,区块链上配置有投票合约,所述方法适用于用户端,所述方法包括:
为待注册的第一投票生成第一私钥和相应的第一公钥;
生成包括所述第一公钥的投票注册交易并发送至区块链网络,以供区块链节点通过所述投票合约执行,将所述第一投票的所述第一公钥记录到区块链上,以供参与所述第一投票的各用户端:
获取所述第一公钥;
生成各自的第二私钥和第二公钥;
根据所述第二私钥和所述第一公钥通过Diffie-Hellman算法对投票内容加密以生成第一加密投票信息;
生成包括所述第一加密投票信息、所述第二公钥的第一投票交易并发送至区块链网络,以供区块链节点通过所述投票合约执行,在执行成功时将所述第一加密投票信息和所述第二公钥记录到所述投票合约中;
生成包括所述第一私钥的投票结算交易并发送至区块链网络,以供区块链节点通过所述投票合约执行:
分别根据所述第一私钥和合约中记录的各所述第二公钥对相应的第一加密投票信息进行解密以获取相应的投票内容;
根据所获取的各投票内容对所述第一投票进行结算。
6.根据权利要求5所述的方法,其特征在于,所述投票合约中配置有用于验证匿名投票的投票权限的零知识证明电路;
当所述第一投票为匿名投票时:
所述投票注册交易还包括具有所述第一投票的投票权的各第一账户的第三公钥或第三地址;
所述投票合约还用于在执行所述投票注册交易时根据各所述第三公钥或第三地址生成并保存第一默克尔树;其中,所述第一默克尔树用于供控制所述第一账户的用户端获取第一默克尔树根和相应的默克尔路径;
所述投票合约还用于在执行第一投票交易时:
根据私密提交的第三私钥、私密提交的第三公钥或第三地址,以及,所述零知识证明电路验证匿名投票账户是否具有所述第三地址的控制权:否,则所述第一投票交易执行失败;
根据公开提交的所述第一默克尔树根、私密提交的第一默克尔路径、私密提交的第三公钥或第三地址,以及,所述零知识证明电路验证所述匿名投票账户是否具有所述第一投票的投票权:否,则所述第一投票交易执行失败;
其中,私密提交为通过同态加密算法加密后提交的参数提交方式。
7.根据权利要求6所述的方法,其特征在于,所述投票合约还用于在执行投票注册交易时为所述第一投票分配第一投票id;
所述第一投票交易还包括公开提交的所述第一投票id。
8.根据权利要求7所述的方法,其特征在于,当所述第一投票为匿名投票时,所述第一投票交易还包括公开提交的第一哈希值,所述第一哈希值为所述第三私钥和所述第一投票id的运算结果的哈希值;
所述投票合约还用于在执行第一投票交易时:
根据私密提交的第三私钥、所述第一投票id和所述零知识证明电路验证所述第一哈希值;以及,
根据所述第一哈希值验证是否重复投票:是,则所述第一投票交易执行失败。
9.一种区块链加密投票方法,其特征在于,区块链上配置有投票合约,所述方法适用于用户端,所述方法包括:
获取区块链上记录的第一投票的第一公钥;其中,所述第一公钥由区块链节点通过所述投票合约执行投票注册交易成功后记录到区块链上;
生成第二私钥和第二公钥;
根据所述第二私钥和所述第一公钥通过Diffie-Hellman算法对投票内容加密以生成第一加密投票信息;
生成包括所述第一加密投票信息、所述第二公钥的第一投票交易并发送至区块链网络,以供区块链节点通过所述投票合约执行,在执行成功时将所述第一加密投票信息和所述第二公钥记录到所述投票合约中;
所述投票合约还用于执行包括所述第一公钥所对应的第一私钥的投票结算交易:
分别根据所述第一私钥和合约中记录的各公钥对相应的加密投票信息进行解密以获取相应的投票内容;
根据所获取的各投票内容对所述第一投票进行结算。
10.根据权利要求9所述的方法,其特征在于,所述投票合约中配置有用于验证匿名投票的投票权限的零知识证明电路;
当所述第一投票为匿名投票时:
所述生成包括所述第一加密投票信息、所述第二公钥的第一投票交易并发送至区块链网络之前还包括:
获取区块链上记录的所述第一投票的第一默克尔树;其中,所述第一默克尔树由区块链节点通过所述投票合约执行所述投票注册交易,根据具有所述第一投票的投票权的各第一账户的第三公钥或第三地址生成并保存;
根据所述第一默克尔树获取第一默克尔树根,以及,当前投票账户所对应的第一默克尔路径;
所述第一投票交易还包括公开提交的所述第一默克尔树根、私密提交的所述第一默克尔路径、私密提交的当前投票账户的第三私钥、私密提交的当前投票账户的第三公钥或第三地址;
所述投票合约还用于在执行所述第一投票交易时:
根据私密提交的第三私钥、私密提交的第三公钥或第三地址,以及,所述零知识证明电路验证所述当前投票账户是否具有所述第三地址的控制权:否,则所述第一投票交易执行失败;
根据公开提交的第一默克尔树根、私密提交的第一默克尔路径、私密提交的第三公钥或第三地址,以及,所述零知识证明电路验证所述当前投票账户是否具有所述第一投票的投票权:否,则所述第一投票交易执行失败;
其中,私密提交为通过同态加密算法加密后提交的参数提交方式。
11.根据权利要求10所述的方法,其特征在于,所述投票合约还用于在执行投票注册交易时为所述第一投票分配第一投票id;
所述第一投票交易还包括公开提交的所述第一投票id。
12.根据权利要求11所述的方法,其特征在于,当所述第一投票为匿名投票时,所述第一投票交易还包括公开提交的第一哈希值,所述第一哈希值为所述当前投票账户的第三私钥和所述第一投票id的运算结果的哈希值;
所述投票合约还用于在执行第一投票交易时:
根据私密提交的第三私钥、所述第一投票id和所述零知识证明电路验证所述第一哈希值;以及,
根据所述第一哈希值验证是否重复投票:是,则所述第一投票交易执行失败。
13.一种计算机设备,其特征在于,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1-12中任一项所述的方法。
14.一种存储有计算机程序的存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-12中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110138682.2A CN112865980A (zh) | 2021-02-01 | 2021-02-01 | 区块链加密投票方法、计算机设备和存储介质 |
PCT/CN2021/143841 WO2022161108A1 (zh) | 2021-02-01 | 2021-12-31 | 一种匿名多重签名方法、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110138682.2A CN112865980A (zh) | 2021-02-01 | 2021-02-01 | 区块链加密投票方法、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112865980A true CN112865980A (zh) | 2021-05-28 |
Family
ID=75987571
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110138682.2A Pending CN112865980A (zh) | 2021-02-01 | 2021-02-01 | 区块链加密投票方法、计算机设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112865980A (zh) |
WO (1) | WO2022161108A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113627910A (zh) * | 2021-09-03 | 2021-11-09 | 杭州复杂美科技有限公司 | 一种区块链匿名红包发送方法、设备及储存介质 |
CN113746638A (zh) * | 2021-09-03 | 2021-12-03 | 杭州复杂美科技有限公司 | Nft存储方法、nft还原方法、计算机设备和存储介质 |
CN115457694A (zh) * | 2021-06-09 | 2022-12-09 | 浪潮卓数大数据产业发展有限公司 | 一种基于零知识证明的匿名投票方法、设备及介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115170322B (zh) * | 2022-09-05 | 2022-12-27 | 深圳市明源云科技有限公司 | 不动产产权的转让方法、装置、终端设备及计算机介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108768607A (zh) * | 2018-05-14 | 2018-11-06 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 一种基于区块链的投票方法、装置、设备及介质 |
CN109785494A (zh) * | 2018-12-21 | 2019-05-21 | 暨南大学 | 基于区块链的可追踪的匿名电子投票方法 |
KR20190076535A (ko) * | 2017-12-22 | 2019-07-02 | 충남대학교산학협력단 | 블록체인을 이용한 익명 투표 시스템 및 그 방법 |
CN110224993A (zh) * | 2019-05-16 | 2019-09-10 | 暨南大学 | 基于区块链的可追责匿名电子投票方法及系统 |
CN110311782A (zh) * | 2019-04-29 | 2019-10-08 | 山东工商学院 | 个人信息的零知识证明方法、系统及存储介质 |
CN110572267A (zh) * | 2019-09-09 | 2019-12-13 | 北京工业大学 | 一种基于联盟区块链的匿名电子投票方法 |
CN110855443A (zh) * | 2019-10-29 | 2020-02-28 | 上海唯链信息科技有限公司 | 一种基于区块链和零知识证明的投票方法及装置 |
US20200250747A1 (en) * | 2019-01-31 | 2020-08-06 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for dynamically assigning nodes to a group within blockchains based on transaction type and node intelligence using distributed ledger technology (dlt) |
CN111970121A (zh) * | 2020-07-30 | 2020-11-20 | 山东爱城市网信息技术有限公司 | 一种基于区块链技术的投票选举方法 |
CN112084260A (zh) * | 2020-08-21 | 2020-12-15 | 张亮 | 一种基于区块链和分布式密钥生成的匿名否决方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10742424B2 (en) * | 2018-08-29 | 2020-08-11 | International Business Machines Corporation | Trusted identity solution using blockchain |
US10972274B2 (en) * | 2018-08-29 | 2021-04-06 | International Business Machines Corporation | Trusted identity solution using blockchain |
CN112968881B (zh) * | 2021-02-01 | 2022-05-24 | 杭州复杂美科技有限公司 | 区块链匿名投票方法、计算机设备和存储介质 |
CN113112268A (zh) * | 2021-03-19 | 2021-07-13 | 杭州复杂美科技有限公司 | 匿名多重签名方法、计算机设备和存储介质 |
CN113112269B (zh) * | 2021-04-09 | 2023-11-28 | 杭州复杂美科技有限公司 | 多重签名方法、计算机设备和存储介质 |
CN113095827B (zh) * | 2021-04-09 | 2023-11-28 | 杭州复杂美科技有限公司 | 匿名多重签名方法、计算机设备和存储介质 |
-
2021
- 2021-02-01 CN CN202110138682.2A patent/CN112865980A/zh active Pending
- 2021-12-31 WO PCT/CN2021/143841 patent/WO2022161108A1/zh active Application Filing
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190076535A (ko) * | 2017-12-22 | 2019-07-02 | 충남대학교산학협력단 | 블록체인을 이용한 익명 투표 시스템 및 그 방법 |
CN108768607A (zh) * | 2018-05-14 | 2018-11-06 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 一种基于区块链的投票方法、装置、设备及介质 |
CN109785494A (zh) * | 2018-12-21 | 2019-05-21 | 暨南大学 | 基于区块链的可追踪的匿名电子投票方法 |
US20200250747A1 (en) * | 2019-01-31 | 2020-08-06 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for dynamically assigning nodes to a group within blockchains based on transaction type and node intelligence using distributed ledger technology (dlt) |
CN110311782A (zh) * | 2019-04-29 | 2019-10-08 | 山东工商学院 | 个人信息的零知识证明方法、系统及存储介质 |
CN110224993A (zh) * | 2019-05-16 | 2019-09-10 | 暨南大学 | 基于区块链的可追责匿名电子投票方法及系统 |
CN110572267A (zh) * | 2019-09-09 | 2019-12-13 | 北京工业大学 | 一种基于联盟区块链的匿名电子投票方法 |
CN110855443A (zh) * | 2019-10-29 | 2020-02-28 | 上海唯链信息科技有限公司 | 一种基于区块链和零知识证明的投票方法及装置 |
CN111970121A (zh) * | 2020-07-30 | 2020-11-20 | 山东爱城市网信息技术有限公司 | 一种基于区块链技术的投票选举方法 |
CN112084260A (zh) * | 2020-08-21 | 2020-12-15 | 张亮 | 一种基于区块链和分布式密钥生成的匿名否决方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115457694A (zh) * | 2021-06-09 | 2022-12-09 | 浪潮卓数大数据产业发展有限公司 | 一种基于零知识证明的匿名投票方法、设备及介质 |
CN113627910A (zh) * | 2021-09-03 | 2021-11-09 | 杭州复杂美科技有限公司 | 一种区块链匿名红包发送方法、设备及储存介质 |
CN113746638A (zh) * | 2021-09-03 | 2021-12-03 | 杭州复杂美科技有限公司 | Nft存储方法、nft还原方法、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2022161108A1 (zh) | 2022-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113424185B (zh) | 快速不经意传输 | |
US11206132B2 (en) | Multiparty secure computing method, device, and electronic device | |
TWI718585B (zh) | 使用同態加密的區塊鏈資料保護 | |
CN111989893B (zh) | 用于生成和链接零知识证明的方法、系统和计算机可读装置 | |
CN110084068B (zh) | 区块链系统及用于区块链系统的数据处理方法 | |
CN112865980A (zh) | 区块链加密投票方法、计算机设备和存储介质 | |
JP4639084B2 (ja) | セキュア認証の暗号方法および暗号装置 | |
TWI744532B (zh) | 用以於區塊鏈網路節點間建立受信賴點對點通訊之方法與系統 | |
WO2019080933A1 (zh) | 一种区块链交易隐私保护方法及系统 | |
US20200401726A1 (en) | System and method for private integration of datasets | |
US10887104B1 (en) | Methods and systems for cryptographically secured decentralized testing | |
CN112968881B (zh) | 区块链匿名投票方法、计算机设备和存储介质 | |
WO2019209168A2 (zh) | 数据处理方法、相关装置及区块链系统 | |
JP2024028608A (ja) | デジタルリソースへのアクセスを移転するための、コンピュータにより実施されるシステム及び方法 | |
CN111931250A (zh) | 多方安全计算一体机 | |
BR112019008174A2 (pt) | método implementado por computador, meio de armazenamento legível por computador, não transitório e sistema | |
KR20210139344A (ko) | 데이터 기반 활동을 수행하는 방법 및 장치 | |
CN115348006B (zh) | 一种后量子安全的访问控制加解密方法、装置和系统 | |
US11496287B2 (en) | Privacy preserving fully homomorphic encryption with circuit verification | |
CN108259180B (zh) | 一种量子指定验证者签名的方法 | |
CN112003690B (zh) | 密码服务系统、方法及装置 | |
CN112784305A (zh) | 加密投票方法、计算机设备和存储介质 | |
CN111865948A (zh) | 基于匿名身份的对等云认证和密钥协商方法、系统和计算机存储介质 | |
US20220366381A1 (en) | System and method for distributed storage of transactions | |
CN115361196A (zh) | 一种基于区块链网络的业务交互方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210528 |
|
WD01 | Invention patent application deemed withdrawn after publication |