キーを生成する

# mhash_keygen_s2k

(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)

mhash_keygen_s2k — キーを生成する

警告

この関数は PHP 8.1.0 で 非推奨になります。この関数に頼らないことを強く推奨します。

### 説明

#[\Deprecated]
function 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` を返します。

### 変更履歴

バージョン | 説明
--- | ---
8.1.0 | この関数は、推奨されなくなりました。 `hash_*()` 関数 を代わりに使って下さい。

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open