C#自带的类库实现sha265会返回一个byte[] 数组,这个数组的长度是32,

js的sha265是64,是把每个byte直接转换成了2个hex字符串。

C#中加密后是44位是因为把这个数组用base64编码成了字符串。

C#中也直接把byte转换成对应的hex字符串就和js中一样了。

另外,把str转换成byte[]数组的Encoding 如果不同,sha是不同的,一般js的都是utf8。

代码:

public static string SHA256(string str)

{

//如果str有中文,不同Encoding的sha是不同的!!

byte[] SHA256Data = Encoding.UTF8.GetBytes(str);

SHA256Managed Sha256 = new SHA256Managed();

byte[] by = Sha256.ComputeHash(SHA256Data);

return BitConverter.ToString(by).Replace("-", "").ToLower(); //64

//return Convert.ToBase64String(by);                         //44

}

static void Main(string[] args)

{

string s = "hello world";

//sha265=b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9

string sha = SHA256(s);

Console.WriteLine("{0}\n{1} \nLength: {2}",s, sha, sha.Length);

}

js sha256加密和java,在C#中的sha256加密和js中的sha256加密结果不同相关推荐

  1. c md5加密 和java不一样_C#的MD5加密为什么和JAVA的加密出来的结果不一样?

    下面这个和java结果一样了.static void Main(string[] args) { string input = "3500000112345620141118050554&q ...

  2. ajax调用java程序,从微信小程序到鸿蒙JS开发-JS调用Java

    除轻量级智能穿戴设备,现鸿蒙支持的手机.汽车.TV.手表.平板等属于富鸿蒙,在JS语言的项目中也有Java模块,并提供了JS跨语言调用Java方法的技术.现需要实现查看商品评论时,统计出长评.中评和短 ...

  3. javascript 解密_Javascript中的AES加密和Java中的解密

    javascript 解密 AES代表高级加密系统,它是一种对称加密算法,很多时候我们需要在客户端加密一些纯文本,例如密码,然后将其发送到服务器,然后由服务器解密以进行进一步处理.AES加密和解密更加 ...

  4. Javascript中的AES加密和Java中的解密

    AES代表高级加密系统,它是一种对称加密算法,很多时候我们需要在客户端加密一些纯文本(例如密码)并将其发送到服务器,然后由服务器解密以进行进一步处理.AES加密和解密更加容易在相同的平台(例如Andr ...

  5. Java中常用的加密方法(JDK)

    加密,是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信息的内容.大体上分为双向加密和单向加密,而双向加密又分为对称加密和非对称加密(有些 ...

  6. RSA--前端JS加密--后端JAVA解密

    1.html代码另存为testRSA.html文档: 2.JSencryp.js代码另存为JSencryp.js,并在testRSA.html中引用: 3.使用RSAUtil.java类中的priva ...

  7. Java中常用的加密方式

    一.Java常用加密方式 Base64加密算法(编码方式) MD5加密(消息摘要算法,验证信息完整性) 对称加密算法 非对称加密算法 数字签名算法 数字证书 二.分类 按加密算法是否需要key被分为两 ...

  8. java对密码进行加密的方法_如何在JAVA中使用MD5加密对密码进行加密

    如何在JAVA中使用MD5加密对密码进行加密 发布时间:2020-11-25 17:12:40 来源:亿速云 阅读:118 作者:Leah 本篇文章为大家展示了如何在JAVA中使用MD5加密对密码进行 ...

  9. Android+Java中使用RSA加密实现接口调用时的校验功能

    场景 RSA加密 RSA算法是一种非对称加密算法,那么何为非对称加密算法呢? 一般我们理解上的加密是这样子进行的:原文经过了一把钥匙(密钥)加密后变成了密文,然后将密文传递给接收方,接收方再用这把钥匙 ...

  10. java中的md5加密_java中的MD5加密

    java中的MD5加密 2016-01-22 09:07:00 admin 原创 1144 摘要:java中的MD5加密 /** * * md5加密 * @author LiuJiawan * @da ...

最新文章

  1. JavaScript检测之basevalidate.js
  2. Android版本介绍
  3. JZOJ 5397. 【NOIP2017提高A组模拟10.6】Biology
  4. pythonwin32api拖动图标_Python使用win32api,模拟鼠标移动并复制/粘贴到diskfi中
  5. python学习-列表解析、字典解析
  6. QT [005] 数据库设计 - 一个被忽略的数据库show类 - ConnectionWidget Class
  7. github克隆仓库加速
  8. 第11章 樱花树(《C和C++游戏趣味编程》配套教学视频)
  9. 金蝶k3单据编码规则_金蝶K3各单据操作步骤
  10. AUTOSAR实战教程pdf版
  11. 关于芯片最高工作频率的计算
  12. display:kms-panel-4.14kernel
  13. Linux命令之停机halt
  14. 用Python复现机器学习中12种经典降维算法
  15. USB vs PS2_Codeforces
  16. TextView添加中划线、下划线等
  17. 商标权的取得方式有哪些
  18. 重启数据库服务器后数据库无法连接的解决方法
  19. MySQL数据库——约束
  20. 很多人读书,追求的是干货,寻求的是立刻行之有效的解决方案。        其实这是一种留在舒适区的阅读方法。         在这个充满不确定的年代,答案不会简单的出现在书里

热门文章

  1. 浅谈Squid在图片存储架构中的应用
  2. 三国杀周边--------猪国杀题解
  3. Windows系统错误代码大全(三)
  4. android 手写签字
  5. [Kerberos原理]-- 趣味故事讲解Kerberos认证原理过程
  6. apollo yml格式配置不支持某些符号
  7. 平头哥芯片用户手册下载方法
  8. qq机器人开发第二课-发送图片
  9. Linux三剑客对Nginx日志分析
  10. 【Flutter从入门到入坑】Flutter 知识体系