Class OpenBSDBCrypt
- java.lang.Object
-
- org.bouncycastle.crypto.generators.OpenBSDBCrypt
-
public class OpenBSDBCrypt extends java.lang.ObjectPassword hashing scheme BCrypt, designed by Niels Provos and David Mazières, using the String format and the Base64 encoding of the reference implementation on OpenBSD
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static booleancheckPassword(java.lang.String bcryptString, byte[] password)Checks if a password corresponds to a 60 character Bcrypt Stringstatic booleancheckPassword(java.lang.String bcryptString, char[] password)Checks if a password corresponds to a 60 character Bcrypt Stringstatic java.lang.Stringgenerate(byte[] password, byte[] salt, int cost)Creates a 60 character Bcrypt String, including version, cost factor, salt and hash, separated by '$' using version '2y'.static java.lang.Stringgenerate(char[] password, byte[] salt, int cost)Creates a 60 character Bcrypt String, including version, cost factor, salt and hash, separated by '$' using version '2y'.static java.lang.Stringgenerate(java.lang.String version, byte[] password, byte[] salt, int cost)Creates a 60 character Bcrypt String, including version, cost factor, salt and hash, separated by '$'static java.lang.Stringgenerate(java.lang.String version, char[] password, byte[] salt, int cost)Creates a 60 character Bcrypt String, including version, cost factor, salt and hash, separated by '$'
-
-
-
Method Detail
-
generate
public static java.lang.String generate(char[] password, byte[] salt, int cost)Creates a 60 character Bcrypt String, including version, cost factor, salt and hash, separated by '$' using version '2y'.- Parameters:
cost- the cost factor, treated as an exponent of 2salt- a 16 byte saltpassword- the password- Returns:
- a 60 character Bcrypt String
-
generate
public static java.lang.String generate(byte[] password, byte[] salt, int cost)Creates a 60 character Bcrypt String, including version, cost factor, salt and hash, separated by '$' using version '2y'.- Parameters:
cost- the cost factor, treated as an exponent of 2salt- a 16 byte saltpassword- the password- Returns:
- a 60 character Bcrypt String
-
generate
public static java.lang.String generate(java.lang.String version, char[] password, byte[] salt, int cost)Creates a 60 character Bcrypt String, including version, cost factor, salt and hash, separated by '$'- Parameters:
version- the version, may be 2b, 2y or 2a. (2a is not backwards compatible.)cost- the cost factor, treated as an exponent of 2salt- a 16 byte saltpassword- the password- Returns:
- a 60 character Bcrypt String
-
generate
public static java.lang.String generate(java.lang.String version, byte[] password, byte[] salt, int cost)Creates a 60 character Bcrypt String, including version, cost factor, salt and hash, separated by '$'- Parameters:
version- the version, may be 2b, 2y or 2a. (2a is not backwards compatible.)cost- the cost factor, treated as an exponent of 2salt- a 16 byte saltpassword- the password already encoded as a byte array.- Returns:
- a 60 character Bcrypt String
-
checkPassword
public static boolean checkPassword(java.lang.String bcryptString, char[] password)Checks if a password corresponds to a 60 character Bcrypt String- Parameters:
bcryptString- a 60 character Bcrypt String, including version, cost factor, salt and hash, separated by '$'password- the password as an array of chars- Returns:
- true if the password corresponds to the Bcrypt String, otherwise false
-
checkPassword
public static boolean checkPassword(java.lang.String bcryptString, byte[] password)Checks if a password corresponds to a 60 character Bcrypt String- Parameters:
bcryptString- a 60 character Bcrypt String, including version, cost factor, salt and hash, separated by '$'password- the password as an array of bytes- Returns:
- true if the password corresponds to the Bcrypt String, otherwise false
-
-