曾晓云
摘要:數字签名技术能够有效地保护数据访问权限,区块链技术因为去中心化等特点有利于各种隐私数据的存储和保护。具有数字签名的区块链已经成为很多组织作为安全策略的关键技术,可以对数字环境中的任何对象进行身份验证。
关键词:数字签名;区块链;身份验证
中图分类号:TN918.91 文献标识码:A 文章编号:1007-9416(2020)08-0176-02
0 引言
区块链技术被应用于各种许可证、登记表或者执照等的保存过程之中[1]。区块链技术在金融交易行业应用最为常见,如三方支付、资金托管、银行、证券行业等。区块链自动合约技术的应用能够提升工作效率,降低成本投入,更好地实现金融交易。在数据鉴证方面,区块链技术具有记录、验证和不可篡改的特点。
1 数字签名技术
数字签名是一种数字数据形式,它的工作是虚拟的,但可以合法的和可识别的来描述你的名字。越来越多的人使用数字签名来证明他们的身份。
数字签名以准确和安全的方式提供身份证明,双方可以安全地完成交易、共享文档等。合格的数字签名是使用特殊安全设备加密的电子证书创建的。很多企业都选择使用诸如此类的电子标识。原因和好处很多,如可以为你的所有文件提供更高的安全级别;所有参与交易或协议的人员将能够跟踪各方共享的所有信息;并且是方便、直观的;另外它也是一种方便的远程认证解决方案,在成本方面,数字签名比传统签名更有效。
数字签名有简单签名,合格数字签名和高级数字签名这三种类型[2]。简单签名是没有特殊属性的基本签名。可以用简单的签名快速签署任何文件,而不需要注册。不过,这种类型的身份验证也有其局限性。因为你的身份不能仅通过打开已签名的文档来验证。简单地说,发起操作的人必须在文件上应用手工签名标记才能让文档受到密码戳的保护。虽然这个签名可能很简单,但它仍然可以强大到足以确保数据的完整性。
合格和高级数字签名类型是专家推荐的最安全的方法,它们可以确保你文件的隐私,并提供对签署者的准确跟踪。它们使用惟一的签名密钥,这些密钥在不同的签名者之间是不同的。私有签名密钥确保了不可否认性以及可以显示签署文件的确切个人。
有几种不同形式的Click-to-Sign签名,如电子曲线、键入的名称、复选框和扫描的图像。这些都是简单方便的表单,它们并不能为文档提供加密保护。也就是说,它们不够强壮和安全。怀有意图的人很容易把它们复制到另一份文件上。
在现实社会中,签名已经作为签名者身份的一种证明,签名代表对签名文件的认可,不可抵赖;理论上签名是可信、不可伪造的。比如每次你刷卡消费后,营业员肯定需要你对回执上进行签名,这就是一种对消费交易的认可;而在比特币转账过程中,比特币的数字签名就是只有比特币转出人才能生成的一段防伪造的字符串。
2 区块链
数字签名的自然进化和区块链有了新的联系。最近流行的就是基于区块链的数字签名新技术。使用这项新技术,将不再需要昂贵的证书。使用区块链支持的签名,可以对数字环境中的任何对象进行身份验证,也可以知道黑客或其他方是否一直在篡改数据。这种基于区块链的数字签名以安全的方式添加额外的数据,在不允许其他人访问的情况下验证对象,以及执行许多其他有用的操作,如在进行比特币转账时需要进行数字签名才可进行交易。
区块链通过使用基于共识机制来检测交易的有效性,然后利用分布式数据库来保存数据记录,并不需要中心协调。这个分布式数据库不断维护着一个不断增长的数据记录,且这些记录难以被篡改。可以说,区块链是伴随着比特币交易而诞生的一种公共账本,其主旨是取代外部、第三方认证等中心化机构,同时能有效防止被任何人篡改,即使某一个区块损失,这个公共账本也能够及时修复。
3 数字签名技术与区块链
数字签名基本上是一种虚拟标识,它支持安全的交易。为了防止发送节点信息和数据被恶意伪造和篡改,将区块链引入数字签名技术。数字签名技术作用是保证发送信息不会被篡改。数字签名又名为公钥数字签名,是一种通过公钥加密鉴别数字信息的方法。基于该技术信息,发送者可以发送别人不能伪造的一串数字字符,也可以证明发送信息真实性。
区块链中,数字签名技术包含两种运算算法:签名和验证。数字签名可以让文件更加安全,将签名与区块链系统配对,可以获得更高级别的安全性。数字签名就是在区块链发送交易时,无论是比特币、Ethereum、Hyperledger Fabric或是其他,它们都需要使用数字签名进行签名验证。区块链的数字签名,就是只有在区块链转账的转出方生成的一段防伪造的字符串。通过验证该数字串,一方面证明该交易是转出方发起的,另一方面证明交易信息在传输中没有被更改。
数字签名是如何运作的呢?简单点来说就是通过数字摘要技术把交易信息缩短成固定长度的字符串。比如,甲方发起一笔比特币转账,需要先将该交易进行数字摘要,缩短成一段字符串,然后用自己的私钥对摘要进行加密,形成数字签名。完成后甲需要将原文(交易信息)和数字签名一起广播给工人,工人用甲的公钥进行验证,如果验证成功,说明该笔交易确实是甲发出的,并且信息没有被更改。签名完成后需要将完整的交易信息和数字签名一起广播给工人,工人用转出人的公钥进行验证(公钥是公开的,用来做解密操作的),如果验证成功说明该笔交易确实是转出人本人发起的且信息未被篡改。也就是说,由于比特币使用数字签名来证明资金的所有权,因此发送比特币需要其所有者进行数字签名来授权转让。具体这笔交易会被发送到比特币的公共网络,之后记录进比特币的公共数据库即区块链里,因此任何人都可以通过检查数字签名进行验证。
数字签名由数字摘要和非对称加密技术组成。数字签名首先通过数字摘要技术把交易信息缩短成固定长度的字符串,然后用非对称加密技术对摘要进行加密,进而形成数字签名。
对称加密算法在加密和解密时使用的是同一个秘钥;而非对称加密算法需要两个密钥来进行加密和解密,这两个秘钥是公开密钥(public key,简称公钥)和私有密钥(private key,简称私钥)。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密;如果用私钥对数据进行加密,那么只有用对应的公钥才能解密,因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。
在比特币转账的过程中数字签名加密的私钥和解密的公钥就不一致。
基于数字签名的区块链交易过程如下,如图1所示。
区块链不使用当前的公钥加密文档,而是允许使用私钥,因为私钥的安全性要高得多。毕竟网络安全已经因为这个系统而发生了革命性的变化。此外,上述系统允许用户在同一个文件中包含多个签名、时间戳甚至指纹。总之,所有这些数字签名、区块链和哈希值都是相互关联的,并且以它们最有效的形式存在。
4 结语
如今数字签名技术和区块链的结合更深,更广,如通过复合签名技术消除或模糊交易发送方与接收方之间的链接,来增强区块链系统中交易的匿名性[3];通过椭圆曲线离散对数问题、双线性映射和聚类签名等加密技术提出针对区块链上交易的新签名方案以隐藏交易金额等等。
参考文献
[1] 田道坤,彭亚雄.在区块链中基于混合算法的数字签名技术[J].电子科技,2018,31(7):19-23.
[2] 赵屹.电子文件防篡改技术发展对档案管理的影响及启示[J].档案学研究,2019(6):77-85.
[3] 顾欣,徐淑珍.区块链技术的安全问题研究综述[J].信息安全研究,2018,4(11):997-1001.