密码学知识点总结----考试复习专用_第1页
密码学知识点总结----考试复习专用_第2页
密码学知识点总结----考试复习专用_第3页
密码学知识点总结----考试复习专用_第4页
密码学知识点总结----考试复习专用_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

精品文档 1欢迎下载 1 1 密码学分类密码学分类 2 2 攻击分类攻击分类 3 3 安全业务安全业务 4 4 算法输入输出位数算法输入输出位数 5 5 密钥分配管理密钥分配管理 6 6 密钥分配密钥分配 7 7 公钥分配公钥分配 8 8 三重三重 DESDES 9 9 杂凑的要求杂凑的要求 1010 欧几里得欧几里得 1111 本原根本原根 1212 勒让德符号勒让德符号 1313 数字签名的执行方式数字签名的执行方式 1414 强单向杂凑强单向杂凑 1515 模运算性质模运算性质 1616 同余式同余式 1717 DESDES 1818 AESAES 1919 RSARSA 2020 MD5MD5 2121 费尔马定理费尔马定理 2222 欧拉定理欧拉定理 2323 中国剩余定理中国剩余定理 2424 四种工作模式四种工作模式 1 1 密码学分类密码学分类 单钥体制单钥体制 双钥体制双钥体制 2 2 攻击分类攻击分类 唯密文攻击唯密文攻击 已知明文攻击已知明文攻击 选择明文攻击选择明文攻击 选择密文攻击选择密文攻击 3 3 安全业务安全业务 认证业务认证业务 保密业务保密业务 完整性业务完整性业务 不可否认业务不可否认业务 访问控制访问控制 4 4 算法输入输出位数算法输入输出位数 DESDES 6464 比特明文比特明文 5656 比特密钥比特密钥 输出输出 6464 比特密文比特密文 AESAES 128128 192192 256256 比特比特 RSARSA 输入输入 664664 比特比特 MD5MD5 输入输入 512512 比特分组比特分组 128128 比特输出比特输出 5 5 密钥分配管理密钥分配管理 两个用户两个用户 A A 和和 B B 获得共享密钥的方法包括 获得共享密钥的方法包括 密钥由密钥由 A A 选取并通过物理手段发送给选取并通过物理手段发送给 B B 密钥由第三方选取并通过物理手段发送给密钥由第三方选取并通过物理手段发送给 A A 和和 B B 精品文档 2欢迎下载 如果如果 A A B B 事先已有一密钥 则其中一方选取新密钥后 用已有的密钥加密新密钥并发事先已有一密钥 则其中一方选取新密钥后 用已有的密钥加密新密钥并发 送给另一方 送给另一方 如果如果 A A 和和 B B 与第三方与第三方 C C 分别有一保密信道 则分别有一保密信道 则 C C 为为 A A B B 选取密钥后 分别在两个保密选取密钥后 分别在两个保密 信道上发送给信道上发送给 A A B B 6 6 密钥分配密钥分配 A A 向向 KDCKDC 发出会话密钥请求发出会话密钥请求 KDCKDC 为为 A A 的请求发出应答 的请求发出应答 A A 存储会话密钥 并向存储会话密钥 并向 B B 转发转发 EKB KS IDA EKB KS IDA B B 用会话密钥用会话密钥 KSKS 加密另一个一次性随机数加密另一个一次性随机数 N2N2 并将加密结果发送给 并将加密结果发送给 A A A A 以以 f N2 f N2 作为对作为对 B B 的应答 其中的应答 其中 f f 是对是对 N2N2 进行某种变换 例如加进行某种变换 例如加 1 1 的函数 并将应 的函数 并将应 答用会话密钥加密后发送给答用会话密钥加密后发送给 B B 7 7 公钥分配公钥分配 用户用户 A A 向公钥管理机构发送一个带时戳的消息 消息中有获取用户向公钥管理机构发送一个带时戳的消息 消息中有获取用户 B B 的当前公钥的请求 的当前公钥的请求 管理机构对管理机构对 A A 的请求作出应答 应答由一个消息表示 该消息由管理机构用自己的秘密的请求作出应答 应答由一个消息表示 该消息由管理机构用自己的秘密 钥钥 SKAUSKAU 加密 因此加密 因此 A A 能用管理机构的公开钥解密 并使能用管理机构的公开钥解密 并使 A A 相信这个消息的确是来源于管理相信这个消息的确是来源于管理 机构 机构 A A 用用 B B 的公开钥对一个消息加密后发往的公开钥对一个消息加密后发往 B B 这个消息有两个数据项 这个消息有两个数据项 一是一是 A A 的身份的身份 IDAIDA 二是一个一次性随机数 二是一个一次性随机数 N1N1 用于惟一地标识这次业务 用于惟一地标识这次业务 B B 以相同方式从管理机构获取以相同方式从管理机构获取 A A 的公开钥 与步骤的公开钥 与步骤 类似 类似 这时 这时 A A 和和 B B 都已安全都已安全 地得到了对方的公钥 所以可进行保密通信 然而 他们也许还希望有以下两步 以认证地得到了对方的公钥 所以可进行保密通信 然而 他们也许还希望有以下两步 以认证 对方 对方 B B 用用 PKAPKA 对一个消息加密后发往对一个消息加密后发往 A A 该消息的数据项有 该消息的数据项有 A A 的一次性随机数的一次性随机数 N1N1 和和 B B 产生的产生的 一个一次性随机数一个一次性随机数 N2N2 因为只有 因为只有 B B 能解密能解密 的消息 所以的消息 所以 A A 收到的消息中的收到的消息中的 N1N1 可使其相可使其相 信通信的另一方的确是信通信的另一方的确是 B B A A 用用 B B 的公开钥对的公开钥对 N2N2 加密后返回给加密后返回给 B B 可使 可使 B B 相信通信的另一方的确是相信通信的另一方的确是 A A 精品文档 3欢迎下载 8 8 三重三重 DESDES 三个密钥的三重三个密钥的三重 DESDES 密钥长度为密钥长度为 168168 比特 加密方式为比特 加密方式为 令令K K3 3 K K2 2 或或K K1 1 K K2 2 则变为一重 则变为一重 DESDES 9 9 杂凑的要求杂凑的要求 函数的输入可以是任意长 函数的输入可以是任意长 函数的输出是固定长 函数的输出是固定长 已知已知 x x 求 求 H x H x 较为容易 可用硬件或软件实现 较为容易 可用硬件或软件实现 已知已知 h h 求使得 求使得 H x hH x h 的的 x x 在计算上是不可行的 即满足单向性 称在计算上是不可行的 即满足单向性 称 H x H x 为单向杂凑为单向杂凑 函数 函数 已知已知 x x 找出 找出 y y x y y x 使得使得 H y H x H y H x 在计算上是不可行的 称满足这一性质的杂凑函在计算上是不可行的 称满足这一性质的杂凑函 数为弱单向杂凑函数 数为弱单向杂凑函数 找出任意两个不同的输入找出任意两个不同的输入 x x y y 使得 使得 H y H x H y H x 在计算上是不可行的 称满足这一性质在计算上是不可行的 称满足这一性质 的杂凑函数为强单向杂凑函数 的杂凑函数为强单向杂凑函数 1010 欧几里得欧几里得 1 1 求最大公因子求最大公因子 EuclidEuclid 算法是基于下面一个基本结论 对任意非负整数算法是基于下面一个基本结论 对任意非负整数 a a 和正整数和正整数 b b 有 有 gcd a gcd a b b gcd b gcd b a a modmod b b 2 2 求乘法逆元求乘法逆元 如果如果 gcd a gcd a b 1b 1 则 则 b b 在在 modmod a a 下有乘法逆元 不妨设下有乘法逆元 不妨设 b ab a 即存在一 即存在一 x x x a x a 使 使 得得 bx 1bx 1 modmod a a 推广的推广的 EuclidEuclid 算法先求出算法先求出 gcd a gcd a b b 当 当 gcd a gcd a b 1b 1 时 则返回时 则返回 b b 的逆元 的逆元 1111 本原根本原根 本本原原根根的的定定义义 素素数数 p p 的的原原根根定定义义 如如果果 a a 是是素素数数 p p 的的原原根根 则则数数 a a m mo od d p p a a 2 2 m mo od d p p a a p p 1 1 m mo od d p p 是是不不同同的的并并且且包包含含 1 1 到到 p p 1 1 的的整整数数的的某某种种排排列列 精品文档 4欢迎下载 特特别别地地 如如果果 a a 是是素素数数 p p 的的本本原原根根 则则 a a a a 2 2 a a p p 1 1 在在 m mo od d p p 下下都都不不 相相同同 本本原原根根的的性性质质 若若 A A 为为模模 n n 的的本本原原根根 则则 A A A A 的的平平方方 A A 的的 3 3 次次方方 A A 的的 n n 次次方方模模 n n 的的余余数数互互不不相相同同 而而且且构构成成一一个个模模n n 的的简简化化剩剩余余系系 本本原原根根的的应应用用 应应用用本本原原根根可可以以证证明明 若若 x x 的的 n n 2 2 次次方方模模 n n 余余 1 1 则则 x x 为为模模 n n 的的二二次次剩剩余余 若若 x x 的的 n n 2 2 次次方方模模 n n 余余 1 1 则则 x x 为为模模 n n 的的非非二二次次剩剩余余 1212 勒让德符号勒让德符号 1313 数字签名的执行方式数字签名的执行方式 1 1 直接方式直接方式 指数字签字的执行过程只有通信双方参与 并假定双方有共享的秘密钥或接收一方知道发指数字签字的执行过程只有通信双方参与 并假定双方有共享的秘密钥或接收一方知道发 方的公开钥 方的公开钥 直接方式的数字签字有一公共弱点 即方案的有效性取决于发方秘密钥的安全性 直接方式的数字签字有一公共弱点 即方案的有效性取决于发方秘密钥的安全性 如果发方想对已发出的消息予以否认 就可声称自己的秘密钥已丢失或被窃 因如果发方想对已发出的消息予以否认 就可声称自己的秘密钥已丢失或被窃 因 此自己的签字是他人伪造的 可采取某些行政手段 虽然不能完全避免但可在某种程度上此自己的签字是他人伪造的 可采取某些行政手段 虽然不能完全避免但可在某种程度上 减弱这种威胁 例如 要求每一被签字的消息都包含有一个时戳 日期和时间 并要求密减弱这种威胁 例如 要求每一被签字的消息都包含有一个时戳 日期和时间 并要求密 钥丢失后立即向管理机构报告 钥丢失后立即向管理机构报告 这种方式的数字签字还存在发方的秘密钥真的被偷的危险 例如敌手在时刻这种方式的数字签字还存在发方的秘密钥真的被偷的危险 例如敌手在时刻 T T 偷偷 得发方的秘密钥 然后可伪造一消息 用偷得的秘密钥为其签字并加上得发方的秘密钥 然后可伪造一消息 用偷得的秘密钥为其签字并加上 T T 以前的时刻作为以前的时刻作为 时戳 时戳 2 2 具有仲裁方式的数字签字具有仲裁方式的数字签字 上述直接方式的数字签字所具有的缺陷都可通过使用仲裁者得以解决 和直接方上述直接方式的数字签字所具有的缺陷都可通过使用仲裁者得以解决 和直接方 式的数字签字一样 具有仲裁方式的数字签字也有很多实现方案 这些方案都按以下方式式的数字签字一样 具有仲裁方式的数字签字也有很多实现方案 这些方案都按以下方式 运行 运行 发方发方 X X 对发往收方对发往收方 Y Y 的消息签字后 将消息及其签字先发给仲裁者的消息签字后 将消息及其签字先发给仲裁者 A A A A 对消息及对消息及 其签字验证完后 再连同一个表示已通过验证的指令一起发往收方其签字验证完后 再连同一个表示已通过验证的指令一起发往收方 Y Y 此时由于 此时由于 A A 的存在 的存在 X X 无法对自己发出的消息予以否认 在这种方式中 仲裁者起着重要的作用并应取得所有无法对自己发出的消息予以否认 在这种方式中 仲裁者起着重要的作用并应取得所有 用户的信任 用户的信任 1414 强单向杂凑强单向杂凑 1515 模运算性质模运算性质 a a modmod n bn b modmod n n modmod n n a b a b modmod n n a a modmod n bn b modmod n n modmod n n a b a b modmod n n a a modmod n bn b modmod n n modmod n n a b a b modmod n n 1616 同余式同余式 如果如果 a a modmod n bn b modmod n n 则称两整数 则称两整数 a a 和和 b b 模模 n n 同余 记为同余 记为 a ba b modmod n n 称与 称与 a a 模模 n n 同余的数的全体为同余的数的全体为 a a 的同余类 记为的同余类 记为 a a 称 称 a a 为这个同余类的表示元素 为这个同余类的表示元素 注意 注意 如果如果 a 0 moda 0 mod n n 则 则 n an a 精品文档 5欢迎下载 同余有以下性质 同余有以下性质 若若 n a b n a b 则 则 a ba b modmod n n a a modmod n bn b modmod n n 则 则 a ba b modmod n n a ba b modmod n n 则则 b ab a modmod n n a ba b modmod n n b cb c modmod n n 则则 a ca c modmod n n 1717 DESDES 1 1 初始置换初始置换 2 2 轮结构轮结构 3 3 密钥的产生密钥的产生 4 4 解密和解密和 FeistelFeistel 密码一样 密码一样 DESDES 的解密和加密使用同一算法 但子密钥使用的顺序相反 的解密和加密使用同一算法 但子密钥使用的顺序相反 1818AESAES 1 1 状态 种子密钥和轮数状态 种子密钥和轮数 类似于明文分组和密文分组 算法的中间结果也须分组 称算法中间结果的分组为状态 类似于明文分组和密文分组 算法的中间结果也须分组 称算法中间结果的分组为状态 所有的操作都在状态上进行 状态可以用以字节为元素的矩阵阵列表示 该阵列有所有的操作都在状态上进行 状态可以用以字节为元素的矩阵阵列表示 该阵列有 4 4 行 行 列数记为列数记为NbNb NbNb等于分组长度除以等于分组长度除以 3232 种子密钥类似地用一个以字节为元素的矩阵阵列表示 该阵列有种子密钥类似地用一个以字节为元素的矩阵阵列表示 该阵列有 4 4 行 列数记为行 列数记为 NkNk NkNk等于分组长度除以等于分组长度除以 3232 2 2 轮函数轮函数 RijndaelRijndael 的轮函数由的轮函数由 4 4 个不同的计算部件组成 分别是 个不同的计算部件组成 分别是 字节代换 字节代换 ByteSubByteSub 行移位 行移位 ShiftRowShiftRow 列混合 列混合 MixColumnMixColumn 密钥加 密钥加 AddRoundKeyAddRoundKey 3 3 密钥编排密钥编排 密钥编排指从种子密钥得到轮密钥的过程 它由密钥扩展和轮密钥选取两部分组密钥编排指从种子密钥得到轮密钥的过程 它由密钥扩展和轮密钥选取两部分组 精品文档 6欢迎下载 成 其基本原则如下 成 其基本原则如下 轮密钥的比特数等于分组长度乘以轮数加轮密钥的比特数等于分组长度乘以轮数加 1 1 种子密钥被扩展成为扩展密钥 种子密钥被扩展成为扩展密钥 轮密钥从扩展密钥中取 其中第轮密钥从扩展密钥中取 其中第 1 1 轮轮密钥取扩展轮轮密钥取扩展 密钥的前密钥的前NbNb个字 第个字 第 2 2 轮轮密钥轮轮密钥 取接下来的取接下来的NbNb个字 如此下去 个字 如此下去 4 4 加密算法加密算法 加密算法为顺序完成以下操作 初始的密钥加 加密算法为顺序完成以下操作 初始的密钥加 Nr 1 Nr 1 轮迭代 一个结尾轮轮迭代 一个结尾轮 1919RSARSA 密钥的产生密钥的产生 1 1 选大素数 选大素数p p和和q q 各各 100100 200200 位十进制数字位十进制数字 计算 计算 n n p p q q n n p p 1 1 q q 1 1 1 1 随机选一整数随机选一整数e e 1 1 e e n n n n e e 1 1 因而在模 因而在模 n n 下 下 e e有逆元有逆元 1 1 计算计算 d d e e 1 1 mod mod n n 1 1 取公钥为取公钥为 e e n n 秘密钥为 秘密钥为d d p p q q不再需要 可以销毁不再需要 可以销毁 加密加密 加密时首先将明文比特串分组 使得每个分组对应的十进制数小于加密时首先将明文比特串分组 使得每个分组对应的十进制数小于n n 即分组长度小于 即分组长度小于 log2log2n n 然后对每个明文分组 然后对每个明文分组m m 作加密运算 作加密运算 c c meme modmod n n 解密解密 对密文分组对密文分组c c的解密运算为的解密运算为 m m cdcd modmod n n 2020 MD5MD5 对消息填充 使得其比特长在模对消息填充 使得其比特长在模 512512 下为下为 448448 即填充后消息的长度为 即填充后消息的长度为 512512 的某一倍数的某一倍数 减减 6464 留出的 留出的 6464 比特备第比特备第 2 2 步使用 步使用 步骤步骤 是必需的 即使消息长度已满足要求 仍需填充 例如 消息长为是必需的 即使消息长度已满足要求 仍需填充 例如 消息长为 448448 比特 则需比特 则需 填充填充 512512 比特 使其长度变为比特 使其长度变为 960960 因此填充的比特数大于等于 因此填充的比特数大于等于 1 1 而小于等于而小于等于 512512 填充方式是固定的 即第填充方式是固定的 即第 1 1 位为位为 1 1 其后各位皆为 其后各位皆为 0 0 附加消息的长度用步骤附加消息的长度用步骤 留出的留出的 6464 比特以比特以 little endianlittle endian 方式来表示消息被填充前的方式来表示消息被填充前的 长度 如果消息长度大于长度 如果消息长度大于 264264 则以 则以 264264 为模数取模 为模数取模 Little endianLittle endian 方式是指按数据的最低有效字节 方式是指按数据的最低有效字节 bytebyte 或最低有效位 优先的顺序存储 或最低有效位 优先的顺序存储 数据 即将最低有效字节 或最低有效位 存于低地址字节 或位 数据 即将最低有效字节 或最低有效位 存于低地址字节 或位 相反的存储方式称为 相反的存储方式称为 big endianbig endian 方式 方式 前两步执行完后 消息的长度为前两步执行完后 消息的长度为 512512 的倍数 设为的倍数 设为 L L 倍 倍 则可将消息表示为分组长为 则可将消息表示为分组长为 512512 的一系列分组的一系列分组 Y0Y0 Y1Y1 YL 1YL 1 而每一分组又可表示为 而每一分组又可表示为 1616 个个 3232 比特长的字 这样消息比特长的字 这样消息 中的总字数为中的总字数为 N L 16N L 16 因此消息又可按字表示为 因此消息又可按字表示为 M 0 M 0 N 1 N 1 精品文档 7欢迎下载 对对 MDMD 缓冲区初始化 算法使用缓冲区初始化 算法使用 128128 比特长的缓冲区以存储中间结果和最终杂凑值 缓比特长的缓冲区以存储中间结果和最终杂凑值 缓 冲区可表示为冲区可表示为 4 4 个个 3232 比特长的寄存器 比特长的寄存器 A A B B C C D D 每个寄存器都以 每个寄存器都以 little endianlittle endian 方方 式存储数据 其初值取为 以存储方式 式存储数据 其初值取为 以存储方式 A 01234567A 01234567 B 89ABCDEFB 89ABCDEF C FEDCBA98C FEDCBA98 D 76543210D 76543210 实际上为实际上为 6745230167452301 EFCDAB89EFCDAB89 98BADCFE98BADCFE 1032547610325476 以分组为单位对消息进行处理每一分组以分组为单位对消息进行处理每一分组 Yq q 0 Yq q 0 L 1 L 1 都经一压缩函数都经一压缩函数 HMD5HMD5 处理 处理 HMD5HMD5 是算法的核心 其中又有是算法的核心 其中又有 4 4 轮处理过程 如图轮处理过程 如图 6 66 6 所示 所示 输出消息的输出消息的 L L 个分组都被处理完后 最后一个个分组都被处理完后 最后一个 HMD5HMD5 的输出即为产生的消息摘要 的输出即为产生的消息摘要 步骤步骤 到步骤到步骤 的处理过程可总结如下 的处理过程可总结如下 CV0 IV CV0 IV CVq 1 CVq RFI Yq RFH Yq

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论