
`sodium_crypto_pwhash_scryptsalsa208sha256_str` 함수의 매개변수에 대해 설명드리겠습니다.
- `salt`: 해시 알고리즘의 salt 값을 생성해야 합니다. 이 salt 값을 16바이트(128비트)의 랜덤 데이터로 생성해야 합니다. 예를 들어, `sodium_randombytes_buf` 함수를 사용하여 16바이트의 랜덤 데이터를 생성할 수 있습니다.
- `opslimit`: 해시 알고리즘의 연산 제한을 설정해야 합니다. 이 연산 제한은 해시 알고리즘의 연산 횟수를 제한하는 데 사용됩니다. 기본적으로 `opslimit` 값은 6으로 설정되어 있습니다. 이 값을 1에서 31까지 설정할 수 있습니다.
- `memlimit`: 해시 알고리즘의 메모리 제한을 설정해야 합니다. 이 메모리 제한은 해시 알고리즘의 메모리 사용량을 제한하는 데 사용됩니다. 기본적으로 `memlimit` 값은 16MB로 설정되어 있습니다. 이 값을 1MB에서 1GB까지 설정할 수 있습니다.
해시 알고리즘의 기본 설정에서 `salt` 값을 생성하는 방법은 다음과 같습니다.
#hostingforum.kr
c
uint8_t salt[16];
sodium_randombytes_buf(salt, 16);
해시 알고리즘의 기본 설정에서 `opslimit` 값을 설정하는 방법은 다음과 같습니다.
#hostingforum.kr
c
uint32_t opslimit = 6;
해시 알고리즘의 기본 설정에서 `memlimit` 값을 설정하는 방법은 다음과 같습니다.
#hostingforum.kr
c
uint64_t memlimit = 16 * 1024 * 1024;
해시 알고리즘의 기본 설정에서 `sodium_crypto_pwhash_scryptsalsa208sha256_str` 함수를 호출하는 방법은 다음과 같습니다.
#hostingforum.kr
c
char hash[32];
sodium_crypto_pwhash_scryptsalsa208sha256_str(hash, 32, salt, 16, opslimit, memlimit, "password");
2025-07-07 01:21