算法要求 :
    通过 29 位个一个纯数字字符串,生成一个注册码.
    注册码可以解析(反注册)为原有的 29 位纯数字字符串.疑惑:
    我现在使用自己编的一个简单的算法可以生成一个 29位的注册码. 可是29位的注册码实在很长.交给用户的时候很麻烦. 
    不知道是否有办法生成一个位数尽量少的注册码呢??? 当然位数少了也必须能够反注册位原来的纯数字字符串的.曾经的想法:
    因为 29位纯数字原始码是不确定的, 我想了很久也不知道该如何才能生成位数少些的注册码.
    比如说可以使用其中的 2位生成 1位注册码. 但是少了1位,怎么能从少了一位的注册码再返回原始码呢?还请大家指点一些将多字符生成少字符,并能反运算的算法或想法.我先谢谢了.

解决方案 »

  1.   

    楼主得意思是明文加密,密文又可以解析成明文,是吗?
    我觉得一楼说得MD5是可以考虑得,今天JAVA版也又个问这个问题的
    回的比较多,建议楼主去看看!
    我对这个不熟悉。爱莫能助!
      

  2.   

    可能是我写的有点多了,大家看起来不习惯.to realyigo: 其实我不关心可以将一个加密后的信息串压制到多少位,我关心的是怎么才能压制.也就是压制的算法或想法. 强调一下, 此想法或算法必须是可以解压并还原为未加密信息串的.to DentistryDoctor: MD5算法我也在看,没有看明白. 摘要算法? 不知可否详细讲解下.先谢.to YufengShi: 兄之见解我也十分赞同. 不过,我的老板不赞同.
      

  3.   

    http://dev.csdn.net/author/Veiz/ff2b8108f6d24f7195b350087eaa6dde.htmlAES的C++实现(128位密钥)