这段代码是基于上一篇《聊胜于无 Java之Caesar与Vigenere实现》的代码实现的。接受一个有序的ID数字序列,输出一个至少8位的随机的字符串。
  3.2 代码分析
  通过执行代码,我们得到一组随机的由数字组成的ID字符串。由于生成的原理,所以不会因为生成ID的数量增加而造成算法性能下降。接下来我们看看,这个随机的序列真是的么?从算法可知,根据这个随机序列,我们能够还原出原来的ID。这也证明,这个随机的序列是。并且,在第三方不知道key和seed的长度与位置的情况下,以及算法实现的情况下,是很难还原出原本有序的ID的。而且,由于这类ID一般会保存在数据库中,同时一个有序ID能够对应多个无序的ID,所以,即使知道整个生成的细节,也很难根据有序ID伪造出一个合法的无序ID。
  4、总结
  看过上一篇Caesar与Vigenere实现的人,一定会觉得那样"古老"的手工密码,貌似没有什么实际可用的意义。但是,通过这篇文章的补充,或许会给你的思路一些拓展。我也希望你能有更多的想法和我们分享。我想,很多看似"无用"的东西,经过合理的运用,会在不同的时代发挥其不同的作用。