标签:
加密技术是区块链的一大亮点,也正因为这个特点让区块链在数据加密领域上被频繁使用。密码学作为区块链的底层逻辑之一,让区块链继承了密码技术的诸多应用,像数字签名、数字证书等。
一、数字签名
数字签名能证实某数字内容的完整性和确认其来源,也就是不可抵赖性。有以下类别:
1.盲签名:签名者需要在无法看到原始内容的前提下对信息进行签名。实现对所签名内容的保护,防止签名者看到原始内容;同时实现防止追踪,签名者无法将签名内容和签名结果进行对应。
2.多重签名:当x 个签名者中,收集到至少 y 个(x >= y >= 1)的签名,即认为合法。x 是提供的公钥个数,y 是需要匹配公钥的最少的签名个数。它可以有效地被应用在多人投票共同决策的场景中。比特币交易中就支持多重签名,可以实现多个人共同管理某个账户的比特币交易。
3.群签名:群组内某一个成员可以代表群组进行匿名签名。签名可以验证来自于该群组,却无法准确追踪到签名的是哪个成员。同样存在一些问题,就是群签名需要存在一个群管理员来添加新的群成员,因此存在群管理员可能追踪到签名成员身份的风险。
4.环签名:签名者首先选定一个包括签名者自身的临时签名者集合。用自己的私钥和签名集合中其他人的公钥就可以独立的产生签名,而无需他人的帮助。签名者集合中的其他成员可能并不知道自己被包含在最终的签名中。环签名的主要用途在保护匿名性,属于一种简化的群签名。
二、数字证书
数字证书分为两类:加密数字证书和签名验证数字证书,前者用于保护用于加密用途的公钥,后者保护用于签名用途的公钥。两种类型的公钥也可以同时放在同一证书中。同时证书需要由证书认证机构CA来进行签发和背书。