raabt.ai

企业数据加密指南:WhatsApp 等客户聊天数据怎么保护

面向 WhatsApp、Instagram、Telegram 卖家的企业数据加密实践:哪些数据必须加密、传输加密与静态加密的区别、访问令牌和 API 密钥怎么存、AES-256-GCM 与密钥管理要点,以及签约前该问客服系统供应商的 10 个数据安全问题。

企业数据加密指南:WhatsApp 等客户聊天数据怎么保护

每一笔 WhatsApp 订单、每一条 Instagram 私信、每一次 Telegram 售后对话,都会在你这边留下客户数据:手机号、收货地址、聊天记录,还有打通各个渠道的访问令牌。企业数据加密要做的事,就是让这些数据在网络中传输时、在数据库和备份里存放时,对没有密钥的人来说只是一串读不懂的密文。

核心要点

  • 企业数据加密分两层:传输加密(TLS)保护传输中的数据,静态加密(通常是 AES)保护存储的数据。
  • 渠道访问令牌、API 密钥和 webhook 密钥都属于凭据。令牌一旦泄露,攻击者就能以你的企业身份行事,所以要在字段级加密它们。
  • 磁盘加密防得住被偷走的硬盘,防不住正在运行的服务器。把密钥放在数据库之外的字段级加密,即使数据库被拖库,这些字段依然是密文。
  • AES-256-GCM 属于认证加密:既隐藏数据,也能发现数据有没有被篡改,而它的前提是同一个密钥绝不重复使用同一个 nonce。
  • 加密拦不住有权解密的人。AI自动回复平台必须读取消息才能作答,所以访问控制和留存策略,和你选什么加密算法一样重要。

做聊天生意的企业,企业数据加密该覆盖哪些数据

一家靠聊天做生意的公司,比如用 WhatsApp AI收件箱接待客户,它的数据清单是这样的:

  1. 凭据与密钥。 Facebook 主页和 WhatsApp Business 访问令牌、Telegram 机器人 token、AI服务商密钥、支付服务商密钥和 webhook 密钥。
  2. 客户个人信息。 手机号、邮箱、收货地址和客户 ID。在聊天电商里,手机号往往就是客户的身份。
  3. 聊天记录与媒体文件。 对话文本、语音消息、图片,以及客户发来的单据。
  4. 员工密码。 这些应该做哈希,而不是加密(下文详述)。
  5. 员工设备。 用来打开收件箱、保存导出文件的电脑和手机。开启 FileVault 或 BitLocker、设备锁屏密码和远程擦除。
  6. 各种副本。 备份、CSV 导出文件、日志和预发布数据库,它们的防护往往比生产环境弱。

客户数据加密可以用一条简单的原则:凡是能授予访问权限、或者能识别到具体某个人的数据,都在字段级加密;每一份副本都要和原件一样受保护。

静态数据加密和传输加密有什么区别

传输加密保护数据在浏览器、你的服务器和第三方 API 之间移动的过程。静态加密保护存放在磁盘、数据库和备份里的数据。

对比项传输加密静态加密
防的是什么窃听、篡改、伪造服务器硬盘被盗、数据库泄露、备份暴露
常见标准TLS 1.2 或 TLS 1.3AES-256,常用 AES-256-GCM
作用范围浏览器到应用、webhook、API 调用磁盘、数据库、单个字段、备份
覆盖不到数据抵达并解密之后应用运行时正在使用的数据

NIST SP 800-52 Rev. 2 要求美国政府的 TLS 服务器支持 TLS 1.2,并在 2024 年 1 月之前支持 TLS 1.3。对任何企业来说这都是合理的基线:只接受 TLS 1.2 和 1.3,把更老的版本全部关掉。

TLS 只保护路上这一段。WhatsApp Cloud API 通过 HTTPS 下发 webhook,Meta 的文档说明 Cloud API 会解密收到的消息再转发给企业,消息最多保留 30 天。再往后,就交给存储和访问控制了。

磁盘加密、数据库加密和字段级加密

静态加密分几层:

  • 磁盘或卷加密防的是被偷走或被丢弃的硬盘。服务器正常运行时,操作系统会自动解密数据,所以已经进到服务器里的攻击者看到的还是明文。
  • 数据库文件加密有同样的局限:谁能查这个库,谁拿回去的就是明文。
  • 字段级加密在数据写进数据库之前,由应用层对特定的列加密,比如令牌或手机号。密钥存在别处,所以数据库被拖库、备份被复制出去时,这些字段呈现的只是密文。

代价是检索:加密后的列没法用普通的 SQL 条件过滤。可行的做法是把字段级加密留给凭据类数据和高风险的联系方式。需要按手机号或邮箱查客户的团队,可以在密文旁边存一个带密钥的哈希(盲索引),改成检索它。

AES-256-GCM:密钥长度和工作模式

AES 由 FIPS 197 定义,支持 128 位、192 位和 256 位密钥。AES-256 用的是其中最长的一种。

工作模式和密钥长度同样重要。GCM(NIST SP 800-38D)属于认证加密:既保证数据的机密性,也能发现密文有没有被人改过。同一个密钥绝不要重复使用同一个 nonce:nonce 重用会直接摧毁 GCM 的安全保证,所以把 nonce 的生成交给维护良好的加密库,永远不要自己写密码学实现。

API 密钥和访问令牌怎么安全存储

按你是否需要拿回原始值来选:

  • 加密那些必须原样发给对方的凭据:WhatsApp 和 Instagram 访问令牌、Telegram 机器人 token、AI服务商密钥和支付密钥。用字段级 AES-GCM,密钥存在数据库之外。
  • 哈希那些你只需要校验的凭据:密码、合作伙伴 API 密钥和一次性验证码。哈希没法还原成原值,但太短或容易猜的值可以被暴力破解,所以密码用 Argon2id 或 bcrypt 这类慢哈希,验证码用带密钥的 HMAC。
  • 别写进日志、报错信息、数据分析和 URL 里。
  • 按需授权并定期轮换。 令牌只申请它真正需要的权限;有权限的人离职时就把令牌换掉。

静态加密保护不了 API 调用期间在内存里以明文存在的令牌。服务器加固和最小权限原则可以压低这部分风险。

加密密钥管理的基本功

加密的强度,取决于密钥放在哪里。最经典的翻车方式,就是把密钥和数据放在一起——同一个数据库里,或者一个提交进代码仓库的配置文件里。

  • 密钥与数据分离。 把密钥放在密钥管理工具、KMS 或数据库够不着的服务器配置里。
  • 规模上来之后用信封加密。 用主密钥加密数据密钥,这样轮换主密钥不必把所有数据重新加密一遍。
  • 按用途派生专用密钥,用 HKDF 这类密钥派生函数。
  • 提前规划轮换和恢复。 密钥丢了,数据就丢了,备份里的那份也一样。

访问控制与最小权限原则:光有加密不够

加密拦得住没有密钥的人,拦不住有权解密的人或系统。AI自动回复平台必须读到客户的消息才能写出回复,所以它的服务器处理的是可读的消息。

同样的逻辑在上游也成立。WhatsApp 的安全白皮书并不把使用 Cloud API 的企业聊天视为端到端加密,因为消息并没有直接投递到企业自己掌控的终端。选型之前,可以先看 WhatsApp Business Cloud API 与 Business App 的区别。

所以下一层要解决的是:谁能接触到数据。

  • 最小权限的访问控制:给每个同事够用的最小角色。负责回消息的客服不需要看账单。
  • 更强的登录方式:加一步二次验证,退出登录时吊销会话。
  • 租户隔离:每个请求都要证明调用方属于这家企业。
  • 审计日志与留存期限:记录敏感操作,聊天记录只保留到你真正需要的期限。

备份、导出文件与数据留存

备份是客户数据的完整副本,保存的时间往往比生产数据更长,被盯着的程度却更低。给备份文件加密,限制谁能下载,定期演练恢复(包括密钥恢复),并删掉那些通过邮件或聊天发出去的旧 CSV 导出文件。

加密还有法律上的分量。GDPR 第 32 条把加密列为一项安全措施,第 34(3)(a) 条允许在加密已经让数据对未授权者不可读时,控制者不再通知受影响的个人。第 33 条规定的“知悉泄露后 72 小时内通知监管机构”是另一回事。沙特的 PDPL 和土耳其的 KVKK 同样设了 72 小时的监管通报期限。

这里写的是一般性信息,不构成法律意见。GDPR 或其他法律是否适用于你、某次泄露是否符合豁免条件,都取决于具体情况,请咨询有资质的律师。

选客服系统或 CRM 时,要问供应商哪些问题

把渠道接进来之前,把下面这些安全问题做成一份书面问卷发给供应商:

  1. 你们的接口接受哪些 TLS 版本?
  2. 哪些数据做了静态加密,在哪一层做的?消息内容包含在内吗?
  3. 渠道令牌和 API 密钥是否做了字段级加密,密钥存在哪里?
  4. 备份是否加密,谁可以访问?
  5. 你们的员工能不能看到我们的对话,这类访问有没有留日志?
  6. 我们可以给团队设置哪些角色和权限?
  7. 我们的数据和其他客户的数据是怎么隔离的?
  8. 我们的聊天记录会不会被你们或你们的 AI服务商用来训练模型?
  9. 你们的次级处理方有哪些,数据存放在哪里?
  10. 你们签 DPA 吗?我们终止合作之后,数据多久内删除?

对“军工级加密”“所有数据都加密了”这类说法要多留个心眼。靠谱的供应商会说清楚算法、加密发生在哪一层,以及哪些地方没覆盖到。

Raabt 目前加密和保护了哪些数据

以下每一项,都对应 Raabt 截至 2026 年 9 月的代码实现。

  • 字段级加密:敏感字段在应用层用 AES-256-GCM 加密。新写入的数据使用通过 HKDF-SHA256 派生的密钥,旧数据在下次保存时会用它重新加密。密钥不足 32 个字符时,应用会拒绝启动。
  • 加密了哪些内容:凭据与令牌(Facebook、Instagram、WhatsApp 和 Telegram 的渠道访问令牌,AI 与支付服务商的 API 密钥,webhook 密钥),以及部分联系方式(客户手机号、邮箱和订单地址)。
  • 哈希:密码使用 Argon2id(19 MiB 内存,2 轮迭代),旧的 bcrypt 哈希会在登录时升级。合作伙伴 API 密钥只以 SHA-256 哈希形式存储。
  • 登录:邮箱加密码登录,必须先通过发到用户邮箱的一次性验证码,才会签发会话(Google 登录不使用该验证码)。验证码只以 HMAC-SHA256 哈希存储,会过期,且只能用一次。
  • 团队权限:四种角色(owner、admin、agent、viewer),按板块细分权限。账单权限无法下放给非 owner。
  • 隔离:企业侧接口会先确认调用方是这家企业的有效成员,否则返回“未找到”。
  • Webhook 与媒体文件:没有合法 X-Hub-Signature-256 签名的 Meta webhook 会被拒绝,Telegram webhook 必须带 secret token,附件只能通过带签名、会过期的链接访问。
  • 基础设施:应用不直接暴露在公网上,公网流量通过 Cloudflare Tunnel 到达。数据库错误日志不会记录查询参数,所以手机号和邮箱不会出现在这些日志里。
  • 平台管理员审计日志:平台管理员的操作会写入只可追加的审计日志(谁、做了什么、什么时候、IP,带变更前后快照,密钥已脱敏)。这不是客户消息的日志。

加密在这里做不到的事:AI收件箱必须读到消息文本才能写出回复,所以对话内容会在服务器上以可读形式被处理。正因为如此,上面讲的访问控制、留存期限和备份,和你选什么加密算法一样重要。

Meta 的数据删除请求会返回一个确认码和状态查询链接,见我们的数据删除页面。注销账号需要你的密码加上邮件发送的一次性验证码,账号会被停用,邮箱会被匿名化。

企业数据加密落地清单:小团队的推进顺序

小企业做数据加密,最好按固定顺序推进,从泄露之后损失最大的东西开始:

  1. 所有服务走 HTTPS,只保留 TLS 1.2 或 1.3。
  2. 给每一台会打开客户聊天的设备开启全盘加密和锁屏。
  3. 把令牌和 API 密钥迁到字段级加密,密钥单独存放。
  4. 用 Argon2id 或 bcrypt 哈希密码,并加一步登录验证。
  5. 加密客户的手机号、邮箱和地址。
  6. 加密备份,配置最小权限角色,设定聊天记录的留存期限。
  7. 把那份供应商问卷发给你在用的每一个客服系统、CRM 和 AI工具。

常见问题

企业哪些数据需要加密?

先从能授予访问权限、或者能识别到人的数据开始:渠道令牌、API 密钥、webhook 密钥,以及客户的手机号、邮箱和地址。然后再覆盖聊天记录、员工设备,以及每一份备份和导出文件。

传输加密和静态加密有什么区别?

传输加密通常指 TLS,保护在设备、服务器和 API 之间移动的数据。静态加密通常指 AES,保护已经存下来的数据。

AES-256 加密足以保护客户数据吗?

AES-256 很强,但算法很少是薄弱环节。常见的翻车点是密钥存放不当、nonce 重用、员工权限过大和备份没有防护。

API 密钥和访问令牌怎么安全存储?

必须重复使用的令牌,用字段级 AES-GCM 加密,密钥放在数据库之外。只需要校验的凭据,比如密码和合作伙伴 API 密钥,做哈希就行。

用了 HTTPS,服务器上的数据就安全了吗?

不安全。HTTPS 只保护传输过程。在服务器上,安全与否取决于静态加密、访问控制和备份怎么管。

选客服系统或 CRM 时要问供应商哪些数据安全问题?

问他们接受哪些 TLS 版本、哪些数据做了静态加密以及在哪一层、密钥存在哪里、员工访问聊天记录会不会留日志、次级处理方有哪些、数据存放在哪里、聊天记录会不会用来训练 AI模型,以及愿不愿意签 DPA 并约定删除期限。

准备好把客户聊天搬到一个会加密渠道令牌和部分客户联系方式的 AI收件箱上了吗?免费开始。

MR

关于作者

Mohamed Rasul

Founder & CEO, Raabt AI

LinkedIn →