音视频数据安全

更新时间:2023-08-09 08:08:56下载pdf

音视频数据安全,是指在传输、存储、访问的过程中,经过了权限控制认证、数据加密、数据验签等处理。

基本概念

  • 对称加密:使用同一个密钥对数据进行加密和解密。密钥必须妥善保管。常用的是 AES 加密算法,有 128 位、256 位等差别,以及有 CBC、ECB 等不同模式。

  • 非对称加密:使用一对公钥和私钥,公钥加密,私钥解密。私钥加签,公钥验签。私钥必须妥善保管。常见的有 RSA、ECC 等算法。

    非对称加密算法的计算复杂度更高,相对安全性更高,但是也需要更多的运算性能和耗时。因此比较常用的组合方式是使用非对称加密算法,加密保护网络通信双方使用的对称加密算法的密钥,用对称加密算法加密需要传输的数据。

  • 摘要算法:使用数据云端,对根据数据段生成特定长度的摘要值,这个运算是单向的,即不能通过摘要值反推数据。摘要算法用于对数据生成数字签名(或称为指纹信息),防止数据在传输、存储的过程中被篡改。

  • CA 证书:由官方认证机构签发的服务端证书,客户端可以据此判断云服务是否可信,防止网络劫持。

  • TLS:TLS(Transport Layer Security)是一套加密通信框架,它综合运用了对称加密、非对称加密、认证、数字签名、证书校验等技术。TLS 是一套在 TCP/UDP 层和应用层协议中间的协议,如 HTTP over TLS 即 HTTPS,也被称为通道加密。

流媒体数据传输安全

涂鸦 App 的音视频预览和对讲功能使用了自研的 P2P 技术。一个简化了的 P2P 会话流程如下图所示:

音视频数据安全

其中包含的安全机制有:

  • 设备和手机 App(Client)必须先通过认证登录到涂鸦 MQTT 云服务。
  • 设备和客户端之间的 P2P 信令(offer&answer),都通过 MQTT over TLS 加密通道传递,TLS 采用 ECC 算法方案,下同。
  • 设备和客户端接入 P2P Server(包括 STUN/TURN 服务等),都必须经过权限认证。
  • 在设备和客户端交换网络信息、建立点对点会话时,会有防串流、防攻击的二次密码校验。
  • 在最后进行流传输(Streaming)时,每个数据包都会进行 AES 加密和 HMAC 加签。

音视频数据存储安全

在用户开启了移动侦测告警、人形检测告警、宠物识别、录像云存储等业务后,设备会将视频、图片等文件上传到云端对象存储服务器上。一个简化了的流程如下图所示(未包含客户端付费下单流程):

音视频数据安全

其中包含的安全机制有:

  • 设备和手机 App(Client)必须先通过认证登录到涂鸦 MQTT 云服务。
  • 设备通过 HTTP over TLS(HTTPS)加密通道从服务端获取、更新云存储的订单状态,TLS 采用 ECC 算法方案,下同。
  • OSS(Object Storage Service)云端对象存储服务的文件增删改权限管理,都由云端统一管理,设备和客户端在上传下载时通过 HTTPS 加密通道获得临时的令牌 Token。
  • 设备通过 HTTPS 加密通道上传音视频数据至 OSS Server。
  • 音视频数据使用 AES 进行对称加密处理。
  • 密钥由云服务一机一密的形式生成,通过 HTTPS 通道传递到设备与客户端,传递过程数据采用二次加密和 MD5 校验。