3

ssha でパスワードを暗号化したい。それを行う方法はありますか?私はこれを見つけましたが、社にあります。

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

2 に答える 2

2

SSHA はシードを持つ単なる SHA です。標準の Java プラットフォームでは、これを行うための解決策はありません ( https://stackoverflow.com/a/3983415/1976843 )。独自に実装するか、サードパーティのライブラリを使用する必要があります。春のセキュリティにはLdapPasswordEncoderがあることを知っています

于 2016-01-28T15:49:40.327 に答える