`

加密算法SHA-1,SHA-256,SHA-512,MD2,MD5

    博客分类:
  • JSP
阅读更多
自定义某种算法


package test;   
  
import java.security.MessageDigest;   
import java.security.NoSuchAlgorithmException;   
  
public class MD {   
  
 public static void main(String[] args) {   
  MD md = new MD();   
  System.out.println(md.encrypte("heisetoufa", "SHA-1"));// SHA-1算法   
  System.out.println(md.encrypte("heisetoufa", "SHA-256"));// SHA-256算法   
  System.out.println(md.encrypte("heisetoufa", "SHA-512"));// SHA-512算法   
     
  System.out.println(MD.encrypte("heisetoufa", "MD2"));//MD2算法   
  System.out.println(MD.encrypte("heisetoufa", "MD5"));//MD5算法   
 }   
  
 /**  
  * encrypted password based on JCA algorithm of message digest  
  *   
  * @param plainText  
  *            orginal password text  
  * @param algorithm  
  *            name of algorithm  
  * @return encrypted password  
  */  
 private static String encrypte(String plainText, String algorithm) {   
  MessageDigest md = null;   
  try {   
   md = MessageDigest.getInstance(algorithm);   
  } catch (NoSuchAlgorithmException e) {   
   e.printStackTrace();   
  }   
  md.update(plainText.getBytes());   
  byte[] b = md.digest();   
  StringBuilder output = new StringBuilder(32);   
  for (int i = 0; i < b.length; i++) {   
   String temp = Integer.toHexString(b[i] & 0xff);   
   if (temp.length() < 2) {   
    output.append("0");   
   }   
   output.append(temp);   
  }   
  return output.toString();   
 }   
}  MD5加密
package test;   
  
import java.security.MessageDigest;   
import java.security.NoSuchAlgorithmException;   
  
public class MD5 {   
  
 public static void main(String[] args)   
 {   
  MD5 md5 = new MD5();   
  System.out.println(md5.md5("heisetoufa"));   
//  System.out.println(md5.md5("heisetoufa").length());   
 }   
  
 public String md5(String source) {   
  String dest = null;   
  try {   
   MessageDigest md5 = MessageDigest.getInstance("MD5");   
   char[] charArray = source.toCharArray();   
   byte[] byteArray = new byte[charArray.length];   
   for (int i = 0; i < charArray.length; i++)   
    byteArray[i] = (byte) charArray[i];   
   byte[] md5Bytes = md5.digest(byteArray);   
   StringBuffer hexValue = new StringBuffer();   
   for (int i = 0; i < md5Bytes.length; i++) {   
    int val = ((int) md5Bytes[i]) & 0xff;   
    if (val < 16)   
     hexValue.append("0");   
    hexValue.append(Integer.toHexString(val));   
   }   
   dest = hexValue.toString();   
  
  } catch (NoSuchAlgorithmException e) {   
   e.printStackTrace();   
  }   
  return dest;   
 }   
  
  
}  



分享到:
评论

相关推荐

    SHA常用算法实现(SHA-1, SHA256, SHA384, SHA512)

    本文将详细介绍SHA-1、SHA-256、SHA-384以及SHA-512这四种算法,并结合C语言实现进行讲解。 1. SHA-1算法: SHA-1是SHA家族的最早成员,由美国国家安全局(NSA)设计,于1993年发布。它对任意长度的信息进行处理,...

    SHA-512 加密解密

    在压缩包中的"SHA-512 目标程序"可能是实现了以上加密解密功能的已编译程序,而"SHA-512 源程序"则是对应的源代码文件,可能包含了更多的细节和示例。 总之,SHA-512在C#中提供了强大的数据保护手段,但要注意,...

    C#实现字符串SHA-256加密算法

    在C#编程环境中,实现SHA-256加密算法可以为应用程序提供强大的安全保障。 首先,我们需要理解SHA-256的工作原理。SHA-256是SHA-2家族的一员,它通过一系列复杂的数学运算(如位操作、异或、旋转等)将输入信息...

    C# MD5加密 sha-1 算法

    ### C# MD5与SHA-1加密算法详解 在现代软件开发中,数据安全性变得尤为重要。其中,密码学中的散列函数(哈希函数)是实现数据加密的关键技术之一。本文将详细介绍C#中两种常用的散列算法:MD5与SHA-1,并探讨它们...

    MD5、SHA1、SHA256以及SHA512加解密算法实现

    2. **分块处理**: 将输入数据分为固定大小的块进行处理,对于MD5和SHA-1是512位,对于SHA-256和SHA-512是1024位。 3. **循环计算**: 对每个数据块应用一系列的数学运算,包括位操作、加法、异或等,更新内部状态。 4...

    SHA-256加密算法JAVA

    SHA-256是一种广泛使用的密码散列函数,属于SHA-2家族的一部分,设计目的是为了提供数字签名和数据完整性验证。在Java中实现SHA-256加密算法,可以使用内置的`java.security.MessageDigest`类。这个过程涉及到几个...

    C#实现字符串SHA-256加密算法工程下载

    SHA-256是SHA-2家族的一部分,该家族还包括其他几种不同安全强度的散列函数,如SHA-384和SHA-512。 在C#中,我们可以利用.NET框架提供的`System.Security.Cryptography`命名空间中的类来实现SHA-256加密。这个命名...

    哈希加密算法SHA-1

    利用C语言实现sha-1加密算法,与芯片DS28E01一致接口

    C++实现对数据的SHA-256加密算法

    在C++中实现SHA-256加密算法,我们需要了解其基本原理、步骤以及如何在代码中实现。 SHA-256算法的基本流程包括以下步骤: 1. **初始化哈希值**:首先,我们需要设置一组初始的哈希值,这些是固定的常量,由SHA-...

    C#MD5,SHA1,SHA256,SHA512加密算法完整代码

    根据给定文件的信息,本文将深入探讨C#中MD5、SHA1、SHA256、SHA512这四种加密算法的实现方法,并通过具体的代码示例来展示如何使用这些算法进行数据加密。 ### 一、理解MD5、SHA1、SHA256、SHA512 #### 1. MD5 MD...

    Vue-常用加密(MD5,DES,SHA256,BASE64,SHA1,RSA)

    常见的 Hash 算法包括 MD2、MD4、MD5、HAVAL、SHA、SHA-1、HMAC、HMAC-MD5、HMAC-SHA1 等。 Hash 算法的应用场景包括文件或字符串一致性校验、数字签名、鉴权协议等。 五、加密算法的选择 在选择加密算法时,需要...

    MD5,SHA-1加密算法(JS调用)

    ### MD5与SHA-1加密算法(JS实现) 在现代Web开发中,用户登录时的安全性至关重要。为了保护用户的隐私和个人信息安全,开发人员通常会在客户端对用户的密码进行加密处理,而不是直接以明文形式传输。这不仅可以...

    加密算法的 js 实现 md4 md5 sha-1

    加密算法的 js 实现 md4 md5 sha-1 加密算法的 js 实现 md4 md5 sha-1 加密算法的 js 实现 md4 md5 sha-1 加密算法的 js 实现 md4 md5 sha-1

    SHA-512加密算法的实现

    SHA-512算法设计于2001年,是美国国家标准与技术研究所(NIST)提出的,旨在提供比早期的SHA-1更高的安全性和更强的抗碰撞能力。 SHA-512算法的核心在于其将输入的消息转化为一个固定长度的二进制摘要。这个摘要...

    Javascript实现的SHA-256加密算法完整实例

    在计算机网络和信息安全领域,SHA-256加密算法是一种广泛使用的哈希函数。它属于SHA-2(安全哈希算法2)家族,能够生成一个固定长度(256位)的哈希值,常用于数据完整性校验、数字签名、区块链等场景。本篇文章将...

    SHA-1哈希加密算法的verilog程序

    利用verilog语言实现了SHA-1机密算法,具体算法与加密芯片ds28e01一致

    MD5加密和SHA-1加密的工具类(自己整理的)

    SHA-1的安全性比MD5稍强,但在2017年,Google报告了首次找到SHA-1的碰撞攻击实例,这意味着它的安全性也正在逐渐降低。目前,许多系统已经转向使用更安全的SHA-2或SHA-3系列。 在编程中,经常会使用工具类来简化MD5...

    Java&Android; SHA1、SHA-512、SHA-384等加密算法

    Java&Android; SHA1、SHA-512、SHA-384等加密算法工具类

    Qt加密算法md5,sha256,sha1

    ## 说明 此程序可以进行sha1,sha256,md5的加密 在input输入框内输入所需加密的数据,然后点击"encryption"按扭即可实现加密; 默认input输入框内的数据为123456

Global site tag (gtag.js) - Google Analytics