数据加密
在互联网中,由于它联结的是全世界范围的企业和个人,所以会面临很多需要对数据进行加密处理的情况。就比如在网店购物时用户输入的信用卡卡号,就是应该被加密传输的代表性数据。假设卡号和密码未经加密就被发送出去,那么就会面临卡号被同样接入互联网的某人盗取,信用卡被其用来肆意购物的危险。想想就很恐怖吧。。
所以我们上网时注意网页要是以https:// 开头,表示数据正在使用加密的方式进行传输。所以呢,大家在不知不觉中就已经都是加密技术的受益者了。
加密原理
虽然存在各种各样的加密技术,但是其中的基本手段无外乎还是字符编码的变换,即将构成明文的每个字符的编码分别变换成其他的数值。通过反转这种变换过程,加密后的文本数据可以还原。通过把密文还原成明文的过程就是“解密”。
另外注意,密钥越长,解密也就越困难了。
对称密钥加密技术
这种加密技术的特征是在加密和解密的过程中使用数值相同的密钥。因此,要使用这种技术,就必须事先把密钥的值作为只有发送者和接收者才知道的秘密保护好。可是互联网上的数据加过密以后我要怎么把密钥告诉我需要告诉的人呢?寄信,这也太慢了吧。所以对称密钥加密技术不适合在互联网中使用。
公开密钥加密技术
为了解决对称密钥加密技术的麻烦,牛人们想到只要让解密时的密钥不同于加密时的密钥
,就可以克服对称密钥加密技术的缺点,而这种加密技术就被称为“公开密钥加密技术”。在公开密钥加密技术中,用于加密的密钥可以公开给全世界,因此称为“公钥”,而用于解密的密钥是只有自己才知道的秘密,因此称为“私钥”
。
数字签名
数字签名是一种公开密钥加密技术的实际应用。数字签名使用私钥进行加密、使用公钥进行解密。
发送者用构成文件的所有字符的编码生成了信息摘要,就证明发送者从头到尾检查了文件并承认其内容完整有效。
如果接收者重新算出的信息摘要和经过发送者加密的信息摘要匹配,就证明文件在传输过程中没有被篡改,并且的确是发送者本人发送的。正因为数据是用发送者的私钥加密的,接收者才能用发送者的公钥进行解密。
MD5
而在实际中计算数字签名时,使用的是通过更加复杂的公式计算得出的、被称作MD5(Message Digest5)的信息摘要。由于MD5 经过了精心的设计,所以使得两段明文即使只有略微的差异,计算后也能得出不同的信息摘要。
现实生活实例
- 压缩软件可以加密,然后用同样的密码解密。
- doc文档可以加密,然后用同样的密码解密。
- https:// 开头,表示数据正在使用加密的方式进行传输。
- 支付宝上的数字签名就是加密。
- 下载一个软件或源码,一般都有提供MD5值,用一个md5校验工具校验该软件或源码,得出其MD5值与提供的一致,则说明OK。
网友评论