【PHP8.x】sodium_crypto_kx_publickey関数の使い方

作成日: 更新日:

『sodium_crypto_kx_publickey関数は、鍵交換(Key Exchange)プロトコルで使用する秘密鍵から、それに対応する公開鍵を計算して導出する関数です。この関数は、クライアントとサーバーのような二者間で安全な通信チャネルを確立する際の鍵交換プロセスで利用されます。具体的には、引数に sodium_crypto_kx_secretkey() などで生成された秘密鍵を文字列として渡すと、その秘密鍵にペアとなる公開鍵を文字列として返します。通常、秘密鍵と公開鍵のペアは sodium_crypto_kx_keypair() を使って同時に生成できますが、この関数を用いることで、秘密鍵さえ安全に保管しておけば、必要な時にいつでも公開鍵を再生成できます。これにより、ストレージの節約や、秘密鍵のみを永続化し、公開鍵は都度生成するといった柔軟な鍵管理が可能になります。ここで得られた公開鍵は通信相手と交換され、最終的に sodium_crypto_kx_client_session_keys()sodium_crypto_kx_server_session_keys() 関数で通信を暗号化するための共有セッションキーを計算するために使用されます。』

基本的な使い方

構文(syntax)

1sodium_crypto_kx_publickey(string $secret_key): string

引数(parameters)

string $key_pair

  • string $key_pair: 生成された公開鍵と秘密鍵のペアを指定する文字列

戻り値(return)

string

指定された公開鍵のバイト列を文字列として返します。

【PHP8.x】sodium_crypto_kx_publickey関数の使い方 | いっしー@Webエンジニア