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

作成日: 更新日:

sodium_crypto_box_keypair_from_secretkey_and_publickey関数は、PHPのSodium拡張機能が提供する暗号化関連の関数で、指定された秘密鍵と公開鍵の各情報を結合し、認証付き暗号化(Crypto_box)で使用する新しい鍵ペアを生成する関数です。

Crypto_boxは、インターネット上での安全なメッセージ交換やデータ通信において、メッセージの内容を秘密にしつつ、同時にその内容が改ざんされていないことを保証するために利用される強力な暗号化技術です。この関数を使用することで、すでに生成済みで保持している秘密鍵のデータと公開鍵のデータをそれぞれ引数として渡すことで、それらを一つの「鍵ペア」としてまとめたデータを取得できます。

これにより、例えばプログラムの実行中に、別々に管理されている秘密鍵と公開鍵の情報から、Crypto_boxでの暗号化や復号化操作に必要な鍵ペアをその場で再構築して利用するといった用途に役立ちます。通常、新しい鍵ペアはsodium_crypto_box_keypair関数で生成されますが、この関数は既存の鍵データから鍵ペアを「再構成」する目的で利用されます。暗号化において非常に重要な情報を取り扱うため、秘密鍵の管理には細心の注意が必要です。

基本的な使い方

構文(syntax)

1<?php
2$secretKey = sodium_crypto_box_secretkey();
3$publicKey = sodium_crypto_box_publickey($secretKey);
4
5$keypair = sodium_crypto_box_keypair_from_secretkey_and_publickey($secretKey, $publicKey);

引数(parameters)

string $secret_key, string $public_key

  • string $secret_key: 秘密鍵を指定する文字列。この秘密鍵は、対応する公開鍵とともに、署名や暗号化に使用されます。
  • string $public_key: 公開鍵を指定する文字列。この公開鍵は、対応する秘密鍵とともに、署名や暗号化に使用されます。

戻り値(return)

string

指定された秘密鍵と公開鍵から、暗号化・復号化に使用できる鍵ペアのバイナリ文字列を返します。

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