# 埋点数据国密加密

## 功能
为了加强埋点数据的安全性，神策分析支持对埋点数据进行加密并以密文的形式对数据进行发送。<br>
国密加密插件在数据上报前通过国密 SM2 和 SM4 算法将数据进行加密发送。

## 集成
### ES Module 方式
```javascript
import SMEncryption from '/dist/web/plugin/sm-encryption/index.es6.js';
sensors.use(SMEncryption,{
    pkv:'加密密钥版本号',
    pub_key: 'SM2 公钥'
});
```

### 参数说明：
- `pkv`: 加密密钥版本号，类型：number。
- `pub_key`: SM2 加密公钥，类型：string。
  
以上参数信息可以通过神策后台【数据管理】-【数据接入引导】-【客户端埋点】-【密钥管理】页面进行获取或通过该页面进行新建。

## 变动
加密后的数据在上报时，通过抓包或浏览器网络请求栏查看数据消息体中可以看到 pkv、ekey、payloads 等参数，payloads 参数的值为加密后的密文。

## ⚠️ 注意
- 国密加密插件仅支持 IE10 及以上现代浏览器。
- 批量发送方式不支持国密加密插件。
- 开启加密后，如果服务端无法解密，数据无法入库，会丢失，埋点管理中不会有报错。务必确保初始化参数配置正确！
- 插件和 SDK 必须在同一个版本中，请勿混合不同版本的 SDK 和插件进行使用。