1、密码学 Cryptography,祝烈煌 北京理工大学计算机学院 2012年,教材,其他参考书,其他参考书,其他参考书,课程内容,古典密码学 香农(Shannon)理论 分组密码和高级加密标准 HASH函数与消息认证码 RSA密码体制 基于离散对数的公钥密码学 数字签名 公开密钥基础设施,课程内容,身份识别方案和实体认证 密钥分发协议 密钥协商协议 群组安全通信协议,考查方式,评分方法 作业和程序 (50%) 期末考试(50%) 作业和程序提交方式 作业使用WORD或LETEX编辑 程序使用C+或JAVA编写 网络教室或,密码算法库,OpenSSL http:/www.openssl.org
2、/ http:/ Crypto+ http:/ MIRACL http:/www.shamus.ie/index.php?page=Downloads Maple http:/ 微软的CryptoAPI http:/ JAVA提供了密码算法相关的类,简单例子,邮件传输原理,,,简单例子,发送的邮件内容被窃取,简单例子,接收的邮件内容被窃取,简单例子,接收邮件时用户名和密码被窃取,简单例子,BASE64编码 username liehuangz password qwerasdf,发送邮件时用户名和密码被窃取,简单例子,BASE64编码,cXdl 28,23,29,37 011100,01011
3、1,011101,10010101110001 113 q 01110111 119 w 01110101 101 e,简单例子,邮件安全传输,简单例子,只是传输的时候加密,在邮件服务器并没有加密,邮件内容在传输过程已被加密,简单例子,攻击者修改邮件内容,,,简单例子,单向函数 1)已知 ,有高效算法计算 。 2)已知 ,很难计算出 ,使得 。 3)已知 和 ,很难计算出 ,使得 。 4)很难找到 ,满足 。,简单例子,全国大学生信息安全竞赛,指导单位 教育部高教司 工业和信息化部信息安全协调司 主办单位 教育部高等学校信息安全类专业教学指导委员会 参赛对象 全日制在校本 全日制专科生 参赛队
4、伍 每支参赛队不超过4人(包括组长),每支参赛队须设置1名组长及1名指导老师,每个学生只能参加一个队伍,各高校参赛队数不限。 参赛作品 竞赛采用开放式,不限定竞赛场所,参赛队伍可以自主命题,自主设计,在规定时间内完成作品;参赛作品内容须符合“全国大学生信息安全竞赛章程”和当届竞赛指南。,全国大学生信息安全竞赛,1. 刘丹,刘畅,宋樵,“基于身份的安全加密和数字签名”,二等奖,2009年 2. 杨郑和,杨昊,肖捷,“基于椭圆曲线的群组密钥协商协议”,三等奖,2009年 3. 周帆,刘进,张骥,田刚,“安全分布式网络存储系统”,三等奖,2010年 4. 刘丹,王飞,刘汉南,詹培星“无线传感器网安全
5、数据融合协议研究与实现”,二等奖,2010年 5. 刘畅,王宏远,王龙颜,杨昊,“安全视频群组通信系统研究与实现”,2010年 6. 李龙一佳,杨震,吴俊宏,王晓哲,“云存储加密数据模糊关键字信息检索研究与实现”,一等奖,2011年,简单例子,安全性分析 1)已知 ,求不出 。 2)测试方已经发送出 ,找不到 ,满足。,密码学历史,密码学有2500年4000年历史,以上世纪80年代为界,可以分为两个阶段:古典密码学和现代密码学,古典密码学(Classic Cryptography) 编码艺术:没有理论依据 主要实现数据加密 主要是军事部门使用,现代密码学(Modern Cryptography
6、) 科学(Science):丰富理论基础 实现数据加密、消息认证、数字 签名、密钥交换协议、身份认证等。 任何人都在使用密码学,密码学历史,密码学历史,密码学历史,国内网络与信息安全重点实验室,信息安全国家重点实验室(中科院软件所) 计算机信息内容安全国家重点实验室(哈工大) 清华大学理论计算科学研究中心 计算机网络与信息安全教育部重点实验室(西电) 可信任数字技术实验室(上海交通大学) 密码与信息安全实验室(上海交通大学) 空天信息安全与可信计算教育部重点实验室(武汉大学) 广东省信息安全技术重点实验室(中山大学) 密码技术与信息安全教育部重点实验室(山东大学), 数缘社区 北京邮电大学信息
7、安全中心 灵创,国外网络与信息安全重点实验室,Cryptography and Information Security Group (CIS Group),MIT Stanford Security Laboratory CMU CyLab Theory of Computation at Harvard Purdue University CERIAS Security and Cryptography at UCSD NYU Cryptography Group,国外网络与信息安全重点实验室,UCLA EMBEDDED SECURITY GROUP Cryptography Lab at
8、 Columbia University IBM Cryptography Group Cryptography, Security, and Applied Mathematics Group (Microsoft) Cryptography and Anti-Piracy (Microsoft) .,主要期刊和会议,安全领域主要会议,主要期刊和会议,安全领域主要会议,主要期刊和会议,安全领域主要会议,主要期刊和会议,安全领域主要会议,主要期刊和会议,安全领域主要会议,主要期刊和会议,安全领域主要期刊,Security and Cryptography Journals Internatio
9、nal Journal of Applied Cryptography Journal of Cryptology ACM Transactions on Information and System Security Designs, Codes and Cryptography IEEE Dependable and Secure Computing IEEE Transactions on Information Forensics and Security International Journal of Information Security International Journ
10、al of Security and Networks IET Information Security Journal of Computer Security Computers and Security IEEE Security and Privacy Journal of Mathematical Cryptology Information Management and Computer Security International Journal of Information and Computer Security Journal of Security and Commun
11、ication Networks International Journal of Network Security,Other Journals Accepting Security Papers IEEE Transactions on IT The Computer Journal Journal on Advances in Mathematics of Communications Journal of Computer Science and Technology Journal of Universal Computer Science Journal of Computer s
12、tandard & interface Journal of Systems and Software Journal of Wireless Communications and Mobile Computing Journal of Autonomic and Trusted Computing,有用链接,Web pages of interest to cryptography researchersWikiCFP-SecurityWelcome to Dr. Xiaofeng Chens HomepageCryptography related links (UCSD)Laborato
13、ry of Information & Communication Systems SecuritySecurity and CryptographySuat Ozdemir,基本概念,对称密码学(Symmetric Cryptography) 私钥密码学(private key Cryptography) 解密密钥可以从加密密钥推算出来,反过来也成立。(大多情况是同一个密钥),非对称密码学(Asymmetric cryptography) 公钥密码学(public key Cryptography) 解密密钥不能从加密密钥推算出来,反过来不一定成立。,基本概念,基本概念,消息称为明文(Pla
14、in text) 用某种方法伪装消息以隐藏它的内容的过程称为加密(Encryption,Encipher) 加密后的消息称为密文(Cipher text) 把明文转换为明文的过程称为解密(Decryption,Decipher) 使消息保密的技术和科学称为密码编码学(Cryptography) 从事密码编码的专业人员称为密码编码者(Cryptographer) 破译密文的技术和学科称为密码分析学(Cryptanalysis) 从事密码分析的专业人员称为密码分析者(Cryptanalyst) 加密算法、解密算法、加密密钥、解密密钥,私钥加密系统,一个私钥加密系统由Gen、Enc和Dec三个算法组
15、成:Gen是密钥生成算法:输入:安全参数 ,输出:密钥 Enc是加密算法:输入:密钥 和明文 ,输出:密文 Dec是解密算法:输入:密钥 和密文 ,输出:明文,私钥加密系统,给定一个密码系统(Gen,Enc,Dec),密钥集合K称为密钥空间,明文集合M为明文空间,密文集合C为密文空间。一个密钥加密系统需要满足正确性:,私钥加密系统,Kerckhoff原则,Kerckhoff原则:密码系统的安全性不依赖于加密体制或算法的保密,而依赖于密钥的安全性。优点:1) 保护一个密钥比保护一个算法更容易2)更换密钥比更换算法要容易3)加密算法需要统一,便于应用4)公开算法,可以方便大家进行分析,尽早发现算法
16、漏洞,加密算法的安全性,加密算法的安全性由能抵抗的攻击和达到的安全目标来衡量,加密算法的安全性,加密算法的安全目标: 攻击者不能获得解密密钥 攻击者不能获得明文 攻击者不能获得明文的任何部分信息 攻击者不能获得明文的任何函数,加密算法的安全性,假设攻击者已知加密算法的实现细节,在未知密钥的情况下,攻击密码系统的强度由弱到强的四种基本攻击:唯密文攻击(Ciphertext-only attack):分析者通过同一密钥加密的密文,恢复出明文或者密钥。已知明文攻击(Known-plaintext attack):分析者通过同一密钥加密的明文/密文对,恢复出其他密文的明文或者密钥。选择明文攻击(Chosen-plaintext attack):分析者可以根据破解需要,选择系列明文并获得对应的密文,恢复出其他密文的明文或者密钥。选择密文攻击(Chosen-ciphertext attack):分析者可以根据破解需要,选择系列密文并获得对应的明文,恢复出其他密文的明文或者密钥。,密码学提供的安全服务,THANKS,