研究php的pack("H*"函数

最近要做一个加密,必须在JAVA中实现,用PHP的话要使用pack("H*", $str); 用JAVA找不到类似的方法,只好翻源码,先把源码简化出来测试通过

#include <stdio.h>
#include <stdlib.h>
#include<openssl/md5.h>
int main(int argc, char *argv[])
{
		//nibbleshift = (nibbleshift + 4) & 7;
        char number = '2';
        number -= '0';
        char first = 0;
        first |= (number << 4);

        number = '3';
        number -= '0';
        first |= (number << 0);

        char letter = 'b';
        letter -= ('a' - 10); 
        char second = 0;
        second |= (letter << 4);

        letter = 'f';
        letter -= ('a' - 10);
        second |= (letter << 0);

        printf("%c%c",  first, second);
        return 0;
}

根据这个C的源语再翻译为JAVA,要注意JAVA中是用byte而不能用char

最后的JAVA版本见附件

pack.zip (1.7 K, 下载次数:355, 上传时间:2013-08-06 14:09)

上一篇: hadoop错误集   下一篇: chrome 代理上网插件proxy-switchysharp

提交疑问

回顶部