Skip to content

api数据加解密

加密逻辑

前端请求中不管是get还是post请求,所有数据都用aes加密成字符串,然后赋值给encrypt_data进行传输,而aes加密的key跟iv则通过rsa进行加密后赋值给SuperAdminxKeySecret放在header中进行传输,前端每次请求都是随机生成aes的key、iv,所以每次请求key、iv的值都是不一样的。

替换自己的rsa公钥私钥

如何获取rsa的公钥私钥(百度一下“rsa密钥在线生成”,需2048位PKCS1格式)

私钥:app\config\superadminx.php中的api_encryptor.rsa_private
公钥:public\admin_react\src\common\config.js中的api_encryptor.rsa_public

接口不想加密

前端跟后端一定要同步开关,不要一个是关、一个是开

后端:app\config\superadminx.php中的api_encryptor.enable
前端:public\admin_react\src\common\config.js中的api_encryptor.enable

admin接口加密,api接口不加密

目前解密中间件是放在全局中间件,如果数据加解密开启的话代表所有api都要解密包括用户端api接口,如果只想后台api加密,而用户api不加密,自行调整下中间配置即可app\config\middleware.php即可