一个6位数字加密后还是6位,有什么好办法?

2019-12-15 11:22发布

比如123456,两两交换214365这样,但是太low了,很容易被发现规律
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
72条回答
vuo50z
1楼-- · 2019-12-20 07:55
.titrwh 发表于 2018-8-10 17:34
懂我,有好的建议吗

我对密码学也不是很懂。
其实那些密码算法的NB之处是算法公开,但还是能不被破解。
如果你的应用场景能够做到算法保密,那就好办多了。
.titrwh
2楼-- · 2019-12-20 13:27
 精彩回答 2  元偷偷看……
vuo50z
3楼-- · 2019-12-20 15:28
.titrwh 发表于 2018-8-13 09:38
可以保密啊,还是没有好办法

左移右移,加加减减,查密码表转换,尽量搞复杂点别人很难猜的。
当然还要看你需要的加密等级,如果要求绝对不可破解,还是要请教专家了。
如果是6位十进制,转换成二进制还会有一些空余,可以利用这些空余增加一些随机干扰。
vuo50z
4楼-- · 2019-12-20 19:27
.titrwh 发表于 2018-8-13 09:38
可以保密啊,还是没有好办法

如果有时间,有精力,可以研究下3DES算法,把它改成6字节分组。
这个是瞎说的,只是提个可能的方法。
liyang0727
5楼-- · 2019-12-20 22:50
按位重新排列成一个6位数,再做一次运算。
.titrwh
6楼-- · 2019-12-21 00:20
这几天自己搞定了,楼上很多人其实没搞明白我的困扰,我的问题在于6位十进制转成2进制最大是20位,通过各种运算后虽然还是20位,但20位二进制转为10进制最大是1048575,超过6位,所以不符合要求了。

现在用了个折中的办法,原密码范围减小到19位二进制,对应最大十进制524287,几乎损失了一半,暂时想到办法只能这样了,这样19位二进制各种左移右移加加减减的多次循环,最终换回十进制不会超过6位,基本符合要求,加密离散性也足够,即任意改变一位十进制数字,加密后的6位十进制几乎全变化,看不出任何规律。

一周热门 更多>