加密算法如下:
每个字符加密后ASCII都是在32-127之间,从第一位开始加28,第二位加28+29,第三位加28+29+30,如果超过127的部分,则返回32开始。
1234 加密后为 Mk*G
求解密算法的代码
写了很久一直加错。已经崩溃了。。。求解救。。。万分感激!!!!
------解决思路----------------------
//加密过程
int[] arry = new int[] { 34, 35, 36, 37 };
int a = 0;
for (int i = 0; i < arry.Length; i++)
{
a += 28 + i;
int b = a;
while (arry[i] + b > 127)
{
b -= 127 - 32;
}
arry[i] += b;
}
//解密过程
a = 0;
for (int i = 0; i < arry.Length; i++)
{
a += 28 + i;
int b = a;
while (arry[i] - b < 32)
{
b -= 127 - 32;
}
arry[i] -= b;
}