密码学的历史悠久,古时候主要应用于军事机密的传送,如“口令”,“暗号”等。在1970年之前,密码学的应用范畴大部分还是在政府层面,直到标准加密系统-数据加密标准和非对称加密算法的发明,密码学才逐步被深入应用在各个领域。
密码学的发展历程
密码学的发展大致可以分为三个阶段:古典密码学->现代密码学->公钥密码学
1.古典密码学:这阶段的核心密码学思想主要为代替和置换。代替就是将明文每个字符替换成另外一种字符产生密文,接收者根据对应的字符替换密文就得到明文了。置换就是将明文的字符顺序按照某种规则打乱。
2.现代密码学:这阶段的发展主要是对称加密算法。对称加密是发送方使用某种公开的算法使用密钥对明文进行加密,接收方使用之前发送方给予的密钥对密文进行解密得到明文。
3.公匙密码学:这个阶段的发展主要是非对称加密算法。非对称加密的原理是公钥加密,私钥解密。它的实现过程是A通过某种算法产生一对密钥,分别是公钥和私钥,然后将公钥公开。B想发送信息给A,就使用A的公钥对明文进行加密产生密文并发送给A。A接收到密文后,用自己的私钥对密文进行解密,得到明文。
对称加密解密的示意图如下:
非对称加密解密示意图如下
密码学的应用和作用
密码学的应用非常广泛,可分为3类
对称加密算法
非对称加密算法
哈希散列算法
常见的方法有:Merkle tree 哈希树算法,椭圆曲线算法,SHA-256算法,Base58编码。
作用有:通过hash算法快速查找;对明文进行加解密;对信息进行签名以及验证;产生数字证书;生成账户地址等。