1信息安全基础苏放sufang@bupt.edu.cn北京邮电大学信息与通信工程学院2网络安全网络安全的主要目标是保护网络上的计算机资源免受毁坏、替换、盗窃和丢失。计算机资源包括计算机设备、存储介质、软件和数据信息等。3计算机网络面临的安全性威胁•计算机网络上的通信面临以下的四种威胁:(1)截获——从网络上窃听他人的通信内容。(2)中断——有意中断他人在网络上的通信。(3)篡改——故意篡改网络上传送的报文。(4)伪造——伪造信息在网络上传送。•截获信息的攻击称为被动攻击,而更改信息和拒绝用户使用资源的攻击称为主动攻击。4对网络的被动攻击和主动攻击截获篡改伪造中断被动攻击主动攻击目的站源站源站源站源站目的站目的站目的站5(1)防止析出报文内容;(2)防止通信量分析;(3)检测更改报文流;(4)检测拒绝报文服务;(5)检测伪造初始化连接。计算机网络通信安全的目标有可能发生分组丢失6(1)计算机病毒——会“传染”其他程序的程序,“传染”是通过修改其他程序来把自身或其变种复制进去完成的。(2)计算机蠕虫——通过网络的通信功能将自身从一个结点发送到另一个结点并启动运行的程序。(3)特洛伊木马——一种程序,它执行的功能超出所声称的功能。(4)逻辑炸弹——一种当运行环境满足某种特定条件时执行其他特殊功能的程序。恶意程序(rogueprogram)7计算机网络安全的内容•保密性•安全协议的设计•接入控制8一般的数据加密模型E加密算法D解密算法加密密钥K解密密钥K明文X明文X密文Y=EK(X)截取者截获篡改密钥源安全信道9一些重要概念•密码学(cryptology)–密码编码学(cryptography):密码体制的设计–密码分析学(cryptanalysis):在未知密钥的情况下从密文推演出明文或密钥•安全–如果不论截取者获得了多少密文,但在密文中都没有足够的信息来惟一地确定出对应的明文,则这一密码体制称为无条件安全的,或称为理论上是不可破的。–如果密码体制中的密码不能被可使用的计算资源破译,则这一密码体制称为在计算上是安全的。10常规密钥密码体制•常规密钥密码体制:–加密密钥与解密密钥是相同的密码体制。–又称为对称密钥系统•在常规密钥密码体制中两种最基本的密码:–替代密码–置换密码11替代密码与置换密码•替代密码(substitutioncipher)的原理可用一个例子来说明。(密钥是3)abcdefghijklmnopqrstuvwxyzDEFGHIJKLMNOPQRSTUVWXYZABCcaesarcipherFDHVDUFLSKHU明文密文明文c变成了密文F12替代密码与置换密码•替代密码(substitutioncipher)的原理可用一个例子来说明。(密钥是3)abcdefghijklmnopqrstuvwxyzDEFGHIJKLMNOPQRSTUVWXYZABCcaesarcipherFDHVDUFLSKHU明文密文明文a变成了密文D13替代密码与置换密码•替代密码(substitutioncipher)的原理可用一个例子来说明。(密钥是3)abcdefghijklmnopqrstuvwxyzDEFGHIJKLMNOPQRSTUVWXYZABCcaesarcipherFDHVDUFLSKHU明文密文明文e变成了密文H14CIPHER145326attackbeginsatfour置换密码•置换密码(transpositioncipher)则是按照某一规则重新排列消息中的比特或字符顺序。密钥顺序明文根据英文字母在26个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有A和B,因此C为第1。同理,E为第2,H为第3,……,R为第6。于是得出密钥字母的相对先后顺序为145326。15CIPHER145326attackbeginsatfour置换密码•置换密码(transpositioncipher)则是按照某一规则重新排列消息中的比特或字符顺序。密钥顺序明文根据英文字母在26个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有A和B,因此C为第1。同理,E为第2,H为第3,……,R为第6。于是得出密钥字母的相对先后顺序为145326。16CIPHER145326attackbeginsatfour置换密码•置换密码(transpositioncipher)则是按照某一规则重新排列消息中的比特或字符顺序。密钥顺序明文根据英文字母在26个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有A和B,因此C为第1。同理,E为第2,H为第3,……,R为第6。于是得出密钥字母的相对先后顺序为145326。17CIPHER145326attackbeginsatfour置换密码•置换密码(transpositioncipher)则是按照某一规则重新排列消息中的比特或字符顺序。密钥顺序明文根据英文字母在26个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有A和B,因此C为第1。同理,E为第2,H为第3,……,R为第6。于是得出密钥字母的相对先后顺序为145326。18CIPHER145326attackbeginsatfour置换密码•置换密码(transpositioncipher)则是按照某一规则重新排列消息中的比特或字符顺序。密钥顺序明文根据英文字母在26个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有A和B,因此C为第1。同理,E为第2,H为第3,……,R为第6。于是得出密钥字母的相对先后顺序为145326。19CIPHER145326attackbeginsatfour置换密码•置换密码(transpositioncipher)则是按照某一规则重新排列消息中的比特或字符顺序。密钥顺序明文根据英文字母在26个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有A和B,因此C为第1。同理,E为第2,H为第3,……,R为第6。于是得出密钥字母的相对先后顺序为145326。20CIPHER145326attackbeginsatfour密文的得出密钥顺序明文先读顺序为1的明文列,即aba21CIPHER145326attackbeginsatfour密文的得出密钥顺序明文再读顺序为2的明文列,即cnu22CIPHER145326attackbeginsatfour密文的得出密钥顺序明文再读顺序为3的明文列,即aio23CIPHER145326attackbeginsatfour密文的得出密钥顺序明文再读顺序为4的明文列,即tet24CIPHER145326attackbeginsatfour密文的得出密钥顺序明文再读顺序为5的明文列,即tgf25CIPHER145326attackbeginsatfour密文的得出密钥顺序明文最后读顺序为6的明文列,即ksr因此密文就是:abacnuaiotettgfksr26CIPHER145326attackbeginsatfour接收端收到密文后按列写下密钥顺序明文先写下第1列密文aba收到的密文:abacnuaiotettgfksr27CIPHER145326attackbeginsatfour接收端收到密文后按列写下密钥顺序明文再写下第2列密文cnu收到的密文:abacnuaiotettgfksr28CIPHER145326attackbeginsatfour接收端收到密文后按列写下密钥顺序明文再写下第3列密文aio收到的密文:abacnuaiotettgfksr29CIPHER145326attackbeginsatfour接收端收到密文后按列写下密钥顺序明文再写下第4列密文tet收到的密文:abacnuaiotettgfksr30CIPHER145326attackbeginsatfour接收端收到密文后按列写下密钥顺序明文再写下第5列密文tgf收到的密文:abacnuaiotettgfksr31CIPHER145326attackbeginsatfour接收端收到密文后按列写下密钥顺序明文最后写下第6列密文ksr收到的密文:abacnuaiotettgfksr32CIPHER145326attackbeginsatfour接收端从密文解出明文密钥顺序明文最后按行读出明文收到的密文:abacnuaiotettgfksr33CIPHER145326attackbeginsatfour接收端从密文解出明文密钥顺序明文最后按行读出明文收到的密文:abacnuaiotettgfksr34CIPHER145326attackbeginsatfour接收端从密文解出明文密钥顺序明文最后按行读出明文收到的密文:abacnuaiotettgfksr得出明文:attackbeginsatfour35密码体制的保密性•序列密码体制的保密性完全在于密钥的随机性。•如果密钥是真正的随机数,则这种体制就是理论上不可破的。这也可称为一次一密乱码本体制。•严格的一次一密乱码本体制所需的密钥量不存在上限,很难实用化。36公开密钥密码体制•公开密钥密码体制–使用不同的加密密钥与解密密钥,是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制。•公开密钥密码体制的产生的原因:–由于常规密钥密码体制的密钥分配问题–对数字签名的需求。•现有三种公开密钥密码体制,其中最著名的是RSA体制,它基于数论中大数分解问题的体制,由美国三位科学家Rivest,Shamir和Adleman于1976年提出并在1978年正式发表的。37加密密钥与解密密钥•在公开密钥密码体制中,加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥)SK是需要保密的。•加密算法E和解密算法D也都是公开的。•虽然秘密密钥SK是由公开密钥PK决定的,但却不能根据PK计算出SK。38公开密钥算法的特点(1)发送者用加密密钥PK对明文X加密后,在接收者用解密密钥SK解密,即可恢复出明文,或写为:DSK(EPK(X))X–解密密钥是接收者专用的秘密密钥,对其他人都保密。•此外,加密和解密的运算可以对调,即EPK(DSK(X))X39公开密钥算法的特点(2)加密密钥是公开的,但不能用它来解密,即DPK(EPK(X))X(3)在计算机上可容易地产生成对的PK和SK。(4)从已知的PK实际上不可能推导出SK,即从PK到SK是“计算上不可能的”。(5)加密和解密算法都是公开的。40公开密钥密码体制接收者发送者E加密算法D解密算法加密密钥PK解密密钥SK明文X密文Y=EPK(X)密钥对产生源明文X=DSK(EPK(X))41数字签名•数字签名必须保证以下三点:(1)接收者能够核实发送者对报文的签名;(2)发送者事后不能抵赖对报文的签名;(3)接收者不能伪造对报文的签名。•现在常采用公开密钥算法实现。42数字签名的实现DSKPK用公开密钥核实签名用秘密密钥进行签名X发送者A接收者BDSK(X)XE43数字签名的实现•B用已知的A的公开加密密钥得出EPKA(DSKA(X))X。因为除A外没有别人能具有A的解密密钥SKA,所以除A外没有别人能产生密文DSKA(X)。这样,B相信报文X是A签名发送的。•若A要抵赖曾发送报文给B,B可将X及DSKA(X)出示给第三者。第三者很容易用PKA去证实A确实发送X给B。反之,若B将X伪造成X‘,则B不能在第三者前出示DSKA(X’)。这样就证明了B伪造了报文。44具有保密性的数字签名DSKAPKA用公开密钥核实签名用秘密密钥签名X发送者A接收者BDSKA(X)XEEPKB用公开密钥加密EPKB(DSKA(X))DSKB用秘密密钥解密DSKA(X)密文45报文鉴别(messageauthentication)•在信息的安全领域中,对付被动攻击的重要措施是加密,而对付主动攻击中的篡改和伪造则要用报文鉴别。•报文鉴别使得通信的接收方能够验证所收到的报文(发送