大数跨境

【科普小知识】区块链的安全机制

【科普小知识】区块链的安全机制 华链时代timechainer
2021-03-26
2
导读:区块链中采用了现代密码学中的哈希算法、对称加密算法、非对称加密算法等来保证数据机密性、完整性、抗抵赖性等安全特性。

  点击上方蓝色文字关注我们吧



区块链中采用了现代密码学中的哈希算法、对称加密算法、非对称加密算法等来保证数据完整性、机密性、抗抵赖性等安全特性。



01  哈希算法


哈希算法可以将任意长度的消息明文转换映射为固定长度的二进制串输出,成为哈希值或散列值,又称为该消息的指纹(fingerprint)或摘要(digest)。即使两个消息只差一个字符,在经过哈希函数计算后,它们所产生的字符串也会十分杂乱随机且完全不存在任何关联性,被广泛应用于检测签名有效性与完整性的场景中。目前,常见的哈希算法包括MD4 (RFC1320,输出128位哈希值)、MD5(RFC1321)、SHA-1(输出长度为160位哈希值)、SHA-2(包括SHA-224、SHA-256、SHA-384、SHA-512等算法)、SM3(国密安全算法)等。其中,MD4已经被证明不够安全,MD5与SHA-1不具备强抗碰撞性,具有安全隐患,因此都不推荐使用。安全术语“碰撞”是指两个不同的消息使用同一个哈希函数计算时获得相同哈希值的情况,哈希算法具有抗碰撞性意味着找到两个能够产生碰撞的消息在计算上是非常困难的 (注意不是不可能的)。哈希算法应当具有抗碰撞性、原像不可逆性、难题友好性等特点。目前,区块链通常采用SHA-256、Keccak-256CSHA3或更高安全级别的主流算法,常用于构造货币地址、哈希指针、消息摘要等对象。



02  对称加密算法


对称加密算法中加密与解密的密钥是相同的,速度快且占用空间小,加密强度高,但缺点是密钥一旦泄露就无法继续保持当前系统的安全性,且必须解决如何安全地提前分发密钥问题。目前,典型的对称加密算法包括DES(Data Encryption Standard,经典的分组加密算法,64位密钥,可以被暴力破解)、3DES、ADE(Advanced Encryption Standard,对称加密实现标准,处理速度快)、IDEA (类似于3DES,密钥长度达到128位)以及序列密码(每次变换密钥加密处理数据,如RC4)等。对称加密算法适用于较大数据量的加密解密过程,不适合签名与验签的应用场景。



03  非对称加密算法


非对称加密算法为用户提供一组对应的公开密钥和私有密钥。任何人都可以使用公钥对数据进行加密,只有用户能使用自己的私钥解密,任何未授权的用户包括发送者都无法解密该信息。同时,用户可以使用私钥对信息进行签名,任何人都可以用该用户公开的公钥检验该信息签名的身份,即验证该信息是否由指定用户签名,其身份具有不可否认性,从而使得签名具有不可伪造性。由于加密和解密时使用的密钥是不同的,因此,这类公钥密码算法也称为非对称密码算法。现代公钥密码体系的安全性通常是基于难解的可计算问题,通过私钥计算出公钥非常容易,但是,通过公钥计算出私钥则非常困难,包括RSA(基于大数质因子分解困难特性)、Diffie-Hellman密钥交换、ECC(椭圆曲线算法,密钥短性能高,区块链采用的常见主流算法如ECDSA)、SM2(国密安全算法,同样基于椭圆曲线算法)等,比特币使用的是Certicom密码技术公司提供的椭圆曲线算法secp256k1。非对称加密算法适用于签名与验签场景,同时解决了密钥分发的安全性问题,但不适合大量数据的快速加解密过程,如签名消息时通常要先计算消息摘要,再使用私钥对摘要签名(ECDSA算法)。



【声明】内容源于网络
0
0
华链时代timechainer
让每个企业享受区块链价值
内容 32
粉丝 0
华链时代timechainer 让每个企业享受区块链价值
总阅读33
粉丝0
内容32