我想在我的Google应用引擎Flask服务器上以加密安全的方式生成字母数字身份验证令牌。我该怎么做呢?

最佳答案

使用PyCrypto,它实现了python随机模块的加密安全版本。Google App Engine将其作为库提供,您可以通过将以下内容添加到app.yaml,将其包含在App Engine项目中:

libraries:
- name: pycrypto
  version: "2.6"

PyCrypto也可以作为python库在GAE之外使用。
然后,您可以使用
from Crypto.Random import random

def generate_auth_token():
    """ Generate a 32-char alnum string. 190 bits of entropy. """
    alnum = ''.join(c for c in map(chr, range(256)) if c.isalnum())
    return ''.join(random.choice(alnum) for _ in range(32))

10-07 22:30