区块链-1-区块链中的密码学

Crypto-Currency 加密货币其实本身不加密

1. cryptographic hash function密码哈希函数

比特币中的哈希函数:SHA-256 (Secure Hash Algorithm 256)

1.1. collision resistance 抗哈希碰撞性

含义:无法高效的方法寻找两个哈希碰撞的输入。

说明:已知 \(H(x_1) = y\),没有一个高效的方法可以寻找到 \(x_2\) 使得 \(H(x_2) = y\)

无法证明一个哈希函数具备抗哈希碰撞性。

1.2. hiding 隐藏性

含义:哈希函数是单向的,根据输出值无法高效找到输入值。

说明:已知 \(H(x) = y\),但 \(x\)未知,没有一个高效的方法可以根据 \(y\) 找到 \(x\)

hiding 的前提是输入空间足够大且映射分布较均匀。

digital commitment 数字签名 (又称为 digital equivalent of a sealed envelope 数字化的密封信封)

输入值后拼接一个随机数,来使得整体输入随机且分布均匀。

1.3. puzzle friendly 无法预测性

含义:无法根据输入值去预测输出值或输出值的特征。

挖矿:找到一个随机数 nonce 和 block header 区块头的其他信息合并在一起,使得 H(block header) <= target

2. asymmetric encryption algorithm 非对称加密

symmetric encryption algorithm 对称加密

通讯双方在通讯前,提前约定好密钥,然后双方基于这个密钥对信息进行加解密。

对称加密时,密码的分发过程不安全。如果密钥泄露了,那么攻击者就可以获取到所有通讯信息。

asymmetric encryption algorithm 非对称加密

非对称加密是基于一对公私钥,私钥需要持有人保密,公钥无需保密,可以发送给任何人。

公私钥有两种用法:

  • 公钥加密,私钥解密:保证加密数据仅有私钥的持有者才能解密。

  • 私钥加密,公钥解密:保证加密数据来自于私钥的持有者。


区块链-1-区块链中的密码学
https://cqu-linmu.github.io/linmu-blog/2024/08/27/区块链-1-区块链中的密码学/
作者
linmu
发布于
2024年8月27日
更新于
2024年8月27日
许可协议