国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

java加密枝術

2019-11-17 05:58:53
字體:
來源:轉載
供稿:網友

★ 編程思路:java.security包中的MessageDigest類提供了計算消息摘要的方法, 首先生成對象,執行其update( )方法可

以將原始數據傳遞給該對象,然后執行其digest( )方法即可得到消息摘要。具體步驟如下:

(1)生成MessageDigest對象

MessageDigest m=MessageDigest.getInstance("md5");

分析:和2.2.1小節的KeyGenerator類一樣。MessageDigest類也是一個工廠類,其構造器是受保護的,不答應

直接使用new MessageDigist( )來創建對象,而必須通過其靜態方法getInstance( )生成MessageDigest對象。

其中傳入的參數指定計算消息摘要所使用的算法,常用的有"MD5","SHA"等。若對MD5算法的細節感愛好可參考

http://www.ietf.org/rfc/rfc1321.txt。

(2)傳入需要計算的字符串

m.update(x.getBytes("UTF8" ));

分析:x為需要計算的字符串,update傳入的參數是字節類型或字節類型數組,對于字符串,需要先使用

getBytes( )方法生成字符串數組。

(3)計算消息摘要

byte s[ ]=m.digest( );

分析:執行MessageDigest對象的digest( )方法完成計算,計算的結果通過字節類型的數組返回。

(4)處理計算結果

必要的話可以使用如下代碼將計算結果s轉換為字符串。

String result="";

for (int i=0; i

result+=Integer.toHexString((0x000000ff & s[i]) 0xffffff00).substring(6);

}

★代碼與分析:

完整程序如下:

import java.security.*;

public class DigestPass{

public static void main(String args[ ]) throws Exception{

String x=args[0];

MessageDigest m=MessageDigest.getInstance("MD5");

m.update(x.getBytes("UTF8"));

byte s[ ]=m.digest( );

String result="";

for (int i=0; i

result+=Integer.toHexString((0x000000ff & s[i]) 0xffffff00).substring(6);

}

System.out.PRintln(result);

}

}

★運行程序



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 抚州市| 洛阳市| 白玉县| 桐梓县| 井陉县| 富宁县| 遂溪县| 永城市| 泰州市| 左权县| 安龙县| 潞城市| 登封市| 曲靖市| 德江县| 安乡县| 桑植县| 峨边| 陆良县| 南召县| 深泽县| 蓬莱市| 邯郸市| 广东省| 稻城县| 南涧| 磐安县| 澄江县| 丹巴县| 通道| 探索| 抚顺县| 崇左市| 平利县| 凯里市| 舒兰市| 西乡县| 许昌市| 贡觉县| 定西市| 南平市|