
`sodium_crypto_kx_server_session_keys` 함수의 인자 중 `public_key`와 `shared_secret`를 생성하는 방법은 다음과 같습니다.
1. `public_key` 생성: `sodium_crypto_box_publickeybytes` 함수를 사용하여 공공 키를 생성합니다. 이 함수는 공공 키를 32바이트의 바이너리 데이터로 반환합니다.
2. `shared_secret` 생성: `sodium_crypto_kx_client_session_keys` 함수를 사용하여 클라이언트 세션 키를 생성합니다. 이 함수는 공공 키와 클라이언트의 개인 키를 사용하여 공유 비밀 키를 생성합니다.
예제 코드는 다음과 같습니다.
#hostingforum.kr
python
import sodium
# 클라이언트의 개인 키 생성
client_secret_key = sodium.crypto_secretbox_keygen()
# 클라이언트 세션 키 생성
client_session_keys = sodium.crypto_kx_client_session_keys(client_secret_key)
# 서버의 공공 키 생성
server_public_key = sodium.crypto_box_publickeybytes(client_session_keys[0])
# 서버 세션 키 생성
server_session_keys = sodium.crypto_kx_server_session_keys(server_public_key, client_session_keys[1])
이 예제 코드는 클라이언트의 개인 키를 생성하고 클라이언트 세션 키를 생성한 후, 서버의 공공 키를 생성하고 서버 세션 키를 생성합니다.
2025-06-08 09:21