一、介绍
这是一次信息系统防护课程的作业,老师是邹海涛老师。要求是自己设计一个加密算法,我们小组设计的算法如下。
二、背景知识
(1)算法的提出
在信息系统防护的课程上,讲了MD5加密算法,MD5是计算机安全领域广泛使用的一种散列函数,可以产生信息摘要,可以提供消息的完整性保护,同时MD5也是不可逆的单向加密算法。MD5用来进行文件校验的方案大量用于软件下载站、论坛数据库、系统文件安全等方面。
然而,随着快速MD5碰撞生成器的产生,单纯的MD5其实并不可靠。
因此,我们组设计出一种将MD5产生的摘要做二次处理,以增强安全性形成新的算法,解决了单纯MD5加密易被破解的问题。
设计并没有就此结束。在加密的最后阶段,明文与最终的密码表之间如果用简单的数值对应实则不够安全。在这里,我们再次设计了一个类似于Base64的加密算法。Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,是二进制到字符的过程,可用于在HTTP环境下传递较长的信息标识。
准确的说,我们参考Base64设计的加密方式严格来讲并不是一种真正的加密算法,而是一种改进版的更具安全性的自定义的对应法则,这也加强了安全性。
(2)关于MD5
MD5算法的全名是Message DigestAlgorithm MD5,中文名为消息摘要算法第五版。是为计算机安全领域广泛使用的一种散列函数,用以提高消息的完整性保护。MD5是MD4算法的增