Java Web_几种加密算法

来源:互联网 发布:数据库管理功能 编辑:程序博客网 时间:2024/05/02 02:54

@lhwill

/**

* 非常感谢您的评论,发现程序中的不足。就这个问题我将程序做了以下局部改动。

* 之所以会出现您说的加密身份证报错的问题,是因为之前的程序将数组的长度写死了,

* 而非字符串和数字不同的问题。

* 当输入一定长度的数据时,会发现输入数据的长度和加密后数据的长度之间是有一定规律的。

* 输入0-7位数据,加密后为16位;输入8-15位加密后为32位;输入16-23位加密后为48位。。。

* 将输入数据按8的倍数的长度范围来划分。

* 加密后数据的长度会根据输入数据的长度而确定,为16的倍数。

* 得到的十六进制byte数组(byte[] ret)的大小,根据输入数据的长度/加密后数据的长度而变化,为8的倍数。

*/

/**

* 十六进制字符串转化为2进制

*

* @param hex

* @return

*/

public byte[] hex2byte(string hex) {

//根据输入数据的长度决定加密后数据的长度。

/**

* input:[8(x-1),8x)---output:16x---param:8x

* eg:

* input:0-7位---output:16位---param:8

* input:8-15位---output:32位---param:16

* input:16-23位---output:48位---param:24

*/

int x=hex.length()/16;

byte[] ret = new byte[8*x];

byte[] tmp = hex.getbytes();

for (int i = 0; i


======================================================
在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定 这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/
原创粉丝点击