首页 > 编程语言 >在Java和C#中计算SHA-1哈希

在Java和C#中计算SHA-1哈希

时间:2023-07-27 18:22:55浏览次数:40  
标签:key hash String SHA result 哈希 Java byte password

Java版本:

public void testHash() { String password = "Test"; byte[] key = password.getBytes(); MessageDigest md = MessageDigest.getInstance("SHA-1"); byte[] hash = md.digest(key); String result = ""; for ( byte b : hash ) { result += Integer.toHexString(b + 256) + " "; } System.out.println(result); } 

C#版本:

 public void testHash() { String password = "Test"; byte[] key = System.Text.Encoding.Default.GetBytes(password); SHA1 sha1 = SHA1Managed.Create(); byte[] hash = sha1.ComputeHash(key); String result; foreach ( byte b in hash ) { result += Convert.ToInt32(b).ToString("x2") + " "; } Console.WriteLine(result); } 

标签:key,hash,String,SHA,result,哈希,Java,byte,password
From: https://www.cnblogs.com/fyy1003668657/p/17585743.html

相关文章

  • C#与Java互通AES算法加密解密
    C#需要引用System.Security.Cryptography命名空间///<summary>AES加密</summary>///<paramname="text">明文</param>///<paramname="key">密钥,长度为16的字符串</param>///<paramname="iv">偏移量,长度为16的字符串<......
  • 深入研究java.lang.ThreadLocal类
    Synchronized用于线程间的数据共享,而ThreadLocal则用于线程间的数据隔离。一、概述ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是threadlocalvariable(线程局部变量)。也许把它命名为ThreadLocalVar更加合适。线程局部变量(ThreadLocal)......
  • android studio javadoc 生成
    AndroidStudioJavadoc生成教程介绍在Android开发中,Javadoc是一种用于生成API文档的工具。通过使用Javadoc,可以为自己的代码生成详细的文档,方便团队协作和代码维护。本教程将介绍如何在AndroidStudio中生成Javadoc。流程下面是生成Javadoc的流程,你可以按照这些步骤来实现:......
  • 学习Java的第7天
    数据类型强类型语言(安全性高-速度慢)要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用弱类型语言(安全性低--速度快) Java的数据类型分为两大类基本类型(primitivetype)//**八大基本数据类型**//**整数**intnum1=10;//**最常用**bytenum2=20;......
  • JavaScript中的MAP对象
    MAP对象,存储格式为键值对。和普通对象无异,不过它的方法要特殊一些。constmap=newMap();//createdmap.set(key,value);//赋值map.get(key);//读取map.delete(key);//删除指定键值map.clear();//删除所有键值对MAP对象主要用于频繁进行赋值删除时,会有更好的性能,同......
  • 运行 'Tomcat 8.5.31' 出错: 无法打开调试器端口 (127.0.0.1:62511): java.net.Socket
    多个中间件占用一个端口,修改端口  ......
  • 有关java语法的一些细节(与c++比较)
    与c++不同,java不支持方法参数的默认值设置,因此若有此需要,可以使用重载的方式去实现,如:publicclassTest{publicintfunc(inta,Stringb){//TODO}publicintfunc(){returnfunc(0,newString("defult"));}...}java中类型转换都......
  • java8 list转map把key重复的value合并
    无序Map<String,List<GeneralVO>>groupMap=generalVOS.stream().collect(Collectors.groupingBy(GeneralVO::getTaskId));有序Map<String,List<GeneralVO>>groupMap2=generalVOS.stream().collect(Collectors.groupingBy(GeneralVO::getTa......
  • Java JNI(Java Native Interface)介绍
    1.JNI简介众所周知,Java的主要优势之一是它的可移植性,这意味着一旦我们编写并且编译了代码,这个过程的结果就是不依赖于平台的字节码。它可以像我们预期的那样运行在任何能够运行Java虚拟机的机器或设备上。 但是,有时我们确实需要使用一些为某些特定架构而进行本地编译的原......
  • [Javascript] removeEventListener
    Mistake1:Notusingthesamefunctionreference//Wrongbutton.addEventListener('click',()=>{console.log('click')})button.removeEventListener('click',()=>{console.log('click')})//Won'tremovet......