要进行数据加密,在服务端,您需要进行相关配置生成密钥;在客户端,根据不同的操作平台,完成相应的配置。
服务端配置
登录 mPaaS 控制台,在左侧导航栏,点击 移动网关 菜单。
选择 网关管理 选项卡,点击右侧的 功能开关 标签页。
将 数据加密 状态切换至 开。
在弹出的 配置加密算法 窗口,完成以下配置:
加密算法:支持 ECC、RSA 和国密(SM2)。
密钥内容:
当加密算法为 ECC 或国密时,填写私钥内容。
当加密算法为 RSA 时,分别填写公私钥内容。
有关加密算法的密钥生成方法,参见 密钥生成方法。
客户端配置
Android 配置
在 assets
目录下新建 mpaas_netconfig.properties
文件,用于存放网络相关全局配置。
Crypt
:表示是否使用自加密,true
表示使用,false
表示关闭自加密功能。RSA/ECC/SM2
:表示要使用的非对称加密算法,其值只能填充RSA
或ECC
或SM2
。PubKey
:表示选择的非对称加密算法的公钥。说明由于 Android 中
properties
文件的value
值需要在同一行,因此填充公钥时需注意使用换行符\n
将Pubkey
转为一行。GWWhiteList
:需要进行加密的网关,即当前环境的网关地址(在 mPaaS 控制台获取的配置文件中的rpcGW
字段)。如果没有该 key,则所有的请求都不会加密。
iOS 配置
iOS 端加密配置是从 info.plist
里面读取,如下图所示:
mPaaSCrypt
:加密配置的主 key,value 是Dictionary
类型,里面包含了客户端加密所需设置的相关信息。Crypt
:是否进行加密,value 是Boolean
类型,YES
代表加密,NO
代表不加密。Crypt 设置为
NO
时,RPC 不进行加密,RSA/ECC/SM2
和PubKey
的设置会忽略。Crypt 设置为
YES
时,RSA/ECC/SM2
和PubKey
必须设置且不能为空字符,否则 Debug 时会中断言,程序直接退出。
GWWhiteList
:需要进行加密的网关,即当前环境的网关地址(在 mPaaS 控制台获取的配置文件中的rpcGW
字段)。如果没有该 key,则所有的请求都不会加密。RSA/ECC/SM2
:非对称加密算法选择,value 是String
类型,只能填RSA
或ECC
或SM2
。RSA/ECC/SM2
和PubKey
的设置必须一一对应。选择
RSA
算法,PubKey 填RSA
对应的公钥。选择
ECC
算法,PubKey 填ECC
对应的公钥。选择
SM2
算法,PubKey 填SM2
对应的公钥。
PubKey
:非对称加密公钥。value 是String
类型,与选择的非对称加密算法保持一致。PubKey 格式必须携带
-----BEGIN PUBLIC KEY-----
及-----END PUBLIC KEY-----
,格式如下:-----BEGIN PUBLIC KEY----- ************************ ************************ ************************ ************************ -----END PUBLIC KEY-----