栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > Java

全网首发:怎样制作CDKEY(3)-转换

Java 更新时间:发布时间: 百科书网 趣学号

  经过加密,我们得到了16个字节的数据。现在就要转换为显示字串,也就是CDKEY了。怎么转换呢?这是思路:

  • 显示的字串,只能是26个字母+10个数字的全部36个或部分。比如说,0和O太类似,以前印刷时不容易区分,所以不用,就变成了34个。泰山OFFICE就使用的34个字符。。
  • 我们把16字节看成一个数。非常大的数。
  • 于是现在的思路就是:如何用34个字符,表示这个数?很简单啊,把10进制转换为34进制就可以了。

  这个转换有点麻烦,可以利用已有的代码,比如JAVA直接提供了BigInteger进制操作。

  再来谈谈转换后的位数。

  • 16进制,即4个bit表示一个数,最后是32长。
  • 32进制,即5个bit表示一个数,最后是26长。泰山OFFICE的开始方案就是这个。
  • 34进制呢?不好意思,也是26长。
  • 35、36进制,25长。

  泰山OFFICE使用的是34进制,结果也是25长。这是怎么回事?因为吾用到了一个高级又简单的技巧。这个想想就明白了。如果想不出来,那也可以使用35、36进制。现在印刷水平好,完全能够区分0、O。

  到了这里,CDKEY产生了,流程也介绍完毕了。是不是很简单?还有没有其他要注意的?

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/295019.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号