`

SHA加密

阅读更多
package com.dc;

import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;  
import java.security.NoSuchAlgorithmException;  

/* ******************  类说明  *********************
 * class       :  DcSHAUtil
 * @author     :  ncc
 * create time :  2017-12-19 上午10:36:08
 * @version    :  1.0  
 * description :  SHA 是一种数据加密算法,该算法经过加密专家多年来的发展和改进已日益完善,
 * 现在已成为公认的最安全的散列算法之一,并被广泛使用。该算法的思想是接收一段明文,
 * 然后以一种不可逆的方式将它转换成一段(通常更小)密文,
 * 也可以简单的理解为取一串输入码(称为预映射或信息),
 * 并把它们转化为长度较短、位数固定的输出序列即散列值(也称为信息摘要或信息认证代码)的过程。
 * 散列函数值可以说时对明文的一种“指纹”或是“摘要”所以对散列值的数字签名就可以视为对此明文的数字签名。
 * @see        :                        
 * ************************************************/   
public class DcSHAUtil {  
      
    /* ********************************************
     * method name   : eccrypt 
     * description   : 加密字符串
     * @return       : byte[]
     * @param        : @param info
     * @param        : @return
     * @param        : @throws NoSuchAlgorithmException
     * modified      : ncc ,  2017-12-19
     * @see          : 
     * ********************************************/      
    public byte[] eccrypt(String info) throws NoSuchAlgorithmException{  
        MessageDigest md5 = MessageDigest.getInstance("SHA");  
        byte[] srcBytes = info.getBytes();  
        //使用srcBytes更新摘要  
        md5.update(srcBytes);  
        //完成哈希计算,得到result  
        byte[] resultBytes = md5.digest();  
        return resultBytes;  
    }  
  
    /** 
     * @param args 
     * @throws NoSuchAlgorithmException  
     * @throws UnsupportedEncodingException 
     */  
    public static void main(String[] args) throws NoSuchAlgorithmException, UnsupportedEncodingException {  
        String msg = "欢迎光临得草之家!";  
        DcSHAUtil sha = new DcSHAUtil();  
        byte[] resultBytes = sha.eccrypt(msg);  
        System.out.println("明文是:" + msg);
        System.out.println("密文是:" + new String(resultBytes));  
    }  
}

 

 

分享到:
评论

相关推荐

    SHA加密算法

    由于其安全性及广泛应用,SHA加密算法在网络安全、数据完整性验证、数字签名等领域扮演着重要角色。 SHA-1是SHA家族的第一个成员,于1993年发布,但在2011年被发现存在潜在的攻击途径,使其安全性受到质疑。因此,...

    JSP的SHA加密

    **JSP的SHA加密详解** 在Java Web开发中,数据安全性是至关重要的,尤其是在处理用户登录、密码存储等敏感信息时。SHA(Secure Hash Algorithm,安全散列算法)就是一种常用于增强数据安全性的加密技术。它将任意...

    Delphi【HMC-SHA签名、SHA加密、MD5加密、URL编码与解码、Base64编码与解码】

    本篇将详细讲解Delphi中涉及到的HMAC-SHA签名、SHA加密、MD5加密、URL编码与解码以及Base64编码与解码的相关知识。 首先,HMAC-SHA(Hash-based Message Authentication Code - Secure Hash Algorithm)是一种基于...

    javaSHA加密随便都能跑

    SHA加密的java算法,可以用于数据库密码加密,不需要任何jar

    ios下md5和sha加密代码实现

    在iOS中,我们可以使用CommonCrypto库来实现MD5和SHA加密。以下是一个简单的Objective-C示例,演示如何在iOS应用中使用这些算法: ```objc #import // MD5加密 + (NSString *)md5:(NSString *)input { const ...

    AES,MD5,SHA加密

    在"EncryptDemo"这个压缩包文件中,很可能包含了针对AES、MD5和SHA加密的Java或Python等编程语言的示例代码。这些示例可能涵盖了如何初始化密钥、如何加密和解密数据、如何计算MD5和SHA哈希值等内容。通过这些代码,...

    Java加密组件实现DES、RSA和SHA加密算法

    Java加密组件实现DES、RSA和SHA加密算法是信息安全领域中常用的技术,主要用于数据的保护,确保数据在传输或存储过程中的安全。以下是对这些加密算法的详细解释: 1. **DES(Data Encryption Standard)**:DES是一...

    SHA加密帮助类集合

    一组对SHA加密算法的封装,能够在编程过程中方便使用的静态工厂方法类

    Java加密类演示DES、RSA及SHA加密算法.rar

    Java加密类演示DES、RSA及SHA加密算法,可对文件和输入流进行加密处理。  AsymmetryEncrypt.java:非对称加密算法的上层接口,提供加/解密、数字签名/验证操作所需的方法  * 加密/解密操作(公钥加密,私钥解密...

    sha 加密算法JS文件

    在JavaScript中实现SHA1加密算法,可以用于数据的安全传输、用户密码的存储或其他安全相关的应用。例如,当你需要在客户端对用户输入的数据进行预处理,以防止在传输过程中被窃取,或者在服务器端验证数据的完整性时...

    C# SHA1加密字符串

    为了进一步学习和实践C#中的SHA1加密,你可以参考提供的压缩包文件“C#sha1加密”。其中可能包含了示例代码和其他相关资源,帮助你理解和应用SHA1加密技术。记住,在处理敏感数据时,一定要确保使用安全的加密算法,...

    VB的SHA加密算法类模块

    VB的SHA加密算法类模块,可以直接使用。

    SHA加密算法原理.doc

    SHA加密算法原理.doc

    JAVA SHA1加密-微信签名适用

    在Java中实现SHA1加密,是确保数据安全性和完整性的一个常见做法,尤其在与微信支付接口交互时,为了保证交易的安全,会要求使用SHA1进行签名。 SHA1全称为Secure Hash Algorithm 1,它是由美国国家安全局(NSA)...

    SHA加密算法的js与Java的使用方法

    总之,SHA-256加密算法在JavaScript和Java中的使用方式虽然有所不同,但核心思想都是将明文信息转化为不可逆的摘要,以此来保护敏感数据,如用户密码。在实际项目中,应结合盐值和多次迭代等安全策略,以增强密码的...

    SHA1加密算法(c语言实现).zip

    这个压缩包文件"SHA1加密算法(c语言实现).zip"显然包含了用C语言编写的SHA1算法实现。C语言是一种底层、高效且通用的编程语言,非常适合实现这样的底层算法。 SHA1全称为Secure Hash Algorithm 1,是美国国家安全局...

    JavaScript中AES和SHA加密函数的参考实现.zip

    JavaScript中的AES(Advanced Encryption Standard)和SHA(Secure Hash Algorithm)是两种常见的安全技术,用于数据加密和完整性验证。AES是一种块密码,而SHA是一组哈希函数。在JavaScript环境中实现这两种算法,...

    SSHA.zip_SSHA_java SSHA_ssha加密

    4. **LDAP-SHA加密**: LDAP(Lightweight Directory Access Protocol)是一种轻量级目录访问协议,它广泛用于用户身份验证和目录服务。在LDAP中,SSHA被用作安全地存储密码的一种方式。LDAP-SHA与SSHA类似,但在...

Global site tag (gtag.js) - Google Analytics