目录
1、安装依赖
pip install flask
pip install pycryptodome
2、实现代码
import random
import string
import time
import base64
from functools import wraps
from flask import Flask, jsonify, session, request, make_response, g
from cryptography.hazmat.primitives.ciphers.aead import AESGCM
SECRET_KEY = "DnKRYZbvVzdhPlF01rtcxmi5Cj36AbCd"
app = Flask(__name__)
app.config["SECRET_KEY"] = SECRET_KEY
# ========================= 数据加密解密方法 ==============================================
def encrypt_aes_gcm(key, data, nonce_len=32):
"""
AES-GCM加密
:param key: 密钥。16, 24 or 32字符长度的字符串
:param data: 待加密字符串
:param nonce_len: 随机字符串长度
"""
key = key.encode('utf-8')
if not isinstance(data, str):
data = str(data)
data = data.encode('utf-8')
# 生成32位长度的随机值,保证相同数据加密后得到不同的加密数据
nonce = ''.join(random.sample(string.ascii_letter