[英]Sha256 with byte[32] using CryptoJS?
使用CryptoJS時,當我需要32個字節時,我得到了一個字節[8],此代碼正好是:
CryptoJS.SHA256(word);
如何獲得32位?
這讓人有些費解,但是我對CryptoJS的經驗不足,所以也許有一種解決方案需要更少的步驟:
const CryptoJS = require('crypto-js');
let hash = CryptoJS.SHA256('hello world');
let buffer = Buffer.from(hash.toString(CryptoJS.enc.Hex), 'hex');
let array = new Uint8Array(buffer);
如果你需要一個合適的JS數組(一個用於其Array.isArray
返回true
),你可以這樣做:
let array = Array.from( new Uint8Array(buffer) );
解決方案是我的情況:
let utf16le = CryptoJS.enc.Utf16LE.parse(word);
let utf16Sha256 = CryptoJS.SHA256(utf16le);
return utf16Sha256.toString(CryptoJS.enc.Hex);
多虧別人的問題
CryptoJS.SHA256(word).toString()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.