iso file download
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210493796.3 (22)申请日 2022.05.08 (71)申请人 郑云山 地址 200030 上海市徐汇区吴兴 路270弄2 号2411室 (72)发明人 郑云山  (74)专利代理 机构 上海海贝律师事务所 313 01 专利代理师 范海燕 (51)Int.Cl. H04L 9/40(2022.01) H04L 9/30(2006.01) H04L 9/32(2006.01) H04L 9/08(2006.01) H04L 9/06(2006.01) H04L 67/1097(2022.01)H04L 67/53(2022.01) (54)发明名称 一种基于区块链和零知识证明的匿名凭证 验证方法及系统 (57)摘要 本发明提出了一种基于区块链和零知识证 明的匿名凭证验证方法及系统, 创建比特币地址 进行交易, 并创建交易合约TB; 区块链中的用户 随机选择消息m, 同时发送哈希值给终端设备, 终 端设备发送哈希值h给第三方计算设备L, 第三方 计算设备L检查哈希值h是否与先前由第三方计 算设备L签署的交易合约中的任意h匹配, 用户盲 化消息m得到w ’, 并等待请求合约TO被确认; 用户 创建交易合约TO’, 第三方计算设备L等待 交易合 约TO’被确认, 从而建立一个交易合约TF去完成 交换, 用户从区块链上看到交易合约TF, 并从中 得到盲签名σ ′; 用户去盲得到σ,并发送凭证给 终端设备, 终端设备创建交易合约TF, 交易合约 TB开始生效。 权利要求书2页 说明书7页 附图2页 CN 114978622 A 2022.08.30 CN 114978622 A 1.一种基于区块链和零知识证明的匿名凭证验证方法, 其特 征在于, 包括以下步骤: 步骤S1、 终端设备创建一个新的临时的比特币地址去进行一笔交易, 并创建一个交易 合约TB; 步骤S2、 区块链中的用户随机选择消息m, 同时发送哈希值h=H(m)给终端设备, 其中, H 为哈希函数; 步骤S3、 终端设备发送哈希值h给第三方计算设备L, 并请求第三方计算设备L创建能提 供a个比特币给终端设备的交易 合约TO, 终端设备必须在t2时间内提供一个有效的凭证; 步骤S4、 第三方计算设备L检查哈希值h是否与先前由第三方计算设备L签署的交易合 约中的任意h匹配, 如果 不匹配, 第三方计算设备L创建所述请求 合约TO并提交到区块链上; 步骤S5、 用户盲化消息m得到w ’, 并等待请求 合约TO被确认; 步骤S6、 用户创建能向第三方计算设备L提供a+w个比特币的交易合约TO’, 第三方计算 设备L必须在t1时间内给用户提供一个有效的盲签名; 步骤S7、 第三方计算设备L等待交易合约TO’被确认, 从而 建立一个交易合约TF去完成交 换, 并将交易合约TF寄存到区块链上, 其中交易合约TF包含盲签名σ ′, 此时, 交易合约TO’中 的a+w个比特币将发送给第三方计算设备L; 步骤S8、 用户从区块链上看到交易 合约TF, 并从中得到盲签名 σ ′; 步骤S9、 用户对盲签名σ ′去盲得到σ, 并发送凭证V=(m, σ )给终端设备, 终端设备创建 包含凭证V=(m, σ )的交易合约TF, 从而, TF中的比特币将发送给终端设备, 交易合约TB开始 生效。 2.根据权利要求1所述的匿名凭证验证方法, 其特征在于, 所述步骤S9中, 为终端设备 创建包含匿名凭证V=(m, σ )的交易 合约TF的具体过程包括: 初始设置阶段, 生成公开参数{G, q, G ’}, 其中G是椭 圆曲线群, q是大素数, 为椭 圆曲线 的阶, G’是群G的生成元, 用户根据随机函数生成私钥sk, 并根据有限域上的椭圆曲线生成 公钥PK=sk*G; 混淆地址生成, 终端设备选择随机函数r作为一 次性私钥, 通过有限域上的椭圆曲线生 成一次性公钥PK=r*G, 通过链下通信或隐蔽信道将该一次性公钥发送给第三方计算设备 L, 根据公式P=HASH(r*PK|i)G ’+PK生成一次性地址, 将此一次性地址作为交易的接收地 址; 数据匿名存 储协议生成, 包括: 伪身份生成阶段、 加密钥生成阶段和数据加密阶段; 交易生成与验证, 输入私钥sk和随机数r, 系统会生成解锁脚本<e, s>, 其中e=HASH (R||mess  age), s=r+e*sk。 其中R=r*G, message为交易信 息, 解锁后, 输入终端设备的一 次性公钥以及随机数生成交易信息并将其提交至验证节点, 根据终端设备提交的解锁脚本 <e, s>, 验证节点计算R ′=s*G‑e*PK, 然后验证e=HASH(R ′||message)是否成立。 3.根据权利要求2所述的匿名凭证验证方法, 其特 征在于, 伪身份生成阶段, 终端设备和第三方计算设备L相互协商两个随机数T, R, 使用这两个 随机数和终端设备的身份Tid生成公钥/私钥 对: (PKpse/SKpse), 该公私钥 对作为生成伪身 份的公私钥, 加密后生成伪身份为PseID; 加密钥生成阶段, 第三方计算设备L 生成对称加密钥K; 数据加密阶段, 输入原始数据M, 对应的伪 身份PseID, 当前 时间戳Ts, 使用对称加密钥K权 利 要 求 书 1/2 页 2 CN 114978622 A 2加密并生成密文C并存 储在本地数据库中, 同时将数据库中数据的地址存 储在区块链上。 4.根据权利要求3所述的匿名凭证验证方法, 其特征在于, 伪身份生成基于ElGamal加 密算法, 选择一个满足安全要求的大素数p, 生成阶为p的群 的一个生成元 选取单 项哈希函数生成公私钥对PKT/SKT, 生成其唯一身份标识Tidi(1≤i≤n), i为当前终端设备 序号, n为终端设备的个数, 选择随机数 将自身的唯一身份标识Tidi和随 机数R一起发送给第三方计算设备L, 第三方计算设备L将随机数T加密后发送给终端设备; 第三方计算设备L接收到终端设备发送过来的Tidi和R后, 计算: gH(T)·R, 则为终端设备 生成伪身份的公私钥对为: SKpse≡H(Tid)+H(gH(T)·R); 第三方计算设备L将终端设备的身份Tid分为n个分组, 每个分组的长度均为L, 即: Tid =Tid1Tid2…Tidn; 为每一个分组Tidi选择一个随机数ri, 1<i<n, 1<ri<p‑1, p为阶, 并计算: 终端设备的伪身份为: PseID=(c1, c′1)(c2, c′2)...(cn, c′n)。 5.一种基于区块链和零知识证明的匿名凭证验证系统, 其特征在于, 用于实现权利要 求1‑4任意一项 所述的匿名凭证验证方法, 包括: 所有者、 第三方计算设备、 区块链和数据匿 名存储协议; 所述终端设备作为数据的产生 者, 具有收集数据功能的传感器或者智能设备; 所述第三方计算设备, 用来帮助所述终端设备生成伪身份, 第三方计算设备在为终端 设备生成伪身份之后, 该伪身份代替真实身份和数据一 起存放到数据匿名存 储协议中; 所述数据匿名存储协议中每一条数据的地址都存放到区块链上, 同时, 伪身份和真实 身份的对应关系被存放到区块链上, 用于举 证和溯源。权 利 要 求 书 2/2 页 3 CN 114978622 A 3

.PDF文档 专利 一种基于区块链和零知识证明的匿名凭证验证方法及系统

文档预览
中文文档 12 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共12页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种基于区块链和零知识证明的匿名凭证验证方法及系统 第 1 页 专利 一种基于区块链和零知识证明的匿名凭证验证方法及系统 第 2 页 专利 一种基于区块链和零知识证明的匿名凭证验证方法及系统 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 08:14:27上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。