希尔密码的”哑元“

来源:互联网 发布:淘宝详情页模板套用 编辑:程序博客网 时间:2024/04/30 16:42

我们都知道用希尔密码加密的时候,如果明文长度mod矩阵的秩不为0的话,那就要添加哑元(无实际意义的数字)来补满,得到的密文中也有哑元的信息,所以当接收方收到密文解密的结果是包括了哑元的明文;

那么问题来了...接收方怎么知道最后的几位是哑元还是有实际意义的明文信息呢?

我想了一些思路:

1. 最好发送方已经通过语法处理成为mod矩阵的秩为0,不需要哑元。

2. 双方约定一个结束的标志,标志之后的明文为无意义的文字;不过考虑到通常的明文空间都是26个字母,这样的话,规定哪个呢,都有可能与之前的重复,除非是一个长单词,长单词之前的明文才是有效文字;

3. 传明文的同时也将明文的长度信息一同传过去,长度,在明文开头放,然后通过一个比如length的单词分隔开,长度通过一定的处理用字母表达出来,双方约定一个计算公式就可以了,然后从length这个单词之后的明文的长度。

个人觉得第三种是最可行的,欢迎大家提供更好的思路。

我再次上密码学课的时候也会再问一下老师,问的结果回来更~

1 0