diff options
Diffstat (limited to 'src/main/java')
-rw-r--r-- | src/main/java/net/elytrium/limboauth/Settings.java | 1 | ||||
-rw-r--r-- | src/main/java/net/elytrium/limboauth/migration/MigrationHash.java | 4 |
2 files changed, 5 insertions, 0 deletions
diff --git a/src/main/java/net/elytrium/limboauth/Settings.java b/src/main/java/net/elytrium/limboauth/Settings.java index 15e7db0..96687ca 100644 --- a/src/main/java/net/elytrium/limboauth/Settings.java +++ b/src/main/java/net/elytrium/limboauth/Settings.java @@ -122,6 +122,7 @@ public class Settings extends YamlConfig { "SHA256_NO_SALT - SHA256(password) that looks like $SHA$hash (NexAuth)", "SHA512_NO_SALT - SHA512(password) that looks like $SHA$hash (NexAuth)", "SHA512_P_REVERSED_HASH - SHA512(password) that looks like $SHA$hash$salt (nLogin)", + "SHA512_NLOGIN - SHA512(SHA512(password) + salt) that looks like $SHA$hash$salt (nLogin)", }) public MigrationHash MIGRATION_HASH = MigrationHash.AUTHME; @Comment("Available dimensions: OVERWORLD, NETHER, THE_END") diff --git a/src/main/java/net/elytrium/limboauth/migration/MigrationHash.java b/src/main/java/net/elytrium/limboauth/migration/MigrationHash.java index caa4e5f..31949b0 100644 --- a/src/main/java/net/elytrium/limboauth/migration/MigrationHash.java +++ b/src/main/java/net/elytrium/limboauth/migration/MigrationHash.java @@ -73,6 +73,10 @@ public enum MigrationHash { SHA512_P_REVERSED_HASH((hash, password) -> { String[] args = hash.split("\\$"); // $SHA$hash$salt return args.length == 4 && args[2].equals(getDigest(password + args[3], "SHA-512")); + }), + SHA512_NLOGIN((hash, password) -> { + String[] args = hash.split("\\$"); // $SHA$hash$salt + return args.length == 4 && args[2].equals(getDigest(getDigest(password, "SHA-512") + args[3], "SHA-512")); }); private final MigrationHashVerifier verifier; |