关于字符串编码和解码的问题

时间:2023-01-03 23:41:10
问题如下:

第一步:任意给定一个字符串,如: "student.boy$girl&anybody",该字符串的字符个数从1到30不等,对该字符串进行编码,

第二步:编码之后的形式类似如下:"ETOE3YLFGNNFAT4",编码后的字符的个数最好是一个固定的个数,比如10个或者15个。

第三步:对第二步编码的字符串进行解码,解码后的字符串就是第一步给出的字符串。

请问有这样现成的php函数或者类吗?

11 个解决方案

#1


没有具体的函数,要你自己想算法

#2


呵呵,这个肯定没有了。。。只能你自己写。

#3


这是不可能做到的!!!

“编码后的字符的个数最好是一个固定的个数,比如10个或者15个”...“解码后的字符串就是第一步给出的字符串”

也许你可以做到,那么你将颠覆整个计算机世界...,你将成为世界首富...

#4


如果不要第三个或者第二个条件
那么可以实现

这三个条件一起好像不可能

#5


数学影射问题啊.
不可能用有限个数来表示无限个的: "编码后的字符的个数最好是一个固定的个数,比如10个或者15个"
不过我也是只知道理论而已,你推翻了,你还能说得过去的。good luck

#6


应该去学数学才对````根本是个算法问题`````何况这么偏门的东西 php也不可能整合````

#7


楼主说的第一条是1到30个字符,不是无限个.
不过你的第二个条件的字符数显然太少了,因为10,15都小于30,第二条的字符串的数量显然小于第一条的字符串数,不够用.

只要设计一个算法就行.如楼上说是个数学问题.




#8


md5似乎就满足你的要求。
前段时间也有个中国数学家逆向破解出来了也,不过算法没公布。

#9


破MD5的那个只是提出了理论吧。MD5如果随便破,那很多银行的加密程序估计都要改版了。

MD5固定长度,估计加密的过程中抛弃了一部分原始密码字符或者半个字符,也就是说密码只能向一个方向变形,变不回不来

#10


看google有没有了

#11


md5不是可逆的.是多对一的,
楼主这个是一对一的

#1


没有具体的函数,要你自己想算法

#2


呵呵,这个肯定没有了。。。只能你自己写。

#3


这是不可能做到的!!!

“编码后的字符的个数最好是一个固定的个数,比如10个或者15个”...“解码后的字符串就是第一步给出的字符串”

也许你可以做到,那么你将颠覆整个计算机世界...,你将成为世界首富...

#4


如果不要第三个或者第二个条件
那么可以实现

这三个条件一起好像不可能

#5


数学影射问题啊.
不可能用有限个数来表示无限个的: "编码后的字符的个数最好是一个固定的个数,比如10个或者15个"
不过我也是只知道理论而已,你推翻了,你还能说得过去的。good luck

#6


应该去学数学才对````根本是个算法问题`````何况这么偏门的东西 php也不可能整合````

#7


楼主说的第一条是1到30个字符,不是无限个.
不过你的第二个条件的字符数显然太少了,因为10,15都小于30,第二条的字符串的数量显然小于第一条的字符串数,不够用.

只要设计一个算法就行.如楼上说是个数学问题.




#8


md5似乎就满足你的要求。
前段时间也有个中国数学家逆向破解出来了也,不过算法没公布。

#9


破MD5的那个只是提出了理论吧。MD5如果随便破,那很多银行的加密程序估计都要改版了。

MD5固定长度,估计加密的过程中抛弃了一部分原始密码字符或者半个字符,也就是说密码只能向一个方向变形,变不回不来

#10


看google有没有了

#11


md5不是可逆的.是多对一的,
楼主这个是一对一的