应用密码学实验 古典密码

这篇具有很好参考价值的文章主要介绍了应用密码学实验 古典密码。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

实验一 古典密码

单表代替、多表代替

  • 实验目的

通过实验熟悉掌握凯撒密码原理和多表代替密码的实现方法,编译实现加密算法,提高程序设计能力,掌握穷举破译的方法。

  • 实验要求
  1. 输入任意的一段明文,对其进行加密并输出密文。
  2. 输入一段密文,利用穷举法进行唯密文攻击,输出密钥。
  3. 要求有对应的程序测试记录和验证记录。
  4. 从键盘中读取明文并加密,将密文输出。
  • 实验内容
  • 凯撒密码的加解密
  1. 知识点

凯撒密码是一种典型的单表代替密码技术,其加密方法如下:

                   密文=明文+密钥 mod 26

解密方法如下:

                   明文=密文-密钥 mod 26

  1. 程序代码

加密:

应用密码学实验 古典密码

应用密码学实验 古典密码 

  • 凯撒密码的穷举破译
  1. 知识点

凯撒密码可能的密钥有26个。所谓穷举破译,是指用所有可能的密钥尝试解密,直到找出正确的密钥和明文。穷举破译是一种唯密文攻击,任意给定一段密文,利用穷举法找出所用的密钥,最多尝试26次。

  1. 程序代码

 应用密码学实验 古典密码

  • 维吉尼亚密码
  1. 密钥的处理

可预设密钥为“cipher”,长度为6;也可直接输入密钥(以字母形式或数字形式),再计算密钥长度,放在整形变量period中。

  1. 读取明文并预处理

从键盘中读取明文,取出所有字母,放入数组中;统计明文中的字母个数,放入整形变量中。

  1. 加密

维吉尼亚密码的加密与凯撒密码几乎完全相同,只是加密每个字符时所用的密钥在变化,用语句

  1. 程序代码

 应用密码学实验 古典密码

应用密码学实验 古典密码 

应用密码学实验 古典密码 

  • 实验结果
  • 凯撒密码加密

 应用密码学实验 古典密码

  • 凯撒密码穷举破译

应用密码学实验 古典密码 

  • 维吉尼亚密码

 应用密码学实验 古典密码

  • 实验总结

凯撒密码是比较简单的,只是进行单表代换,实现起来也比较容易,破解起来也不难,是很不安全的密码。

凯撒密码是没有密匙的,即使没有密匙也能将它破解出来,因为凯撒移位密码只有25种密匙,最多就是将这25种可能性挨个检测一下可以了,这就是我们所说的暴力破解法。

当然,还可以使用频度分析法分析每个字母出现的频率,从而知道凯撒密码的移位数。

 文章来源地址https://www.toymoban.com/news/detail-413793.html

 

 

 

到了这里,关于应用密码学实验 古典密码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 现代密码学实验五:签名算法

    一、实验目的 1.掌握数字签名的基本原理,理解RSA算法如何提供数字签名。 2.熟悉实验环境和加密软件CrypTool 1.4(CrypTool 2)的使用。 3.编写代码实现签名算法。 二、实验内容 运行CrypTool 1.4(CrypTool 2),使用 RSA 算法对消息进行签名操作,选择公钥PK=(e,N),私钥为sk=(d,N)。例如: 消息

    2024年02月02日
    浏览(32)
  • 密码学的应用

    1 密钥管理 一切秘密寓于密钥之中 密码算法是固定的,密钥作为系统的一个可变的输入部分,与被加密的内容进行融合,生成密文 1.1密钥产生及管理概述 一个密钥在生存期内一般要经历以下几个阶段: 密钥的产生 密钥的分发 密钥的更新 密钥的存储和备份 密钥的撤销和销

    2023年04月23日
    浏览(30)
  • DES的加密与解密(C语言实现)——大三密码学实验

    目录 DES的描述 Feistel体制 密钥扩展函数 F函数 总流程  代码 get函数的构建 yihuo函数的构建 fuck函数的构建 left_move函数的构建 exchange函数的构建 erzhuanshi函数的构建 shizhuaner函数的构建 s_box函数的构建 主函数的构建 总函数 运行结果示例 DES: 16 轮, Feistel 型结构 明文长度:

    2024年02月07日
    浏览(30)
  • 现代密码学第二次实验:分组加密算法DES及其工作模式

    为了帮助同学们完成痛苦的实验课程设计,本作者将其作出的实验结果及代码贴至CSDN中,供同学们学习参考。如有不足或描述不完善之处,敬请各位指出,欢迎各位的斧正! 1、掌握DES算法的工作原理。 2、熟悉分组加密算法的4种工作模式(OFB模式可不做)。 3、了解DES的雪

    2024年02月06日
    浏览(38)
  • 【北京航空航天大学】【信息网络安全实验】【实验一、密码学:DES+RSA+MD5编程实验】

    1. 通过对DES算法的代码编写,了解分组密码算法的设计思想和分组密码算法工作模式; 2. 掌握RSA算法的基本原理以及素数判定中的Rabin-Miller测试原理、Montgomery快速模乘(模幂)算法,了解公钥加密体制的优缺点及其常见应用方式; 3. 掌握MD5算法的基本原理,了解其主要应用

    2024年02月19日
    浏览(31)
  • 一、区块链技术与应用-密码学原理

            加密货币(crypto-currency)         密码学中所用的哈希函数被称为cryptographic hash function 它有两个重要的性质:          1.      collisiion resistance(哈希碰撞)           两个不同的输入 哈希函数结果却相同 哈希碰撞是不可避免的 因为输入空间远远大于输出空间

    2023年04月10日
    浏览(24)
  • 【网络安全】【密码学】【北京航空航天大学】实验三、数论基础(下)【C语言实现】

    1、中国剩余定理(Chinese Remainder Theorem) (1)、算法原理 m1 , m2 , … mk 是一组 两两互素 的正整数,且 M = m1 · m2 · … · mk 为它们的乘积, 则如下的同余方程组: x == a1 (mod m1) x == a2 (mod m2) … x == ak (mod mk) 对于 模M 有唯一的解 x = (M · e1 · a1 / m1 + M · e2 · a2 / m2 + … + M · ek ·

    2024年02月02日
    浏览(29)
  • 区块链密码学:基础知识、应用与未来发展

    区块链技术,作为一种分布式、去中心化的数据管理方式,密码学在其安全性和可靠性方面发挥着至关重要的作用。本文将详细介绍区块链密码学的基础知识、应用以及未来发展趋势。 区块链密码学是区块链技术的核心组成部分,用于确保交易的安全性、隐私性和可验证性。

    2024年02月05日
    浏览(33)
  • 区块链技术与应用 - 学习笔记2【密码学基础】

    大家好,我是比特桃。 本系列笔记只专注于探讨研究区块链技术原理,不做其他违反相关规定的讨论。 区块链技术已被纳入国家十四五规划,在“加快数字发展 建设数字中国”篇章中,区块链被列为“十四五”七大数字经济重点产业之一,迎来创新发展新机遇。 经科技部批

    2024年02月10日
    浏览(32)
  • DES的加密解密在ECB上的使用(C语言实现)——大三密码学实验

    目录 实验内容 实验原理 DES加密解密 ECB(电码本模式) 代码 DES函数的构建 RE_DES函数的构建 ECB函数的构建 RE_ECB的函数的构建 主函数的构建 总代码 测试结果 输入一个文本文件,通过ECB和DES进行加密,再将内容储存在新的文本文件中,再通过ECB和DES解密,将内容储存在新的文本

    2024年02月04日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包