go区块链培训学习:密码学算法家族

时至今日密码学已经发展了数千年,在公元前的古埃及就出现过使用特殊字符和简单替换形式的密码。近代密码的发展源自第一、二次世界大战对军事机密的保护。现代密码学的发展与计算机信息技术关系密切,已经发展为包括随机数、Hash 函数、加解密、身份认证等多个课题的庞大领域,相关成果为现代信息系统奠定了夯实的安全基础。

本文主要总结了应用密码学的一些算法。完整的安全系统不仅仅需要具备这些算法,更需要安全的系统环境、物理环境。无论是系统的损坏还是人为的泄密,都非常容易造成安全问题。

密码学算法的家族成员有哪些呢?

为了数据的安全性,在编程中,常常用到一些密码学算法。最常用的密码学算法包括以下三大类:哈希算法、加密解密算法、编码解码算法。

分成这三大类的依据是什么呢?其实这种分类是根据每种算法的最大的核心特性而定的。

哈希算法不可逆;

加密解密算法可逆,但是必须要有密钥;

编码解码算法可逆,无需密钥。

1、哈希算法(消息摘要Message Digest)

包括:md4、md5、hash1、ripeMD160、SHA256、SHA3、Keccak-256等。

2、加密解密算法

对称加密算法

包括DES、3DES、AES等。

非对称加密算法

包括RSA算法、椭圆曲线加密算法。

数字签名算法DSA

包括RSA数字签名、椭圆曲线数字签名。

3、编码解码算法

包括Base64编码与解码、Base58编码与解码。

你可能感兴趣的:(go区块链培训学习:密码学算法家族)