这是我的java代码,使用密钥及其正常工作加密String值,但我不知道如何将这些ecrypted值解密为My original values ..?

package com.password;

import java.security.InvalidKeyException;

import java.security.Key;

import java.security.NoSuchAlgorithmException;

import java.security.SignatureException;

import java.util.Formatter;

import javax.crypto.Mac;

import javax.crypto.spec.SecretKeySpec;

public class Sha256 {

//Main Method that have the String values and key

public static void main(String s[]) {

try {

String str ="HelloWorld"; //String Values

String key = "test@12345"; //Secret Key

String encry = hashMac(str, key);

//call the hashMac Method that encrypt the String using key and return the encrypted values....

System.out.println("Encryption : " + encry);

} catch (SignatureException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

//hashMac Method that encrypt the data and convert into hex values...

public static String hashMac(String text, String secretKey)

throws SignatureException {

try {

Key sk = new SecretKeySpec(secretKey.getBytes(), HASH_ALGORITHM);

Mac mac = Mac.getInstance(sk.getAlgorithm());

mac.init(sk);

final byte[] hmac = mac.doFinal(text.getBytes());

return toHexString(hmac);//call toHexString Methods....

} catch (NoSuchAlgorithmException e1) {

// throw an exception or pick a different encryption method

throw new SignatureException(

"error building signature, no such algorithm in device "

+ HASH_ALGORITHM);

} catch (InvalidKeyException e) {

throw new SignatureException(

"error building signature, invalid key " + HASH_ALGORITHM);

}

}

private static final String HASH_ALGORITHM = "HmacSHA256";

//toHexString Method...

public static String toHexString(byte[] bytes) {

StringBuilder sb = new StringBuilder(bytes.length * 2);

Formatter formatter = new Formatter(sb);

for (byte b : bytes) {

formatter.format("%02x", b);

}

return sb.toString();

}

}

如何解密加密字符串....?

android密码sha256解密,如何使用密钥字符串解密SHA-256加密字符串?相关推荐

  1. java des 加密 字符串_Java使用DES加密字符串

    Java使用DES加密字符串 编号:A3GS_TJ20100108004 描述: 本文讲述了如何在Java下使用DES加密字符串. 例子: NO 技术实现: 导入包: import java.io.U ...

  2. android密码sha256解密,使用password_hash和SHA256加密和解密

    我有两个脚本,一个是verify.php和一个register.php.使用password_hash和SHA256加密和解密 在我的注册页面,我用这个.. $salt = hash('sha256' ...

  3. 图片文件,图片文件流和BASE64加密字符串之间的转换,以及图片的BASE64加密字符串再jsp上如何显示

    *本事例主要讲了如下几点:  * 1:将图片转换为BASE64加密字符串.  * 2:将图片流转换为BASE64加密字符串.  * 3:将BASE64加密字符串转换为图片. * 4:在jsp文件中以引 ...

  4. 《图解密码技术》笔记3:对称密码(共享密钥密码)-用相同的密钥进行加密和解密

    目录 3.1 炒鸡蛋与对称密码 3.2 本章学习主要内容 3.3 从文字密码到比特序列密码 3.3.1 编码 3.3.2 XOR(异或) 3.4 一次性密码本–绝对不会被破译的密码 3.4.4 一次性 ...

  5. java sha256 解密_如何解密SHA-256加密字符串?

    如何解密SHA-256加密字符串? 我有一个使用以下方法编码的字符串,有没有办法将此字符串解码回原始值?谢谢.public synchronized String encode(String pass ...

  6. Android开发之银联工作密钥,主密钥,传输密钥(加解密图文展示)

    一.密钥说明 主密钥和工作密钥都有明文,密文的概念,如果其密钥中带有校验值,表示其密钥是密文,反之是明文!第二小节会说明校验值的作用.且密钥的密文以及明文都是由服务器下发,服务器开发人员定好每种密钥的 ...

  7. Android安全开发之浅谈密钥硬编码

    Android安全开发之浅谈密钥硬编码 作者:伊樵.呆狐@阿里聚安全 1 简介 在阿里聚安全的漏洞扫描器中和人工APP安全审计中,经常发现有开发者将密钥硬编码在Java代码.文件中,这样做会引起很大风 ...

  8. 字符串加密与解密_一种可以用在程序加密的功能

    本篇博客会有两篇代码,均为C# 编写而成.其中一篇为先行的各种加密技术如何使用(转载出处会在文末注明):另一篇为利用以上加密技术做出的一个类库,可以使程序捆绑在运行此程序的硬件并限定使用时间,十分高效 ...

  9. Java带KeyGenerator(密钥生成器)生成AES加密,c++里面AES解密

    之前文章Java里面生成AES加密,c++里面AES解密介绍了Java代码加密,c++代码解密.本文介绍:Java带KeyGenerator(密钥生成器)生成AES加密,c++里面AES解密 一.Ja ...

最新文章

  1. 阿帕奇搭建文件服务器,关于LINUX文件服务器简单搭建---NFS与APACHE服务
  2. asp.net用Zxing库实现条形码输出
  3. java基础之集合类
  4. easy_install 安装
  5. 第三次学JAVA再学不好就吃翔(part1)--初识JAVA
  6. C语言代码规范(八)使用const修饰值不允许改变的变量
  7. [刨根问底] 五分钟搞懂组合评价模型—模糊Borda (以2021 年大学生数模国赛C题为例)
  8. 成为大数据工程师需要哪些技能?(一文秒懂大数据)
  9. Python中的lambda表达式与filter函数
  10. sublime3打开多个窗口
  11. DataBindings的用法
  12. 各操作系统存储设备表示方法
  13. AD中按Y使器件竖直方向上镜像翻转
  14. macosx安装之旅(1)-硬盘安装
  15. fota mcsync洛达检测_详细解析最新推出的顶配版二代悦虎主板洛达1562M数字音频长续航款...
  16. 使用Ajax.dll前台调用后台方法及错误示例
  17. Win10 全屏截图快捷键
  18. 14.css中的定位的参照物
  19. c语言实现乘法口诀表的打印函数
  20. mysql 为表添加索引

热门文章

  1. Vue框架是什么,有什么特点,怎么用
  2. JVM GC原理解析
  3. 解开神秘的机器人大脑程序
  4. Ehcache 1.5.0 User Guide - Cache Eviction Algorithms (缓存移出算法)
  5. 查看端口占用情况可以使用 lsof 和 netstat 命令
  6. 西安哪个学校有五年一贯制的计算机学校,五年一贯制
  7. 关于 ue4 LogScript: Warning: Attempted to access via property, but is pending kill 问题
  8. 协变量偏移与领域偏移
  9. java string的头文件_头文件 string.h cstring string 区别
  10. 【荐读】汇报演讲紧张怎么办?汇报演讲技巧分享