标题:加密算法的一些常识admin 等级:管理员 文章:94 积分:493 门派:无门无派 注册:2002年5月19日楼主 -------------------------------------------------------------------------------- 加密算法的一些常识 加密算法很容易理解啦,就是把明文变成人家看不懂的东西,然后送给自己想要的 送到的地方,接收方用配套的解密算法又把密文解开成明文,这样就不怕在路世上如 果密文给人家截获而泄密。 加密算法有俩大类,第一种是不基于 KEY的,举个简单的例子,我要加密"fordesign" 这么一串字符,就把每个字符都变成它的后一个字符,那么就是"gpseftjhm"了,这样 的东西人家当然看不明白,接收方用相反的方法就可以得到原文。当然这只是个例子, 现在应该没人用这么搞笑的加密算法了吧。 不基于 KEY的加密算法好象一直用到了计算机出现。我记得古中国军事机密都是用这 种方式加密的。打战的时候好象军队那些电报员也要带着密码本,也应该是用这种方式 加密的。这种算法的安全性以保持算法的保密为前提。 这种加密算法的缺点太明显了,就是一旦你的加密算法给人家知道,就肯定挂。日本 中途岛惨败好象就是密码给老米破了。设计一种算法是很麻烦的,一旦给人破了就没用 了,这也忑浪费。 我们现在使用的加密算法一般是基于key的,也就是说在加密过程中需要一个key,用 这个key来对明文进行加密。这样的算法即使一次被破,下次改个key,还可以继续用。 key是一个什么东西呢?随便你,可以是一个随机产生的数字,或者一个单词,啥都行, 只要你用的算法认为你选来做 key的那玩意合法就行。 这样的算法最重要的是:其安全性取决于key,一般来说取决于key的长度。也就是说 应该保证人家在知道这个算法而不知道 key的情况下,破解也相当困难。其实现在常用 的基于KEY的加密算法在网络上都可以找到,很多革命同志(都是老外)都在想办法破解 基于key的加密算法又包括俩类:对称加密和不对称加密。对称加密指的是双方使用 完全相同的key, 最常见的是DES. DES3, RC4等。对称加密算法的原理很容易理解, 通信一方用KEK加密明文,另一方收到之后用同样的KEY来解密就可以得到明文。 不对称加密指双方用不同的KEY加密和解密明文,通信双方都要有自己的公共密钥和 私有密钥。 举个例子比较容易理解, 我们们假设通信双方分别是A, B. A, 拥有 KEY_A1, KEY_A2, 其中KEY_A1是A的私有密钥,KEY_A2是A的公共密钥。 B, ...