C中的数字(字母)

时间:2016-11-23 05:18:37

标签: c encryption

我试图为研究目的创建一个RSA算法。

让我说我接受了用户的意见; " AER&#34 ;.此char数组的整数值为ASCII格式的97,101,114。我希望能够以类似于" 97101114"的方式对这些字符进行分组。并将它们用于计算加密到其他东西,然后再次解密成相同的数字和相同的char数组。

我可以使用atoi,strtol等加密它们。但我不知道如何通过将它们分成旧值来再次解密。

编辑:在通过网络搜索时,我发现了一个想法,他们将每个角色映射到某种全局数字。与ASCII映射类似。但这让我有了将每个角色映射到三位数"数字,所以我可以在解密整个十进制数后按此标准拆分它们。你能提供更好的解决方案吗?

1 个答案:

答案 0 :(得分:1)

您可以在分组的ASCII编号中使用基本算法。 正如你所说:

“a”将成为“97”

“e”将成为“101”

“r”将成为“114”

由于您已经知道了字符的ASCII规定,因此您可以找出此字符的ASCII配置数字的位数,并在求解方程时将其用作指导。让我举个例子:

97是2位数

101是3位

114是3位

所以你的新密码将是: 2 97 3 101 3 114

当你读到这个数字的第一个元素时,你会明白你需要读下两个数字然后把它变成一个字符。然后,当您将下一个数字读作“3”时,您将了解接下来的三个元素将一起处理,等等。