Package de.mhus.lib.core
Class MPassword
- java.lang.Object
-
- de.mhus.lib.core.MPassword
-
public class MPassword extends Object
Decode / Encode passwords. Attention: This do not give security in any way. It's only a way to deny reading the password from the screen. No algorithm will give you security in this case. Only one way algorithm is more secure. The password is not allowed to start with a ":". Only the encoded password will start with a ":" followed by the algorithm version and the encoded password. A - old X - not accepted - dummy password B: - rot13 C: - Key Id from MVault ZMD5: - md5 encoded with salt- Author:
- mhu
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classMPassword.METHOD
-
Field Summary
Fields Modifier and Type Field Description static StringPREFIXstatic StringPREFIX_DUMMYstatic StringPREFIX_HASH_MD5static StringPREFIX_ROT13static StringPREFIX_RSAstatic StringPREFIX_SPECIAL1
-
Constructor Summary
Constructors Constructor Description MPassword()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static Stringdecode(String in)Decode a encoded password.static Stringencode(MPassword.METHOD method, SecureString in, SecureString secret)static Stringencode(MPassword.METHOD method, SecureString in, String secret)static Stringencode(MPassword.METHOD method, String in)static Stringencode(MPassword.METHOD method, String in, SecureString secret)static Stringencode(MPassword.METHOD method, String in, String secret)static Stringencode(String in)Encode a password string be aware of special characters like umlaute.static StringencodePasswordMD5(String real)static booleanequals(String storedPass, String givenPass)Check if the passwords are equals.static StringforceEncodePasswordMD5(String real)static Stringgenerate(int length, char[] symbols, int symbolLength)static Stringgenerate(int min, int max, boolean upper, boolean numbers, boolean specials)static Stringgenerate(int length, String symbols)static booleanisEncoded(String in)static voidmain(String[] args)static Stringsha1(String... input)static booleanvalidatePasswordMD5(String real, String md5)
-
-
-
Field Detail
-
PREFIX_DUMMY
public static final String PREFIX_DUMMY
- See Also:
- Constant Field Values
-
PREFIX_ROT13
public static final String PREFIX_ROT13
- See Also:
- Constant Field Values
-
PREFIX_RSA
public static final String PREFIX_RSA
- See Also:
- Constant Field Values
-
PREFIX_HASH_MD5
public static final String PREFIX_HASH_MD5
- See Also:
- Constant Field Values
-
PREFIX_SPECIAL1
public static final String PREFIX_SPECIAL1
- See Also:
- Constant Field Values
-
PREFIX
public static final String PREFIX
- See Also:
- Constant Field Values
-
-
Method Detail
-
encode
public static String encode(String in)
Encode a password string be aware of special characters like umlaute. This can cause problems.- Parameters:
in-- Returns:
- encoded string
-
encode
public static String encode(MPassword.METHOD method, SecureString in, String secret)
-
encode
public static String encode(MPassword.METHOD method, SecureString in, SecureString secret)
-
encode
public static String encode(MPassword.METHOD method, String in, SecureString secret)
-
encode
public static String encode(MPassword.METHOD method, String in, String secret)
-
encode
public static String encode(MPassword.METHOD method, String in)
-
isEncoded
public static boolean isEncoded(String in)
-
decode
public static String decode(String in)
Decode a encoded password.- Parameters:
in-- Returns:
- decoded string
-
sha1
public static String sha1(String... input) throws NoSuchAlgorithmException
- Throws:
NoSuchAlgorithmException
-
main
public static void main(String[] args)
-
generate
public static String generate(int min, int max, boolean upper, boolean numbers, boolean specials)
-
generate
public static String generate(int length, char[] symbols, int symbolLength)
-
-