簡體   English   中英

如何反轉此方法的輸出?

[英]How can I reverse the output from this method?

如何從此方法反轉此輸出? (這樣我就可以看到純文本了)我看不到正在使用任何鍵。

    public String encrypt(String plaintext) {
    MessageDigest md = null;
    try {
        md = MessageDigest.getInstance("SHA");
    } catch (NoSuchAlgorithmException e) {
    }
    try {
        md.update(plaintext.getBytes("UTF-8"));
    } catch (UnsupportedEncodingException e) {
    }
    byte raw[] = md.digest();
    String hash = (new BASE64Encoder()).encode(raw);
    return hash;
}

你不能 SHA系列是哈希算法; 也就是說,它們是產生哈希或消息摘要的單向加密算法。 沒有回頭路了。 散列是來自任何長度的消息的固定長度結果,其設計目標是要找到兩個產生相同散列值的消息在計算上是不可行的。 因此,就所有意圖而言,哈希可以看作是標識消息。 但是您不能返回並從中檢索消息。

哈希是無密鑰的。 可以使用它們構建密鑰構造,例如消息身份驗證代碼或MAC。

該方法實際上命名不正確-這本身不是“加密”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM