
Java의 `crypt_gensalt` 함수는 `java.security.SecureRandom` 클래스를 사용하여 salt를 생성합니다. 따라서 salt의 길이를 변경하려면 `SecureRandom` 클래스의 `getInstance` 메소드의 인자로 사용할 수 있는 알고리즘을 변경해야 합니다.
기본적으로 `SecureRandom` 클래스는 `SHA1PRNG` 알고리즘을 사용합니다. 이 알고리즘은 salt의 길이를 20바이트로 고정합니다.
salt의 길이를 변경하려면 다른 알고리즘을 사용해야 합니다. 예를 들어, `SHA256PRNG` 알고리즘은 salt의 길이를 32바이트로 고정합니다.
`SecureRandom` 클래스의 인스턴스를 생성할 때 알고리즘을 지정할 수 있습니다. 예를 들어, 다음 코드는 `SHA256PRNG` 알고리즘을 사용하여 salt를 생성합니다.
#hostingforum.kr
java
SecureRandom secureRandom = SecureRandom.getInstance("SHA256PRNG");
byte[] salt = new byte[32];
secureRandom.nextBytes(salt);
이러한 방식으로 salt의 길이를 변경할 수 있습니다.
2025-03-05 04:05