第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

SHA512 的函數(shù)對(duì)不同的輸入返回相同的結(jié)果

SHA512 的函數(shù)對(duì)不同的輸入返回相同的結(jié)果

HUX布斯 2022-10-07 16:20:13
我正在嘗試實(shí)現(xiàn)一個(gè)登錄屏幕,您的所有輸入都由 SHA 512 加密,稍后對(duì)該功能進(jìn)行一些小調(diào)整(反轉(zhuǎn)字符串,擴(kuò)展長度)。對(duì)于我的用戶名,加密效果很好,但另一方面,無論我輸入什么,我的密碼都會(huì)給我相同的結(jié)果。 public static String password_encrypt(String input) {    try {        String password_ = input;        int iterations = 250000;        String salt = "salt";        SecretKeyFactory factory = SecretKeyFactory.getInstance("PBKDF2WithHmacSHA512");        char[] passwordChars = password_.toCharArray();        KeySpec spec = new PBEKeySpec(passwordChars, salt.getBytes(), iterations, 256);        SecretKey key = factory.generateSecret(spec);        byte[] passwordHash = key.getEncoded();        SecretKey secret = new SecretKeySpec(key.getEncoded(), "AES");        input = secret.toString();    } catch (NoSuchAlgorithmException e) {        // TODO Auto-generated catch block        e.printStackTrace();    } catch (InvalidKeySpecException e) {        // TODO Auto-generated catch block        e.printStackTrace();    }    return input;}然后我檢查一個(gè)數(shù)組是否有一個(gè)可以放置信息的地方,如果有一個(gè)存儲(chǔ)在那里。 for (int i = 0; i < username.length; i++) {        System.out.println("username " + username[i]);        if (name.equals(username[i])) {            System.out.println("Dieser Username ist bereits vergeben!");            break;        }        if ("empty".equals(username[i]) || null == username[i]) {            username[i] = name;            stelle = i;            System.out.println("Username wurde vergeben");            break;        }         else if (name.equals(username[i])) {            System.out.println("1234");        }    }數(shù)組 username[] 和 password[] 由我的構(gòu)造函數(shù)填充為“空”或 null。我的主要問題是:無論密碼輸入是什么,我都會(huì)得到相同的密鑰:javax.crypto.spec.SecretKeySpec@fffea4cc如果我只是比較字符串以確定它是否正確,這會(huì)給我?guī)砗艽蟮陌踩┒?.....
查看完整描述

1 回答

?
達(dá)令說

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超6個(gè)贊

提供的代碼有幾個(gè)問題,首先它使用了靜態(tài)弱鹽。雖然有比 PBKDF2(? Argon2、BCrypt、SCrypt)更好的密碼保護(hù)算法,但如果實(shí)施正確,它可以使用。在那里,我想推薦著名的庫Defuse,它使密碼哈希和驗(yàn)證變得輕而易舉,它可以作為單個(gè)類文件包含在內(nèi)。

順便說一句,散列密碼無法反轉(zhuǎn),散列與加密不同。


查看完整回答
反對(duì) 回復(fù) 2022-10-07
  • 1 回答
  • 0 關(guān)注
  • 132 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)