A. 有什么算法把一个字符串加密为固定长度并可以解密

将任意长度字符串加密成定长字符串是可能的,但逆向解密是不可能的。 可以加密为可变长度的字符串再解密,或者也可以将一定长度范围内的字符串加密为定长字符串并解密。

B. 怎么样把数字加密为9位左右数字密码形式

自己抄设计一个计算公袭式(或方法):y=f(x)
y 值为9位左右数字,
x 值为几位数,
这个公式的反运算公式:x=g(y) 存在并有唯一解。

f(x)就是你自己的加密方式。

例如:y9=x的位数,y8=10-x最高位,y7=x第二高位,
y6=10-x第三高位,y5=x第四高位,..空下的y位填随机数。
(y有9位,各位数值为y9,y8,y7,....y1)

反算:x最高位=10-y8, x第二高位=y7 ...共算y9位。

例如 x=1234, y=492740315
x=5678, y=456381428