专利名称:数据安全化通信装置及其方法
技术领域:
本发明涉及进行数据的安全化、即加密、数据认证来防止窃取、改变传输数据的通信装置及其方法。
背景技术:
以因特网为代表的IP(网际协议)网本来不具备安全性功能。在不采取任何措施的情况下,通过在途中路径上取得或改变IP包,能够不被通信当事人察觉地窃取、改变通信内容。因此,在IP网上发送接收交易等重要信息的情况下,如何保证安全性成为重要课题。
例如,在经由因特网来分发音乐或图像的内容分发服务中,分发的音乐·图像数据是有价值的重要信息,需要防止在途中路径上的窃取、改变。此外,在经IP网来提供电话服务的VoIP系统中,需要防止非法窃取通话内容。
在VoIP系统或流(stream)型内容分发系统中,为了传输要求实时性的数据,如图1A所示,一般利用RTP/UDP。RTP(Realtime Transport Protocol,实时传输协议)是应用层11所用的协议,适于实时处理。UDP(User DatagramProtocol,用户数据报协议)是应用层11和网络层13之间的接口一运输层12所用的无连接协议。
该系统传输的包例如如图2所示由IP首标13H、UDP首标12H、RTP首标11H、RTP净荷11PL构成。在RTP/UDP中,与其说是像TCP(TransmitionControl Protocol(传输控制协议),运输层所用的连接型协议)那样以包的可靠送达为目的,不如说是以有即时性的包的送达为目的,所以有可能在途中路径上发生包丢失。因此,在研究应用于RTP/UDP的安全技术时,需要对包丢失采取措施。
此外,将安全技术应用于目前正在迅速普及的移动通信也很重要。在移动通信网上进行RTP/UDP包传输时,为了改善无线传输频带的利用效率,在无线链路中对RTP包(RTP首标+RTP净荷)及UDP包(UDP首标+RTP包)的两个首标进行压缩。因此,在研究安全技术、特别是加密方式时,期待能够在途中链路上展开·压缩RTP/UDP包首标的方式。
作为以应用于移动通信网为前提的RTP包的安全传输方式,在IETF(因特网工程任务部)中提出了安全RTP(secure RTP)(SRTP,参考draft-ietf-avt-srtp-00.txt)。在SRTP中,导入了可进行首标压缩的选择性加密或包丢失、比特差错的影响小的加密方式等。即,对RTP包,如图3所示,除去RTP首标11H,只对RTP净荷11PL的部分进行加密,对该加密过的RTP净荷11PL和RTP首标11H生成并附加数据认证码(认证符)11A,能够验证RTP首标11H和加密RTP净荷l1PL的数据的正当性。因此,能够进行有效的保护,但却是RTP专用的技术。
即,在使用安全RTP的情况下,如图1B所示,使用RTP专用的加密算法、加密参数,所以其他UDP上的应用、运输协议不能使用该安全RTP。选择性加密参数、加密算法是固定的,不能适应新协议,不适于技术进步快的内容分发。每当开发新应用时,都需要研究该应用专用的安全技术,不理想。此外,尽管安全性技术不是永久性的,安全RTP的加密算法等却是固定的,在安全性上有问题。
另一方面,因特网上广泛利用的安全技术有SSL(Secure Socket Layer,安全套接层)(TSL)。在不使用SSL(TSL)的状态下,如图4A所示,HTTP(Hypertext Transfer Protocol,超文本传送协议)、FTP(File Transfer Protocol,文件传送协议)、Telnet(远程登录)等应用层11与TCP或UDP的运输层12直接相连。相反,如图4B所示,SSL是位于TCP或UDP等运输层12和应用层11之间的安全协议。SSL通过利用TCP或UDP提供的数据传输功能对发送接收的数据实施某种安全处理,来向应用层提供安全的数据传输服务。因此,具有不限定可利用的应用、加密算法的特点。SSL特别被广泛用于保护Web访问中的HTTP会话,但是也可以通用于FTP或Telnet等其他应用。此外,将SSL改用于移动通信的有WAP(Wireless Application Protocol)Forum(无线应用协议)论坛标准化了的WTLS(Wireless Transport Level Security,无线传输级安全)。
如图5所示,SSL或WTLS的结构大体分为两层。该两层中的下层11S2所使用的协议被称为记录协议(Record Protocol),提供对上层11S1的协议的数据进行加密的功能及附加数据认证码(MAC)的功能。在SSL的两层结构中的上层11S1中包含信号交换协议HSP(Handshake Protocol)、警告协议ALP(Alert Protocol)、更改密码协议CCP(Change Cipher Protocol)、应用数据协议ADP(APPlication Data Protocol)这4种。信号交换协议HSP具有加密·数据认证方式协商功能及终端·服务器认证功能,警告协议ALP具有事件或出错通知功能,更改密码协议CCP具有使协商过的加密·认证方式有效的功能。向对方通知加密通信开始的应用数据协议用于透明地发送接收上级的应用数据,应用层11的HTTP或FTP等的数据经该协议交给记录协议(RecordProtocol)11S2。
图6示出发送端和接收端的记录协议(Record Protocol)11S2间发送接收的数据结构的例子。在首标20H中包含表示上级协议类型(联络、报警、应用数据等)的标识符(Protocol Type)21、SSL的版本(Major Version、MinorVersion)22、数据长度(Length(high)、Length(low))23A、23B。净荷24是加密过的上级协议的数据,加密数据24包含数据主体(Content)24A和该数据主体及首标的正当性验证用认证符MAC 24B。该结构适用于利用记录协议11S2的所有协议,应用协议也不例外。因此,在利用SSL来传输RTP包的情况下,RTP包的首标及净荷整体被加密,映射为记录协议数据的净荷24。
这样,在加密过的RTP包整体上、或RTP包上附加记录协议的首标的情况下,不能在途中路径上对RTP首标进行压缩。即,首标压缩对如图2所示连续设置的RTP首标、UDP首标、IP首标集中进行,所以如果在RTP首标和UDP首标之间插入了记录协议首标10H,则不能对它们集中进行数据压缩。因此,在移动通信中不能期待将SSL/WTSL应用于RTP包的保护。
此外,在一般的数据的通信中,如果能够只对特别需要安全的部分实施加密或附加能够验证正当性的认证等的安全性来进行通信,则也很便利,但是难以自适应地附加该安全性。
本发明的目的在于提供一种数据安全化通信装置及其方法,能够只对输入数据的一部分选择性地实施安全性来进行通信。
发明内容
根据本发明,经通信线路与对方的数据安全化通信装置共享表示输入数据的安全化对象的参数,根据该共享的参数对输入数据的一部分选择性地进行安全化并输出。
图1A是不使用安全RTP的处理图。
图1B是使用安全RTP时的处理图。
图2是包的结构示例图。
图3是选择性加密过的包的数据结构图。
图4A是不使用SSL/WTLS的应用数据的处理图。
图4B是使用SSL/WTLS的情况下的处理图。
图5是SSL/WTLS层的详图。
图6是由SSL/WTLS处理过的记录协议数据的结构图。
图7是本发明装置的实施形态的功能结构及使用本发明装置的系统结构示例图。
图8是加密参数的示例图。
图9是发送端的加密范围共享处理过程的示例流程图。
图10是接收端的加密范围共享处理过程的示例流程图。
图11是图7中的加密·认证符附加部33的处理过程的示例流程图。
图12是图7中的加密·认证符附加部33的输出包的数据结构的示例图。
图13是加密·认证符附加部33的处理过程的另一示例流程图。
图14是本发明的方法的处理过程的示例流程图。
图15是本发明装置的第2实施例的功能结构图。
图16是本发明装置的第3实施例的功能结构图。
具体实施例方式
第1实施例图7示出本发明的第1实施例,并且示出使用该实施形态的数据传输系统的概观。
例如作为服务器或数据终端等的本发明的发送端的数据安全化通信装置30、和同样作为服务器或数据终端等的本发明的接收端的数据安全化通信装置40可以通过通信网50相连。图中示出通信网50为1个网,但是也可以由多个网构成,如公用通信网和因特网组合而成的网等。
在本实施形态中,数据安全化通信装置30在应用部31和运输部32之间设有加密·认证符附加部33作为安全化部件。此外,设有参数共享部34作为运输部32的上层。运输部32具有TCP或UDP功能,例如与具有IP功能的网络部35相连,网络部35被连接在物理层-发送接收部36上,发送接收部36与通信网50相连。
数据安全化通信装置40也与数据安全化通信装置30大致同样构成,即,包括应用部41、运输部42、网络部45及发送接收部46,在本实施形态中,设有解密·验证部43作为安全化部件,此外,设有参数共享部44作为运输部42的上层。
通信装置30在从应用部31发送应用数据之前,与通信对方的装置40协商数据安全化所需的参数、即加密处理·数据认证符(码)生成处理所需的参数,与对方通信装置40共享这些参数。该参数例如如图8所示,是指定加密算法为Null(无)、DES、3DES、RC4等中的哪一种、指定数据认证符生成算法为MD5、SHA等中的哪一种的信息、用于生成密钥的秘密信息、通信装置30(例如服务器端装置)及通信装置40(例如客户端装置)中的加密·解密或认证·验证所用的随机值、发送数据中的加密的范围、数据认证的范围等。
在本实施形态中,特别新设置了指定加密范围及数据认证范围作为该共享的参数这一点很重要,其他参数的共享与现有的基于SSL(TSL)的安全化协议所用的共享参数相同,并且这些参数的共享与现有的SSL同样由通信装置30和40经通信线路相互通信来进行。
这里新使用的共享参数-表示要传输的数据的安全化对象的参数,在本例中为加密范围及数据认证范围,是用于决定对输入数据包(在本例中为来自应用部31的数据包)的什么范围进行加密、认证的信息,有各种指定方法,例如由“从包开头的第几个字节起开始加密”等来指定。
再者,该加密范围及数据认证范围按照输入数据的类型、即在本例中为应用,或者按照连接着通信装置30的通信网50的传输特性(传输速率、延迟特性、传输差错特性、衰减特性、频率特性、失真特性等)来决定。
通信装置30的参数共享部34例如通过图9所示的过程来共享、决定表示安全化对象的参数。接收到加密通信请求后(S1),检查输入数据应用包是否是RTP包(S2),如果是RTP包,则检查连接着装置30的通信网50是否是传输速率低的网、例如移动通信网(S3),如果是移动通信网,则将表示对RTP包选择性地进行加密(例如不将输入数据开头的RTP首标作为加密对象)的加密·认证参数发送到对方通信装置40(S4)。其中,此时也发送加密算法、数据认证符生成算法等其他参数。
另一方面,对方通信装置40的参数共享部44例如如图10所示从通信装置30接收到加密·认证参数后(S1),检查接收到的通信对方的加密·认证参数是否是RTP包选择性加密(S2),如果是,则将参数共享部44中的加密·认证参数决定为RTP包选择性加密(S3),将该决定的加密·认证参数发送到通信装置30(S4)。
如图9所示,通信装置30的参数共享部34从通信装置40接收到表示RTP包选择性加密的加密·认证参数后(S5),将加密·认证参数决定为RTP包选择性加密的对象(S6)。这样,两个参数共享部34、44经通信线路来共享RTP包选择性加密作为加密·认证参数。其中,加密算法等参数也同样同时被决定。在此情况下,例如与现有的SSL等同样,对各参数发送几个候选,让对方装置40来决定。
在图9中,在步骤S2中判定为输入数据不是RTP包、或者在步骤S3中判定为连接着通信装置30的通信网50的传输速率高的情况下,在本例中,将表示对输入数据(包)整体进行加密,即将表示非选择性加密的加密·认证参数发送到对方通信装置40(S7)。
通信装置40的参数共享部44如图10所示,在步骤S2中判定为接收到的通信对方的加密·认证参数不是RTP包选择性加密后,判断来自通信装置40的应用部41的输入数据(应用)是否是RTP包(S5),如果是RTP包,则检查连接着通信装置40的通信网50是否是传输速率低的网、例如移动通信网(S6),如果是,则转移到步骤S3,决定表示RTP包选择性加密的加密·认证参数,将其发送到通信装置30(S4)。在步骤S5中判定为输入数据不是RTP包、或者在步骤S6中判定为连接着的通信网50的传输速率不低、不是移动通信网后(S6),决定表示非选择性加密的加密·认证参数(S7),发送到对方通信装置30(S4)。
认证装置30的参数共享部34如图9所示,在步骤S7的发送后,从对方通信装置40接收到加密·认证参数后(S8),检查该接收加密·认证参数是否是RTP包选择性加密(S9),如果是则转移到步骤S6,将加密·认证参数决定为RTP包选择性加密,而如果不是RTP包选择性加密,则将加密·认证参数决定为非选择性加密(S10)。
这样,参数共享部34和44能够经通信线路来共享加密范围。认证范围与输入数据(应用)无关,并且与分别连接着通信装置30、40的通信网50的传输特性无关,为输入数据整体。作为加密范围,不仅可以除去或不除去首标,而且可以将任意范围指定为加密范围。在输入数据是图像或声音的情况下,也可以只将其重要部分作为认证范围。在此情况下,例如也可以指示在对这些数据进行编码时,只对缺失后不能解码的重要代码自动进行加密。不管是哪一种情况,都进行在共享上述加密范围的同时也共享加密算法等其他参数的处理。
如上所述,参数被共享后,共享的各种参数从参数共享部34、44分别被提供给加密·认证符附加部33、解密·验证部43。
加密·认证符附加部33进行加密·认证符附加处理。其过程的例子示于图11。从上级应用部31输入数据包后(S1),根据应用数据协议透明地输入到加密·认证符附加部33(S2),用根据该数据包中的认证范围参数而选择出的部分通过共享的认证符生成算法·认证符生成密钥来生成认证符(S3)。认证符生成方法例如详见(日本)今井秀树著《暗号のおはなし(加密趣谈)》4.7节。例如通过散列函数来压缩认证范围数据,用单一密钥对压缩数据进行加密来生成。其后,在输入的数据包上附加认证符(S4),对该带有认证符的数据包,根据加密范围参数,用共享的加密算法和加密密钥来实施被选部分的加密(S5)。其中,在进行分组(ブロツク)加密的情况下,在数据不足该固定分组长度的情况下,在加密前进行填充(S6)。
这样加密过的数据结构的例子示于图12。在本例中,对输入的应用数据11D附加认证符MAC,对应用数据中的除去了首标11DH的部分(净荷)和认证符MAC进行加密。包含该选择性加密的数据被交给下层的运输部32,传输到对方通信装置40。
接收端通信装置40用与上述相反的过程对加密过的数据进行解密,利用数据认证符(码)来验证接收数据的正当性。即,在图7中的通信装置40中,从通信装置30接收到的包从运输部42被输入到解密·验证部43,由解密·验证部43根据共享的加密算法、加密密钥、加密范围对该加密过的部分选择性地进行解密,用该解密过的数据中的数据认证符(码)MAC来验证首标及解密过的净荷、即图12中的应用数据的正当性。如果正当,则将该应用数据提供给应用部41。
通过这样共享加密范围,能够对输入数据中的一部分选择性地进行加密,例如通过只对有安全性问题的部分进行加密,与对整体进行加密的情况相比,处理量很少即可,而且不用担心安全性问题。加密范围能够与共享用于加密的其他参数的处理同时进行,用于此的处理只是略微增加。
特别是在上述例子那样输入数据(应用)是RTP包、该RTP包的首标部分为不加密的区域的情况下,在该首标上附加有UDP包首标、IP包首标,与安全RTP同样,能够适应在途中路径上对包含RTP包首标的首标进行的压缩。此外,与安全RTP不同,加密区域能够通过与通信对方协商在会话开始时设定,所以也能够通用于RTP包以外的应用。
在图11中,在附加认证符后进行加密,但是也可以如图13所示在加密(S5)后生成认证符(S6),在加密的包上附加认证符(S7)。在此情况下,接收端在验证接收数据的正当性后,进行解密。在需要填充(S3)的情况下,在加密(5)前进行。
以上的选择性安全化处理的流程如图14所示,输入数据后(S1),经通信线路与对方通信装置共享输入数据的安全化对象(S2),根据该共享的安全化对象参数对输入数据的一部分进行安全化处理(S3),发送到对方装置(S4)。
第2实施例图15示出本发明的第2实施例。它对图5所示的SSL进行了扩展来支持选择性加密。第1实施例的参数共享部34还包括信号交换(Handshake)部34a,与对方通信装置40协商认证处理或加密·数据认证参数;改变密码(Change Cipher)部34b,使加密·数据认证参数有效;报警(Alert)部34c,通知事件出错;第1应用数据部34d,透明地发送接收上级的应用数据;以及第1记录(Record)部34e,用于经下层部(运输部)32来发送接收上述3个部34a、34b、34c、34d的协议数据。
第1记录部34e的协议数据格式利用与图6所示的SSL的记录部相同的格式。信号交换部34a与对方通信装置40协商并共享第1记录部34b及第2记录部(加密·认证符附加部)33利用的加密·数据认证参数。此外,变更密码(Change Cipher)部34b使第1记录部34e及第2记录部33的加密·数据认证参数有效。即,开始该加密并通知给对方。向第1记录部34e中输入信号交换部34a的协议消息或第1应用数据部34d的无需选择性加密的应用数据。
与上述协议数据不同,需要选择性加密的应用数据的发送接收由第2记录部、即加密·认证符附加部33来发送接收。第2应用数据部37用于将上级的第2应用部31b的数据包透明地交给第2记录部33。此外,与第1记录部34e不同,第2记录部、即加密·认证符附加部33不对输入数据添加新的首标,只实施加密认证符生成处理。第1记录部34e共享的参数被用于第2记录部33的加密·数据认证处理。加密·数据认证处理与第1实施例相同。
参数共享部34的信号交换部34a与对方通信装置40进行的参数共享处理最初以不加密方式来进行通信,但是也可以从途中起,如图6所示的数据结构所示,进行加密·认证符附加,对这些参数的共享也进行安全化。此外,应用不像RTP包那样要求实时性、不频繁发送的HTTP、FTP、Telnet、RTSP(用于打开RTP会话的协议)等的应用数据包从第1应用部31a通过第1应用数据部34d输入到第1记录部34e,通过共享的参数对该包整体进行加密,如图6所示,附加记录部的首标20H,作为记录协议包提供给运输部32。其中,在对方一侧装置40中,图15中的第2记录部-加密·认证符附加部33变为解密·验证部,其他结构相同。
第3实施例图16示出本发明的第3实施例。在本实施形态中,经RTSP或HTTP等第1应用部31a与通信对方协商如何共享对RTP等第2应用部31b的应用数据应用的加密认证符附加参数。例如,通过用对方通信装置40的公开密钥对图8的加密参数进行加密,嵌入协议消息主体中,能够传输到对方通信装置40。
也可以使1个通信装置中同时具有加密·认证符附加部和解密·验证部。在上述中,对数据使用了加密和数据认证符附加两者作为安全化,但是也可以只使用其中一个。也可以使计算机执行程序来实现通信装置30、40的各部。
发明的效果如上所述,根据本发明,能够对数据的一部分选择性地实施安全化,并能够不依赖于特定的应用来通用地保护传输数据,而且如果特别应用于移动通信则也能够压缩首标。
权利要求
1.一种数据安全化通信装置,包含参数共享部件,经通信线路与对方的数据安全化通信装置共享表示输入数据的安全化对象的参数;以及安全化部件,根据上述共享的参数对上述输入数据的一部分选择性地进行安全化并输出。
2.如权利要求1所述的数据安全化通信装置,其中,还设有按照输入数据的类型(应用)来决定上述安全化对象的部件。
3.如权利要求1或2所述的数据安全化通信装置,其中,还设有按照连接着该装置的网络的传输特性来决定上述安全化对象的部件。
4.如权利要求1、2或3所述的数据安全化通信装置,其中,上述安全化对象是加密对象,上述对方的数据安全化通信装置是解密装置,上述安全化部件是加密部件。
5.如权利要求4所述的数据安全化通信装置,其中,上述输入数据是RTP包,上述加密对象是除去RTP首标的数据。
6.如权利要求4所述的数据安全化通信装置,其中,决定上述加密对象的基准是上述网络的通信线路的传输速率。
7.如权利要求1、2或3所述的数据安全化通信装置,其中,上述安全化对象是上述输入数据的认证处理范围,上述对方的数据安全化通信装置是数据验证装置,上述安全化部件是由上述输入数据中的上述认证处理范围来计算认证符的部件,包含在输入数据上附加上述认证符并输出的部件。
8.一种数据安全化通信装置,包含经通信线路与对方的数据安全化通信装置共享表示接收数据的解密对象的参数的部件;以及解密部件,在上述接收数据中,根据上述共享的参数对一部分选择性地进行解密。
9.一种数据安全化通信装置,包含经通信线路与对方的认证符附加装置共享表示接收数据的认证范围的参数的部件;以及验证部件,在接收数据中,根据上述参数由上述认证范围的数据和上述接收数据中包含的认证符来验证上述认证范围中包含的数据的完整性。
10.一种数据安全化通信方法,包含下述过程(a)经通信线路与对方解密装置共享表示输入数据的加密对象的参数;以及(b)根据上述共享的参数对上述输入数据的一部分选择性地进行加密并输出。
11.如权利要求10所述的数据安全化通信方法,其中,上述输入数据是RTP包,对上述RTP包的除去RTP首标的数据进行上述选择性加密。
12.一种数据安全化通信方法,包含下述过程(a)经通信线路与数据验证装置共享表示输入数据的认证处理范围的参数;(b)在上述输入数据中,由上述参数所指定的部分来计算认证符;(c)在上述输入数据上附加上述认证符并输出。
13.一种数据安全化通信方法,包含下述过程(a)经通信线路与对方的加密装置共享表示接收数据的解密对象的参数;以及(b)在接收数据中,根据上述共享的参数对一部分选择性地进行解密。
14.如权利要求13所述的方法,其中,上述接收数据是RTP包,对上述RTP包的除去RTP首标的数据进行上述选择性解密。
15.一种数据安全化通信方法,包含下述过程(a)经通信线路与对方的认证符附加装置共享表示接收数据的认证范围的参数;以及(b)在接收数据中,根据上述参数由上述认证范围的数据和上述接收数据中包含的认证符来验证上述认证范围中包含的数据的正当性。
全文摘要
按照输入数据的类型和连接的网络的传输特性来确定加密对象,将按照该加密对象包含加密对象范围和数据认证范围的参数与通信对方共享并进行通信。
文档编号G09C1/00GK1461461SQ02801264
公开日2003年12月10日 申请日期2002年4月22日 优先权日2001年4月20日
发明者铃木敬, 吉村键 申请人:株式会社Ntt都科摩