ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

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

2021-10-05 09:06:03  阅读:161  来源: 互联网

标签:26 转换 进制 16 全网 36 34 首发 CDKEY


  经过加密,我们得到了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产生了,流程也介绍完毕了。是不是很简单?还有没有其他要注意的?

标签:26,转换,进制,16,全网,36,34,首发,CDKEY
来源: https://blog.csdn.net/quantum7/article/details/120610624

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有