《大学计算机python基础课件2015lecture18》由会员分享,可在线阅读,更多相关《大学计算机python基础课件2015lecture18(32页珍藏版)》请在金锄头文库上搜索。
1、第18讲 网络安全(5.5)西安交通大学西安交通大学 计算机教学实验中心计算机教学实验中心 2015.121西安交通大学 计算机教学实验中心 2015大学计算机基础大学计算机基础 培养计算思维本节内容网络安全的定义涉及的方面信息安全的特征传统加密技术秘密密钥加密、公开密钥加密用户认证数字签名参考资料: 英英西蒙西蒙.辛格著辛格著,朱小蓬等译朱小蓬等译,密码故事密码故事,海南出版社海南出版社,2001 电影:电影:风声风声西安交通大学 计算机教学实验中心 20132大学计算机基础 培养计算思维安全安全指不因指不因人、机、媒介的相互作用人、机、媒介的相互作用而导致而导致系统损失、人员系统损失、人员
2、 伤害、任务受影响或造成时间的损失。伤害、任务受影响或造成时间的损失。计算机网络安全为数据处理系统建立和常用的安全防范技术,以为数据处理系统建立和常用的安全防范技术,以保护保护计计 算机硬件、软件和数据不因偶然和恶意的原因遭到破坏算机硬件、软件和数据不因偶然和恶意的原因遭到破坏 、更改和泄露,系统连续可靠正常地运行,网络服务不、更改和泄露,系统连续可靠正常地运行,网络服务不 中断。中断。涉及的范围运行系统安全运行系统安全系统信息的安全系统信息的安全信息传播的安全信息传播的安全信息内容的安全信息内容的安全西安交通大学 计算机教学实验中心 20133大学计算机基础 培养计算思维网络安全的特征保密性
3、保密性完整性完整性可用性可用性可控性可控性可审查性可审查性大家知道的提高信息安全程度的方法/措施刻在蜡纸上、刻在蜡纸上、写在头皮上、写在头皮上、藏在鸡蛋里、藏在鸡蛋里、微缩照片微缩照片隐藏技术隐藏技术西安交通大学 计算机教学实验中心 20134大学计算机基础 培养计算思维5.5.1加密明文、密文、加密算法、解密算法、密钥P明文,C密文;C=Ek(P); P=Dk(C);有加密就有解密密码分析(破解,破译),密码学解密:解密算法、密钥解密算法、密钥西安交通大学 计算机教学实验中心 2013加密方法加密方法解密方法解密方法C密文密文 C=EK(P)加密密钥加密密钥解密密钥解密密钥明 文 P明 文
4、P5对原有的数据进行变换,未授权用户即使获得了 变换后的数据,也无法了解信息的内容。大学计算机基础 培养计算思维1.几种传统加密技术单字符替代加密多字符替代加密换位加密位级加密西安交通大学 计算机教学实验中心 20136大学计算机基础 培养计算思维1)单字符替代加密明文中的每一个字符用另一个字符代替看下列字符Wrpruurz?这是一个英文单词的变换结果,是对每个字符用这是一个英文单词的变换结果,是对每个字符用 字母表中的其后第字母表中的其后第3个字符替换得到的个字符替换得到的西安交通大学 计算机教学实验中心 2013密文密文abcdefghijklm明文明文xyzabcdefghij密文密文n
5、opqrstuvw xyz明文明文klm nopqrstuvw7大学计算机基础 培养计算思维西安交通大学 计算机教学实验中心 20131)单字符替代加密最早的密码机器: 15世纪意大利建筑 师利昂.阿尔伯提 发明,外盘是明文, 内盘是密文,用于 单字符替代加密 (凯撒密码Caesar)8Demo大学计算机基础 培养计算思维单字符替代加密解密方法映射方法与复杂性?K=1,2,3,25如果将一个英文字母随意映射到另一个字母上如果将一个英文字母随意映射到另一个字母上 ,其密钥是对应于整个字母表的,其密钥是对应于整个字母表的26个字母串,个字母串, 若使用每微秒能够尝试一个密钥的计算机,需若使用每微秒
6、能够尝试一个密钥的计算机,需 要计算多长时间?如何破译?要计算多长时间?如何破译?26!=403291461126605635584000000需要需要: 1278828834.12 万年万年9西安交通大学 计算机教学实验中心 2013大学计算机基础 培养计算思维2)多字符替代加密【例例】如果明文是“如果明文是“I LOVE STUDYING NETWORKING”,密钥是,密钥是 “YOUMUSTBECRAZY”,则使用,则使用Vigenere表表 加密后的密文是什么?加密后的密文是什么?(p241)Y Y O O U U M M U U S S T T B B E E C C R R A
7、A Z Z Y Y Y Y O O U U M M U U S S T T B B E E 密钥密钥 I I L L O O V V E E S S T T U U D D Y Y I I N N G G N N E E T T W W O O R R K K I I N N G G 明文明文 G G Z Z I I H H Y Y K K M M V V H H A A Z Z N N F F L L C C H H G G A A L L C C B B O O K K 密文密文明文和密文字符间没有明显的规律明文和密文字符间没有明显的规律10西安交通大学 计算机教学实验中心 2013大学计
8、算机基础 培养计算思维Vigenere表A AB BC CD DE EF FG GH HI IJ JK KL LM MN NO OP PQ QR RS ST TU UV VW WX XY YZ Z A AABCDEFGHIJKLMNOPQRSTUVWXYZ B BBCDEFGHIJKLMNOPQRSTUVWXYZA C CCDEFGHIJKLMNOPQRSTUVWXYZAB D DDEFGHIJKLMNOPQRSTUVWXYZABC E EEFGHIJKLMNOPQRSTUVWXYZABCD F FFGHIJKLMNOPQRSTUVWXYZABCDE G GGHIJKLMNOPQRSTUVWX
9、YZABCDEF H HHIJKLMNOPQRSTUVWXYZABCDEFG I IIJKLMNOPQRSTUVWXYZABCDEFGH J JJKLMNOPQRSTUVWXYZABCDEFGHI K KKLMNOPQRSTUVWXYZABCDEFGHIJ L LLMNOPQRSTUVWXYZABCDEFGHIJK M MMNOPQRSTUVWXYZABCDEFGHIJKL N NNOPQRSTUVWXYZABCDEFGHIJKLM O OOPQRSTUVWXYZABCDEFGHIJKLMN P PPQRSTUVWXYZABCDEFGHIJKLMNO Q QQRSTUVWXYZABCDEFGH
10、IJKLMNOP R RRSTUVWXYZABCDEFGHIJKLMNOPQ S SSTUVWXYZABCDEFGHIJKLMNOPQR T TTUVWXYZABCDEFGHIJKLMNOPQRS U UUVWXYZABCDEFGHIJKLMNOPQRST V VVWXYZABCDEFGHIJKLMNOPQRSTU W WWXYZABCDEFGHIJKLMNOPQRSTUV X XXYZABCDEFGHIJKLMNOPQRSTUVW Y YYZABCDEFGHIJKLMNOPQRSTUVWX Z ZZABCDEFGHIJKLMNOPQRSTUVWXY西安交通大学 计算机教学实验中心 20131
11、1大学计算机基础 培养计算思维1918年德国阿瑟年德国阿瑟.谢尔比斯发明恩格玛机谢尔比斯发明恩格玛机西安交通大学 计算机教学实验中心 201312大学计算机基础 培养计算思维http:/enigmaco.de/enigma/enigma.html西安交通大学 计算机教学实验中心 201313大学计算机基础 培养计算思维3)换位加密将明文字符的次序重新排列。字符本身不变。西安交通大学 计算机教学实验中心 201314大学计算机基础 培养计算思维3)换位加密【例例】如将明文“如将明文“company results are as expected”按照按照每行每行n个个 字母字母填入填入表格表格后
12、,按列输出后,按列输出结果结果是什么?如果使用一个密码指定列的是什么?如果使用一个密码指定列的 转换次序,如转换次序,如24351,表示先转换第,表示先转换第2列,然后第列,然后第4列,以此类推,按列,以此类推,按 列输出的密文是什么?如何破译?列输出的密文是什么?如何破译? 1 12 23 34 45 5 compa ny- -re sults - -are- - as- -ex pecte d- - - - -cns-apdoyuase-m-lr-c-prteet-aes-xe-15西安交通大学 计算机教学实验中心 2013大学计算机基础 培养计算思维4)位级加密对构成字符的二进制位加密。
13、一种方法是将明文二进制串 和密钥二进制串做异或运算。【例例】如果明文是“如果明文是“1010111001100010”,密钥是,密钥是 “1110010110000101”,采用位级加密后的密文是什么,采用位级加密后的密文是什么 ?如何解密?如何解密?加密:将明文截成与密钥等长的二进制位串加密:将明文截成与密钥等长的二进制位串明文明文1010111001100010密钥密钥1110010110000101密文密文0100101111100111解密密文密文0100101111100111密钥密钥1110010110000101明文明文101011100110001016西安交通大学 计算机教学
14、实验中心 2013大学计算机基础 培养计算思维5)秘密密钥算法DES传统密码学,加密算法比较简单,通过加长密钥长度提高安全性现代密码学,使算法很复杂,即使使用选择明 文攻击,也很难破译密文DES(Data Encryption Standard)西安交通大学 计算机教学实验中心 201317大学计算机基础 培养计算思维5)秘密密钥算法DES交替性地使用扰乱和扩散交替性地使用扰乱和扩散 来设计密码来设计密码扰乱使密文和明文的统计扰乱使密文和明文的统计 关系复杂化关系复杂化扩散使密文和明文的关系扩散使密文和明文的关系 无统计规律无统计规律18西安交通大学 计算机教学实验中心 2013大学计算机基础
15、 培养计算思维加密算法分类加密和解密使用相同的密钥密钥是保密的秘密密钥算法,对称密钥密码,单 钥体制密码秘密密钥的弱点?密钥管理困难密钥的传输困难没有签名功能1976年,Diffie,Hellman提出公开密钥体制密 码。加密密钥和解密密钥不同:公开密钥加密(双钥体制密码)西安交通大学 计算机教学实验中心 201319大学计算机基础 培养计算思维6)公开密钥算法PKEE是加密算法,D是解密算法 D(E(P)=P,解密算法作用于密文,可获得明文,解密算法作用于密文,可获得明文 从从E导出导出D很困难很困难! “选择明文”不能攻破“选择明文”不能攻破E1978年,MIT:Rivest, Shami
16、r, Adleman提出 公钥密码体制的一个优秀的加密算法RSA西安交通大学 计算机教学实验中心 201320MIT:Massachusetts Institute of Technology 基于的基本原理 大的素数的分解是困难的大的素数的分解是困难的大学计算机基础 培养计算思维35分解为两个素数的乘积?10000000000023800000000013761呢?事实上它是100000000000099100000000000139的乘积。怎样得到呢?如果这个数是100位,200位呢?西安交通大学 计算机教学实验中心 201321大学计算机基础 培养计算思维RSA算法 选择两个大的素数选择两个大的素数p,q(大于大于10100),p,q保密保密 计算计算n=pq,z=(p-1) (q-1); n