Skip to main content

Windows BCrypt 加密安全随机数C扩展,与secrets接口完全一致

Project description

token-gen-win

Windows平台专用高性能C扩展,基于系统原生 BCrypt API 实现加密安全随机数,完整复刻Python标准库 secrets 常用接口,性能优于原生Python实现。

平台限制

仅支持 Windows 系统 Linux / macOS 无系统BCrypt依赖库,无法编译、安装。

功能列表

完全对齐标准库 secrets 接口:

  • token_bytes():生成随机字节串
  • token_hex():生成十六进制随机令牌
  • token_urlsafe():生成URL安全随机令牌
  • randbelow():生成指定上界安全随机整数
  • randbits():生成指定比特位随机数
  • choice():从序列随机选取元素
  • shuffle():原地随机打乱序列

安装方式

pip install token-gen

快速使用

import token_gen

# 生成各类安全令牌
print(token_gen.token_urlsafe())
print(token_gen.token_hex(16))
print(token_gen.token_bytes(32))

# 随机数工具
print(token_gen.randbelow(1000))
print(token_gen.randbits(12))

# 序列操作
lst = [1,2,3,4,5]
print(token_gen.choice(lst))
token_gen.shuffle(lst)
print(lst)

注意事项

  1. 基于栈分配实现,不支持超大长度随机数生成(建议单次长度不超过1024),避免栈溢出
  2. 长期后台运行存在轻微BCrypt句柄残留,短期脚本使用无任何影响

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

secrets_plus-0.1.0.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

secrets_plus-0.1.0-cp313-cp313-win_amd64.whl (9.8 kB view details)

Uploaded CPython 3.13Windows x86-64

File details

Details for the file secrets_plus-0.1.0.tar.gz.

File metadata

  • Download URL: secrets_plus-0.1.0.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for secrets_plus-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fffc154a9b54d5d08f3eaacc0aa88f17b490f5b9b74345ffad762f3a46a3c895
MD5 56bd046dbc8ce8abea06f004a153e22a
BLAKE2b-256 7e12dd9f089ba812daadf92b544500065540adac03a6a11b848c0594560bfbd5

See more details on using hashes here.

File details

Details for the file secrets_plus-0.1.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for secrets_plus-0.1.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 8de7a6407fb2292cb116ef3fa9a28604bca8d999e5881c60658905a0e25ff850
MD5 d7bab8185620f77303cada2b9ed8e6dc
BLAKE2b-256 4096a9f591f227d419978dcfc57e61f056c90ef592a965c6595f5f7a11b38f95

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page