Java加密解密算法-SHA加密
package algo;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
/**
* SHA(Secure Hash Algorithm,安全散列算法),
* 数字签名等密码学应用中重要的工具,被广泛地应用于电子商务等信息安全领域。
* 虽然,SHA与MD5通过碰撞法都被破解了, 但是SHA仍然是公认的安全加密算法,较之MD5更为安全。
* @author Administrator
*
*/
public class SHA {
public static void main(String[] args) {
String str = "南海是中国的";
System.out.println("---原始---:"+str);
String encryptShaRes1 = encryptSHA1(str);
System.out.println("SHA-1加密后:"+encryptShaRes1);
}
private static String SHA = "SHA-1";
//private static String SHA2 = "SHA";
/**
* SHA摘要加密,一般用于数字签名
* @param decript
* @return
*/
public static String encryptSHA1(String decript) {
try {
// 获得SHA-1摘要算法的 MessageDigest 对象
MessageDigest digest = MessageDigest.getInstance(SHA);
//MessageDigest digest = java.security.MessageDigest.getInstance(SHA2);
// 使用指定的字节更新摘要
digest.update(decript.getBytes());
// 获得密文
byte[] messageDigest = digest.digest();
// 把密文转换成十六进制的字符串形式
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();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
return null;
}
}
Java加密解密算法-SHA加密相关推荐
- 一组PHP可逆加密解密算法
对于大部分密码加密,我们可以采用md5.sha1等方法.可以有效防止数据泄露,但是这些方法仅适用于无需还原的数据加密. 对于需要还原的信息,则需要采用可逆的加密解密算法. 下面一组PHP函数是实现此加 ...
- php中文加密解密算法,一组PHP可逆加密解密算法
对于大部分密码加密,我们可以采用md5.sha1等方法.可以有效防止数据泄露,但是这些方法仅适用于无需还原的数据加密. 对于需要还原的信息,则需要采用可逆的加密解密算法. 下面一组PHP函数是实现此加 ...
- url 加密解密, email 加密
代码: <?php function random($length, $numeric = 0) {//返回随机数mt_srand((double)microtime() * 1000000); ...
- java 实现 DES加密 解密算法
DES算法的入口参数有三个:Key.Data.Mode.其中Key为8个字节共64位,是DES算法的工作密钥:Data也为8个字节64位,是要被加密或被解密的数据:Mode为DES的工作方式,有两种: ...
- 【Android 安全】DEX 加密 ( Java 工具开发 | 加密解密算法 API | 编译代理 Application 依赖库 | 解压依赖库 aar 文件 )
文章目录 一.加密解密算法 API 二.编译代理 Application 依赖库 三.解压代理 Application 依赖库 aar 文件 参考博客 : [Android 安全]DEX 加密 ( 常 ...
- AES加密解密算法Java实现
AES加密算法是密码学中的高级加密标准(Advanced Encryption Standard,AES),又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准.这个标准用来替代原先的DE ...
- DES加密解密算法Java实现
DES 使用一个 56 位的密钥以及附加的 8 位奇偶校验位,产生最大 64 位的分组大小.这是一个迭代的分组密码,使用称为 Feistel 的技术,其中将加密的文本块分成两半.使用子密钥对其中一半应 ...
- java 加密_Java版SMS4加密解密算法
特别说明:该专栏文章均来源自微信公众号<大数据实战演练>,欢迎关注! 前言 最近工作中需要实现HBase自定义扩展sms4加密,今天就先来说一下Java版的SMS4加密解密算法的具体实现. ...
- 异或加密的java算法_Java使用异或运算实现简单的加密解密算法实例代码
Java简单的加密解密算法,使用异或运算 实例1: package cn.std.util; import java.nio.charset.Charset; public class DeEnCod ...
最新文章
- 使用 JMeter 进行压力测试
- 【简明表】MATLAB + 矩阵运算
- JavaSE 国际化 简单例子
- 电赛推迟了,回家吗?
- Java 并发工具箱之concurrent包
- appium更新到1.8.2,不能打开运行的解决办法
- 数据装载指定一张表或者多张表直接装载到目标表_10
- python动态规划算法最大k乘积_C语言使用DP动态规划思想解最大K乘积与乘积最大问题...
- bucket sort sample sort 并行_Java 中 Arrays.sort 和 Arrays.parallelSort 哪个更快?
- UI设计还在为聊天界面苦恼?好的案例,打开任通二脉
- 产品要想跑得赢,政策定价来帮您
- linux网络线序MDI,网线RJ45(水晶头)线序排列以及八字口诀
- JSON 标准 ECMA-404
- tableViewCell、collectionViewCell、组头组尾等总结
- 开发一个渐进式Web应用程序(PWA)前都需要了解什么?
- Mybatis源码分析--关联表查询及延迟加载原理(二)
- 3D 渲染的 5 种方式
- 微信小程序装修解决方案ppt_微信小程序开发教程.ppt
- mac下的socket调试工具---sokit
- GD库图片裁剪指定形状解决办法(PHP GD库 海报)
热门文章
- Develop as One | 2021 Google 开发者大会主旨演讲精彩回顾
- MFC与坦克大战系列(奇迹冬瓜)---chapter2(photoshop与TransparentBlt---快速生成背景与透明位图处理)
- CPU的典型故障剖析
- 天气预报属于计算机的哪一项应用,计算机基础知识模拟题答案
- 解决Oracle存储生僻字、oracle生僻字,oracle偏僻字、数据库生僻字,数据库偏僻字
- HDT_2029 Palindromes _easy version
- 华为1+x拓扑图资源
- 真正重要的10个联盟营销指标
- PyQt5 鼠标点击事件(点击响应事件可自定义):鼠标单击、双击、滚轮滚动、释放、移动等
- 用c语言编程牛顿环实验,C语言下迈克耳孙干涉仪测量空气折射率的实验探究.pdf...