流媒体信息加密与用户认证技术的实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《中国有线电视》2005(01)
CH I N A CABLE TELE V I SI O N・开发与应用・
流媒体信息加密与
用户认证技术的实现
□姚华桢1,冯穗力1,叶 梧1,谢 杏2
(1.华南理工大学,广东广州510640;2.广东省信息中心,广东广州510640)
摘 要:讨论了保障多媒体通信安全的几个关键技术,分析了流媒体加密的几种方式。根据流媒体传输的特点,研究了一种基于AES和MD5算法的流媒体数据加密传输和用户认证的方法,并分析了如何在流媒体服务器端和客户端予以实现。
关键词:流媒体;AES;MD5;认证;密钥传递
中图分类号:T N943.6 文献标识码:A 文章编号:1007-7022(2005)01-0057-04
The I m ple m en t a ti on of I nforma ti on Encrypti on and
User Authen ti ca ti on i n Stream i n g M ed i a
□Y AO Hua2zhen1,FENG Sui2li1,YE W u1,X I E Xing2
(1.South China University of Technol ogy,Guangdong Guangzhou510640,China;
2.Guangdong I nf or mati on Center,Guangdong Guangzhou510640,China)
Abstract:This paper discusses vital technique f or secure communicati on of multi m edia.It analyzes s ome ways
f or strea m data encryp ti on.Accordin
g t o the characteristic of strea m ing media trans port,it p resents a method
of strea m data encryp ti on and user authenticati on based on AES algorithm and MD5algorith m.It als o analyzes how t o realize the algorithm on server and client syste m s.
Key words:strea m ing media;AES;MD5;authenticati on;secret key pass
1 引言
流媒体技术是一种在线多媒体播放技术,可广泛用于在线直播、远程教育、实时视频会议等应用场合。在许多情况下流媒体传输中的安全性、高效性以及客户的身份认证问题是至关重要的因素。本文就流媒体信息加密中加密算法的选择、客户的认证方法、密钥的传递方法作了深入的讨论。在算法选择上,流媒体传输对速度的要求很高,以往进行流媒体加密采用一般的数据加密标准DES,随着密码分析水平(特别是差分密码分析及线性密码分析)、芯片处理能力的提高, DES算法在其实现速度、代码大小、跨平台性等方面难以满足新的应用需求。本文采用高级加密标准AES,使本系统在速度、安全性等方面都有很大提高。在客户认证方面,本系统采用TCP/I P协议,与数据流传输
基金项目:广东省工业攻关项目资助(2003B12224)
作者简介:姚华桢(19802 ),女,硕士研究生,研究方向为通信理论与技术;冯穗力(19552 ),男,教授,硕士生导师,研究方向为通信理论与技术。
的UCP /I P 协议分开,客户认证和数据传输是两个不同的线程,相当于一个双服务器系统,一边是播放服务器,一边是认证服务器。在密钥传递方面,和其他系统不同的是:由于本系统支持多播,有可能多个用户同时请求连接,如果和其他系统一样采用公钥(非对称)加密算法,无疑会大大增加系统的运算量,因此这里仍然采用私钥(对称)加密算法,服务器端以客户的密码对数据流密钥加密,然后再传给客户端,客户端再进行相应解密,而服务器对于客户密钥的获取可通过客户注册由公钥加密算法实现。2 系统结构
2.1 RTP /RT CP 协议
RTP (Real 2ti m e Trans port Pr ot ocol )是用于I nternet
上针对多媒体数据流的一种传输协议,其目的是提供时间信息和流同步,RTP 通常使用UDP 来传送数据。RTCP (Real 2Ti m e Trans port Contr ol Pr ot ocol )和RTP 一起提供流量控制和拥塞控制服务。2.2 系统实现架构
基于RTP /RTCP 协议的加密视频传输系统架构如图1所示,其中虚线和数字表示用户认证和密钥传递线程,实线和字母表示流媒体数据加密传送线程。服务器是在L inux 系统中实现的,而客户端是基于W indo ws 平台的
。
图1 加密视频传输的系统架构
整个加密传输过程的顺序为:①→②→③→④→⑤→⑥→a →b →c →d →e →f →g →h →i,可详细描述如下:
(1)客户端首先向服务器端发出连接服务器的请求;
(2)服务器端对客户进行身份验证,如果是合法用户,则用用户的密码(userkey )对密钥(datakey )(此密钥用于流媒体数据加密)进行加密,这里所采用的加密算法仍然是AES,然后将加密后的密钥信息(en 2cryp tkey )及登陆成功的消息传给客户端;
(3)客户端接收已加密的密钥信息和登陆成功的消息,并用自己的密码(userkey )对加密后的密钥信息
(encryp tkey )进行解密,得到真正用于流媒体数据解密
的密钥(datakey );
(4)客户端向服务器端发出播放视频流的请求;(5)服务器端把视频流文件转化为RTP /RTCP 信息流,进行加密处理后传向网络;
(6)客户端接收到数据包后用datakey 对包进行解密处理,然后播放。3 流媒体数据的加密技术3.1 H.263加密算法的选择
本文的实时视频监测传输系统采用的是H.263视频流,在传输流媒体的过程中,除了要考虑正确性、实时性、系统的效率等,还有一个非常重要的方面即流媒体数据信息的安全性。综合这几方面考虑,必须要选择一种高效、简洁、安全的加密算法。由于数据加密标准算法(DES )及其变形的安全强度已经难以满足新的安全需要,其实现速度、代码大小和跨平台性均难以满足新的需求,本文选用高级加密标准AES 。AES 是2000年10月由美国国家标准和技术研究所推出的新的数据加密标准,来自比利时的R ijndael 凭借其简洁、高效、安全和原则性的设计成为高级加密标准AES 。本系统采用AES 算法,使得其在效率、安全性等方面都有很大优势。3.2 AES 算法描述
R ijndael 是具有可变分组长度和可变密钥长度的分组密码,其分组长度和密钥长度均可独立地设定为32bit 的任意倍数,最小
值为128bit,最大值为256bit 。其输入输出均可看为8位字节的一维数组:假设输入明文为p 0,p 1…p i …,0≤i ≤4×N b -1,将明文映射到一个字节矩阵上,我们称之为状态,如图2所示。
p 0p 4p 8p 12p 1p 5p 9p 13p 2p 6p 10p 14p 3
p 7
p 11
p 15
图2 当N b =4时的状态分布本例中N b =4,密钥同理可映射到密钥状态中。R ijndael 加密算法由3部分组成:①一个初始轮
密钥加法变换;②N r -1轮变换;③最后一轮变换。用伪C 码表示为:
R ijndael (State,Ci pherKey )
{KeyExpansi on (Ci pherKey,ExpandKey )//密钥扩展,
姚华桢等:流媒体信息加密与用户认证技术的实现 《中国有线电视》2005年第01期