sha是什么算法,sha-2算法

sha是什么算法,sha-2算法,Java实现SHA算法的方法详解

这篇文章主要介绍了Java 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)实现恒星时角算法的方法,结合实例形式较为详细的分析了Java 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)实现恒星时角算法的原理、实现与使用相关操作技巧,需要的朋友可以参考下

本文实例讲述了Java 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)实现恒星时角算法的方法。分享给大家供大家参考,具体如下:

一 简介

安全散列算法

固定长度摘要信息

二 SHA算法

SHA-1、SHA-2(沙224、SHA-256、沙384、SHA-512)

三 SHA算法实现

包com。imooc。安全。沙;

导入Java。安全。消息摘要;

导入Java。安全。nosuchalgorithm异常;

导入Java。安全。安全性;

导入org。阿帕奇。公地。编解码器。二进制。十六进制;

导入org。阿帕奇。公地。编解码器。消化。消化实用程序;

导入org。充气城堡。密码。消化;

导入org。充气城堡。密码。文摘。sha 1文摘;

导入org。充气城堡。密码。文摘。sha 224文摘;

导入org。充气城堡。JCE。提供商。充气城堡提供商;

公共类ImoocSHA {

私有静态字符串src=' cakin24安全sha

公共静态void main(String[] args) {

JDK沙1();

bcsha 1();

bcsha 224();

ccsha 1();

}

公共静态void jdkSHA1() {

尝试{

消息摘要MD=消息摘要。getinstance(' SHA ');

MD .更新(src。getbytes());

系统。出去。println(' JDK沙-1:'十六进制。encodehexstring(MD . digest());

} catch(nosuch算法异常e){

e。printstacktrace();

}

}

公共静态void bcSHA1() {

digest digest=new sha 1 digest();

digest.update(src.getBytes(),0,src.getBytes().长度);

byte[]sha1 bytes=新字节[digest。getdigestsize()];

digest.doFinal(sha1Bytes,0);

系统。出去。println(' BC sha-1:' org。充气城堡。util。编码器。十六进制。tohexstring(sha1字节));

}

公共静态void bcSHA224() {

digest digest=new sha 224 digest();

digest.update(src.getBytes(),0,src.getBytes().长度);

byte[]sha 224字节=新字节[摘要。get digestsize()];

digest.doFinal(sha224Bytes,0);

系统。出去。println(' BC sha-224:' org。充气城堡。util。编码器。十六进制。tohexstring(sha 224字节));

}

公共静态void ccSHA1() {

系统。出去。println(' cc sha1-1:' digestutils。sha 1 hex(src。getbytes()));

系统。出去。println(' cc sha1-2:' digestutils。sha 1 hex(src));

}

//384、256、512。

}

四 运行结果

JDK sha-1:ba 28 a 0 f 5 f 08 EFC 8 AFA ee 4706 ffd 496 E1 f 88 bef db

EFC 8 AFA ee 4706 ffd 496 E1 f 88 bef db

BC sha-224:ae3b 58439 CD 53d 28455781 Fe 6 DC 20 c 83 a 45d 63 E1 d 9550330 c 7911 f 58

EFC 8 AFA ee 4706 ffd 496 E1 f 88 bef db

EFC 8 AFA ee 4706 ffd 496 E1 f 88 bef db

五 SHA算法应用

PS:关于加密解密感兴趣的朋友还可以参考本站在线工具:

在线SHA1加密工具:

http://tools.jb51.net/password/sha1encode

文字在线加密解密工具(包含AES、DES、RC4等):

http://tools.jb51.net/password/txt_encode

在线散列/哈希算法加密工具:

http://tools.jb51.net/password/hash_encrypt

在线MD5/哈希/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:

http://tools.jb51.net/password/hash_md5_sha

在线沙1/沙224/沙256/沙384/沙512加密工具:

http://tools.jb51.net/password/sha_encode

更多关于Java 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)相关内容感兴趣的读者可查看本站专题: 《Java数学运算技巧总结》 、 《Java数据结构与算法教程》 、 《Java字符与字符串操作技巧总结》 、 《Java操作DOM节点技巧总结》 和《Java数组操作技巧总结》

希望本文所述对大家Java 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)程序设计有所帮助。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: