没有合适的资源?快使用搜索试试~ 我知道了~
⃝可在www.sciencedirect.com在线获取ScienceDirectICTExpress 7(2021)290www.elsevier.com/locate/icte区块链上可验证文档的轻量级选择性披露Kenji Saitoa,Chu,Satoki Watanabeba日本东京早稻田大学商业和金融研究生院b日本藤泽庆应义塾大学媒体与治理研究生院接收日期:2021年3月1日;接收日期:2021年6月22日;接受日期:2021年8月2日2021年8月20日网上发售摘要为了实现轻量级的选择性披露以保护文档持有者的隐私,我们提出了一种用于文档的XML格式,可以使用加密哈希函数和salts隐藏任意元素,这允许部分数字签名和有效验证,以及可以转换为此类XML的JSON格式。可以通过表示多个文档来有效地证明文档的存在。例如Merkle树,并将其根存储在区块链中。我们表明,我们的建议具有优势,比已知的方法,代表文件本身作为一个Merkle树和部分隐藏它。c2021韩国通信和信息科学研究所(KICS)。Elsevier B. V.提供的出版服务。这是CC BY-NC-ND许可证下的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。关键词:选择性披露;内容提取签名;隐私;存在证明;区块链1. 介绍1.1. 问题概述选择性披露是一种保护用户隐私的重要机制,它通过隐藏证书或其他文档中不必要的部分,只提供部分披露作为证据。例如,在商店购买酒精饮料时,您需要证明您已经达到一定的年龄。但是,公共机构颁发的许多证书,如驾驶执照,包含的信息不仅仅是你的出生日期。从隐私保护的角度来看,您应该能够仅向商店提供出生日期(或您超过一定年龄),并使其可验证该事实已由公共机构认证(部分披露)。又例如,在向公司提交大学成绩单以供雇用时,应该没有必要披露与此无关的课程的成绩。此外,最好有讲师的数字签名,每门课程评分,以确保评估的真实性(部分签名)。∗ 通讯作者。电子邮件地址:ks91@aoni.waseda.jp(K.Saito),syami@sfc.wide.ad.jp(S.Watanabe)。同行评审由韩国通信和信息科学研究所(KICS)负责https://doi.org/10.1016/j.icte.2021.08.0121.2. 贡献在本文中,我们展示了这些问题的一个简单的解决方案虽然第2.4节中描述的已知实践仅允许部分披露,但我们提出的技术允许部分披露和部分签名。我们还表明,我们的解决方案的工作原理与较少的计算开销相对于摘要计算的数量。1.3. 限制身份可能泄漏的相关性问题仍然与所提出的技术,因为我们的解决方案具有链接性,验证者将知道如果多个验证处理同一文档。然而,这个问题可以通过遵循技术标准或通过某种法律秩序来解决。我们将在后面的6.3节讨论这个问题。2. 背景2.1. 选择性披露选择性公开已经被研究了很多年,有时被称为内容提取签名,因为它提取了一些签名的可验证内容。除了最简单的为每个可以公开的单位签名的解决方案外,还有两种解决方案2405-9595/2021韩国通信和信息科学研究所(KICS)。出版社:Elsevier B.V.这是一个开放的访问CC BY-NC-ND许可证下的文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。K. Saito和S.渡边ICT Express 7(2021)290291图1.一、用 于 选 择 性 公 开 的 签名XML数据格式及其验证方式。(a)允许部分公开的签名方法(例如[1]),以及(b)将密码散列函数应用于未公开的部分(例如[2])。我们的解决方案是后者的一个例子。许多研究在他们的目标中包含了不可联系性,是为了避免使用从每次披露中收集的信息达到文件持有人的身份,使他们难以挑战。2.2. Merkle树Merkle树[3]是一种哈希树结构,允许用单个值表示多个元素,用于证明元素的存在,同时掩盖其他元素。我们对Merkle树的使用如图所示。3.第三章。2.3. 区块链区块链[4]是一种内部使用Merkle树和其他加密摘要技术的结构,允许公众可验证的防篡改存储。区块链中信息的可验证性基于状态机到参与节点的复制。对此的分析包括[5]和[6]。以太坊[7]是一个基于区块链的应用程序平台,用于确保程序代码(智能合约),其执行日志和结果状态的真实性。2.4. 已知的选择性披露做法存在使用区块链的文档的选择性公开的已知实践,例如在博客中描述的。条目[8]。在该方法中,文档本身通过将文档的所有元素放置为叶子来表示为Merkle树,其根存储在区块链中。3. 设计3.1. XML数据格式我们建议将文档(的签名部分)表示为包含在容器XML节中的XML元素序列,如图所示。1(本例为身份证星期三亚当斯(Wednesday Addams)容器节可以具有分别表示用于验证签名的数字签名算法、签名和公钥的algo、sig和pubkey每个元素都可以有salt属性,这样就很难猜测摘要的原像我们定义密码散列函数h,用于获得签名文档的摘要,如下所示。首先,我们将基本加密散列函数h′定义为例如SHA-1。256.为了获得容器节中每个元素的摘要,如果它是嵌套的,则应用h,否则应用h′。将产生的摘要串连接起来,然后应用h′如果容器节包含关于签名的属性,我们将文档的摘要与公钥(pubkey的值),表示签名算法的数字(algo的值)和签名数据(sig的值)连接起来,并应用h′。结果是签名文档的摘要为了有选择地公开文档的内容,不公开的部分被表示为摘要元素。K. Saito和S.渡边ICT Express 7(2021)290292⟨⟩表1摘要计算的数量比较我们的建议配准n+1≥ 2n− 1a验证d+1≥ log2n+1n:项目数;d:披露项目数一个下界,其中d=1。图二. 示例JSON结构。3.2. JSON表示为了验证证明,验证者从(签名的)文档和子树的摘要中重新生成Merkle树,并检查Merkle根是否存储在以太坊区块链上的合约中。4. 评价我们的建议显然比我们在2.4节中描述的已知实践在处理嵌套结构化文档和部分签名方面具有优势。为了提高计算效率,我们在表1中比较了签名之前的摘要计算次数,假设是一个平面文档。如果结构是嵌套的,则递归地应用结果。如果所有项目均已披露,则验证的摘要计算次数与注册的相同。在发送文件数据进行验证时,需要进行与注册相同的计算,除非所有临时费用都已预先计算并存储。为了公平起见,我们可以估算出最终摘要我们的提案在签署之前的计算是n而不是1,我们还提出了一种JSON表示(图2),转换为XML数据格式。salt对象用于因为n2对于我们的建议,需要把反对者联系起来。用于指定相应项目的盐用于部分而不是2用于Merkle树的临时计算。1然后我们得到3n用于注册,d+n用于验证。不过,公开,以“digest”开头的名称和“browst2”(因为对象中的名称需要是唯一的在JSON规范中)可以代替每个项目,以隐藏相应XML元素的摘要,值,在这种情况下,salt对象中对应的algo、sig、pubkey成员被转换为容器XML节的相应属性。proof对象指定如何证明文档的存在(参见第3.3节)。spec对象指定区块链信息。子树对象是一个位置、摘要对序列,用于复制Merkle树。位置是3.3. 存在证明为了提高效率,我们使用Merkle树来证明同时注册的多个文档的存在,如图3所示。我们可以在以太坊上使用智能合约,如我们在图4中显示的先前工作[9]所述,它存储了块的Merkle根和高度之间的映射在此存储根,使得验证者可以知道注册的近似定时。我们的建议对于n>2的配准或等效计算具有优势。对于验证,已知的实践可能在小d和大n的情况下看起来更好,但是对于大n,文档通常会被嵌套,在这种情况下,我们的建议将具有相等或更大的对数效应。5. 相关工作5.1. 基于区块链的选择性披露[10]是使用Merkle树来表示凭证的已知实践的应用的示例,其中Merkle根被数字签名。Coconut [11]提供了无争议的选择性披露,但成本较高。例如,在以太坊实现中,验证需要花费gas或trans-action fee,而我们的提案不需要gas进行验证。Blockcerts [12]标准,与IMS Open Badges保持一致[13] 和W3C Verifiable Credentials [14],通常用于使用区块链实现证书,但选择性披露被认为是未来的工作。例如,有人提议使用区块链以可验证的形式存储个人隐私信息,如医疗记录。希望在这种情况下能够实现选择性披露。1 实际成本应该取决于所使用的哈希函数K. Saito和S.渡边ICT Express 7(2021)290293图3.第三章。 Merkle树的存在性证明图四、 BBcAnchor智能合约代码(摘录),用于存储和检查Mer kle 根的存在。5.2. W3C建议可验证的凭证数据模型[14],W3C的建议及其实施指南[16]建议应生成凭证的唯一表示,以便选择性地公开以实现不可链接性。这对我们的建议的影响是改变盐,以在发行人的帮助下逐案生成可证明的6. 讨论6.1. 我们提案与已知的实践和其他相关的方法相比,我们的建议具有计算简单的优点。工作另一个优点是,它很容易处理结构化文档,并允许对文档的部分进行数字签名。6.2. 我们的提案一个问题是,只能在隐藏表示为XML元素的部分的粒度级别上有选择地公开文档。这可能不是问题在处理身份证时,这是一个问题,但是,例如,如果我们想要证明所请求的公共文件的真实性,而个人的名字需要在规定的年份内保持隐藏,这可能是一个问题我们的提案还存在一个可链接性问题,因为对于同一份文件,要签署的摘要总是相同的(如果使用相同的盐单凭发行人不能K. Saito和S.渡边ICT Express 7(2021)290294\\跟踪文件持有人,因为不需要验证过程来验证发行人但验证者可以。例如,如果星期三·亚当斯连续两天来买酒,一家卖酒的商店就会知道同一个人来了。6.3. 如何克服弱点粒度问题可以通过应用结构化文档来解决,这是我们建议的一个优点。我们可以准备一个部分,为任何敏感的单词或名称定义一个替换字符串,例如,“WednesdayAddams”被放置为“1”,而在文档中使用“1”。替换字符串的部分可以在必要时隐藏。该解决方案不需要改变所提出的技术本身。可链接性问题可以通过遵循W3C的建议(见5.2节)或通过制定法律安排使跟踪文档持有者对验证者来说是非法的来解决。虽然隐私当然很重要,但为了维护公共秩序和人身安全,有时需要能够跟踪特定个人(罪犯、受害者或失踪人员)的行动。特别是关于公共机构签发的证明,可能有理由让调查当局有可能进行追踪(这应需要法院命令),因为调查当局也是公共机构。我们认为,应通过其他方式实现彻底的隐私。7. 结论7.1. 总结我们提出了一种轻量级的解决方案,用于选择性地公开部分文档以保护隐私,该解决方案允许部分签名以确保真实性,其中通过使用区块链有效地证明文档的存在。虽然我们只展示了用于前端处理的JSON表示,但它应该适用于其他表示,如YAML。我们的实现在GitHub2上作为示例Web应用程序和API提供。7.2. 今后工作为了避免可链接性的问题,可能有必要设计一种协议,该协议在逐案的基础上将凭证的呈现传递给用户,遵循W3C的规定,即凭证的不同呈现应该在不同的场合传递给验证者以保护用户的隐私。积极参与标准化也可以是我们未来的工作。CRediT作者贡献声明斋藤健二:写作-评论编辑,资金获取,软件。渡边智树:调查。2 https://github.com/beyond-blockchain/examples/tree/master/certify-web.竞合利益作者声明,他们没有已知的可能影响本文所报告工作确认这项工作得到了JSPS的支持,日本KAKENHI资助号JP21H 04872。引用[1] J.Camenisch , A.Lysyanskaya , SignatureSchemesandanonymouscredentials frombilinear maps , in : AdvancesinCryptology-NIPPTO 2004,2004,pp. 56比72[2] L. Bull , P. Stanski , D. M. Squire , Content extraction signaturesusing XML digital signatures and custom transforms on-demand,in:Pro-ceedings of the 12th International Conference on World WideWeb,2003,pp. 170http://dx.doi.org/10.1145/775152.775176[3] R.C. Merkle,基于传统加密函数的数字签名,载于:Advances inCryptology -NIPPTO '87,Springer,Berlin,Heidelberg,1988,pp.369-http://dx.doi.org/10.1007/3-[4] S. Nakamoto , Bitcoin : A Peer-to-Peer Electronic Cash System ,2008,http://bitcoin.org/bitcoin.pdf.[5] S.张杰- H. Lee,区块链主要共识协议分析,ICT Express 6(2)(2020)93http://dx.doi.org/10.1016/[6] K. 斋 藤 , H. 山 田 , 区 块 链 有 什 么 不 同 ? - 168http://dx.doi.org/10.1109/ICDCSW.2016。 28岁。[7] V. Buterin,下一代智能合约和去中心化AP-应用平台,2013,https://github.com/ethereum/wiki/wiki/White-Paper.[8] R. Hitchman,Selective disclosure in solidity for ethereum,2018,https://medium.com/robhitchens/selective-disclosure-with-proof-f6a1ac7be978。[9] H.渡边K.斋藤宫崎T.冈田,H. Fukuyama,T. 卡托角,澳-地Taniguchi,使用无源RFID标签和区块链证明物流信息的真实性,2020,arXiv:2011.05442。[10] R. Mukta,J. Martens,H. y. Paik,Q. Lu,S.S. Kanhere,基于区块链的可验证凭据共享与选择性披露,在:2020年IEEE第19届计算和通信信任,安全和隐私国际会议,TrustCom,2020年,第19页。959http://dx.doi.org/10.1109/TrustCom50675.2020.00128[11] A. Sonnino,M.Al-Bassam,S.巴诺,S.Meiklejohn,G.Danezis,椰子:阈值发行选择性披露凭证与分布式账本的应用,2020年,arXiv:1802.07344。[12] blockcerts.org , Blockcerts : 区 块 链 证 书 的 开 放 标 准 ,https://www.blockcerts.org。[13] IMS全球学习联盟,IMS开放徽章,openbadges.org。[14] B. Zundel,M.斯波尼湾Noble,D. Burnett,D. Longley,VerifiableCredentialsDataModel1.0,W3C,2019,https://www.w3.org/TR/2019/REC-vc-data-model-20191119/.[15] R. Johari,V. Kumar,K. Gupta,D.P. Vidyarthi,BLOSOM:用于医疗记录安全的区块链技术,ICT Express(2021)http://dx.doi.org/10.1016/j.icte.2021.06.002,(出版中)。[16] A. Sambra , 可 验 证 凭 据 实 施 指 南 1.0 , W3C , 2019 ,https://www.w3.org/TR/2019/NOTE-vc-imp-guide-20190924/。
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 十种常见电感线圈电感量计算公式详解
- 军用车辆:CAN总线的集成与优势
- CAN总线在汽车智能换档系统中的作用与实现
- CAN总线数据超载问题及解决策略
- 汽车车身系统CAN总线设计与应用
- SAP企业需求深度剖析:财务会计与供应链的关键流程与改进策略
- CAN总线在发动机电控系统中的通信设计实践
- Spring与iBATIS整合:快速开发与比较分析
- CAN总线驱动的整车管理系统硬件设计详解
- CAN总线通讯智能节点设计与实现
- DSP实现电动汽车CAN总线通讯技术
- CAN协议网关设计:自动位速率检测与互连
- Xcode免证书调试iPad程序开发指南
- 分布式数据库查询优化算法探讨
- Win7安装VC++6.0完全指南:解决兼容性与Office冲突
- MFC实现学生信息管理系统:登录与数据库操作
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功