基于多媒体应用的安全研究

时间:2022-07-26 01:28:41

基于多媒体应用的安全研究

【 摘 要 】 网络的迅猛发展,让多媒体的应用更加广泛,多媒体的安全问题受到了越来越多的关注。本文首先对安全的相关技术进行了详细分析,描述了PKI/PMI技术及XML安全技术;其次对多媒体应用的安全框架进行了详细的分析和论述,将其分为三个层次模块,对每个模块进行初步的介绍;最后对部分模块的实现进行了分析。本文对于研究IT安全和多媒体工作人员有着积极的作用。

【 关键词 】 多媒体、应用、安全

1 引言

随着多媒体技术的不断完善,在教育、科研、经济、军事等领域里得到了越来越广泛的应用,在一些特珠的机构中,对多媒体数据的安全性提出了更高的要求,多媒体应用的安全已经成为研究的重点。

2 安全的相关技术

2.1 PKI/PMI技术

(1)PKI体系

PKI的英文全拼是Public Key Infrastructure,即公钥基础设施,它主要由数字证书库、证书认证中心(CA)、密钥管理中心(KMC)和审核机构(RA)等组成。其工作原理是在公共密钥技术和理论基础上的基础设施,它可以提供安全服务,是当前应用最广泛的安全机制之一,在整个体制中有一对密钥、私钥和公开的公钥,通过公钥并不能将私钥给推导出来,但通过公钥加密的数据只能利用特定的私钥才能将数据完整地还原,可以让不安全的客户端进行安全通信,而不必担心数据的泄露。整个PKI系统的工作原理如图1所示。

如图1所示,在整个体系中,认证机构(CA)是整个基础设施的核心,是整个交易中受信任的第三方;审核机构(RA)是对认证机构所发放的证书进行管理、发放的有利扩充;密钥管理中心(KMC)可以产生密钥并对其进行管理的机构,对于一个认证机构来说,必须要对应一个密钥管理中心;而数字证书库是存放证书的空间,要保证数字证书库的安全性和完整性,一般来说,数字证书库都是基于X.500或LDAP系列。

(2)PMI体系

PMI与PKI的结构非常相近,它主要由属性证书、证书库及权威等部件组成,可以完成证书的产生、发放、存储、管理及撤销操作。在体系结构上主要由三层构成,分别是信任源点SOA、权威机构中心(AA)及中心点。其架构如图2所示。

2.2 XML安全技术

XML的全拼是eXtensible Markup Language(可扩展标记语言),这是一种开放型的数据描述语言。互联网的信息是开放性的,对每一个用户来说,网络上的数据都可以进行修改,XML语言可以清晰地表达所描述的内容,但对于XML文件来说,也是开放的,每个人都可以轻松地得到相关的信息数据,保证XML文件的安全性和完整性就十分重要。

XML签名加密技术本身并没有在技术上进行突破,但是XML文件可以在其内部进行XML元素的签名和加密工作,这样XML文件的安全保密工作提供了极大的扩展性和灵活性。

XML的签名主要包括创建和验证两个方面。创建时主要有引用创建和签名创建两部分,首先进行引用创建,利用URI查找相关数据,并对数据进行转换,将其生成摘要,创建出Reference元素;签名创建SignedInfo元素,将上面创建的Reference元素包含进来,指定其方法,将元素标准化并签名,组合成Signature元素。验证工作有引用验证和签名验证,签名验证获取相关密钥,对标准化的元素进行摘要生成,与解密元素进行比较,如果与原文一致,则验证成功。

3 多媒体应用安全模型设计

对于多媒体应用安全系统的模型主要由PKI/PMI模块、多媒体访问控制模块和安全审计模块三部分组成,其架构如图3所示。

PKI/PMI模块主要承担着身份认证与授权管理,资源管理中心和注册机构接收用户的证书请求,注册机构首先对用户的信息进行审核,用户请求通过审核之后,由认证中心给相关的用户发放公钥证书,注册机构将其证书转发至数字证书证书库之中,同时告知用户,对用户的数据信息进行授权审核,授权中心对属性证书进行处理,并将其存放到数字证书证书库里。

多媒体访问控制模块将各种相关的数据信息进行存放和管理,用户在相关权限下进行操作,系统对其身份和角色进行安全检查,将用户所需要的数据分发给相关用户。

安全审计模块是对数据库中的数据进行全方位的监视,对用户及管理员所进行了每一次操作都进行日志处理,便于日后的追踪。

4 具体模块实现

Java集成了大量的安全工具和XML加密签名,利用Java2作为开发平台是当前多媒体应用安全系统的最优选择。

4.1 PKI/PMI模块实现

Java2平台集成了密钥库,密钥库中主要有公开密钥在X.509格式的证书里,信任证书在另外一个公开密钥X.509证书中。X.509证书主要有版本号、序列号、签名、颁发者、有效期、主体、主体公钥信息、颁发者唯一标识符和主体唯一标识符组成。

对于注册机构(CA)的实现,首先创建其CA根证书,其次将其导出到文件系统之中,对于Java来说,其默认的存放位置是JAVAHOME\jre\security\cacers,然后Java会自动给对应的CA签发证书。其X.509证书实例部分描述所示:

Name ::= CHOICE {

RDNSequence }

RDNSequence ::= SEQUENCE OF RelativeDistinguishedName

RelativeDistinguishedName ::=

SET OF AttributeTypeAndValue

AttributeTypeAndValue ::= SEQUENCE {

type AttributeType,

value AttributeValue }

AttributeType ::= OBJECT IDENTIFIER

AttributeValue ::= ANY DEFINED BY AttributeType

Validity ::= SEQUENCE {

notBefore Time, -- 证书有效期起始时间

notAfter Time -- 证书有效期终止时间

}

Time ::= CHOICE {

utcTime UTCTime,

generalTime GeneralizedTime }

UniqueIdentifier ::= BIT STRING

SubjectPublicKeyInfo ::= SEQUENCE {

algorithm AlgorithmIdentifier, -- 公钥算法

subjectPublicKey BIT STRING -- 公钥值

}

subjectPublicKey:

RSAPublicKey ::= SEQUENCE { -- RSA算法时的公钥值

modulus INTEGER, -- n

publicExponent INTEGER -- e -- }

Extensions ::= SEQUENCE SIZE (1..MAX) OF Extension

Extension ::= SEQUENCE {

extnID OBJECT IDENTIFIER,

critical BOOLEAN DEFAULT FALSE,

extnValue OCTET STRING }

4.2 多媒体访问控制模块实现

在该模块中,主要实现用户认证与权限识别、安全套接层、扩展的RBAC模型和XML安全存储等功能。

在系统的设计中,客户端与服务器之间进行通信,主要通过安全套接层来实现,客户端与服务器端无法进行安全交互,那么所有的操作都是无效的。在Java中,可以利用.SSLSocket套接字类中的接口.socket子类进行标准的套接字连接,同时还可以将SSL功能加入到具体的Java程序之中,对其所有待传的证书、公钥、密钥及数据进行加密,解密时则由Java自带的SSL类来实现,这样可以保证整个系统的安全系数进一步的提高。

其代码实现如下:

X509TrustManager xtm = new Java2000TrustManager();

TrustManager mytm[] = { xtm };

// 得到上下文

SSLContext ctx = SSLContext.getInstance(“SSL”);

// 初始化

ctx.init(null, mytm, null);

// 获得工厂

SSLSocketFactory factory = ctx.getSocketFactory();// 从工厂获得Socket连接

Socket socket = factory.createSocket(host, HTTPS_PORT);//和普通的Socket操作一样

BufferedWriter out = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));

BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));

out.write(“GET ” + url + ” HTTP/1.0“);

out.flush();

System.out.println(“start work!”);

String line;

StringBuffer= new StringBuffer();

while ((line = in.readLine()) != null) {

sb.append(line + ”“);}

out.close();

in.close();

System.out.println(sb.toString());}

}

5 结束语

本文针对多媒体应用的安全进行研究,通过认证和加密的方式来确保安全,本文从总体上进行了分析,由于篇幅所限,并没有将内容完全展开,文中难免有不足之处,欢迎读者批评指正,共同提高。

参考文献

[1] 尹志兵,黄红明,熊桂喜.一种基于 PMI 的访问控制模型及其应用.计算机工程,2004(1).121-123.

[2] 程安潮.基于属性证书的PMI授权管理模型应用研究.计算机工程,2006(4).162- 164.

[3] 周学广,张焕国,张少武等.信息安全学(第二版).北京:机械工业出版社,2008.104.

[4] 谭寒生,张舰,PMI与PKI 模型关系研究.计算机应用,2002(8).86-88.

作者简介:

刘来权(1979-),讲师;研究方向为多媒体应用、项目管理、数字应用、高职教育等。

雷燕瑞(1980-),讲师;研究方向为数据库应用、程序开发、高职教育等。

上一篇:用户身份认证技术在计算机信息安全中的应用 下一篇:中英规范下框架结构配筋计算差异