区块链的密码学介绍
扫描二维码
随时随地手机看文章
本期将主要介绍哈希、环签名、零知识证明、和多重签名。
明文/ Plaintext
在密码学中,明文是指传送方想要接收方获得的可读信息。明文经过加密所产生的信息被称为密文,而密文经过解密而还原得来的信息被称为明文。
密文/ Ciphertext
在密码学中,密文是明文经过加密算法所产生的。因为密文是一种除非使用恰当的算法进行解密,否则人类或计算机是不可以直接阅读理解的加密形态,可以理解为被加密的信息。
环签名/ Ring Signatures
因签名中参数 Ci(i=1,2,…,n)根据一定的规则首尾相接组成环状而得名。其实就是实际的签名者用其他可能签字者的公钥产生一个带有断口的环,然后用私钥将断口连成一个完整的环。任何验证人利用环成员的公钥都可以验证一个环签名是否由某个可能的签名人生成。
数字签名/ Digital Signatures
数字签名(又称公钥数字签名、电子签名)是一种类似写在纸上的签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法,在网络上可以使用数字签名来进行身份确认。数字签名是一个独一无二的数值,若公钥能通过验证,那我们就能确定对应的公钥的正确性,数字签名兼具可确认性和不可否认性。
多重签名/ Multi-Signatures
多重签名意味着在交易发生之前需要多个签名或批准。多重签名会增加加密货币的安全性,这样一个人就不能在未经他人同意的情况下把所有的数字货币都拿走。
数字证书/ Digital CerTIficate
数字证书是区块链中标识各个节点的身份信息的一串数字,用以证明公钥的归属以及内容信息的合法性,在区块链的非对称加密中,一旦通过中间人攻击将公钥替换后将会破坏区块链的安全体系,因此通过共识机制建立互相承认的数字证书机制,在不需要第三方的情况下识别数据的合法性。
哈希/ 散列/ Hash
哈希又称作“散列”,是一种数学计算机程序,它接收任何一组任意长度的输入信息,通过哈希算法变换成固定长度的数据指纹输出形式,如字母和数字的组合,该输出就是“哈希值”。哈希使存储和查找信息速度更快,因为哈希值通常更短所以更容易被找到。
同时哈希能够对信息进行加密,一个好的哈希函数在输入域中很少出现哈希冲突,哈希一个特定文档的结果总是一样的,但找到具有相同哈希值的两个文件在计算上是计算上不可行的。
安全哈希算法/ Secure Hash Algorithm 256 / SHA 256
SHA 256是 SHA 系列算法之一,由美国国安局设计、美国国家标准与技术研究院发布的一套哈希算法,由于其摘要长度为 256bits,故称 SHA 256。SHA 256 是保护数字信息的最安全的方法之一。
零知识证明/ Zero-Knowledge Proof
证明者和验证者之间进行交互,证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。
计算上不可行/ ComputaTIonally Feasible
密码算法依赖的原理是当前计算不可行的数学问题,而“计算不可行”是一个在时间及空间上相对而言的概念,计算上不可行即表示一个程序是可处理的但是需要一个长得不切实际的时间(如几十亿年)来处理的步骤。通常认为2的 80 次方个计算步骤是计算上不可行的下限。
暴力破解法/ Brute Force Attack / BFA
暴力破解法又名穷举法,是一种密码分析的方法,通过逐个推算猜测每一个可能解锁安全系统的密钥来获取信息的方法。
哈希算法是一种强大的算法,可以把任意长度的输入转化成一个固定的简短输出,使存储和查询更为高效。
对区块链来说,在链上存储文件资源过于奢侈,因为链上资源极其稀少且宝贵,所以链上一般只存储比较重要的交易信息或者一些比较小的哈希数据。
如果想要存储一个电影在链上,是极为疯狂的。一般说的分布式存储,是指文件分布式的存储的链下多个物理实体内,把文件地址经过哈希存储到链上,通过查询哈希值定位文件实体地址,再进行查询、复制、传输等操作。
哈希加密算法对区块链的意义是非常大的,区块链的整个体系内无法离开哈希加密算法,当然其被区块链广泛采用的另一个重要原因是哈希算法足够安全。
环签名是一种数字签名方案,为大众所熟知是因为著名隐私币门罗使用其实现匿名性。
零知识证明是另一种知名匿名币ZCash使用的技术,并且零知识证明不仅仅应用于匿名币领域,在其他很多不想泄露自身信息,但需要进行验证的领域同样适用。
比如在数字身份领域,可以通过零知识证明,在不泄露自身信息的情况下,证明我是我,其具有比较广泛的潜在应用场景。
多重签名也是一项比较有用的技术,由于区块链本身私钥即资产的特性,掌握了私钥就意味着掌握了资产。
在一些场景下,不适用冷钱包存储,但金额比较大,完全交给一个人控制,风险太大。
这种情况下可以使用多重签名技术,必须超过指定数量的人签名,资金才能够转移,对于防丢、防盗有重要意义。
多重签名主要是用于保管资产,在一些业务中也会使用多签技术来使业务开展更为顺利。
比如加密货币借贷,可以把抵押资产存储到多签合约内,增加一个第三方机构,共同掌握资产。
平台无法自行处置资产,因为最少需要2个人同意,第三方如和平台合伙作恶,将付出名誉损失及承担可能的法律责任,所以第三方的加入能够增加借款人信心。
如借款人违约,第三方在确认借款人违约的情况下,即使没有借款人本人同意,第三方配合平台也能顺利完成违约情况下的资产处置,保证了业务能够顺利进行。