# 配置 Encrypt Keywarning
本文不再维护，最新内容参见[步骤一：配置事件订阅请求地址](https://open.larksuite.com/document/ukTMukTMukTM/uYDNxYjL2QTM24iN0EjN/event-subscription-configure-/choose-a-subscription-mode/send-notifications-to-developers-server)。

## 功能简介

配置 Encrypt Key 后，Lark开放平台将向[请求地址](https://open.larksuite.com/document/ukTMukTMukTM/uYDNxYjL2QTM24iN0EjN/event-subscription-configure-/request-url-configuration-case)推送加密后的事件。加密推送能够让用户数据更加安全，建议用户配置 Encrypt Key。加密推送的事件示例如下所示：

```
{
    "encrypt": "FIAfJPGRmFZWkaxPQ1XrJZVbv2JwdjfLk4jx0k/U1deAqYK3AXOZ5zcHt/cC4ZNTqYwWUW/EoL+b2hW/C4zoAQQ5CeMtbxX2zHjm+E4nX/Aww+FHUL6iuIMaeL2KLxqdtbHRC50vgC2YI7xohnb3KuCNBMUzLiPeNIpVdnYaeteCmSaESb+AZpJB9PExzTpRDzCRv+T6o5vlzaE8UgIneC1sYu85BnPBEMTSuj1ZZzfdQi7ZW992Z4dmJxn9e8FL2VArNm99f5Io3c2O4AcNsQENNKtfAAxVjCqc3mg5jF0nKabA+u/5vrUD76flX1UOF5fzJ0sApG2OEn9wfyPDRBsApn9o+fceF9hNrYBGsdtZrZYyGG387CGOtKsuj8e2E8SNp+Pn4E9oYejOTR+ZNLNi+twxaXVlJhr6l+RXYwEiMGQE9zGFBD6h2dOhKh3W84p1GEYnSRIz1+9/Hp66arjC7RCrhuW5OjCj4QFEQJiwgL45XryxHtiZ7JdAlPmjVsL03CxxFZarzxzffryrWUG3VkRdHRHbTsC34+ScoL5MTDU1QAWdqUC1T7xT0lCvQELaIhBTXAYrznJl6PlA83oqlMxpHh0gZBB1jFbfoUr7OQbBs1xqzpYK6Yjux6diwpQB1zlZErYJUfCqK7G/zI9yK/60b4HW0k3M+AvzMcw=" 
}
```

应用的服务端接收到加密事件后，需要进行解密处理，解密后的事件示例如下所示。有关解密方法的详细介绍，请参考[接收并处理事件](https://open.larksuite.com/document/ukTMukTMukTM/uYDNxYjL2QTM24iN0EjN/event-subscription-configure-/encrypt-key-encryption-configuration-case)。
```
{
    "schema": "2.0",
    "header": {
        "event_id": "5e3702a84e847582be8db7fb73283c02",
        "event_type": "im.message.receive_v1",
        "create_time": "1608725989000",
        "token": "rvaYgkND1GOiu5MM0E1rncYC6PLtF7JV",
        "app_id": "cli_9f5343c580712544",
        "tenant_key": "2ca1d211f64f6438"
    },
     "event": {
        "sender": {
            "sender_id": {
                "union_id": "on_8ed6aa67826108097d9ee143816345",
                "user_id": "e33ggbyz",
                "open_id": "ou_84aad35d084aa403a838cf73ee18467"
            },
            "sender_type": "user"
        },
        "message": {
            "message_id": "om_5ce6d572455d361153b7cb51da133945",
            "root_id": "om_5ce6d572455d361153b7cb5xxfsdfsdfdsf",
            "parent_id": "om_5ce6d572455d361153b7cb5xxfsdfsdfdsf",
            "create_time": "1609073151345",
            "chat_id": "oc_5ce6d572455d361153b7xx51da133945",
            "chat_type": "group",
            "message_type": "text",
            "content": "{"text":"@_user_1 hello"}",
            "mentions": [
                {
                    "key": "@_user_1",
                    "id": {
                        "union_id": "on_8ed6aa67826108097d9ee143816345",
                        "user_id": "e33ggbyz",
                        "open_id": "ou_84aad35d084aa403a838cf73ee18467"
                    },
                    "name": "Tom"
                }
            ]
        }
    }
}
```

## 适用场景

加密推送适用于如下应用场景：
- 应用校验收到的事件推送是来自Lark开放平台， 而非伪造。
- 应用防止被重放攻击。

重放攻击是指Lark开放平台推送给应用的事件被第三方截获，然后再把事件原封不动的多次发送给应用。这样可能会对应用造成数据安全隐患，也可能会影响应用服务器的性能。

配置 Encrypt Key 后，应用服务端可以基于 Encrypt Key 进行签名校验，以保证应用接收到的都是Lark开放平台推送的合法事件。有关签名校验的详细介绍，请参考[接收并处理事件中的签名校验](https://open.larksuite.com/document/ukTMukTMukTM/uYDNxYjL2QTM24iN0EjN/event-subscription-configure-/encrypt-key-encryption-configuration-case)。

## 操作方式

1. 登录[开发者后台](https://open.larksuite.com/app)。
2. 在应用列表中点击具体应用，进入应用管理详情页面。
3. 进入 **事件订阅** 页面。定位到 **事件订阅** 区域。
    - 点击 Encrypt Key 下方的 **编辑** 按钮，可以自定义 Encrypt Key。

![image.png](//sf16-sg.larksuitecdn.com/obj/open-platform-opendoc-sg/78e204768020df88b289c8ac1628f028_p2TaG7TqmV.png?height=518&lazyload=true&maxWidth=600&width=1270)

- 点击 Encrypt Key 下方的 **重置** 按钮，系统会自动重置 Encrypt Key。

![image.png](//sf16-sg.larksuitecdn.com/obj/open-platform-opendoc-sg/ae64cbfe691c4dd1edc0dbae0015d7be_0T1ubgIRWF.png?height=660&lazyload=true&maxWidth=600&width=1260)

