Как я могу расшифровать пароль, который находится в jboss login-config.xml? - PullRequest
4 голосов
/ 16 ноября 2011

Существует ли API, предоставляемый jboss, который я могу использовать для доступа к login-config.xml и расшифровки зашифрованных паролей?

1 Ответ

5 голосов
/ 20 мая 2015

«jaas is the way» - ключ по умолчанию, по крайней мере, для более старых версий jboss (4.x). Вы можете попробовать что-то вроде этого, чтобы декодировать закодированные байты.

    public static String decode( String secret ) {
    String retString = "";
    try {
        byte[] kbytes = "jaas is the way".getBytes();
        SecretKeySpec key = new SecretKeySpec( kbytes, "Blowfish" );

        BigInteger n = new BigInteger( secret, 16 );
        byte[] encoding = n.toByteArray();

        Cipher cipher = Cipher.getInstance( "Blowfish" );
        cipher.init( Cipher.DECRYPT_MODE, key );
        byte[] decode = cipher.doFinal( encoding );
        retString = new String( decode );
    } catch (Exception ignore) {
        ignore.printStackTrace();
    }

    return retString;
}

Дополнительная информация

https://docs.jboss.org/jbossas/javadoc/4.0.2/org/jboss/resource/security/SecureIdentityLoginModule.java.html

http://www.docjar.com/html/api/org/jboss/resource/security/SecureIdentityLoginModule.java.html

...