如何计算Hill Cipher算法中的反密钥矩阵?

栏目: 编程工具 · 发布时间: 5年前

内容简介:我发现很难理解在Hill Cipher算法中计算矩阵的逆矩阵的方式.我知道这一切都是在模运算中完成的,但不知怎的,事情并没有加起来.我真的很感激一个简单的解释!考虑以下Hill Cipher密钥矩阵:请使用上面的矩阵进行说明.

我发现很难理解在Hill Cipher算法中计算矩阵的逆矩阵的方式.我知道这一切都是在模运算中完成的,但不知怎的,事情并没有加起来.我真的很感激一个简单的解释!

考虑以下Hill Cipher密钥矩阵:

请使用上面的矩阵进行说明.

您必须学习属于 Number TheoryLinear congruence theoremextended GCD algorithm ,以便了解 modulo arithmetic

背后的数学.

例如,矩阵K的逆是(1 / det(K))*伴随(K),其中det(K)<> 0.

我假设您不理解如何以模运算计算 1/det(K) ,这里是线性同余和GCD发挥作用的地方.

你的K有det(K)= – 121.让我们说模m是26.我们想要x *( – 121)= 1(mod 26).[a = b(mod m)意味着a-b = N * m]

我们可以很容易地发现,对于x = 3,上述同余是正确的,因为26精确地除(3 *( – 121)-1).当然,正确的方法是反向使用GCD来计算x,但我没有时间解释它是如何做的.检查扩展的GCD算法:)

现在,inv(K)= 3 *([3 -8],[ – 17 5])(mod 26)=([9-24],[ – 51 15])(mod 26)=([9 2] ,[1 15]).

更新:查看 Basics of Computational Number Theory 以了解如何使用Extended Euclidean算法计算模块化逆.注意-121 mod 26 = 9,因此对于gcd(9,26)= 1,我们得到(-1,3).

翻译自:https://stackoverflow.com/questions/960190/how-to-calculate-the-inverse-key-matrix-in-hill-cipher-algorithm


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

疯狂XML讲义

疯狂XML讲义

李刚 / 电子工业出版社 / 2009-11 / 65.00元

《疯狂XML讲义》主要以XML为核心,深入地介绍了XML的各种相关知识。《疯狂XML讲义》作为疯狂Java体系图书之一,依然保持该体系图书系统、全面的特点:不仅详细介绍了XML,文档的各种知识,还通过案例示范了实际开发中如何应用XML知识。 《疯狂XML讲义》主要分为五个部分。第一部分介绍了XML、DTD、XML Schema等基础知识,这些知识主要教读者如何定义有效的XML文档,这部分内容......一起来看看 《疯狂XML讲义》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换