[英]Message Digest java
我以前不知道MessageDigest
類。 我現在試圖理解一段代碼,文檔對我沒有太大幫助。
MessageDigest digest = Crypto.sha256();
digest.update(last.getSign());
byte[] SignHash = digest.digest(publicKey);
根據java文檔:
“更新”使用給定的
byte[]
更新此MessageDigest
“摘要”執行最終更新,然后計算並返回此MessageDigest的最終哈希值。
問題1:“使用給定的byte []更新”的真正含義是什么?
問題2:“ digest”執行的最終更新是什么?
上面的意思是SignHash=sha256(last.getSign()
concat(一些公鑰填充))嗎?
將MessageDigest類視為更新,實際上是在向內部緩沖區追加更多字節。 現在,一旦完成,就可以使用digest方法創建附加到緩沖區的所有字節的哈希。
命名可能看起來有些奇怪(我當然認為“ appendBytes”和“ createHash” /“ createDigest”會更好),但請考慮一下MessageDigest實例,該實例將使用更多字節更新內部狀態,直到最終生成消化 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.