安全哈希算法(Secure Hash Algorithm)主要适用于数字签名标准 (Digital Signature Standard DSS)里面定义的数字签名算法(Digital Signature Algorithm DSA)。在SHA1算法中,我们必须把原始消息(字符串,文件等)转换成位字符串。SHA1算法只接受位作为输入。假设我们对字符串“abc”产生 消息摘要 。首先需要进行转换为位字节,然后进行补位补长等操作,具体算法参见这里。

public static String getSha1(String str) {  char hexDigits[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',  'a', 'b', 'c', 'd', 'e', 'f' };  try {  MessageDigest mdTemp = MessageDigest.getInstance("SHA1");  mdTemp.update(str.getBytes("UTF-8"));  byte[] md = mdTemp.digest();  int j = md.length;  char buf[] = new char[j * 2];  int k = 0;  for (int i = 0; i < j; i++) {  byte byte0 = md[i];  buf[k++] = hexDigits[byte0 >>> 4 & 0xf];  buf[k++] = hexDigits[byte0 & 0xf];  }  return new String(buf);  } catch (Exception e) {  return null;  }  }

该算法常用于对数字信息进行签名验证进行安全验证,比如微信的接入验证,腾讯云的对象存储oss的操作前的签名验证。

如何使用java进行sha1加密相关推荐

  1. Java实现SHA1加密

    微信接入中需要用到SHA1的算法.Java版的SHA1加密如下: /** 微信公众平台(JAVA) SDK** Copyright (c) 2016, Ansitech Network Technol ...

  2. java sha1加密ascii码_请问下面java的Sha1加密在c#中对应要怎么写?

    /** * 读取指定文件块数据Sha1 * * @param fis * @return */ private static MessageDigest calSha1(BufferedInputSt ...

  3. java sha1_使用Java 进行SHA1加密

    最近要与微信API做对接,用到了SHA1加密算法去生成签名,在此做个记录. 安全哈希算法(Secure Hash Algorithm)主要适用于数字签名标准 (Digital Signature St ...

  4. JAVA SHA1 加密 对应 c# SHA1 加密

    java: 1 public static String SHA1(String decript) { 2 try { 3 MessageDigest digest = MessageDigest.g ...

  5. Java SHA1加密

    Java SHA1加密 SHA1.java 网上找到的,Mark SHA1.java import java.security.MessageDigest;/*** Title: SHA1算法** @ ...

  6. JAVA SHA-1加密及DES加解密

    1.SHA-1加密 SHA-1标准加密: //SHA-1public static String getSha1(String str){if(str == null || str.length() ...

  7. java 解密 sha,如何在Java中解密sha1加密的字符串

    Is it possible to decrypt some string which was earlier encrypted with the SHA-1 algorithm in Java? ...

  8. jmeter 加密解密_使用Jmeter对SHA1加密接口进行性能测试

     机会只留给那些有准备的人 改变能改变的,接受不能改变的,就是进步 性能测试过程中,有时候会遇到需要对信息头进行加密鉴权,下面我就来介绍如何针对SHA1加密鉴权开发性能测试脚本  1.首先了解原理,就 ...

  9. java调用微信加密_用spring搭建微信公众号开发者模式下服务器处理用户消息的加密传输构架(java)...

    要搭建加密传输的微信公众号消息传输,首先要在开发这平台下载一下微信加密的相关jar包,并做一些准备.准备的步骤如下: 1.打开开发者文档,找到消息加减密--->接入指引,如下图所示: 2.在页面 ...

最新文章

  1. node.js querystring
  2. 几个常用的Linux监控脚本
  3. java url 处理,URL处理-Java架构师必看
  4. python剑指offer替换空格_《剑指offer》2-替换空格【Java+Python】
  5. IOS-—UICollectionView使用综述(一 )(基础篇--垂直列表方式,横向相册方式)
  6. 会议指南二维码生成_包装和准备技术会议的指南
  7. php add action,WordPress学习——add_action()详解
  8. eos节点服务器_长期看,EOS柚子能不能达到1000元?
  9. 设置ngxin服务器虚拟主机,详解Nginx 虚拟主机配置的三种方式(基于端口)
  10. php验证码图像程序,完美的php生成验证码程序代码-图像处理-Php教程
  11. shell手册--笨鸟杰作
  12. 【Git可视化工具】Sourcetree的初始化与使用
  13. 常用圆圈数字序号(1~50)
  14. 禁用win10触摸屏手势_搞机作战室:win10触控板多指触控,手势操作教程
  15. 桥接模式与Nat模式的区别
  16. HTML中屏蔽Enter键
  17. ubuntu各种实践笔记
  18. 算法日志:python把终端的信息存为log和logging
  19. oracle 11g 导入\导出(expdp impdp)详解之导入
  20. java常见面试题库大全

热门文章

  1. 《东周列国志》第四十一回 连谷城子玉自杀 践土坛晋侯主盟
  2. (29)打鸡儿教你Vue.js
  3. 彩灯控制器课程设计vhdl_vhdl语言设计一个8路彩灯控制器
  4. ROS机器人项目开发11例-ROS Robotics Projects(6)Matlab和Android
  5. 啊哈添柴挑战Java1651. 一个萝卜一个坑
  6. Tomcat应用部署是否要一个萝卜一个坑?
  7. android 组件化架构 读书总结
  8. Symbian HTTP
  9. 微信小程序预览word,doc,excel文件
  10. pythonturtle画飞机_如何用 Python 画一个纸飞机?| 原力计划