将一字符串顺序取个字符,转换为其的ASCII码,并将其ASCII码平方,再加在它在整个字符串中的序号(从1开始),最后再转换为整型,例如:
abc
加密:
a的ASCII码:97
b的ASCII码:98
c的ASCII码:99Integer:=(97的平方+1)+(98的平方+2)+(99的平方加3)这样加密后的得到Integer,有什么办法可以解密,,..
谢谢啦

解决方案 »

  1.   

    你还是自己解决,
    X的平方+(X+1)的平方+2+(X+2)的平方+3
    既是解这个方程罢了 《Integer=3*X*X+6*X+8》
    即上面这个方程可以采用牛顿迭代法,自己写个函数即可实现!
    取>96解,将其使用函数chr转换为字符
      

  2.   

    楼主:
    sorry,我无法解,也没时间去想这个算法!
    btw:
    如果你是用在你的程序中用来加密密码,这样的话,完全可以不用去管解密程序的,因为你并不想去知道别人的密码(明文),你的目的只是让密码显示密文而已!
      

  3.   

    X的平方+(X+1)的平方+2+(X+2)的平方+3
    既是解这个方程罢了 《Integer=3*X*X+6*X+8》
    --------------------------------------------
    楼上的,楼主的‘abc’只是举例而已,实际使用时并不是x,x+1,x+2的关系,完全可能是‘aeb’这时候就成了x,x+3,x+1了
      

  4.   

    好像是不可逆
    你怎么控制解密时取几位作为一个字符呢,如果不全是大写的话
    其实平方没有必要,如果自己就是想让密码隐藏不显示明文的话,取ASCII码然后加个常数就是了