aes-128算法加密
The Crypt-Arithmetic problem in Artificial Intelligence is a type of encryption problem in which the written message in an alphabetical form which is easily readable and understandable is converted into a numeric form which is neither easily readable nor understandable. In simpler words, the crypt-arithmetic problem deals with the converting of the message from the readable plain text to the non-readable ciphertext. The constraints which this problem follows during the conversion is as follows:
人工智能中的加密算法问题是一种加密问题,其中,以易于阅读和理解的字母形式的书面消息被转换为既不易于阅读也不被理解的数字形式。 用简单的话来说,密码算法问题就是将消息从可读的纯文本转换为不可读的密文。 在转换过程中,此问题遵循的约束如下:
-
A number 0-9 is assigned to a particular alphabet.
数字0-9分配给特定的字母。
-
Each different alphabet has a unique number.
每个不同的字母都有一个唯一的数字。
-
All the same, alphabets have the same numbers.
字母相同,数字相同。
-
The numbers should satisfy all the operations that any normal number does.
数字应满足任何普通数字所做的所有操作。
Let us take an example of the message: SEND MORE MONEY.
让我们以消息为例:发送更多的钱。
Here, to convert it into numeric form, we first split each word separately and represent it as follows:
在这里,为了将其转换为数字形式,我们首先将每个单词分开分割,并表示如下:
S E N DM O R E-------------M O N E Y
[/code]
These alphabets then are replaced by numbers such that all the constraints are satisfied. So initially we have all blank spaces.
然后将这些字母替换为数字,以便满足所有约束条件。 所以最初我们有所有空格。
These alphabets then are replaced by numbers such that all the constraints are satisfied. So initially we have all blank spaces.
然后将这些字母替换为数字,以便满足所有约束条件。 所以最初我们有所有空格。
We first look for the MSB in the last word which is \’M\’ in the word \’MONEY\’ here. It is the letter which is generated by carrying. So, carry generated can be only one. SO, we have M=1.
我们首先在最后一个单词中寻找MSB,在这里,单词“ MONEY”中的单词为“ M” 。 这是随身携带产生的字母。 因此,进位生成只能是一个。 因此,我们有M = 1 。
Now, we have S+M=O in the second column from the left side. Here M=1. Therefore, we have, S+1=O. So, we need a number for S such that it generates a carry when added with 1. And such a number is 9. Therefore, we have S=9 and O=0.
现在,在左侧第二列中有S + M = O。 这里M = 1 。 因此,我们有S + 1 = O。 因此,我们需要一个S的数字,使其与1相加时会产生一个进位。 这样的数字是9 。 因此,我们有S = 9和O = 0 。
Now, in the next column from the same side we have E+O=N. Here we have O=0. Which means E+0=N which is not possible. This means a carry was generated by the lower place digits. So we have:
现在,在同一侧的下一列中,我们有E + O = N。 这里我们有O = 0 。 这意味着E + 0 = N是不可能的。 这意味着低位数字产生了进位。 因此,我们有:
1+E=N ———-(i)
1 + E = N ———-(i)
Next alphabets that we have are N+R=E ——-(ii)
我们接下来的字母是N + R = E ——-(ii)
So, for satisfying both equations (i) and (ii), we get E=5 and N=6.
因此,为了满足方程式(i)和(ii) ,我们得到E = 5和N = 6 。
Now, R should be 9, but 9 is already assigned to S, So, R=8 and we have 1 as a carry which is generated from the lower place digits.
现在, R应该是9 ,但是9已经分配给S ,因此, R = 8,并且我们有一个1的进位,这是从低位数字生成的。
Now, we have D+5=Y and this should generate a carry. Therefore, D should be greater than 4. As 5, 6, 8 and 9 are already assigned, we have D=7 and therefore Y=2.
现在,我们有D + 5 = Y ,这应该产生一个进位。 因此, D应该大于4 。 由于已经分配了5、6、8和9 ,因此D = 7 ,因此Y = 2 。
Therefore, the solution to the given Crypt-Arithmetic problem is:
因此, 给定的加密算法问题的解决方案是 :
S=9; E=5; N=6; D=7; M=1; O=0; R=8; Y=2
S = 9; E = 5; N = 6; D = 7; M = 1; O = 0; R = 8; Y = 2
Which can be shown in layout form as:
可以在布局形式中显示为:
9 5 6 71 0 8 5-------------1 0 6 5 2--------------
[/code]
翻译自: https://www.includehelp.com/ml-ai/crypt-arithmetic-problem-a-type-of-constraint-satisfactory-problem-in-artificial-intelligence.aspx
aes-128算法加密