#!/usr/bin/env python3 # -*- coding: utf-8 -*- from common import TassApi import base64 # 将原数据按密评要求加密辅助类 # 启动时检查相关表,如果sign为空,按规则将关键字段进行加密,将记录进行HMAC运算 # 调用密码服务器[敏感信息数据加密]接口 def enc_data(data: any)->str: return TassApi.TransparentEnc(str(data)) # 调用密码服务器[敏感信息数据解密]接口 def dec_data(data: any)->str: return TassApi.TransparentDec(str(data)) # 调用密码服务器[计算HMAC]接口 def sign_data(data: any)->str: return TassApi.Hmac(str(data)) # 对含有中文的数据进行BASE64处理 def base64_data(val: str): data = val if val is not None else '' return str(base64.b64encode(data.encode("utf-8")), "utf-8") # 比较字段合并字符串是否和MAC值匹配上,调用密码服务器[验证HMAC]接口 def hmac_verify(sign_data: str, sign_hmac: str) -> bool: return TassApi.HmacVerify(sign_data, sign_hmac)