Hash encrypt512

This commit is contained in:
2022-05-01 12:43:41 +02:00
parent 0b4bb54ba6
commit a21210935b
5 changed files with 34 additions and 39 deletions

View File

@@ -1,30 +1,23 @@
package com.covas.Entity;
import java.nio.charset.StandardCharsets;
import java.time.LocalDate;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.xml.bind.DatatypeConverter;
import com.covas.Classes.Hash;
import org.hibernate.annotations.ColumnDefault;
import org.wildfly.security.password.interfaces.SimpleDigestPassword;
import io.quarkus.elytron.security.common.BcryptUtil;
import io.quarkus.hibernate.orm.panache.PanacheEntity;
import io.quarkus.security.jpa.UserDefinition;
import io.quarkus.security.jpa.Username;
import io.quarkus.security.jpa.Password;
import io.quarkus.security.jpa.PasswordProvider;
import io.quarkus.security.jpa.PasswordType;
import io.quarkus.security.jpa.Roles;
@Entity
@Table(name = "users")
@UserDefinition
public class UsersEntity extends PanacheEntity {
@Username
@Column(nullable = false, unique = true)
public String pseudo;
@Column(nullable = false, unique = true)
@@ -37,10 +30,8 @@ public class UsersEntity extends PanacheEntity {
public LocalDate birth;
@ColumnDefault("false")
public Boolean status;
@Password(value = PasswordType.CUSTOM, provider = CustomPasswordProvider.class)
@Column(nullable = false)
public String password;
@Roles
public String roles;
public static UsersEntity findByPseudo(String pseudo){
@@ -55,18 +46,8 @@ public class UsersEntity extends PanacheEntity {
users.firstName = firstName;
users.birth = birth;
users.status = false;
users.password = BcryptUtil.bcryptHash(password);
users.password = Hash.encryptSHA512(new String(password.getBytes(), StandardCharsets.UTF_8));
users.roles = roles;
users.persist();
}
}
public class CustomPasswordProvider implements PasswordProvider {
@Override
public org.wildfly.security.password.Password getPassword(String pass) {
byte[] digest = DatatypeConverter.parseHexBinary(pass);
return SimpleDigestPassword.createRaw(SimpleDigestPassword.ALGORITHM_SIMPLE_DIGEST_SHA_256, digest);
}
}
}
}