导读:写了几篇关于网络安全方向的稿了,很荣幸得到不少人的收藏,转发,转发的时候,请尊重下作者的劳动成果,请留下作者或链接,谢谢。头条号:与君成长。
今天贯穿讲解下关于密码学的内容。将从密码学基础,古典密码,序列密码,公钥密码体等密码知识及一些算法的讨论,欢迎关注,转载,收藏和留言~
密码学是研究编制密码和破译密码的技术科学。研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学,总称密码学。
一.古典密码
古典密码时期:这一时期为从古代到十九世纪末,长达数千年时间。主要用“纸或简单器械来加密/解密”
还记得象形文字吗?没错,严格来讲这就算最早的密码技术。
下图为古埃及尼罗河畔,一碑文上的变形象形文字:
黑客?网络安全之密码学基础(古典/公钥密码体)
古巴斯达使用的名为“天书”的密码器械工具:先写好 --》拆下送出 --》恢复解密
黑客?网络安全之密码学基础(古典/公钥密码体)
凯撒密码:
单表替换密码 (明文,秘文往后数三个之母)
明文:a b c d e f g h i j k l m n o p q r s t u v w x y z
密文:D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
维吉尼亚密码:
多表替换,凯撒密码的改进,特点是将26个恺撒密表合成一个,形成26*26的表格
它是对同一条信息中的不同字母用不同的密码进行加密。
当选定RELATIONS作为密钥时,加密过程是:明文一个字母为T,第一个密钥字母为R,因此可以找到在R行中代替T的为K,依此类推,得出对应关系如下:
密钥:RELAT IONSR ELATI ONSRE LATIO NSREL
明文:TOBEO RNOTT OBETH ATIST HEQUE STION
密文:KSMEH ZBBLK SMEMP OGAJX SEJCS FLZSY
藏头诗也是一种加密:
网格密码
黑客?网络安全之密码学基础(古典/公钥密码体)
二.近代密码
从20世纪初到20世纪50年代
以机械,电子方式加密解密 黑客?网络安全之密码学基础(古典/公钥密码体)
简单的说就算经过转换,将明文之母换成另一个
黑客?网络安全之密码学基础(古典/公钥密码体)
那么中间经过多次变换呢?或许更安全点,在当时确实这样,不过今天肯定不行了
黑客?网络安全之密码学基础(古典/公钥密码体)
所有可能的密钥:三个转子不同的方向有262626=17576种,三个转子共有6种排序,连接板上6个之母两两互换,大概有100391791500种;一共就大约有1亿亿种可能,然而,在“图灵”的带领下,成功破解了德军的密码。因此,计算机也开始进入人类的世界。
计算机密码:
2001年美国联邦政府颁布高级加密标准(AES),后来新的密码技术不断涌现,例如:混沌密码,量子密码,DNA密码等等。
同时在公钥密码领域,椭圆曲线密码体制由于其高安全性,计算速度快等有点逐渐被人们关注。
概念演变:
通信保密(60-70年代):信息保密
信息安全(80-90年代):机密性,完整性,可用性,可控性,不可否认性
信息保障:(90--):是保证信息和信息系统能够安全运行的防护性行为。采取技术、管理等综合性手段达到信息安全,以及在遭受攻击后的可恢复性。
威胁和保护:
窃取 -- 保密(数据加密)
冒名 -- 身份鉴别
抵赖 -- 不可否认性(数字签名)
篡改 -- 完整性控制
基本术语:
明文 / 秘文
加密 / 解密
密码算法:加密/解密算法
密钥(key)
密钥说一下:用于加密和解密之间起“钥匙”作用的秘密信息。
现代密码学的一个基本原则:一切秘密寓于密钥之中。即密码算法是公开的,真正需要保密的是密钥。
三.密码体制:
密码系统实现加密解密功能所采用的方案。
有“ 明文空间 | 秘文空间 | 密钥空间 | 加密变换 | 解密变换” 五个参数
表示为一个五元组:(P,C,K,E,D)
种类:对称密码体制 / 非对称密码体制
需满足: 所有密钥必须有效 | 必须简单易行 | 加解密算法强
密码系统:
用于加密解密的系统
组成:明文、秘文、密钥、加密、解密
黑客?网络安全之密码学基础(古典/公钥密码体)
对称密码体制:
加解密要相同
安全性:完全依赖密钥
黑客?网络安全之密码学基础(古典/公钥密码体)
被动攻击:会在截获的秘文上分析能否得到可能的密钥
主动攻击:伪造、篡改、删除、重放秘文、中断通信等
对称密码体制类型下又有:
分组密码体制、序列密码体制
黑客?网络安全之密码学基础(古典/公钥密码体)
黑客?网络安全之密码学基础(古典/公钥密码体)
非对称密码体制:
特点:加解密钥不同,并且难以互推
公开的加密密钥 --- 公钥
保密的加密密钥 --- 私钥
安全性:经过深入研究的数学难题
******密码学的目的:**
A和B两个人在不安全的信道上通信,使破译者不能理解通信内容。
黑客?网络安全之密码学基础(古典/公钥密码体)
Kerchkhoff原则
假设破译者O已知密码体制,来破解B使用的密钥。
那么可能有以下几种类型:
唯密文攻击:O仅有密文y
已知明文攻击:O具有明文x和对应的密文y
选择明文攻击:O可获得对加密机的暂时访问,他能够选择明文x并构造密文y
选择密文攻击:O可暂时接近密码机,可选择密文y,并构造相应的明文x
破译密码方法:
基础条件:所有自然语言都有很多的多余内容
破译原则:遵循观察、经验
破译方法:采用归纳、演绎
破译步骤:分析、假设、推测、证实
四. 加密算法
古典密码加密( 替换 | 变换 )
单钥加密算法( 流密码 | 分组密码 )
双钥加密算法
RSA算法
RSA算法的安全性建立在数论中“大数分解和素数检测”的基础理论基础之上。
算法描述:(仅供参考,数学公式没法很好表述)
假定用户A想给用户B发消息,则RSA加解密如下:
用户B产生两个大素数p和q(p,q保密)
用户B计算n=pq和φ(n)=(p-1)(q-1) (φ(n)是保密的)
用户B选择一个随机数e(0<e<φ(n)),使得(e,φ(n))=1,即e和φ互素。
用户B通过计算得出d,使得d×e mod φ(n)=1(即在与n互素的数中选取与φ(n)互素的数,可以通过Euclidean算法得出。d是用户B自留且保密的,用作解密密钥)。
用户B将n及e作为公钥公开。
用户A通过公开渠道查到n和e。
对m施行加密变换,即EB(m)=m^e mod n=c
用户B收到密文c后,施行解密变换
DB(c)=c^d mod n=(m^e mod n)^d mod n=m^(ed) mod n=m mod n
黑客?网络安全之密码学基础(古典/公钥密码体)小结:这里把密码学的一些基础,从古典密码到现在的非对称密码体制梳理了一遍。有需要的可以看看,下去还需要收集资料,RSA算法讲解大褂,数学符号没法表示见谅。有不懂的,或者有好的意见的欢迎留言。欢迎:收藏、留言、转发。转发的时候请留下原文地址或作者:头条号:与君成长。尊重个人劳动哦~
黑客?网络安全之密码学基础(古典/公钥密码体)
网友评论