sha1java代码的简单介绍

c# SHA1算法如何写

首先引用这个命名空间

目前成都创新互联已为近千家的企业提供了网站建设、域名、网站空间、网站托管、服务器托管、企业网站设计、康巴什网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

using System.Security.Cryptography;

//建立SHA1对象

SHA1 sha = new SHA1CryptoServiceProvider();

//将mystr转换成byte[]

ASCIIEncoding enc = new ASCIIEncoding();

byte[] dataToHash = enc.GetBytes(mystr);

//Hash运算

byte[] dataHashed = SHA1.ComputeHash(dataToHash );

//将运算结果转换成string

string hash = BitConverter.ToString(dataHashed).Replace("-", "");

return hash;

如何使用java进行sha1加密

简单的做法是

1、使用apache的codec jar包对string进行加密,先下载并引入jar包:

2、生成:

String sign = DigestUtils.shaHex(str);

3.也可以使用工具在线进行sha加密,参考 hash值(md5, sha1, sha256, sha512,crc32) 在线计算,。望采纳,谢谢。

用java程序进行sha1加密,怎么弄

public class Sha1 {  

/** 

* SHA1 安全加密算法 

* @param maps 参数key-value map集合 

* @return 

* @throws DigestException  

*/  

public static String SHA1(MapString,Object maps) throws DigestException {  

//获取信息摘要 - 参数字典排序后字符串  

String decrypt = getOrderByLexicographic(maps);  

try {  

//指定sha1算法  

MessageDigest digest = MessageDigest.getInstance("SHA-1");  

digest.update(decrypt.getBytes());  

//获取字节数组  

byte messageDigest[] = digest.digest();  

// Create Hex String  

StringBuffer hexString = new StringBuffer();  

// 字节数组转换为 十六进制 数  

for (int i = 0; i  messageDigest.length; i++) {  

String shaHex = Integer.toHexString(messageDigest[i]  0xFF);  

if (shaHex.length()  2) {  

hexString.append(0);  

}  

hexString.append(shaHex);  

}  

return hexString.toString().toUpperCase();  

} catch (NoSuchAlgorithmException e) {  

e.printStackTrace();  

throw new DigestException("签名错误!");  

}  

}  

/** 

* 获取参数的字典排序 

* @param maps 参数key-value map集合 

* @return String 排序后的字符串 

*/  

private static String getOrderByLexicographic(MapString,Object maps){  

return splitParams(lexicographicOrder(getParamsName(maps)),maps);  

}  

/** 

* 获取参数名称 key 

* @param maps 参数key-value map集合 

* @return 

*/  

private static ListString getParamsName(MapString,Object maps){  

ListString paramNames = new ArrayListString();  

for(Map.EntryString,Object entry : maps.entrySet()){  

paramNames.add(entry.getKey());  

}  

return paramNames;  

}  

/** 

* 参数名称按字典排序 

* @param paramNames 参数名称List集合 

* @return 排序后的参数名称List集合 

*/  

private static ListString lexicographicOrder(ListString paramNames){  

Collections.sort(paramNames);  

return paramNames;  

}  

/** 

* 拼接排序好的参数名称和参数值 

* @param paramNames 排序后的参数名称集合 

* @param maps 参数key-value map集合 

* @return String 拼接后的字符串 

*/  

private static String splitParams(ListString paramNames,MapString,Object maps){  

StringBuilder paramStr = new StringBuilder();  

for(String paramName : paramNames){  

paramStr.append(paramName);  

for(Map.EntryString,Object entry : maps.entrySet()){  

if(paramName.equals(entry.getKey())){  

paramStr.append(String.valueOf(entry.getValue()));  

}  

}  

}  

return paramStr.toString();  

}

面java的Sha1加密在c#中对应要怎么写

private static string SHA1(string text)

{

byte[] cleanBytes = Encoding.Default.GetBytes(text);

byte[] hashedBytes = System.Security.Cryptography.SHA1.Create().ComputeHash(cleanBytes);

return BitConverter.ToString(hashedBytes).Replace("-", "");

}

调用这个函数就可以得到你要的sha1值了。

另外还有个概念要澄清,SHA1是散列算法,不是加密。


文章题目:sha1java代码的简单介绍
本文地址:http://cdiso.cn/article/doghjoi.html

其他资讯