卡密生成器Python
时间: 2024-10-29 08:19:56 浏览: 96
卡密生成器在Python中通常用于创建API密钥、令牌或其他形式的安全凭证。这类工具可以简化加密过程,比如生成JWT(JSON Web Tokens)用于身份验证,或者生成OAuth访问令牌。Python中有多种库可以帮助实现这个功能,例如`PyJWT`用于处理JWT,`flask-oauthlib`或`requests_oauthlib`可用于OAuth2授权。
以下是一个简单的JWT密钥生成示例,使用`PyJWT`库:
```python
from jwt import JWT, algorithms, encode
# 定义密钥对
private_key = algorithms.RSA.generate(2048)
public_key = private_key.publickey()
# 设置JWT配置
jwt_algorithm = 'RS256'
issuer = 'your_app_name'
# 用户信息(这里仅作为示例)
payload = {
'sub': 'user123',
'iat': datetime.utcnow(),
'exp': datetime.utcnow() + timedelta(hours=1),
}
def create_jwt_token(payload):
return encode(payload, private_key, algorithm=jwt_algorithm)
# 使用公钥验证JWT
def verify_jwt_token(token, public_key):
try:
decoded_token = JWT().decode(token, public_key, algorithms=[jwt_algorithm])
return decoded_token
except Exception as e:
print(f"Invalid token: {e}")
```
阅读全文