我正在创建一种算法来加密用户输入的字符串值。 我要如何使它工作,是用户在文本框中键入内容,然后一个按钮将生成一个随机的3位数代码。
我很难拿出代码来匹配用户输入的字符与字母表中的正确位置。
如果用户键入“ abcdt”且其随机代码为324,则其结果将为“ ddggv” 这是它如何工作的视觉效果。
字母-> A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
输入-> A B C D T
代码:324向右移动3个空格= d
代码:324 B向右移动2个空间= d
代码:324 C向右移动4个空格= g
代码:324 D向右移动3个空格= g
代码:324 T向右移动2个空格= V
任何帮助将不胜感激。
答案 0 :(得分:0)
为几乎所有内容(输入,字母,键)制作一个数组。
考虑输入[3],即示例输入中的D。
在输入数组中获取输入索引。 D索引= 3
对该索引进行模运算,并从键数组获取int。 3%3 = 0->键[0] = 3
在字母数组中搜索您的char索引。 D索引= 3
将您之前获得的int添加到该索引。 3 + 3 = 6
检查字母数组的索引6。字母[6] = G
答案 1 :(得分:0)
我正在创建一种算法来加密用户输入的字符串值。
除非您仅出于研究目的而这样做,否则我强烈建议您不要这样做。您的方法不太可能是安全的。另外,不清楚为什么需要或需要基于加密值的3位代码。也许您可以解释为什么要这么做?
我建议您已经使用任何经过考验的方法和算法。如果要加密某些用户输入,则有许多方法可以执行此操作。一种方法是使用随机生成的密钥和初始化向量使用AES-256加密值。