康盛的discuz 里有一个authcode由于其优秀的表现立刻受到广大PHPER的青睐,现在它已经跳出PHP领域,几乎成为字符加密的标准(有点夸张哈哈)。
我的资源包中有两个文件 Base64.java Authcode.java 我只是对代码进行整理。原始代码来自互联网。
这两个文件都要用,因为authcode中需要用到BASE64。
说个重要的地方
因为标准的BASE64加密后的字符的长度可以被4整除,不能整除的都通过“=”来补充。PHP自带的decode_base64()函数可以解密标准的BASE64也可以解密长度不能被4整除的BASE64,authcode是在PHP环境中开发,所以没有考虑到非标准的情况。这样在移植到JAVA中,需要写一个可以解密标准和非标准BASE64的方法,,我是在互联网上收集到的BASE64加密解密功能,然后又为其扩充了解密非标准BASE64的功能(其实就是为其补充“=”,使其长度可以被4整除),这样就可以加密解密authcode,而且与PHP互通,加密后的字符不带“=”,看着比较整洁。
1