2016-07-23 13 views
1

アカウントとトランザクションを表す銀行アプリケーション(プロダクションのみ)のトークンのように一度だけ使用する必要があります。これは安全かつ適切な方法でしょうか?PHP - トランザクションのトークンの生成

random_bytes()を使用できますか?

トークンが英数字であり、単なる数字ではないことが望ましいでしょう。あなたがPHP 7を使用している場合 は例えば、ストライプトークンは新しいrandom_bytes()機能は、セキュアな乱数/列生成であり、このイオンPHPを行うための推奨される方法ですtok_382r1O2IZ7IgsfwNFATX4xax

+0

さらに、 'bin2hex'よりも短いので、' base64'を使用したかもしれません。 – zerkms

答えて

1

のように見えます。

まだPHP 7に移行していない場合は、GithubのPHP 5の代わりにrandom_compatという代替案があります。

+0

PHP 7を使用しているので、私は 'random_bytes()'に出くわしました。 –

1

関数bin2hexを使用すると、バイトをベース62文字列に変換できます。

$token = bin2hex(random_bytes(16)); //generates a crypto-secure 32 characters long 

最初に文字列を追加するだけで簡単に前に付けることができます。

1

次を使用することができます。あなたのニーズにこれを使用する方法についての

bin2hex(openssl_random_pseudo_bytes(8))

Here are the docksを。

関連する問題