⑴ 密码学发展大概经过了几个阶段
密码学发展大致上可以分为三个阶段:古典密码,近代面密码和现代密码。
古典密码阶段大约是指19世纪末以前的漫长时期,其基本特点是手工加密和解密。因此,该阶段也称为手工密码时代;
近代密码阶段是指20世纪初期到40年代末的大约50间,其主要特点是采用机械或机电密码机进行加密和解密。因此,也称为机电密码时代;
现代密码阶段大约是指20世纪50年代以来的时期,其主要特点是采用电子计算机进行加密和解密。因此,该阶段也称为计算机密码时代。
(1)现代密码学之前要学什么扩展阅读:
功能主要包括:
1、机密性(confidentiality)
仅有发送方和指定的接收方能够理解传输的报文内容。窃听者可以截取到加密了的报文,但不能还原出原来的信息,即不能得到报文内容。
2、鉴别(authentication)
发送方和接收方都应该能证实通信过程所涉及的另一方, 通信的另一方确实具有他们所声称的身份。即第三者不能冒充跟你通信的对方,能对对方的身份进行鉴别。
3、报文完整性(message intergrity)
即使发送方和接收方可以互相鉴别对方,但他们还需要确保其通信的内容在传输过程中未被改变。
4、不可否认性(non-repudiation)
如果人们收到通信对方的报文后,还要证实报文确实来自所宣称的发送方,发送方也不能在发送报文以后否认自己发送过报文。
⑵ 学习应用数学专业密码学方向需要的数学知识
应用数学最基础的课程:数学分析,线性代数,微分方程
密码学解释:密码学是研究编制密码和破译密码的技术科学
密码学基础:高等代数
密码学提升方向:代数数论(包括iwasawa theory)
书籍有:《应用密码学基础》,《现代密码学》等
⑶ 密码学的理论基础
在通信过程中,待加密的信息称为明文,已被加密的信息称为密文,仅有收、发双方知道的信息称为密钥。在密钥控制下,由明文变到密文的过程叫加密,其逆过程叫脱密或解密。在密码系统中,除合法用户外,还有非法的截收者,他们试图通过各种办法窃取机密(又称为被动攻击)或窜改消息(又称为主动攻击)。
一个密码通信系统可如图3所示。
对于给定的明文m和密钥k,加密变换Ek将明文变为密文c=f(m,k)=Ek(m),在接收端,利用脱密密钥k,(有时k=k,)完成脱密操作,将密文c恢复成原来的明文m=Dk,(c)。一个安全的密码体制应该满足:①非法截收者很难从密文C中推断出明文m;②加密和脱密算法应该相当简便,而且适用于所有密钥空间;③密码的保密强度只依赖于密钥;④合法接收者能够检验和证实消息的完整性和真实性;⑤消息的发送者无法否认其所发出的消息,同时也不能伪造别人的合法消息;⑥必要时可由仲裁机构进行公断。
现代密码学所涉及的学科包括:信息论、概率论、数论、计算复杂性理论、近世代数、离散数学、代数几何学和数字逻辑等。
⑷ 学习现代密码学需要什么基础知识
呃,数学的话,主要是近世代数和概率论。
课上老师会讲这一部分数学基础的,很简单,主要涉及的有欧拉定理、费马小定理、拉格朗日定理这三个。
上课听不懂可以下课看看书来理解一下这部分内容。
⑸ 密码解密教学
现代密码学分为 密码编码和密码分析 2个大方向
密码编码是研究出好的密码算法
密码分析说白了就是破解密码
我们学密码学之前学了很长时间数学基础
才懂了点密码学的皮毛
要搞密码分析破解密码 这更不不是本科生的水平能达到的 研究生都困难 你有相当深厚的数学功底更不没法搞 而且破解密码更不不好玩
破解MD5算法的以前山大的王小云教授说过 破解一个密码算法 大概要5-10年左右 要走几十条不同的路才能走通
如果你要搞古典密码学的破解 那个没啥技术含量 计算机随便写个程序都能破
如果你要真正的密码破解
先要学 数论 然后是离散数学 然后是应用密码学 之后还有很多很多的课程和书
搞简单的密码的解密 随便找本 密码学的书
第一章几乎都是古典密码学 其中讲解了一些常见的很有效的破解方法 一学就会
⑹ 如何在一个月内入门密码学
端正自己的态度,认清自己想要的
要想在一个月内入门密码学,首先需要端正自己的态度,搞清楚自己到底要的是什么,为什么要学习密码学,只有将自己的心意摸清楚了,以认真的态度去学习密码学的入门知识,掌握的才会快,如果只是想玩玩而已,上网上找找资料就可以啦。
教材的准备
要想在一个月内入门密码学,还需要经所需的教材准备好了。关于密码学的教材,可以看看这本《经典密码学与现代密码学》-Richard Spillman;《现代密码学理论与实践》-Wenbo Mao等等的书籍,自己可以根据自己的理解程度来决定教材。
⑺ 现代密码学介绍(一)
1.Kerckhoff's principle:
加密方法不必要求是保密的,它肯定会很容易就落入敌人的手中。安全性仅仅依靠key的安全性。
支持上述principle的三个基本理论:
(1)无论对于哪一方来说,保持一个短的key的安全性比保持加密算法的安全性要简单得多。
(2)当信息被暴露时,改变一个key比替换一个加密模式要简单。
(3)用户们一起使用相同的加密算法好过用户自己使用它们自己的加密算法。
2.通过利用英文的统计模型,可以攻击单字母替换密码:(暴力攻击需要26次)
(1)如果e映射为D,则每个在明文中出现的e都会在密文中显示为D。
(2)每个英文字母出现的频率分布是已知的。
3.移位密码的改进版攻击方法:
(1)将26个字母与数字0~25一一对应,设pi为第i个字母出现的频率(确定的),0<= pi <=1。由Figure 1.3 给出以下式子:
(2)得到一些密文后,设qi为第i个字母在密文中出现的频率(第i个字母出现的次数除以密文长度)。
(3)设key为k,则pi=
,因为第i个字母被映射到第(i+k)个字母。
(4)设 j ∈{0,...,25} ,对于 j 可能取到的这26个值,分别计算下列式子:
(5)当找到Ik = 0.065,则可得到key的值k。
4.破解多字母移位密码(维吉尼亚密码): (当key长度为t时,暴力攻击需要 26t 次)
吉尼亚密码分解后实则就是多个凯撒密码,只要知道密钥的长度,我们就可以将其分解。
如密文为:ABCDEFGHIJKLMN
如果我们知道密钥长度为3,就可将其分解为三组:
组1:A D G J M (密文中第 0, 3,6,9,12 个字母)
组2:B E H K N (密文中第 1,4,7,10,13 个字母)
组3:C F I L (密文中第 2,5,8,11 个字母)
分解后每组就是一个凯撒密码,即组内的位移量是一致的,对每一组即可用频度分析法来解密。
所以破解维吉尼亚密码的关键就是确定密钥的长度。
当不知道key的长度时。
(1)设key的长度为t,以下字符有相同的位移量
(2)设qi为第i个字母在上面字符串中出现的频率(第i个字母出现的次数除以字符串长度)。
(3)设位移量为j,则
(4)设
(左边这个变量包含了我们要求的key的长度t ,我们从1开始试t的值)
由(1)我们可知
有相同的位移量。接着我们计算下列式子,找出符合式子的t值:
(5)当T不是key的长度t时,则我们期望每个qi的频率都是1/26
※ 维吉尼亚密码、单字母替换密码比对移位密码的攻击需要更长的密文。
5.如今,schemes(方案)被以一种更系统的方式发展和分析,并最终用来给出严格proof(证据)证明给出的construction(结构)是安全的。为了清晰表达这些proofs,我们首先要正式定义“安全”的含义,结果是,大多数密码证明依赖于目前未经证实的假设,这些假设关于某些数学问题的算法难度。
6.比起古典密码学,现代密码学更强调3个规则(principles):定义、假设和证明(definitions, assumptions, and proofs)。
(1)Formal definitions:给出两个准确的描述:在这个范围内威胁有哪些、什么样的安全保障是被需要的。这样,definitions能够帮助引导加密方案(cryptographic schemes)的设计。在合适的definition下,我们可以研究一个被推荐的方案去看它是否完成需求保障;某些情况下,我们还可以通过展示满足definition证明一个给出的结构的安全。
一个满足更弱定义的方案可能会比满足更强定义的方案更有效。
(2)一个安全定义有两个元素:一个安全保障(从攻击者的观点来看,什么对该方案(scheme)构成成功的攻击,即scheme旨在预防攻击者的行动);一个威胁的模型(描述敌手的能力)。
(3)威胁模型假定攻击者拥有的能力,但对敌手使用的策略没有限制,不用假定敌手是怎么使用它的能力的。
(4)威胁模型,按顺序,攻击者的能力增加:唯密文攻击、已知明文攻击、选择明文攻击、选择密文攻击。
(5)Precise Assumptions:安全证明(proofs)经常依赖于假设(assumptions)。
(6)如果被视为建筑块的基本假设,作为方案安全证明的部分是明确的,接着我们只需检查要求的假设是否被新弱点影响。
(7)Proofs and Security: 严格的证明:在某些特定的假设(assumption)下,一个构造(construction)满足给出的定义(definition)。
⑻ 我想了解点关于密码学的知识,我现在没有任何基础.应该怎么入门求解
如果是想看对称密码算法,如DES,直接看算法就能懂,不需要任何基础。如果看AES算法,这个比较难,想自己看懂是不容易的。建议自己看DES,知道密码算法是怎么回事就行。
如果想看非对称密码算法,可以看看陈恭亮的信息安全数学基础,只需要看第一二章就行,然后就可以看经典的RSA非对称密码算法。这个主要是用来做数字证书的。比如网上支付多用它来做证书。
如果是对CSDN等论坛的用户密码泄露感兴趣,可以看MD5,SHA-1等消息摘要算法,也叫杂凑算法。这类算法主要是用来加密用户密码的。学这类算法不需要任何基础,直接学习就行。当然,还是要知道与否非等等位运算才行。
清华大学出版杨波编着的《现代密码学》不错的资料,胡向东的《应用密码学》举例比较详尽,是不错的入门书。
有兴趣可以看看于秀源的《密码学与数论基础》
⑼ 密码学的基础是什么
密码学是信息安全的技术核心。信息安全就业不错,企事业单位、研究单位、高校皆可。密码学最好读博,密码学博士毕业一般去研究单位、高校。
密码学入门书籍:
http://..com/question/95390233.html
http://..com/question/97342818.html
⑽ 密码学专业一般学习哪些课程
你好
密码学是研究编制密码和破译密码的技术科学。研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学。总称密码学
以下是武汉大学密码学课程的内容,供您参考
教学内容
1、密码学的基本概念
2、古典密码
3、数据加密标准(DES)
4、高级数据加密标准(AES)
5、我国商用密码SMS4
6、分组密码的应用技术
7、序列密码
8、对称密码
9、公开密钥密码
10、数字签名
11、HASH函数
12、认证
13、密钥管理
14、PKI技术
15、公钥密码
实验内容
古典密码的编程实现
DES的编程实现
AES密码的编程实现
SMS4密码的编程实现
序列密码的编程实现
公钥证书的认识与使用
文件加密软件系统