您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 北航-第三章-加密技术(1)对称密码体系
计算机网络安全概论1第三章数据加密技术计算机网络安全概论2前言基础数论在密码学中的作用基础数论作为一门古老的数学学科,在整个数学学科中占有非常重要的位置。数论中许多基本内容,如同余理论、中国剩余定理(CRT)、高次剩余理论等,在新型密码体制、密钥分配与管理、数字签名、身份认证等方面有直接的应用。现代密码与近代数学形影不离近代数学在现代密码研究中比比皆是:群论、有限域上椭圆曲线理论、多项式理论与迹函数理论、陷门单向函数等。计算机网络安全概论3密码学的两个分支1.密码编码学主要研究对信息进行变换,以保护信息在信道的传输过程中不被敌手窃取、解读和利用的方法2.密码分析学主要研究如何分析和破译密码密码分析学与密码编码学相反,这两个分支,既相对立又相互促进计算机网络安全概论4术语与定义1.明文需要加密的信息称为明文2.密文明文经过加密或伪装,形成密文3.加密和解密对明文而实施一系列的变换过程而形成密文,称为加密或加密变换。反之对密文施加一系列的逆变换而还原成明文,称为解密或解密变换4.密码方案密码方案确切地描述了加密变换与解密变换的具体规则术语与定义密钥是一种参数,它是在明文转换为密文或将密文转换为明文的算法中输入的数据.两种密钥对称密钥加密,又称私钥加密,即信息的发送方和接收方用一个密钥去加密和解密数据。它的最大优势是加/解密速度快,适合于对大数据量进行加密,但密钥管理困难。非对称密钥加密系统,又称公钥密钥加密。它需要使用一对密钥完成加密和解密操作,一个公开发布,即公开密钥,另一个由用户自己秘密保存,即私用密钥。信息发送者用公开密钥去加密,而信息接收者则用私用密钥去解密。公钥机制灵活,但加密和解密速度却比对称密钥加密慢得多。密钥空间密钥的全体称为密钥空间网络安全与信息技术5计算机网络安全概论6从数学的角度来讲,一个密码系统是一族映射,它在密钥的控制下将明文空间中的每一个元素映射到密文空间上的某个元素。这族映射由密码方案确定,具体使用哪一个映射由密钥决定。可以将密码方案与密钥共同看作控制密码变换的“密钥”,只不过密码方案是固定的“密钥”,而密钥是变换的“密钥”。将“密钥”中固定的部分(密码方案)与变化的部分(密钥)区分开来对于密码分析以及密钥管理等具有重大的意义密码编码的数学分析计算机网络安全概论7密码系统的模型信源编码器信道解码器接收者秘密信道密码分析者密钥源密钥源计算机网络安全概论81.密码分析和密码攻击如果非授权者借助窃听到的密文以及其他一些信息通过各种方法推断原来的明文甚至密钥,这一过程称为密码分析或密码攻击2.多种攻击行为密码系统所假想的环境中除了接收者外,还有非授权者,它们通过各种方法来窃听、干扰信息3.无条件的安全性对于一个密码系统来说.若攻击者无论得到多少密文也求不出确定明文的足够信息,这种密码系统就是理论上不可破译的,即密码系统具有无条件安全性(或完善保密性)密码系统的安全性计算机网络安全概论9密码系统的安全性4.实际安全性若一个密码系统原则上虽可破译,但为了由密文得到明文或密钥却需付出十分巨大的计算,而不能在希望的时间内或实际可能的经济条件下求出准确的答案,这种密码系统就是实际不可破译的,或称称该密码系统具有计算安全性5.影响安全性的几个因素算法强度算法的强度越高,攻击者越难破译其它因素其他的各种非技术手段(如管理的漏洞,或是某个环节无意暴露了敏感信息等)来攻破一个密码系统计算机网络安全概论10密码攻击惟密文攻击分析者知道一个或一些密文的情况下,企图得到明文或密钥等敏感信息已知明文攻击分析者知道一些明文及对应的密文的对应关系选择明文攻击分析者获得更大机会接近密码系统,可以选择一些对攻击有利的特定明文,并得到对应的密文,以及在此基础上进行密码的破译选择密文攻击与选择明文攻击相反,分析者可以选择性地知道一些攻击有利的特定密文,并得到对应的明文计算机网络安全概论11密码系统的安全需求密码系统的密钥空间必须足够大加密与解密过程必须是计算上可行的,必须能够方便地实现及使用整个密码系统的安全性系于密钥上,即使密码方案被公布,在密钥不泄露的情况下,密码系统的安全性也可以得到保证计算机网络安全概论12密码学三种考虑角度(1)从明文到密文的变换替换(substitution)置换(transposition)……(2)钥匙的数目对称、单钥加密法双钥、公钥加密(3)明文的处理方式分组加密(块加密算法)流方式加密计算机网络安全概论13加密算法的有效性Unconditionallysecure,绝对安全?永不可破,是理想情况,理论上不可破,密钥空间无限,在已知密文条件下,方程无解。但是我们可以考虑:破解的代价超过了加密信息本身的价值破解的时间超过了加密信息本身的有效期Computationallysecure,计算安全?满足上述两个条件计算机网络安全概论14直觉:什么是一个好的加密算法假设密码(password)k是固定的明文和密文是一个映射关系:单射,即Ek(x1)!=Ek(x2)ifx1!=x2通常情况是:明文非常有序好的密码条件下,我们期望得到什么样的密文随机性?计算机网络安全概论15考虑设计一个加密算法打破明文本身的规律性随机性(可望不可及)非线性(一定要)统计意义上的规律多次迭代迭代是否会增加变换的复杂性是否存在通用的框架,用于迭代复杂性带来密码分析的困难和不可知性实践的检验和考验计算机网络安全概论16已有密码算法经典密码算法替换技术(Substitution)置换技术(Transposition)现代密码算法DESAES其他密码算法计算机网络安全概论17替换技术(substitution)Caesar加密制计算机网络安全概论18计算机网络安全概论19替换技术块替换加密法计算机网络安全概论20置换技术(transposition)栅栏加密技术用对角线方式写明文,然后按行重新排序CmhmtmrooeoeoorwCmhmtmrooeoeoorw简单分栏将明文消息一行一行地写入预定长度的矩形中一列一列读,随机顺序密文消息多轮简单分栏计算机网络安全概论21计算机网络安全概论22经典密码算法特点要求的计算强度小DES之前以字母表为主要加密对象替换和置换技术数据安全基于算法的保密密码分析方法基于明文的可读性以及字母和字母组合的频率特性计算机网络安全概论23现代密码算法DES(DataEncryptionStandard)AESIDEARC5BlowfishCAST-128……计算机网络安全概论24对称加密算法的基本模型加密:E:(X,K)Y,y=E(x,k)XYKEYXKD解密:D:(Y,K)X,x=D(y,k)计算机网络安全概论25算法类型序列(流)密码与分组密码序列密码(streamcipher)也叫流密码,是对单个明文位(Bit-by-bit)变换的操作分组密码(blockcipher)是对一个大的明文块(Block-by-block)进行固定变换的操作计算机网络安全概论26序列(流)密码计算机网络安全概论27分组密码计算机网络安全概论28分组密码算法设计指导原则Confusion(混淆)强调密钥的作用增加密钥与密文之间关系的复杂性流加密和块加密Diffusion(发散)小扰动的影响波及到全局密文没有统计特征,明文一位影响密文的多位,增加密文与明文之间关系的复杂性块加密计算机网络安全概论29算法模式电子簿模式(electroniccodebookmode)ECB密码块链接(cipherblockchaining)CBC密码反馈方式(cipherfeedback)CFB输出反馈方式(outputfeedback)OFB计算机网络安全概论30电子簿模式ECB相同明文相同密文同样信息多次出现造成泄漏信息块可被替换信息块可被重排密文块损坏仅对应明文块损坏适合于传输短信息计算机网络安全概论31密码块链接CBC需要共同的初始化向量(IV)相同明文不同密文初始化向量IV可以用来改变第一块密文块损坏两明文块损坏安全性好于ECB计算机网络安全概论32通过采用流密码的设计思想,在加密过程中采用合理的记忆组件,能够消除这些局限性分组密码的优缺点分组密码主要有两个优点易于标准化易于实现同步局限性分组密码不便于隐藏明文的数据模式对于重放、插入、删除等攻击方式的抵御能力计算机网络安全概论33密码反馈方式CFBCFB:分组密码流密码需要共同的移位寄存器初始值IV对于不同的消息,IV必须唯一一个单元损坏影响多个单元:(W+j-1)/jW为分组加密块大小,j为流单元位数计算机网络安全概论34输出反馈方式OFBOFB:分组密码流密码需要共同的移位寄存器初始值IV一个单元损坏只影响对应单元计算机网络安全概论35密码系统的模型信源编码器信道解码器接收者秘密信道密码分析者密钥源密钥源计算机网络安全概论36Feistel结构的分组加密算法结构乊思想基本思想:用简单算法的乘积来近似表达大尺寸的替换变换多个简单算法的结合得到的加密算法比任何一个部分算法都要强交替使用替换置换和排列(permutation)混淆(confusion)和发散(diffusion)概念的应用计算机网络安全概论37Feistel结构图计算机网络安全概论38Feistel结构定义加密:Li=Ri-1;Ri=Li-1F(Ri-1,Ki)解密:Ri-1=LiLi-1=RiF(Ri-1,Ki)=RiF(Li,Ki)计算机网络安全概论39Feistel分组加密算法特点分组大小:越大安全性越高,但速度下降,64比较合理密钥位数:越大安全性越高,但速度下降,64广泛使用,但现在已经不够用—〉128步数:典型16步子钥产生算法:算法越复杂,就增加密码分析的难度每一步的子函数:函数越复杂,就增加密码分析的难度快速软件实现:包括加密和解密算法易于分析:便于掌握算法的保密强度以及扩展办法计算机网络安全概论40DES算法1977年由美国的标准化局(NBS,现为NIST)采纳64位分组、56位密钥历史:IBM在60年代启动了LUCIFER项目,当时的算法采用128位密钥改进算法,降低为56位密钥,IBM提交给NBS(NIST),于是产生DES16轮的Feistel结构密码计算机网络安全概论41DES算法描述明文(64位)初始置换(IP)LPTRPT16轮16轮逆初始置换(FP)密文(64位)DES是对称密钥加密的算法,DES算法大致可以分成四个部分:初始置换迭代过程逆初始置换子密钥生成计算机网络安全概论42初始变换IP输入(64位)58504234261810260524436282012462544638302214664564840322416857494133251791595143352719113615345372921135635547393123157输出(64位)初始变换IPL0(32位)R0(32位)计算机网络安全概论43乘积迭代原理示意图左半部分32位右半部分32位新的左半部分新的右半部分密钥移位置换后的密钥f+计算机网络安全概论44DES的一轮(f)密钥变换扩展置换S盒替换P盒替换异或与交换计算机网络安全概论45加密凼数f(A,Ki)A(32位)扩展置换E48位结果48位Ki+选择函数组(S1~S8)32位结果置换运算P加密时A=Ri-1压缩置换EK(56位)计算机网络安全概论4616轮子密钥生成kPC-1C0D0LS1LS1C1D1LS2LS2PC-2k1C2D2PC-2k2„„LS16LS16C16D16PC-2K16图3.9DES子密钥生成总框图计算机网络安全概论47PC-1和PC-2574941332517915850423426181025951433527191136052443663
本文标题:北航-第三章-加密技术(1)对称密码体系
链接地址:https://www.777doc.com/doc-6723492 .html