mhash_keygen_s2k
(PHP 4 >= 4.0.4, PHP 5, PHP 7)
mhash_keygen_s2k — キーを生成する
説明
mhash_keygen_s2k
( int $algo
, string $password
, string $salt
, int $length
) : string|false
algo
にユーザーが指定した password
を用いてキーを生成します。
OpenPGP のドキュメント (» RFC 2440) で規定されている、Salted S2k アルゴリズムを使用します。
ユーザーが指定したパスワードは、暗号化アルゴリズムのキーとしては 適切ではないということを覚えておきましょう。ユーザーが選択するのは、 通常はキーボードから入力可能なキーだからです。 これらのパスワードは、文字当たり 6 から 7 ビットのみ(もしくはそれ以下) しか使用していません。ユーザーの指定したキーに対して、 (この関数のような) ある種の変換を行うことを強く推奨します。
パラメータ
algo
- キーの作成に使用するハッシュ ID。
MHASH_ハッシュ名
定数のいずれかを指定します。 password
- ユーザーが指定したパスワード。
salt
- 異なったキーを生成するため、キーを生成するたびに、 十分にランダムな異なる値となる必要があります。キーを調べる際に
salt
を知っている必要があるため、キーを salt に付加するというのは 良い発想です。salt は 8 バイト固定長で、これより少ない場合はゼロで 埋められます。 length
- キーの長さをバイト数で指定します。
返り値
生成されたキーを表す文字列、あるいはエラー時に false
を返します。