码迷,mamicode.com
首页 > 其他好文 > 详细

《图解密码技术》[01] 密码概述

时间:2017-09-16 21:59:25      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:著作权   border   加密   还原   lang   图片   计算机   可变   女性   


技术分享
《图解密码技术》(点击查看详情


1、写在前面的话

因为接触了微信公众号开发,之中涉及支付功能时用到了大量签名加密之类的东西,对于密码安全这一块,其实一直不是很明白,大部分方法自己在用到时也是去直接google,然后复制粘贴,可以说完全不知其所以然。

加密这一块查了下有很多人推荐这本书,于是就决定看看。我个人涉及到真正的加密技术的实际应用可能不算那么多,所以这里笔记准备记录一些浅显和核心的东西。



2、加密和解密

发送信息和接受信息的过程中,因为传递过程涉及多方,可能会存在窃听者。就像你给别人写了一封信,在寄出的途中,如果有人恶意想要偷窥信件的内容,是完全可能的,比如邮递员。

如果不想让别人看到明确的信息,就要对信息进行加密,接收者进行解密,这样就算中途被人看到信息,他也看不明白信息的内容。

加密之前的消息称为“明文”,即明白的谁都看得懂的信息,加密之后的消息则称为“密文”。
技术分享  技术分享

接收者还原密文称之为“解密”,如果是第三方试图还原,则称之为“破译”。 
 
另外,密码安全涉及的信息方面很广,主要在机密性、完整性、认证和不可否认性上做文章。而相应的,也就诞生了用来应对的密码技术:
技术分享
 


3、隐写术和数字水印

密码主要是一种能够让消息内容变得无法解读的技术。除此之外,还有另外一种技术,不是将消息内容变得无法解读,而是能够隐藏信息,这种技术叫做隐写术。

隐写术的第一个典型就是大家都知道的藏头诗:
  1. 画蓝江水悠悠,
  2. 晚亭上枫叶愁。
  3. 月溶溶照佛寺,
  4. 烟袅袅绕经楼。
技术分享

隐写术在计算机中的应用,数字水印就是其中的一种,将著作权拥有者及购买者的信息嵌入文件中的技术,但仅凭数字水印技术是无法对信息进行保密的,因此需要和其他技术配合使用。

比如将密码和隐写术结合使用,将明文加密后通过隐写术隐藏到图片中,这样即便有人发现了密文的存在,也无法读取内容。密码隐藏的是消息内容,隐写书隐藏的是消息本身



4、历史上的密码

4.1 恺撒密码

假设我们要保密的信息为 yoshiko 这个女性的名字,我们将每个字母按字母表顺序向后平移3位并转换为大写字母,即:
  • y --> B
  • o --> R
  • s --> V
  • h --> K
  • i --> L
  • k --> N
  • o --> R

于是,yoshiko 经过加密就变成了 BRVKLNR 。在这里,将字母平移n位替换,就是密码的算法,这里平移的数量n就是密钥,这种加密叫做恺撒密码

当然,解密的话,接收者也要知道密钥,即这里是3,反向平移即可得到明文。如果是第三方想要破解该密文,因为字母表只有26个字母,所以密钥实际上也只有0到25共26种,破译者只要从0到25挨个尝试密钥破解,总会得到明文。这种方法称之为暴力破解,也称之为穷举搜索

4.2 简单替换密码

恺撒密码实际上也是简单替换密码的一种,因为其本质就是字母的替换,但是因为替换的规则是确定的,所以更为简单。

字母之间一对一的对应替换,则是简单替换密码,例如:
技术分享
 
当然,简单替换密码的解密就必须要依赖替换表了,所以发送者和接收者都必须同时拥有替换表,而这份替换表也就相当于简单替换密码的密钥。

另外,一个密码能够使用的“所有密钥的集合”称之为密钥空间,密钥空间越大,暴力破解就越困难。简单替换密码中,每个字母可以随意对应字母表中无匹配的任意一个,所以实际上密钥空间为 36*25*...*2*1 = 403291461126605635584000000;而凯撒密码只有0-25共26种,所以简单替换密码更难通过暴力破解来破译,但是,使用“频率分析”的密码破译方法,则能够破译简单替换密码。(频率分析的破译方法在书中有详细例子page27,很有意思,这里不再展开)



5、加密算法和密钥

凯撒密码:
  • 加密算法:将明文中的各个字母按照指定的字母数平移
  • 密钥:平移的字母数量

简单替换密码:
  • 加密算法:按照替换表对字母表进行替换
  • 密钥:替换表

不难看出,加密算法是固定的,密钥是可变的。因为如果每次加密都必须完全产生新的加密算法,那太麻烦了,于是我们喜欢加密算法可以重复使用,但是随着重复使用的次数其破译可能性也逐渐增大,所以准备了可变的部分,即密钥。所以加密算法和密钥分开考虑,就解决了加密算法希望得到重复利用,但重复使用会增加风险这个难题。


《图解密码技术》[01] 密码概述

标签:著作权   border   加密   还原   lang   图片   计算机   可变   女性   

原文地址:http://www.cnblogs.com/deng-cc/p/7532874.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!