3
我正在嘗試使用Java使用HMAC-SHA256對字符串進行編碼。編碼字符串需要匹配由Python使用hmac.new(mySecret, myPolicy, hashlib.sha256).hexdigest()
生成的另一組編碼字符串。我曾嘗試可以提供與HMAC-SHA256相同的輸出的Java方法,其格式爲HMAC-SHA256
Mac sha256_HMAC = Mac.getInstance("HmacSHA256");
SecretKeySpec secretKey = new SecretKeySpec(secret.getBytes(), "HmacSHA256");
sha256_HMAC.init(secretKey);
byte[] hash = sha256_HMAC.doFinal(policy.getBytes());
byte[] hexB = new Hex().encode(hash);
String check = Hex.encodeHexString(hash);
String sha256 = DigestUtils.sha256Hex(secret.getBytes());
後,我把它們打印出來,哈希,HEXB,檢查和SHA256沒有提供相同的結果下面的Python加密方法
hmac.new(mySecret, myPolicy, hashlib.sha256).hexdigest()
所以,我試着找對於庫或類似於上述Python函數的東西。有人可以幫我嗎?
太感謝你了,解決了這個問題。這是我愚蠢的錯誤,不正確的祕密輸入。 – Takumi