实验六古典密码与破译
1 实验六 古典密码与破译
信息加密为什么要加密保密通讯无论在军事、政治、经济还是日常生活中都起着非常重要的作用。为了将信息传递给已方的接受者,同时又要防止他人(敌方)获取信息内容,必须将传递的信息(明文)加密,变成密文后发送出去,这样,即使敌方得到密文也看不懂,而己方的接受者收到密文后却可以按照预先定好的方法加以解密。密码分类古典密码:以字符为基本加密单元现代密码:以信息块为基本加密单元本实验主要介绍古典密码的加密与破译原理,,同时介绍如何用Matlab编程来实现加密、解密和破译过程。2
2 ◼ 为什么要加密 ⚫ 保密通讯无论在军事、政治、经济还是日常生活中都起着 非常重要的作用。 ⚫ 为了将信息传递给己方的接受者,同时又要防止他人(敌 方)获取信息内容,必须将传递的信息(明文)加密,变成 密文后发送出去,这样,即使敌方得到密文也看不懂,而己 方的接受者收到密文后却可以按照预先定好的方法加以解密。 信息加密 ◼ 密码分类 ⚫ 古典密码:以字符为基本加密单元 ⚫ 现代密码:以信息块为基本加密单元 本实验主要介绍古典密码的加密与破译原理,同时介绍 如何用 Matlab 编程来实现加密、解密和破译过程
加密信息传递过程加密器发送方明文(信息)密文普通信道敌方截获发送破译解密器明文(信息)密文接收方3
3 加密信息传递过程 明文(信息) 加密器 密文 明文(信息) 密文 解密器 普 通 信 道 发 送 敌方截获 破译 发送方 接收方
Hil2密码的加密过程Hill密码中所用的数学手段是矩阵运算加密过程:①将26个字母与0到25之间的整数建立一一对应关系,称为字母的表值,然后根据明文字母的表值,将明文信息用数字表示设通讯双方所给出的26个字母的表值如下:BcDFGEHJK1LMAOPZC注:这里假定明文中只使用26个大写字母4
4 Hill2 密码的加密过程 ⚫ Hill2 密码中所用的数学手段是 矩阵运算 ⚫ 加密过程: ① 将 26 个字母与 0 到 25 之间的整数建立一一对应关 系,称为字母的表值,然后根据明文字母的表值,将明 文信息用数字表示 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 设通讯双方所给出的26 个字母的表值如下: 注:这里假定明文中只使用26 个大写字母
Hill2密码的加密过程选择一个二阶可逆整数方阵A,称为HilI2密码的加2“密钥”,是加密的关键,仅密矩阵,它是加密体制的通讯双方掌握3)将明文字母分组。Hill,使用的是二阶矩阵,所以将明文字母每2个一组(可以推广至Hil.密码)。查出每个字母的表值,这样,每组字母构成一个二维列向量α若最后仅剩一个字母,则补充一个没有实际意义的哑字母(哑元),这样使得每组都有2个字母得到④令β=Aα,由β的两个分量反查字母表值表,相应的两个字母,即为密文字母5
5 Hill2 密码的加密过程 ② 选择一个二阶可逆整数方阵A,称为Hill2密码的加 密矩阵,它是加密体制的“密钥”,是加密的关键,仅 通讯双方掌握 ③ 将明文字母分组。 Hill2 使用的是二阶矩阵,所以将明 文字母每 2 个一组(可以推广至Hilln密码)。查出每个字 母的表值,这样,每组字母构成一个二维列向量 若最后仅剩一个字母,则补充一个没有实际意义的哑字母 (哑元),这样使得每组都有2 个字母 ④ 令 = A ,由 的两个分量反查字母表值表,得到 相应的两个字母,即为密文字母