上一次我们讲了区块链为何诞生,以及他的演化过程,感兴趣的可移步主页。本次我们就来讲一下区块链为何能够拥有这么高的安全性,从而让人们能够不依赖第三方机构背书就能够进行金融交易等操作。
无论从哪个方面来说,区块链的安全一定离不开密码学技术。密码学技术是保障网络信息安全的核心技术,而区块链大量使用了密码学的最新成果,特别是身份认证和隐私保护技术,从而能够做到如此高的安全性。我们从信息安全开始分析。
信息安全在定义上有四大安全属性:分别是加密算法保证的机密性, 数字签名算法保证的可认证性和不可抵赖性, 哈希函数保证的完整性, 共同组成了信息安全的四大特性。
1.机密性:是网络信息不被泄露给非授权的用户、实体或过程。或拱其利用的特性,即防止信息泄漏给非授权个人或实体,信息只为授权用户使用的特性。
2.完整性:是网络信息未经授权不能进行改变的特性,即网络信息在存储或传输过程中保持不被偶然或蓄意地删除、修改、伪造、乱序、重放、插入等破坏和丢失的特性,要求保持信息的原样,即信息的正确生成和正确存储和运输。
3.可认证性:确保发送方和接收方声称的身份是真实有效的,防止冒充和重放。
4.不可抵赖性:在网络信息系统的信息交互过程中,确信参与者的真实同一性,即所有参与者都不可能否认或抵赖曾经完成的操作和承诺,利用信息源证据可以方式发信方不真实的否认已发送的信息,利用递交接收证据可以防止收信方事后否认已经接收的信息。
除了信息安全的四大特性,加解密算法同样是在信息安全领域极其重要的一部分。
加密技术中包含两个元素:算法和密钥。算法,是将普通的信息或者可以理解的信息与密钥结合,产生不可理解的密文的步骤。密钥,是一种参数,它是在明文转换为密文或将密文转换为明文的算法中输入的参数。
加密算法又分为对称加密和非对称加密。
对称加密即用相同密钥对原文进行加密和解密。加密过程:密钥+原文=密文,解密过程:密文+密钥=原文。对称加密的优点是加解密过程速度快效率高,加密强度也高,但缺点是由于使用的是相同密钥,无法保证密钥的安全传递。比较有名的对称加密算法即:DES和AES算法。
非对称加密使用两种密钥,公钥和私钥。公钥用于加密,而私钥用于解密,公钥由私钥产生,私钥可以推导出公钥,但公钥无法推导出私钥。 加密过程:公钥+原文=密文,解密过程:密文+密钥=原文。非对称加密的优点是解决了密钥传输的安全性问题,由于使用两种密钥,所以只需要将公钥传递或公开即可,但缺点是计算效率相比于对称加密比较低。代表算法有:椭圆曲线ECC和RSA。
综上所述,对称加密即加解密效率高,加密强度高,但是在密钥的配送商存在一定的安全隐患。非对称加密即解决了对称加密需要安全通道分发密钥的问题,但性能较差。由此诞生了混合加密机制,即先用非对称加密协商出一个临时的对称加密密钥,然后双方再通过对称加密算法对所传递的大量数据进行快速加密处理。
如下是一个混合加密的案例:
1.发送方使用接收方公钥加密对称密钥,发送给接收方。
2.接收方使用接收方私钥进行解密获得对称密钥。
3.发送方使用对称密钥加密要传送的数据,并发送给接收方。
4.接收方使用获得的对称密钥对接收到的密文进行解密。
加密算法的应用有如下几个领域:
1.信息加密:公钥加密,私钥解密,确保信息的安全性
2.数字签名:私钥加密,公钥解密,确保数字签名的归属
3.登录认证:私钥加密,公钥解密
另有一种特殊的算法被称为哈希算法,也称指纹或摘要算法,即将一段任意长度的数据经过一道计算,转换为一段定长的数据,哈希算法的特性是计算快速且不可逆性和不可碰撞性,不需强大的设备即可快速算出哈希值,几乎无法通过哈希值反向推导出原文,也几乎找不到两个不同数据的哈希值相同,原文中哪怕一比特的改变,哈希值也会有极大的变化。
在区块链领域广泛使用的数字签名则是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明,一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。
区块链广泛使用上述密码学技术,包括混合加密和数字签名的多种延伸技术,如群签名,盲签名,环签名等,密码学技术的高安全性造就了区块链的高安全性,也造就了区块链如今的地位。