山东大学软件学院项目实训-创新实训-SDUMeeting(一)
一、前言:
这个项目是山东大学视频会议项目,这个项目基于webrtc构建多人视频会议系统,我负责视频会议客户端及服务端安全防护,这个专栏记录我的个人工作。
二、主要工作
1.webrtc相关的安全问题
2.linux服务器的安全问题
3.web安全问题,包括各种针对web的攻击手段的防护,xss,sql注入,文件注入
三、项目的安全基础
整个项目是以webrtc为基础构建的,webrtc是整个项目的安全基础,webrtc本身安全性比较高,peerconontion之间是加密的,也就是两两之间是加密的,是中心化安全的,也便于管理。
下面对webrtc的安全进行了一些分析
1.SDP
在介绍webrtc的安全性之前以常见的https为例,https是http with tls,采用的是tls加密,https是通过非对称加密、数字签名和数字证书来确保数据传输的安全,这其实是SSL协议的一部分,在webrtc中也会采用类似SSL的机制来保证数据安全,这就是了DTLS。
我们先来看一下,webrtc是如何识别双方身份的。
它首先通过信令服务器交换 SDP,SDP 信息中包括了以下几个重要信息:
a=ice-ufrag:khLS
a=ice-pwd:cxLzteJaJBou3DspNaPsJhlQ
a=fingerprint:sha-256 FA:14:42:3B:C7:97:1B