密码学初窥—信息加密与哈希函数
实验背景
“密码”或“加密系统”用于“加密”数据。
对于原始的未加密的数据,我们称之为“明文”。
对于加密的结果,我们称之为“密文”。
通过称为“解密”的过程,我们把密文恢复成原始的明文。
古典密码学
古典密码学主要分为两种思路:替换密码和换位密码。
- 替换密码:简而言之就是将当前字母替换为在常规字母表中的第n个位置之后的那个字母来完成。
比如历史上的凯撒密码就是典型的替换密码。
- 换位密码
换位密码就是不对密码的任何明文内容进行替换,而是通过换位置的方法进行加密。而换位密码又大致分为以下几种。
类型 | 简介 |
---|---|
混淆 | 使密文和密钥的关系京可能复杂化 |
扩散 | 让铭文中的每一位影响密文中的许多位 |
分组密码 | 一次加密一组数据,密钥长度为一组数据的长度 |
DES加密
DES加密是三大著名的加密算法之一,在我国应用十分广泛。多数用在POS、ATM机和各种磁卡上。是采用了IC卡与POS之间的双向认证。
上述表格便是DES加密的三个原则。
3DES算法
顾名思义,相当于对每个数据块应用三次DES加密。就跟今天上课的切换不同密钥进行加密的实验一样,通过增加DES的密钥长度来避免类似的密码攻击。
MD5算法
MD5算法有比较好的特点。
- 算法的输入是支持任何长度的字节流
- 输出是为16字节值(有时候会以32位的十六进制字符表示)
- 加密的过长中不需要密钥,加密后的数据无法被解密。
体会
密码学自古以来就是一门深奥且地位重要的学科,最早在军事上体现出了它重要的作用。今天初学了密码学,既感受到了密码学的深奥,也不得不感叹计算机行业的发展迅速。计算机可以说与密码学相辅相成,希望这两门学科能够在以后的发展中结合的越来越深。