PHP - 为事务生成令牌

时间:2016-07-23 22:19:54

标签: php token banking

我需要为银行应用程序(仅限生产)生成一次性使用和唯一的Stripe令牌,以表示帐户和交易,这将是一种安全且适当的方法吗?

我可以使用random_bytes()吗?

如果令牌是字母数字而不仅仅是数字,那将是更好的选择。 例如,条带标记看起来像tok_382r1O2IZ7IgsfwNFATX4xax

3 个答案:

答案 0 :(得分:1)

如果您使用的是PHP 7,则新的random_bytes()函数是一个安全的随机数/字符串生成器,是推荐使用PHP的方法。

如果您还没有迁移到PHP 7,那么Github上的PHP 5有一个兼容的替代方案random_compat

答案 1 :(得分:1)

您可以使用函数bin2hex将字节转换为基数为62的字符串。

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

您只需在开头附加一个字符串即可轻松为此添加前缀。

答案 2 :(得分:1)

您可以使用以下内容:

bin2hex(openssl_random_pseudo_bytes(8))

Here are the docks如何根据您的需要使用它。