javascript - 如何将 SHA-256 Java 转换为 JavaScript(带有 NPM 的 IONIC)?
问题描述
我在JAVA
. 我需要像.I 一样转换 。我尝试使用and 。但是,我无法确定解决方案。JavaScript
IONIC Framework
IONIC App
NPM "crypto-js"
"js-sha256"
String generatedPassword = null;
String **SALTKEY** = 'mysecret';
String inputPassword = 'mypassword';
try {
MessageDigest md = MessageDigest.getInstance("SHA-256");
md.update(SALTKEY.getBytes());
byte[] bytes = md.digest(inputPassword.getBytes());
StringBuilder sb = new StringBuilder();
for (int i = 0; i < bytes.length; i++) {
sb.append(Integer.toString((bytes[i] & 0xff) + 0x100, 16).substring(1));
}
generatedPassword = sb.toString();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
return generatedPassword;
解决方案
您可以使用crypto-js
检查这个工作示例
或者
使用 npm安装 npm i js-sha256
https://www.npmjs.com/package/js-sha256
import { sha256, sha224 } from 'js-sha256';
然后
sha256('Your Message to hash');
sha224('Your Message to hash');
var yourHash = sha256.create();
yourHash.update('Message to hash');
yourHash.hex();
var yourHash2 = sha256.update('Message to hash');
yourHash2.update('Message2 to hash');
yourHash2.array();
使用密钥
var hash = sha256.hmac.create('key');
hash.update('Message to hash');
hash.hex();
推荐阅读
- unity3d - 如何在 github 上备份一个统一项目
- python - datetime.now() 和 db 中的 datetimefield 之间的比较和区别
- jquery - 如何增加使用 jQuery 创建的最后一个跨度的值?
- ruby - 将 Rspec 升级到 Rspec 2.99,希望在前/后挂钩中使用 let 连接变量
- google-apps-script - 将行从一个电子表格复制到另一个电子表格时如何阻止添加额外的行
- javascript - 如何动态向图表添加数据
- javascript - 为什么在使用分号时这个 JavaScript 不被解释为代码块?
- jenkins - JobsDSL 和 Jenkins 版本
- javascript - 使用 Jquery animate 让一个按钮将一个框移动到下一个角落
- apache - IfDefine 和 RewriteBase 不能很好地协同工作