有人推测,TRX 这波行情,可能是针对散户的 “局”,因为只选择了 TRX/BTC 这一个交易对,有大量 TRX 的资金方,可趁此机会卖出 TRX,换比特币。
放消息、做气氛,吸资金、炒价格,急涨急跌,这一周以来发生在加密货币市场的情形,与美国监管机构此前警告的坐庄策略非常类似。
“韭菜的记忆,只有 7 秒。” 一名加密货币投资者解释,为何相似的事件总反复发生。
循环往复的市场起落之外,也有人在关注加密货币的新意义——比特币的跟随者们声称,要在积弊已久的传统金融世界之外,构建一个去中心化的新金融体系。
动机之一是现状并不令人满意。许志宏有一个观察,比特币升值不是因为人们相信比特币,而是因为他们不信美元:“只有在一个不那么好的世界,加密货币才会升值,升值是因为疫情、经济下行和法币超发。”
于是以马斯克为代表,部分人开始想象,一个加密货币发挥重要作用的新系统。他对 Dogecoin 的强烈兴趣围绕一个关键词 “新的流通货币”。
Dogecoin 看起来确实有一些成为未来流通货币的潜力:非常便宜、对普通人门槛低 、去中心化程度相对高。刚刚发生的新一轮行情又进一步增加了 Dogecoin 的知名度和用户数量。
在 2 月 1 日于语音社交软件 Clubhouse 的发言中,马斯克称,Dogecoin 成为地球未来通货并非不可能;他还后悔没有更早入手比特币,因为他认为比特币即将被广泛接受。
聚光灯下的名流之外,大众的态度也在发生变化:2018 年 9 月,有人发起一场请愿,希望亚马逊能接受 Dogecoin 作为平台支付货币,一年后获得的签名数是 2.2 万。
而最近一周内,这个请愿被重新注意,现在已获得近 8 万人的支持,且每 5 分钟就会新增 1 个支持者,它的最终目标是收集 15 万签名。
亚马逊可能不会因为 15 万人的意见就接受 Dogecoin。但狂热之后,一种新事物确实吸引了更多认真的目光,这是酝酿未来变化的开端。
加密货币是什么?对连续踏空的散户,它是暴富愿望的幻灭;对于庄家,它是真实的套利机会;对机构而言,它是新的资产类型;对监管者,它是急需规范的新生事物;对一个好奇心旺盛的人,它是可供观察的研究对象。
运营狗狗中国社区两年的许志宏也给出了一种答案:“它是现实世界的照妖镜。”
引用本文:程朝辉.数字签名技术概览[J].信息安全与通信保密,2020(7):48-62.
摘 要
本文对数字签名技术进行概览综述,以便读者对该技术有一个比较全面的了解。文章首先介绍数字签名技术的基本原理,然后回顾数字签名技术四十年发展的历程以及期间发生的一些具有标志性的事件。另外针对特殊功能需求,学术界提出了许多具有附加属性的数字签名技术,本文对这类技术进行一个梳理和概览。文章最后对一些重要的数字签名技术标准进行汇总。
关键词:数字签名技术;数字签名算法标准;带属性的数字签名;公钥密码内容目录:1 数字签名原理2 数字签名技术发展历程3 具备附加属性的数字签名技术4 数字签名算法标准5 结 语
01
数字签名原理
人类在很长时间都是以手写签名、印章或指模等来确认作品、文件等的真实性,包括认定作品的创作者、文件签署者的身份,推定作品的真伪或者文件内容的真实性。数字签名技术用于在数字社会中实现类似于手写签名或者印章的功能,即实现对数字文档进行签名。数字签名技术实际上能够提供比手写签名或印章更多的安全保障。一个有效的数字签名能够确保签名确实由认定的签名人完成,即签名人身份的真实性(authentication);被签名的数字内容在签名后没有发生任何的改变,即被签名数据(也称签名消息或简称消息)的完整性(integrity);接收人一旦获得签名人的(包括被签名数据的) 有效签名后,签名人无法否认其签名行为,即不可抵赖性(non-repudiation)。
本文中的数字签名技术特指采用非对称密码机制来实现的签名技术。一个签名人具有一对密钥,包括一个公钥和一个私钥。签名人公开其公钥,签名验证人(简称验签人)需要在验证签名前获取签名人的真实公钥。如果验签人需验证多个签名人的签名,则必须预先知道每个签名人和其公钥的对应关系。在满足以上前提的情况下,签名人就可以使用其私钥对任意消息进行签名操作,生成签名值;任意知道公钥的验签人都可以通过验签操作验证对消息的签名值相对于某公钥是否有效。若待签名消息过大时,可以先采用杂凑算法生成消息的摘要(类似于数据的指纹)后再对摘要进行数字签名。为了实现真实性、完整性和不可抵赖性功能,数字签名机制需要满足一定的安全需求。简单地讲,安全的数字签名机制要求:1)在没有私钥的情况下,生成某个消息的有效签名在计算上是不可行的;2)根据公钥和消息/ 签名对, 计算出签名私钥是不可行的。更加严格的数字签名机制安全定义是在选择消息攻击下具有不可伪造性(Existential Unforgeability under Adaptive Chosen Message Attack: EUF-CMA),即攻击者可任意选择多项式个消息请签名人生成并获得对应的签名,仍然无法生成一个新消息的合法签名。更高安全性的定义是选择消息攻击强不可伪造性(Strong Existential Unforgeability under Adaptive Chosen Message Attack: SUF-CMA),即攻击者可任意选择多项式个消息请签名人生成并获得对应的签名,仍然无法生成一个新消息的合法签名或者一个已签名消息的新合法签名。
02
数字签名技术发展历程
从 Whitfield Diffie 和 Martin Hellman 在 1976 年发表历史性的论文《密码学的新方向》提出数字签名的概念到今天,数字签名技术经过了四十多年的发展。这四十多年中,数字签名技术在理论研究上经历了从一个可能的数学概念,发展到基于计算复杂性问题的具体实现、到扎实的安全模型定义、到安全性可证明的高效构造、再到满足各类差异化需求的特性签名技术。数字签名技术在应用上从小规模的商业和个人数据保护开始,伴随着互联网和电子商务的发展,到今天已经发展成为数字社会的安全基石之一。
作为一个相对全面的概览,下面列出数字签名技术发展过程中的一些重要学术工作和重大事件。这个列表无意列出过去四十年所有重要的工作和事件。未出现在列表中的学术工作或相关事件并不表示其重要性比列出的低。(1)1976 年 Whitfield Diffie 和 Martin Hellman 在《密码学的新方向》一文中提出数字签名的概念。
(2)1978 年 Ronald Rivest, Adi Shamir和Len Adleman发表RSA数字签名算法。
(3)1978 年 Michael O. Rabin 发表一次数字签名(one-time digital signature)算法Rabin。
(4)1979 年 Ralph Merkle 发 表 Merkle 数字签名算法。该算法也是一种一次数字签名算法,但和 Rabin 算法有重要区别。该算法成为一类基于杂凑的数字签名(hash-based digital signature)算法(例如 XMSS)的基础。这类算法在后量子计算时代可能依然安全。算法中的Merkle 树具有众多应用,如区块链使用 Merkle 树存储交易记录。
(5)1984 年 Taher Elgamal 发表基于离散对数问题的 Elgamal 数字签名算法。
(6)1984 年 Adi Shamir 提出基于身份的密码技术(Identity-Based Cryptography: IBC)并给出第一个基于身份的数字签名算法(Identity- Based Signature: IBS)。基于身份的密码也称基于标识的密码。
(7)1984 年 Shafi Goldwasser, Silvio Micali 和 Ronald Rivest 给出了数字签名机制安全模型的严格定义(选择消息攻击下不可伪造模型:EUF-CMA)。这个模型后来被广泛接受,用于分析各种数字签名算法的安全性。
(8)1986 年 Amos Fiat和 Adi Shamir发表Fiat-Shamir变换。该变换可将一大类身份认证方案转化为数字签名算法。
(9)1989 年 Claus Schnorr 发表Schnorr 数字签名算法。该算法的安全性可以基于离散对数问题在随机谕示模型下获得证明。2011 年发表的 EdDSA 数字签名算法也是以 Schnorr 算法为基础。
(10)1989 年 Lotus Notes 1.0发布采用RSA算法的数字签名功能。这是第一款大规模应用的商业软件支持数字签名技术。
(11)1991年NIST发布数字签名算法DSA。该算法是Elgamal数字签名算法的变形, 在1994年作为 FIPS 186 中的数字签名标准DSS发布。DSA和椭圆曲线上的ECDSA算法的安全性分析一直是个挑战。2000年Daniel R. L. Brown在一般群模型下分析了ECDSA算法的安全性。
(12)1991年Phil R Zimmermann 发 布 PGP 1.0,支持RSA数字签名算法。
(13)1991年Marc Girault 提出自认证密钥的概念并设计一个基于自认证密钥的身份认证协议。1998 年 Guillaume Poupard 和 Jacques Stern 利用 Fiat-Shamir 变换将该身份认证协议转换为 GPS 数字签名算法并证明了其安全性。
(14)1993 年 RSA 发布包括 RSA 数字签名算法的 PKCS #1 版本 1.5,通过规定消息编码方式改进 RSA 数字签名算法的安全性。
(15)1995 年 Netscape 发布支持数字签名算法的 SSL 2.0,支持 RSA 和 DSS 签名算法。(16)1996 年 Mihir Bellare 和 Phillip Rogaway 提出安全性可证明的 RSA-PSS 签名算法。(17)1996 年 David Pointcheval 和 Jacques Stern 提出分叉引理(forking lemma)。基于分叉引理可分析一大类数字签名算法的安全性, 包括 Schnorr签名算法。
(18)1996 年 Paul C. Kocher 发表侧信道攻击技术,展示采用时间攻击技术攻击 RSA、DSS 等算法的不安全实现以获取私钥 [24]。该工作开启了密码侧信道攻防技术的研究领域。
(19)1999 年 Rosario Gennaro, Shai Halevi 和 Tal Rabin与Ronald Cramer和Victor Shoup 分别构造了不依赖随机谕示模型的 RSA 签名算法。
(20)2001 年 Dan Boneh, Ben Lynn 和Hovav Shacham 发表采用双线性对构造的短签名算法 BLS。
(21)2002 年 Jae Choon Cha 与 Jung Hee Cheon 以及 Florian Hess 分别发表采用双线性对构造的基于标识的数字签名算法 Cha-Cheon- IBS和 Hess-IBS。
(22)2003 年 Sattam S. Al-Riyami 和Kenneth G. Paterson 提出无证书密码的概念,并设计无证书的数字签名算法。虽然 Al- Riyami-Paterson 无证书签名算法后来被证明不安全,但该工作开启了相关领域的研究工作。例如,2018 年 Zhaohui Cheng 和 Liqun Chen 统一了基于 Girault 的自认证密钥的数字签名机制和Al-Riyami-Paterson 无证书数字签名机制的安全模型,并设计安全、高效的无证书签名算法。
(23)2008 年 Craig Gentry, Chris Peikert 和Vinod Vaikuntanathan 基于等工作发表了第一个安全性可证明的基于格的数字签名算法GPV。后续更多格基数字签名算法被提出,如BLISS、Dilithium等。(24)2017 年 NIST 开始后量子公钥算法标准化工作,全球征集相关算法,包括数字签名算法。
03
具备附加属性的数字签名技术
伴随着通用数字签名技术的发展,针对一些特殊需求,特别是电子现金、电子选举等领域的应用以及隐私保护与签名公平性需求的增强,众多具有附加属性的数字签名技术的概念和算法构造被提出。下面列出一些典型的具有附加属性的数字签名技术。本文无意列出所有特性数字签名技术,读者可以参考更多的综述资料如 [38,39]。(1)盲签名 (blind signature):1982 年David Chaum 提出盲签名的概念。盲签名机制允许签名人对盲化过的消息(签名人在不知道消息内容的情况下)生成消息签名。签名的有效性可以在消息去盲化后被公开验证。盲签名机制可用于电子选举、电子现金等应用。
(2)多签名(multi-signature):1983 年 K. Itakura 和 K. Nakamura 提出多签名的概念。多签名机制允许多个签名人对消息进行签名且生成的签名比各个签名人独立签名生成的签名值集合更简短。多签名机制可用于区块链等对多方签名有需求且对签名长度敏感的应用。和多签名机制紧密相关的签名压缩机制还有聚合签名(aggregate signature)。聚合签名可以将多个签名压缩为一个签名。聚合签名进一步可分为通用聚合签名如 [42] 和顺序聚合签名如 [43] 等。顺序聚合签名中签名和聚合操作根据已经签名的消息集、已经聚合的签名以及待签名新消息,利用私钥进行签名并完成聚合操作。
(3)门限签名(threshold signature):1987 年 Yvo Desmedt 提出门限签名的概念。门限签名机制允许n个签名人中的任意 k 个签名人对消息生成签名,但少于 k 个签名人参与则无法生成有效签名。门限签名机制可以构建强健的签名系统,防止部分签名人的不法行为。
(4)不可否认签名(undeniable signature):1989 年 David Chaum 和 Hans van Antwerpen 提 出不可否认签名的概念。不可否认签名机制允许签名人生成一个签名并且确保没有签名人的允许(不参与验证过程),验证人无法验证签名的有效性;同时不可否认机制能够防止签名人(以不可忽略的概率)否认某个真实签名。不可否认签名机制可以防止签名数据被滥用。
(5)失败-中止签名(fail-stop signature):1991 年 Birgit Pfitzmann 提出失败-中止签名的概念。失败-中止签名机制除了满足普通签名机制的安全要求外,额外要求:1)如果伪造者要伪造一个签名则需要完成指数级的工作量, 2)如果伪造者成功伪造了某人(被冒充人)对一个消息的签名,则被冒充人可以有效地证明这个签名是伪造的。失败-中止签名机制可以应用于需要对签名人提供更高保护的场景。
本文采摘于网络,不代表本站立场,转载联系作者并注明出处:http://www.longfuchaju.com//chuangye/qiuzhi/1342.html