SHA信息摘要

SHA算法是在MD4的基础上演进而来的,通过SHA算法能够获得一个固定长度的摘要信息。

SHA算法系列有SHA-1(也成为SHA),SHA-224,SHA-256,SHA-384和SHA-512这五种算法,通常后面四中算法并称为SHA-2算法,它们都是以长度来命名的。

SHA与MD算法的不同之处主要在于摘要长度,SHA算法的摘要长度更长,安全性更高

SHA算法的长度说明

SHA算法实现(类似MD5的实现)

1、Java自带的MessageDigest类

注意:仅支持SHA-1,SHA-256,SHA-384和SHA-512

使用Java自带的MessageDigest类实现SHA和实现MD5一样,具体实现见例子代码


/**

* SHA1实现消息摘要

*/

public static byte[] SHA1() throws Exception{

MessageDigest sha1 = MessageDigest.getInstance("SHA"); //注意这里填SHA,而不是SHA1

byte[] result = sha1.digest("中国".getBytes("gbk"));

System.out.println(result.length);

return result;

}

/**

* SHA1实现消息摘要

*/

public static byte[] SHA256() throws Exception{

MessageDigest sha1 = MessageDigest.getInstance("SHA-256"); //其他的SHA2算法同理

byte[] result = sha1.digest("中国".getBytes("gbk"));

System.out.println(result.length);

return result;

}  

2、Apache的消息摘要工具类org.apache.commons.codec.digest.DigestUtils实现

DigestUtils.sha256("中国".getBytes("gbk"));  //其他的摘要算的函数名以算法名进行类推

来自为知笔记(Wiz)

时间: 2024-10-15 08:14:28

SHA信息摘要的相关文章

网络安全-安全散列函数,信息摘要SHA-1,MD5原理

-----------------------------------------------欢迎查看网络安全连载博客-----------------------------------[网络安全]-安全散列函数.信息摘要SHA-1.MD5算法       [网络安全]-非对称加密,RSA算法,数字签名[网络安全]-RSA非对称算法算法.数字签名                         [网络安全]-建立安全socket连接.登录[网络安全]-[数字证书,证书链]-----------

09.openssl信息摘要和数字签名指令

9.1 信息摘要算法和数字签名 信息摘要算法是现代密码学算法中不可缺少的一部分,与对称算法和非对称加密算法不同,他不是一种可逆的操作,经过它进行处理的数据,输出数据长度一般来说总是固定的,并且理论上很难从输出恢复输入. 数字签名操作一般采用非对称算法(公开密钥算法),其实质是使用费对称加密算法密钥对的私钥对数据进行加密,而数字签名的验证操作则是使用公钥对数据进行解密操作,然后比较得到的原始文件跟解密得到的文件信息是否一致,如果一致,则认为数字签名有效,从而确认文件的有效性. 指令 指令功能描述

APK签名制作以及签名中的SHA信息获取

一 制作.jks或者.keystore签名 方便一点的操作就是在AndroidStudio里面通过图形界面来制作了,这里使用命令行来制作. keytool.exe -genkey -alias <key0> -keyalg RSA -validity 10000 -keystore <keyname.keystore> 上面的keytool在安装了JDK之后就有了,跟java/javac在同一个目录下. 上面的一行代码表示制作一个使用RSA算法.别名为“key0”.有效期为1000

MAC信息摘要

MAC(Message Authentication Code ,消息认证码算法)是含有密钥散列函数算法,兼容MD和SHA算法的特性,并在此基础上加入了密钥.因此,MAC也称为HMAC.         MAC算法集合了MD和SHA两大系列消息摘要算法.MD系列有HmacMD2.HmacMD4.HmacMD5三种算法.SHA系列的有HmacSHA1.HmacSHA224.HmacSHA256.HmacSHA384.HmacSHA512这五种算法.MAC算法摘要值的长度与具体的摘要算法的长度一直.

信息加密之信息摘要加密MD2、MD4、MD5

对于用户数据的保密一直是各个互联网企业头疼的事,那如何防止用户的个人信息泄露呢?今天为大家介绍一种最简单的加密方式--信息摘要算法MD.它如何来保护用户的个人信息呢?其实很简单,当获得到用户的信息后,先对其进行加密,然后将加密的结果保存到数据库,这样即使被盗,用户的数据也不会丢失.下面上代码: JAVA的jdk提供了MD2和MD5的加密方式, JAVA不支持MD4的jdk加密方式,jdk的实现如下: private static void MD2_jdk(){ try { MessageDige

信息摘要

信息摘要算法实际上就是一个单向散列函数.数据块经过单向散列函数得到一个固定长度的散列值.攻击者不可能通过散列值而编造数据块,使得编造的数据块的散列值和原数据块的散列值相同. 常用的信息摘要算法有MD5,SHA等.市场上广泛使用的MD5,SHA算法的散列值分别为128和160位,由于SHA通长采用的密钥长度较长,因此安全性高于MD5. MD5:128位 SHA:160位 原文地址:https://www.cnblogs.com/hellohero55/p/12122027.html

SHA1 对文件求信息摘要的实现

{功能描述}可以用于分析下载文件的SHA1值与网上提供的SHA1值是否相等. {代码实现} package sup.orange.learn; import java.io.FileInputStream; import java.io.IOException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; /** * Created by re-x on 11/4/14. *

2016年4月26日作业(项目整体绩效评估、信息安全相关知识、信息工程监理知识)

一.项目整体绩效评估1.三E审计是什么的合称?(记)P524 答:绩效审计(三E审计)是经济审计.效率审计和效果审计的合称,因为三者的第一个英文字母均为E,故称三E审计.2.霍尔三维结构是从哪三个方面考察系统工程的工作过程的?P528 答:从逻辑.时间.知识三方面考查系统工程的工作过程.3.投资回收期的公式?(记,并理解) 答:投资回收期公式为:(累计净现金流量开始出现正值的年份数)-1+(上年累计净现金流量的绝对值/当前净现金流量).二.信息安全相关知识1.在三安系统三维空间示意图中,X,Y,

MD5加密和sha加密

sha加密原理Algorithm)又叫安全哈希加密技术,是当今世界最先近的加密算法.主要用于文件身份识别.数字签名和口令加密等. 对于明文信息A,通过SHA1算法,生成一条160位长的识别码B.且明文信息A和识别码B之间同时满足以下条件: 1.对于任意两条不同的明文信息A1.A2,其识别码B1.B2都不相同. 2.无法通过逆向算法由识别码B倒推出明文信息A. MOONCRM的用户密码采用SHA1加密存储,即服务器上存储的只是 由用户密码生成的识别码,而用户密码本身并没有存储在服务器上.用户输入登