Hill Cipher 希尔密码 已知明文密文 求秘钥方法
Hill Cipher,已知明文密文,求秘钥
设K为秘钥,
为明文字母对应的数字矩阵,
为密文字母对应的数字矩阵。
是希尔加密的过程。
为了求解K,我们需要求解P的膜26逆元。
注意,这里是膜26逆元,不是直接求逆元
由于
则
又由
所以
完。
上文中,红色部分的求解过程:
设
则
则
也就是说,,其中x和n都是正整数,且,可以尝试得到n=3,x=14。
最近再学信息安全,讲到了这个部分,但是并没有将如何计算这个逆矩阵,自己查了很多资料(线代忘得比较干净),终于会了
敲公式不易,转载注明出处
参考:
https://www.cnblogs.com/lcbwwy/p/13125084.html
https://jingyan.baidu.com/article/925f8cb8a74919c0dde056e7.html
https://zhuanlan.zhihu.com/p/82035891
https://baike.baidu.com/item/%E4%BC%B4%E9%9A%8F%E7%9F%A9%E9%98%B5/10034983?fr=aladdin
Hill Cipher 希尔密码 已知明文密文 求秘钥方法相关推荐
- 已知网络号求子网掩码c语言,已知ip地址求子网掩码 - 已知ip地址求子网掩码_已知ip地址和子网掩码求网络号、子网号和主机号...
已知ip地址求子网掩码的方法: 方法一:利用子网数来计算: 1.首先,将子网数目从十进制数转化为二进制数: 2.接着,统计得到的二进制数的位数,设为N: 3.最后,先求出此IP地址对应的地址类别的子网 ...
- 密码学——Hill体制密码中已知明文M和密文C求解密钥矩阵K的两种方法之逆矩阵求解法和待定系数求解法
本文主要解决古典密码中的Hill体制密码在已知明文M和密文C的情况下求解密钥矩阵K的两种方法:①求逆矩阵②待定系数法. 如若不懂Hill体制的古典密码可以参照我上一篇文章密码学--几种典型的古典密码体 ...
- python基础教程zip密码_python基础教程Python实现加密的RAR文件解压的方法(密码已知)...
博主之前在网上找了很多资料,发现rarfile库不能直接调用,需要安装unrar模块,下面将详细介绍整个实现流程. 第一步:安装unrar模块,直接pip install unrar可能会找不到库,需 ...
- python 解压zip密码正确但解压失败,Python实现加密的ZIP文件解压(密码已知
当ZIP文件的压缩密码已知时,可以通过调用zipfile库进行解压: import zipfile zip_file = zipfile.ZipFile(r'C:\test.zip') # 文件的路径 ...
- Python在Linux,Windows上打开有密doc,docx文件(密码已知)
Python在Linux,Windows上打开有密doc,docx文件(密码已知) Linux Windows Linux Install: pip install msoffcrypto-tool ...
- c++已知2点求中垂线_呆哥数学函数合集——函数的概念【2】
高中数学函数基本概念,学好函数还是要先懂概念再做题. 下面是呆哥给你们整理好的基本知识要点. 不懂的可以找我私聊,在线帮你解答. 多看我专栏发的每日一题和解析,会对你们有用的 . 加油哈!离高考还有一 ...
- 高斯投影坐标计算例题_测量学高斯投影已知横坐标如何求在第几度带投影计算而得的?例如:...-y坐标的自然值怎么算-数学-莫囤料同学...
概述:本道作业题是莫囤料同学的课后练习,分享的知识点是y坐标的自然值怎么算,指导老师为甘老师,涉及到的知识点涵盖:测量学高斯投影已知横坐标如何求在第几度带投影计算而得的?例如:...-y坐标的自然值怎 ...
- matlab测量正六边形边长,计算边长已知的正六边形面积的方法
如何计算计算边长已知的正六边形面积呢?下面让我们一起来看看吧! 计算边长已知的正六边形面积 1.如果边长已知可以直接写出求解面积的公式.由于正六边形是由六个等边三角形组成的求解公式可以从等边三角形面积 ...
- 已知经纬度坐标求两点间距离,用python表示
已知经纬度坐标求两点间距离,用python表示 已知地球上任意两点(lon1, lat1),( lon2, lat2)的经纬度坐标,求两点间的距离用haversine表示: 1.首先先将经纬度坐标的角 ...
最新文章
- 【转】AVAudioPlayer播放音乐,最清晰明了
- docker部署openvas
- 服务器功率一般多少_单机柜供电能力提升后,选择1U服务器还是2U服务器?
- 食品新消费的2021:站在逻辑跑通与成为品牌的隧道期
- 【完整代码】使用Semaphore实现线程的交替执行打印 A1B2C3D4E5
- Linux工作笔记-重置密码解决MySQL for Linux错误 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (usi
- linux下彻底卸载mysql 图解教程
- 打造利器Qt Creator:代码todo工具的使用
- “宽带中国、智慧岳阳”项目启动
- Php clearstatcache() 函数详解
- Android 中Goolgle 相关服务的移植
- 《爱和自由》——孩子达到顺从的三个阶段
- linux编译openssl报错,cargo编译musl报错openssl
- Java剑开天门(二)
- iterm2分屏切换
- java flappy bird_Java实例---flappy-bird实例解析
- AI万物生成技术,颠覆内容传统创作模式 | iBrandUp 职位内推
- 技术管理者对知识组织的认识
- PaddlePaddle深度学习实战——英法文翻译机
- GCC编译器与编译过程
热门文章
- 关于Node.js的httpClieint请求报错ECONNRESET的原因和解决措施
- 红外小目标:评价指标
- Python numpy astype 强制类型转换
- html制作qq注册页面代码截图,javascript在网页中实现粘贴qq截图功能
- redis服务器配置(redis服务器篇)
- 使用Photovisi创建自定义桌面墙纸
- linux命令hwclock,Linux中hwclock命令起什么作用呢?
- 申请EV https证书前的注意事项
- 电源电路设计:详解线性电源和开关电源
- python元组添加元素_Python 元组_python元组操作_添加元素_python 元组转字符串