CN103109493A - 通信装置、程序以及方法 - Google Patents

通信装置、程序以及方法 Download PDF

Info

Publication number
CN103109493A
CN103109493A CN2010800653544A CN201080065354A CN103109493A CN 103109493 A CN103109493 A CN 103109493A CN 2010800653544 A CN2010800653544 A CN 2010800653544A CN 201080065354 A CN201080065354 A CN 201080065354A CN 103109493 A CN103109493 A CN 103109493A
Authority
CN
China
Prior art keywords
data
key
communicator
encryption key
access key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2010800653544A
Other languages
English (en)
Other versions
CN103109493B (zh
Inventor
山田健二
岩尾忠重
高冈秀文
古贺俊介
伊豆哲也
武仲正彦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of CN103109493A publication Critical patent/CN103109493A/zh
Application granted granted Critical
Publication of CN103109493B publication Critical patent/CN103109493B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/068Network architectures or network communication protocols for network security for supporting key management in a packet data network using time-dependent keys, e.g. periodically changing keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及通信装置、程序以及方法。通信装置具有数据存储部,其存储加密数据或者解密数据;解密部,其对加密数据进行解密;加密部,其对解密数据进行加密;和判断部,其向加密部发出指令。上述指令是命令加密部从数据存储部读取第1解密数据,并向数据存储部回写第2加密数据的指令,其中,所述第1解密数据是由解密部基于加密密钥对第1加密数据进行解密而得的,所述第2加密数据是基于加密密钥对第1解密数据进行加密而得的。

Description

通信装置、程序以及方法
技术领域
本发明涉及加密通信。
背景技术
与基于对称密钥加密(symmetric cryptography)的加密通信有关的话题之一是发送者与接收者之间的密钥建立(key establishment)。
例如,在由多个节点装置构成的网络中的第1节点装置中,访问密钥创建部按第1时间变更第1节点装置所固有的加密密钥、即第1访问密钥。并且,公共密钥创建部在多个节点装置中按第2时间变更公用的公共密钥。
另外,第1节点装置用创建的公共密钥对创建的第1访问密钥进行加密来进行发送,并且接收从第2节点装置发送来的、包含用公共密钥对第2节点装置的第2访问密钥进行加密而得的数据的访问密钥通知帧。并且,在第1节点装置中,解密部利用创建的公共密钥对接收到的访问密钥通知帧进行解密,由此取得第2访问密钥。并且,从第1节点装置的发送部发送用第2访问密钥对平文帧进行加密而得的加密帧,该平文帧被附有用公共密钥对包含根据平文帧计算出的哈希值的数据进行加密而得的署名数据。
另外,作为秘密通信用的体系结构,已知有Security Architecture forInternet Protocol(IPsec),也已知有利用IPsec的加密通信系统。例如,已知有包含向连接有单一或者多个终端的IPsec网关发布应对VirtualLocal Area Network(VLAN)的加密密钥的监视控制服务器的如下那样的加密通信系统。
即,监视控制服务器具备进行向IPsec网关发布的应对VLAN的加密密钥的管理以及发布的单元。并且,IPsec网关具备将本次从监视控制服务器发布的加密密钥作为新密钥进行保持的新密钥存储器、和将上次发布的加密密钥作为旧密钥进行保持的旧密钥存储器。IPsec网关还具备由于基于新密钥的加密通信不成功而切换成基于由旧密钥存储器保持的旧密钥的加密通信的单元。
除此之外,提出了无线Local Area Network(LAN)的密钥同步机制。根据该密钥同步机制,接入点在从工作站接收到由新密钥正确加密后的第1数据帧之前不会开始使用新加密密钥。并且,新密钥在从该时点到密钥刷新间隔的期限到期为止被使用。
另外,在加密密钥被更新的加密通信系统中,由于密文数据被发送的定时和更新的加密密钥在发送装置与接收装置之间被建立的定时的偏差,会发生如下的问题。即,会发生利用作为解密用的加密密钥而由接收装置识别的最新加密密钥无法正确地对数据进行解密的情况。
例如,在接收装置将要对加密密钥进行更新之前的、发送装置还未对加密密钥进行更新的时间点,发送装置有时利用被更新前的加密密钥对数据进行加密来创建密文数据,并发送创建的密文数据。并且,接收装置有时在将要接收密文数据之前对加密密钥进行更新。这样,接收装置无法利用在当前识别为解密用的加密密钥的更新后的加密密钥来正确地解密接收到的密文数据。
于是,期望接收装置进行用于得到正确的平文数据的某些处理。例如,接收装置不仅保持最新的加密密钥,也保持旧的加密密钥,在基于最新的加密密钥的解密失败的情况下,也可以利用旧加密密钥来再次解密密文数据。这样,接收装置即使在接收到利用更新前的旧加密密钥进行加密而得的密文数据的情况下,也能够得到正确的平文数据。
更具体而言,接收装置可以在接收到密文数据时例如进行如下的动作。即,接收装置首先进行基于最新加密密钥的解密,在解密结束后,也准备着使用旧加密密钥的再度的解密而持续保持密文数据。并且,在对解密的数据进行验证,并且通过解密没有得到正确的平文数据的情况下,接收装置利用旧加密密钥来进行密文数据的解密。
专利文献1:国际公开WO2009/130917号公报
专利文献2:日本特开2007-267301号公报
专利文献3:日本特表2007-500972号公报
为了准备使用旧加密密钥的再次解密,上述的接收装置除了需要保持作为基于最新加密密钥的解密结果而得到的数据的存储区域之外,还需要保持接收到的密文数据的存储区域。
另一方面,根据加密通信系统的利用领域的不同,有时接收装置的存储容量受到极大的限制。并且,根据发明者从研究结果得到的见解,对于存储容量较小的接收装置而言,将作为基于最新加密密钥的解密结果而得到的数据和接收到的密文数据这双方进行保持的情况很可能直接导致因存储器不足造成的性能下降或者错误。
发明内容
于是,本发明的目的在于提供一种技术,使得在加密密钥被更新的加密通信系统中,即使是存储容量较小的通信装置也能够容易进行使用旧加密密钥的解密。
由一个方式提供的通信装置具备存储加密数据或者解密数据的数据存储部、对加密数据进行解密的解密部、和对解密数据进行加密的加密部。所述通信装置还具备判断部,其向所述加密部发出指令,使所述加密部从所述数据存储部读取第1解密数据,并向所述数据存储部回写第2加密数据,其中,所述第1解密数据是由所述解密部基于加密密钥对第1加密数据进行解密而得的,所述第2加密数据是基于所述加密密钥对所述第1解密数据进行加密而得的。
由于将第1加密数据解密为第1解密数据时所用的加密密钥和将第1解密数据加密为第2加密数据时所用的加密密钥相同,因此第2加密数据的内容与第1加密数据相同。因此,上述的通信装置具有因向数据存储部的回写而产生的存储区域的节约效果。也就是说,由于与第1加密数据内容相同的第2加密数据被回写至数据存储部,所以根据上述通信装置,数据存储部无需与第1解密数据不同地另外持续保持第1加密数据。即,上述的通信装置实现了存储区域的消耗抑制这样的效果。
另外,上述通信装置中的上述加密密钥可以是被更新的加密密钥,第1加密数据可以是上述通信装置从其他装置接收到的数据。此时,上述通信装置能够在无需与对接收到的数据进行解密而得的解密数据不同地另外持续保持所接收到的数据本身的情况下,进行使用旧加密密钥的解密的准备工作。
附图说明
图1是表示第1实施方式中的通信的一例的时序图。
图2是表示应用第1实施方式的环境的一例的系统构成图。
图3是第1实施方式的通信装置的构成框图。
图4是表示第1实施方式的通信装置的硬件构成的例子的图。
图5是表示第1实施方式的通信装置所存储的数据的一例的图。
图6是说明在第1实施方式中收发的数据的格式的图。
图7是第1实施方式的通信装置以数据的接收为触发进行的接收处理的流程图。
图8是示意性说明第1实施方式中的存储器上的数据变化的例子的图。
图9是示意性说明比较例中的存储器上的数据变化的例子的图。
图10是在第1实施方式中由通信装置进行的加密密钥更新处理的流程图。
图11是示意性说明伴随着加密密钥更新处理的数据的变化的例子的图。
图12是表示加密密钥更新处理的变形例的流程图。
图13是示意性说明伴随着变形的加密密钥更新处理的数据变化的例子的图。
图14是第2实施方式的通信装置的构成框图。
图15是表示第2实施方式的通信装置所存储的数据的一例的图。
图16是第2实施方式的通信装置以数据的接收为触发进行的接收处理的流程图。
图17是在第2实施方式中由通信装置进行的外部来源访问密钥更新处理的流程图。
图18是在第2实施方式中由通信装置进行的加密PDU接收处理的流程图。
图19是在第2实施方式中由通信装置进行的内部来源访问密钥发送处理的流程图。
图20是表示第2实施方式中的公共密钥和内部来源访问密钥的更新的时序图。
具体实施方式
以下参照附图对实施方式进行详细说明。具体而言,首先参照图1~13对第1实施方式进行说明,然后参照图14~20对第2实施方式进行说明。最后对其他实施方式进行说明。
另外,在以下的本说明书的说明中,只要没有特别说明,假定进行基于对称密钥加密的加密通信。另外,无论在哪种实施方式中,都既能够利用流加密,也能够利用块加密,该内容会在后面参照图8~9详细说明。
图1是表示第1实施方式中的通信的一例的时序图。图1表示通信装置100B向通信装置100A发送加密后的数据的例子。
通信装置100A和100B双方按照某种密钥建立的方法,识别由通信装置100A用于解密的当前的加密密钥(cryptographic key)。另外,由于使用对称密钥加密,所以对于通信装置100A的解密密钥和对于通信装置100B的加密密钥是相同的加密密钥。
例如,通信装置100A和100B可以按照相同的算法来分别创建加密密钥。或者,也可以由通信装置100A创建加密密钥,并将创建的加密密钥发送给通信装置100B。例如,通信装置100A可以利用密钥发送用的其他加密密钥对创建的加密密钥进行加密来向通信装置100B发送。为了对发送对象的加密密钥进行加密,通信装置100A所用的密钥发送用的加密密钥可以是对称密钥加密的加密密钥,也可以是公开密钥加密下的通信装置100B的公开密钥。
如上所述,第1实施方式与通信装置100A和100B之间的密钥建立的具体的方法无关,可以应用于各种加密通信系统。
另外,为了提高加密通信的机密性,在通信装置100A和100B之间,以适当的间隔来更新加密密钥。以下为了便于说明,将更新的加密密钥以“第1代、第2代,……”的方式进行区別,将通信装置100A解密所用的第a代的加密密钥表示为“KA,a”。
发送侧的通信装置100B与识别发送目标的通信装置100A的信息对应地存储通信装置100A解密所用的当前的加密密钥。以下为了便于说明,作为识别通信装置100A的信息,设定使用通信装置100A的地址AdrA,但是也可以利用识别编号等地址AdrA以外的识别信息。
另外,第1实施方式的加密通信能够在各层的协议上实现。换句话说,第1实施方式的Protocol Data Unit(PDU)并不限定于特定层的特定协议的PDU。因此,通信装置100A的地址AdrA也可以是与协议层对应的地址。
例如,在将第1实施方式应用于数据链路层的通信的情况下,MediaAccess Control(MAC)地址可以被用作用于识别通信装置100A的地址AdrA。或者,在将第1实施方式应用于网络层的通信的情况下,InternetProtocol(IP)地址可以被用作用于识别通信装置100A的地址AdrA
另外,第1实施方式中的加密通信可以是无线通信、有线通信或者其组合之一。并且,通信装置100A和100B之间的跳数可以是1,也可以是2以上。
如图1所示,例如在时刻TB101,通信装置100B对通信装置100A的最新加密密钥KA,a进行识别。并且,通信装置100B将与通信装置100A的地址AdrA对应地存储的上代的加密密钥KA,a-1置换为新加密密钥KA,a
另一方面,通信装置100A也在时刻TA101创建最新的加密密钥KA,a,将通信装置100A自身在当前解密所用的加密密钥(以下称为“当前密钥”)从上代的加密密钥KA,a-1更新成新的加密密钥KA,a。另外,第1实施方式的通信装置100A也存储当前密钥的1个上代的加密密钥(以下称为“旧密钥”)。因此,在时刻TA101,通信装置100A也进行将旧密钥从KA,a-2更新成KA,a-1的处理。
时刻TB101和TA101虽然大致同时,但是时刻TB101也可以早于时刻TA101,反之亦可。无论是哪种情况,都在时刻TB101和时刻TA101中较晚的时间点,在通信装置100A和100B之间建立加密密钥KA,a
并且,通信装置100B例如在时刻TB102,创建用于向通信装置100A发送的平文数据P101。并且,通信装置100B在时刻TB103,利用与作为发送目标的通信装置100A的地址AdrA对应地存储的加密密钥KA,a,对平文数据P101进行加密,从而得到密文数据C101。
另外,如上述那样适用第1实施方式的协议是任意的,但是一般PDU包含头部和载荷部。平文数据P101和密文数据C101是相当于载荷部的数据。另外,平文数据P101的种类是任意的。平文数据P101例如可以是文本数据,也可以是图像数据,也可以是特定的应用软件的格式的二进制数据。
通信装置100B在如上述那样得到密文数据C101时,在时刻TB104将密文数据C101发送至通信装置100A。另外,准确来讲,通信装置100B发送的是包含密文数据C101作为载荷部的PDU,但是由于头部与加密无关,所以为了简化说明,以下适当地省略了与头部有关的说明。
如上述那样从通信装置100B发送的密文数据C101在时刻TA102被通信装置100A接收。并且,在时刻TA102由通信装置100A存储为当前密钥的是在时刻TA101创建的加密密钥KA,a。因此,通信装置100A在接着时刻TA102的时刻TA103,利用加密密钥KA,a来对密文数据C101进行解密。
如上所述,密文数据C101是由基于加密密钥KA,a的加密得到的数据。因此,通过在时刻TA103进行的基于加密密钥KA,a的解密,得到与由通信装置100B在时刻TA102创建的数据相同的平文数据P101。
另外,平文数据P101包含2个部分,第2部分表示第1部分的特征,该内容会参照图6在后面进行说明。以下将表示第1部分的特征的值称为“特征值”。在第2部分中,设定有特征值本身,或者对特征值实施规定操作而得到的值。
作为特征值,例如能够利用哈希值等,详细内容会在后面参照图6进行说明。因此,通信装置100A通过利用特征值来检查平文数据P101的完整性(integrity),能够确认通过解密得到的平文数据P101是正确的平文数据。
另外,在图1的例子中,通信装置100B还在时刻TB105,创建用于向通信装置100A发送的其他的平文数据P102。由此,通信装置100B在时刻TB106与时刻TB103同样地利用加密密钥KA,a来对平文数据P102进行加密,从而得到密文数据C102。并且,通信装置100B在时刻TB107与时刻TB104同样地发送密文数据C102。
另一方面,通信装置100A有时在将要从通信装置100B接收密文数据C102之前,在时刻TA104将旧密钥从KA,a-1更新为KA,a,将当前密钥从KA,a更新为KA,a+1。也就是说,通信装置100A有时在时刻TA104的加密密钥更新后的时刻TA105接收密文数据C102。
当然,通信装置100B也在由通信装置100A进行加密密钥的更新的时刻TA104附近的时刻TB108,将与通信装置100A的地址AdrA对应的加密密钥从KA,a更新为KA,a+1。因此,在时刻TA104和时刻TB108中较晚的时刻、即时刻TB108处,在通信装置100A和100B之间建立新的加密密钥KA,a+1
但是,如上所述,偶尔会在将要进行时刻TB108处的更新之前的时刻TB106由通信装置100B对平文数据P102进行加密。另外,通信装置100A在将要在时刻TA105接收密文数据C102之前,有时会在时刻TA104更新当前密钥和旧密钥。
例如,作为密钥建立的方法,在采用了将由通信装置100A创建的新的加密密钥KA,a+1向通信装置100B发送的方法的情况下,可能在将要进行密钥发送之前进行密文数据C102的发送。或者,作为密钥建立的方法,在采用了通信装置100A和100B分别参照时刻,按照相同算法来创建加密密钥的方法的情况下,与通信装置100A的内置时钟相比,通信装置100B的内置时钟可能较慢。另外,即使通信装置100A和100B的内置时钟准确地同步,在从密文数据C102的发送到接收为止所需的时间期间,可能进行当前密钥的更新。
根据以上各种理由,如图1所示,有时会在由通信装置100A接收到密文数据C102的时刻TA105已经存储有比创建密文数据C102所用的加密密钥KA,a新的加密密钥KA,a+1作为当前密钥。此时,接收到密文数据C102的通信装置100A在时刻TA106利用当前密钥KA,a+1来对密文数据C102进行解密。
这样,作为解密结果虽然得到了解密数据D102,但是解密数据D102与原始的平文数据P102不同。通信装置100A能够通过进行特征值的检查来判断为解密数据D102不是正确的平文数据。
并且,通信装置100A若判断为解密数据D102不是正确的平文数据,则识别为“密文数据C102可能是利用旧密钥KA,a加密得到的数据”。因此,通信装置100A尝试进行基于密文数据C102的旧密钥KA,a的解密。
另外,第1实施方式的通信装置100A在时刻TA106,为了节约存储器,并不是在与密文数据C102不同的存储区域创建解密数据D102,而是在存储有密文数据C102的存储区域上覆盖重写解密数据D102。因此,在要尝试进行基于密文数据C102的旧密钥KA,a的解密的阶段,通信装置100A没有保持密文数据C102。
于是,通信装置100A在时刻TA107,利用当前密钥KA,a+1来对解密数据D102进行再次加密,由此恢复密文数据C102。另外,在时刻TA107的再次加密的过程中,通信装置100A为了节约存储器,也在存储有解密数据D102的存储区域上覆盖重写密文数据C102。
并且,通信装置100A在如上述那样通过再次加密恢复了密文数据C102后,在时刻TA108,利用旧密钥KA,a对密文数据C102进行解密。由于这次是利用与加密时相同的加密密钥KA,a对密文数据C102进行解密,所以作为解密的结果,得到与在时刻TB105由通信装置100B创建的数据相同的平文数据P102。
另外,在时刻TA108的解密过程中,通信装置100A为了节约存储器,也在存储有恢复的密文数据C102的存储区域上覆盖重写平文数据P102。并且,通信装置100A通过特征值的检查,能够确认平文数据P102是正确的平文数据。
通过由通信装置100A进行以上那样的再次加密和基于旧密钥的解密,即使在因定时的偏差而导致在基于当前密钥的解密中未得到正确的平文数据的情况下,通信装置100A也能够通过基于旧密钥的解密来得到正确的平文数据。因此,无需进行数据的重送。也就是说,通信装置100A无需向通信装置100B请求重送数据,也无需由通信装置100B根据请求用新的加密密钥KA,a+1对平文数据P102重新加密,并将得到的密文数据向通信装置100A发送。另外,通信装置100B也无需进行重送的准备工作而在一段期间保持平文数据P102。
因此,第1实施方式实现如下的(a1)~(a3)的效果。
(a1)通信装置100A和100B之间的通信量可以较少。
(a2)不会发生通信装置100B为了进行重送的准备工作而消耗多余的存储区域的情况。
(a3)由于与重送请求和数据的重送所花的时间相比,在通信装置100A内进行再次加密和再次解密所花的时间一般较短,所以通信装置100A能够快速得到正确的平文数据P102。
并且,第1实施方式的通信装置100A如上所述,将接收到的密文数据C102、解密数据D102、通过再次加密而恢复的密文数据C102以及平文数据P102在同一存储区域依次覆盖重写。因此,即使在因某种理由通信装置100A所搭载的存储器的容量受到了限制的情况下,根据第1实施方式,也可以得到上述(a1)~(a3)的效果。
另外,关于图1,如上述那样仅对从通信装置100B向通信装置100A发送数据的情况进行了说明,但是当然也可以由通信装置100A向通信装置100B发送数据。下面说明各通信装置具有接收数据的功能和发送数据的功能这双方的情况。
为了实现通信装置100A和100B之间的双向通信,通信装置100A还与用于识别通信装置100B的通信装置100B的地址AdrB对应地存储通信装置100B的最新的加密密钥KB,b。另外,通信装置100B将通信装置100B自身在解密所用的最新的加密密钥KB,b作为当前密钥进行存储,并且将当前密钥的1个上一代的加密密钥KB,b-1作为旧密钥进行存储。
这样,能够进行双向通信,另外对于从通信装置100A向通信装置100B发送的数据,也能够由通信装置100B根据需要进行再次加密和基于旧密钥的再次解密。因此,即使在通信装置100A和100B双方都只搭载有小容量的存储器的情况下,也能够得到上述(a1)~(a3)的效果。
另外,作为存储器容量受到限制的通信装置的具体例,例如可以列举传感器网络中的通信装置。传感器网络是用于从配置于适当位置的多个传感器收集各种信息的网络,传感器网络内的各节点是与传感器连接,或者内置于传感器的通信装置。传感器例如可以是图像传感器、温度传感器、湿度传感器、压力传感器、加速度传感器等任意种类的传感器。
根据用途的不同,可能会设计包含数千个~数十万个数量级的多个通信装置的传感器网络。并且,在现实社会中,在各个通信装置价格高昂的情况下,构筑包含非常多的通信装置的传感器网络来运用是不现实的。因此,面向传感器网络的通信装置优选制造原价便宜的装置。
并且,为了抑制制造原价,例如抑制内置存储器的容量的做法是有效的。其原因在于,通过对内置存储器的容量进行限制,能够使通信装置所用的集成电路(Integrated Circuit;IC)的面积变小,从而1枚半导体晶片能够制造出更多的IC,IC的单价从而下降。
因此,第1实施方式的通信装置100A和100B优选为例如传感器网络内的通信装置等因某种理由对内置存储器的容量进行了限制时的通信装置。当然,即使是搭载有充裕的存储器的通信装置也能够得到基于第1实施方式的节约存储器的效果和上述(a1)~(a3)的效果。
这样,通信装置100A和100B能够用于各种环境,以下参照图2进一步具体说明环境的例子。
图2是表示应用第1实施方式的环境的一例的系统构成图。第1实施方式并不限定应用于无线通信网络,在图2的例子中,通信装置100A和100B进行无线通信。
另外,在图2中,还示出了与通信装置100A以及100B同样的其他通信装置100C~100L。图2中还图示了网关装置120和服务器130。图2的自组织(adhoc)网络140是由以上的通信装置100A~100L和网关装置120自主构筑的网络。
在图2的例子中,在自组织网络140内,通信装置100A能够直接通信的是通信装置100B~100I。也就是说,从通信装置100A开始的跳数为1的是通信装置100B~100I,从通信装置100A向通信装置100J~100L的跳数为2以上。
自组织网络140可以作为传感器网络来利用。也就是说,各个通信装置100A~100L可以与传感器连接,或者内置有传感器。此时,各个通信装置100A~100L将包含由传感器探测到的数据的PDU通过自组织网络140发送至网关装置120。
在图2的例子中,通信装置100D、100F和100I能够与网关装置120直接通信。因此,通信装置100A所发送的PDU例如可能经由通信装置100D经过2跳就到达网关装置120。其他通信装置100B~100L所发送的PDU也经由自组织网络140内的适当路径到达网关装置120。
并且,网关装置120由于与服务器130连接,因此由各通信装置100A~100L发送的PDU从网关装置120进一步地转送至服务器130。另外,网关装置120可以与服务器130直接连接,也可以经由网络间接连接。另外,网关装置120和服务器130之间的连接是有线、无线、或者其组合。
如以上那样,服务器130能够从自组织网络140内的各通信装置100A~100L收集由传感器探测到的数据并进行分析。例如,在各传感器是温度传感器的情况下,服务器130可以进行调查温度分布、温度变化的处理,也可以进行温度预测处理。
并且,如图1所例示那样,自组织网络140内的通信被加密,加密密钥以合适的间隔被更新。具体而言,在至少在自组织网络140内能够直接通信的相邻的2台装置之间,以合适的间隔更新的加密密钥以某种方法被共用,从而实现密钥建立。
例如,在能够利用1跳通信的通信装置100A和100D之间,相互的加密密钥被共用。同样,在能够利用1跳通信的通信装置100D和网关装置120之间相互的加密密钥也被共用。因此,与通信装置100A连接或者被内置的传感器所探测到的数据如下述那样,以被加密的状态从通信装置100A经由通信装置100D到达网关装置120。
另外,自组织网络140中的数据转送路径的确定算法是任意的,但是为了便于说明,如下述那样进行假定。即,在自组织网络140内的最终的发送目标是网关装置120的情况下,假定通信装置100A在相邻的通信装置100B~100I中确定向通信装置100D发送PDU。
因此,在该假定的基础上,通信装置100A利用与通信装置100D的地址对应地存储的通信装置100D的加密密钥来对由传感器探测到的数据进行加密。并且,通信装置100A创建包含通过加密得到的密文数据作为载荷部的PDU,并发送创建的PDU。
由此,通信装置100D接收PDU。与图1的例子同样,通信装置100D可能通过进行使用当前密钥的解密从PDU得到正确的平文数据。或者,根据情况的不同,密钥建立和PDU的收发的定时的偏差作为原因导致通信装置100D可能在使用当前密钥的第1次解密中无法得到正确的平文数据。但是,即使在这种情况下,通信装置100D通过进行使用当前密钥的再次加密和使用旧密钥的再次解密,最终能够得到正确的平文数据。
因此,通信装置100D利用网关装置120的加密密钥对通过解密得到的平文数据进行加密。并且,通信装置100D创建包含通过加密得到的密文数据作为载荷部的PDU,并将创建的PDU向网关装置120的地址发送。
由此,网关装置120接收PDU。与图1的例子同样,网关装置120可能通过进行使用当前密钥的解密从PDU得到正确的平文数据。或者,根据情况的不同,密钥建立和PDU收发的定时的偏差作为原因导致网关装置120可能在使用当前密钥的第1次解密中无法得到正确的平文数据。但是,即使在这种情况下,网关装置120通过进行使用当前密钥的再次加密和使用旧密钥的再次解密,最终能够得到正确的平文数据。
由此,网关装置120对通过解密得到的平文数据适当地进行加密,创建包含通过加密得到的密文数据作为载荷部的PDU,并将创建的PDU向服务器130发送。另外,在自组织网络140内使用的加密算法和在网关装置120与服务器130之间使用的加密算法可以相同也可以不同。
服务器130通过从网关装置120接收PDU,并对接收到的PDU的载荷部进行解密,能够得到由与通信装置100A连接(或者内置于通信装置100A)的传感器探测到的数据、即平文数据。服务器130同样地也能够从其他通信装置100B~100L收集由传感器探测到的数据。
另外,上面主要以将自组织网络140作为传感器网络利用的情况为例进行了说明,而自组织网络140也可以不是传感器网络。
接着,参照图3~13对第1实施方式进一步详细说明。
图3是第1实施方式的通信装置的构成框图。另外,在第1实施方式中,通信装置100A~100L都是图3的通信装置100,网关装置120也具有图3所示的各部。另外,在图3和后述的图14中,虽然存在箭头线交叉的位置,但是请注意线的交叉并不代表线彼此的连接。
图3的通信装置100具有密钥管理部101、密钥存储部102、指示部103、存储器104、接收部105、解密部106、判断部107、再次加密部108、平文处理部109和发送部110。并且,发送部110包含加密部111,加密部111包含密钥识别部112。通信装置100内的上述各部的详细说明如下。
密钥管理部101反复创建通信装置100解密所用的加密密钥。并且,密钥存储部102是对密钥管理部101创建的多个加密密钥进行存储的第1存储部的一例。
具体而言,第1实施方式的密钥存储部102如图1所示存储当前密钥和旧密钥这2个加密密钥。但是,根据实施方式的不同,密钥存储部102也可以存储包含2代以上之前的加密密钥的3个以上的加密密钥。另外,密钥管理部101不仅仅是如上述那样通过反复创建加密密钥来作为密钥创建部进行动作,还进行伴随着加密密钥的创建的旧密钥的更新等与加密密钥有关的其他管理。
另外,指示部103将密钥存储部102所存储的多个加密密钥中的1个加密密钥选择为选择加密密钥。也就是说,指示部103将解密或者再次加密所用的加密密钥选择为选择加密密钥。另外,选择加密密钥根据状况而不同,会在后面进行详细说明。
并且,存储器104是第2存储部的一例。在图3中,存储器104上所存储的接收数据114和发送数据115也被图示。另外,在图3中,将包含头部和载荷部的PDU整体的数据图示为接收数据114和发送数据115。
根据图1的说明可知,接收数据114的载荷部可以是接收到的密文的状态,也可以是利用与加密时不同的加密密钥被解密的状态。并且,接收数据114的载荷部可以是被再次加密的状态,也可以是利用与加密时相同的加密密钥被解密后的正确的平文的状态。另外,如后述那样,发送数据115的载荷部也可以是平文的状态,也可是是密文的状态。
换言之,存储器104是存储加密数据或解密数据的数据存储部的一例。另外,换言之,加密数据是密文数据。解密数据可以是被正确解密的平文数据,也可以是利用与加密时不同的加密密钥被解密的数据。
并且,接收部105接收密文数据,并将接收到的密文数据保存于存储器104。也就是说,图3的接收数据114的载荷部最初是接收部105将接收数据114保存于存储器104时的密文的状态。
另外,解密部106从密钥存储部102读取由指示部103指示的选择加密密钥,利用选择加密密钥对在存储器104中存储为接收数据114的载荷部的密文数据进行解密。另外,在解密时,解密部106用通过解密得到的解密数据对存储器104上的密文数据覆盖重写。其结果,接收数据114的载荷部成为被选择加密密钥解密的状态。如参照图1所说明的那样,通过覆盖重写能够实现存储器104的有效利用。
判断部107根据作为接收数据114的载荷部而存储于存储器104上的解密数据所包含的第1部分计算表示第1部分的特征的特征值。并且,如果计算出的特征值和解密数据所包含的第2部分匹配,则判断部107判断为解密数据是正常的平文数据。反之,如果计算出的特征值和解密数据所包含的第2部分不匹配,则判断部107判断为解密数据异常。
并且,再次加密部108在解密数据被判断部107判断为异常时,从密钥存储部102读取由指示部103指示的选择加密密钥,并利用选择加密密钥对存储器104上的解密数据进行加密。这样,再次加密部108是对解密数据进行加密的加密部的具体例。
另外,在加密时,再次加密部108利用通过加密再次得到的密文数据对存储器104上的解密数据覆盖重写。其结果,接收数据114的载荷部恢复成原始的密文。如参照图1所说明的那样,通过覆盖重写能够实现存储器104的有效利用。
另外,如上述那样选择加密密钥根据状况的不同而不同。
例如,在接收部105接收到密文数据时,指示部103将由密钥管理部101创建的最新的加密密钥、即当前密钥选择为选择加密密钥。另外,接收部105命令解密部106进行接收数据114的载荷部的解密。因此,此时解密部106使用当前密钥对被存储为接收数据114的载荷部的密文数据进行解密。
另一方面,在解密数据被判断部107判断为异常时,指示部103将与当前选择的选择加密密钥不同的加密密钥重选为选择加密密钥。另外,在第1实施方式中,解密数据被判断为异常的情况具体是选择加密密钥为当前密钥的情况。因此,指示部103重选为选择加密密钥的加密密钥具体是指旧密钥。
另外,在解密数据被判断部107判断为异常时指示部103重选选择加密密钥的定时更准确来讲,是再次加密部108按照判断部107的判断利用密文数据对存储器104上的解密数据进行了覆盖重写之后。并且,若重选选择加密密钥,则指示部103命令解密部106对接收数据114的载荷部进行解密。因此,此时解密部106利用旧密钥对被存储为接收数据114的载荷部的密文数据进行解密。
在此,参照图1的通信装置100A的例子,对图3的各部的具体动作例进一步详细说明。
在图1的例子中,通信装置100A的密钥管理部101创建加密密钥KA, a-1、KA,a、KA,a+1等。密钥存储部102在从时刻TA101到将要到时刻TA104之前存储当前密钥KA,a和旧密钥KA,a-1。另外,在时刻TA104以后,在到密钥管理部101接着进行加密密钥的更新之前,密钥存储部102存储当前密钥KA,a+1和旧密钥KA,a
并且,当在时刻TA102通信装置100A的接收部105接收到密文数据C101时,指示部103将最新的加密密钥、即当前密钥KA,a选择为选择加密密钥。因此,在存储器104上被存储为接收数据114的载荷部的密文数据C101在时刻TA103被解密部106解密,并被平文数据P101覆盖重写。
此时,判断部107根据平文数据P101的特征值,判断为平文数据P101正常。通信装置100A的平文处理部109针对正常的平文数据P101进行与实施方式对应的适当处理。
另外,当在时刻TA105通信装置100A的接收部105接收到密文数据C102时,指示部103将当前密钥KA,a+1选择为选择加密密钥。因此,在存储器104上被存储为接收数据114的载荷部的密文数据C102在时刻TA106被解密部106解密,并被解密数据D102覆盖重写。
此时,判断部107根据解密数据D102的特征值,判断为解密数据D102不是正常的平文数据(即解密数据D102异常)。于是,按照判断部107的判断,在时刻TA107再次加密部108利用被选择为选择加密密钥的当前密钥KA,a+1对解密数据D102进行加密。其结果,存储器104上的被存储为接收数据114的载荷部的解密数据D102被密文数据C102覆盖重写。
并且,在再次加密后的时刻TA108,指示部103将与被当前选择为选择加密密钥的当前密钥KA,a+1不同的旧密钥KA,a重选为选择加密密钥,并命令解密部106对密文数据C102进行解密。由此,在存储器104上被存储为接收数据114的载荷部的密文数据C102被解密部106解密,并被平文数据P102覆盖重写。
此时,判断部107根据平文数据P102的特征值判断为平文数据P102正常。并且,平文处理部109对平文数据P102进行适当的处理。
另外,如以上说明的那样,除了图3的通信装置100自身解密所用的加密密钥的管理和以从其他通信装置100接收到数据为触发的处理之外,通信装置100也能够进行数据的发送。下面参照图1的通信装置100B的例子对与发送有关的各部的细节进行具体说明。
平文处理部109不仅仅对载荷部如上述那样被解密成正确的平文数据的接收数据114进行处理,也可以作为向其他通信装置100发送的对象的数据而在存储器104上创建平文的发送数据115。例如,图1的通信装置100B的平文处理部109在时刻TB102,创建平文数据P101和头部,将包含平文数据P101和头部的PDU作为发送数据115保存于存储器104,并命令加密部111对PDU进行加密。
由此,在时刻TB103,加密部111对在存储器104上被存储为发送数据115的载荷部的平文数据P101进行加密。具体而言,加密部111内的密钥识别部112能够识别加密所用的加密密钥KA,a,因此加密部111利用由密钥识别部112识别到的加密密钥KA,a对平文数据P101进行加密。
例如,通过由平文处理部109将平文数据P101的发送目标、即通信装置100A的地址AdrA明确地通知给加密部111,从而加密部111也能够识别发送目标的地址AdrA。或者,也可以由加密部111从存储器104上的头部读取发送目标的通信装置100A的地址AdrA
由此,加密部111内的密钥识别部112能够根据作为发送目标的地址而由加密部111识别出的地址AdrA,来识别向地址AdrA发送的发送数据115的载荷部的加密所用的加密密钥。在图1A的例子中,密钥识别部112在时刻TB103识别为“向地址AdrA发送的发送数据115的载荷部的加密所用的加密密钥是加密密钥KA,a”。因此,加密部111利用加密密钥KA, a对被存储为发送数据115的载荷部的平文数据P101进行加密。
此时,与基于解密部106的解密和基于再次加密部108的再次加密同样,加密部111也进行向存储器104上的同一存储区域的覆盖重写。也就是说,加密部111对作为发送数据115的载荷部而存储于存储器104上的平文数据P101进行加密,利用通过加密得到的密文数据C101对平文数据P101覆盖重写。通过这样的覆盖重写,在发送时也能够实现存储器104的有效利用。
加密部111在加密处理结束时命令发送部113发送发送数据115。例如,在时刻TB104,发送部113按照来自加密部111的指令,从存储器104读取发送数据115(即包含密文数据C101的PDU的数据)。并且,发送部113将PDU向通信装置100A发送。
利用以上那样动作的发送部110内的加密部111和发送部113,存储于存储器104上的发送数据115以载荷部被加密的状态被发送到发送目标的其他通信装置100。
接着,参照图4对实现图3的各部的硬件的具体例进行说明。图4是表示第1实施方式的通信装置的硬件构成例的图。
如图4所示,通信装置100具有MicroProcessing Unit(MPU)201。另外,通信装置100具有有线物理层处理部202和无线处理部203中的至少一方。通信装置100也可以还具有定时器IC204和防篡改PeripheralInterface Controller微机(PIC微机)205。另外,通信装置100具有DynamicRandom Access Memory(DRAM)206和闪存207。
MPU201与有线处理部202之间的连接接口例如是MediaIndependent Interface(MII)或者Management Data Input/Output(MDIO)(以下记载为“MII/MDIO208”)。MII和MDIO都是物理层和MAC副层之间的接口。
另外,定时器IC204和防篡改PIC微机205通过Inter-IntegratedCircuit(I2C)总线或者Parallel Input/Output(PIO)总线(以下记载为“I2C/PIO总线209”)与MPU201连接。并且,无线处理部203、DRAM206和闪存207通过Peripheral Component Interconnect(PCI)总线210与MPU201连接。
在通信装置100中,MPU201将作为非易失性存储装置之一的闪存207上保存的固件等各种程序加载到DRAM206上并加以执行,由此进行各种处理。MPU201所执行的程序的例子例如有防篡改PIC微机205的驱动器、用于进行后述的图7的处理的程序、用于进行后述的图10或者图12的处理的程序等。
有线处理部202是包含连接线缆的物理端口以及进行有线连接下的物理层的处理的电路的硬件。另外,无线处理部203是进行无线连接下的物理层和MAC副层的处理的硬件,例如包含天线、模拟数字转换器、数字模拟转换器、调制器、解调器等。
定时器IC204是在设定的时间经过之前进行计时动作,当经过设定的时间时输出中断信号的电路。另外,防篡改PIC微机205是组装有规定的算法的微机。由于防篡改PIC微机205具有防篡改功能,因此该规定的算法无法被从外部解析。
DRAM206存储各种数据,闪存207如上述那样存储固件程序等。闪存207还可以存储通信装置100自身的Identification(ID)或MAC地址等通信装置100自身固有的信息。另外,根据实施方式的不同,通信装置100也可以取代闪存207、或与闪存207一起具有Read Only Memory(ROM)或硬盘装置等其他非易失性存储装置。
另外,程序可以预先安装于闪存207或者其他非易失性存储装置。或者,程序也可以从自组织网络140等网络下载,并保存于闪存207或者其他非易失性存储装置。
当然,根据实施方式的不同,通信装置100还可以具有计算机可读的存储介质的驱动装置。此时,程序可以从存储介质复制到闪存207或者其他非易失性存储装置中。作为存储介质,能够利用半导体存储器卡、Compact Disc(CD)或Digital Versatile Disk(DVD)等光盘、磁光盘、磁盘等。
利用参照图4如上所述的各种硬件来实现图3的各部。
例如,图3的密钥管理部101可以由组装有创建通信装置100自身解密所用的加密密钥,并更新密钥存储部102的存储内容的算法的防篡改PIC微机205和设定有更新加密密钥的间隔的定时器IC204来实现。或者,密钥管理部101可以由执行用于创建通信装置100自身解密所用的加密密钥,并更新密钥存储部102的存储内容的程序的MPU201和设定有更新加密密钥的间隔的定时器IC204来实现。当然,MPU201可以不利用来自定时器IC204的信号,而是利用内部时钟来识别时刻,并识别更新加密密钥的定时。
另外,通信装置100自身解密所用的加密密钥根据通信装置100所发送的数据的内容和应用领域的不同,可以是按通信装置100而不同的通信装置100固有的加密密钥,也可以是在多个通信装置100之间共用的加密密钥。第1实施方式能够应用于任何情况。
另外,密钥存储部102可以由防篡改PIC微机205内的RAM实现,也可以由DRAM206实现。或者,通信装置100还可以具备未图示的其他的防篡改存储器,由该防篡改存储器来实现密钥存储部102。
并且,指示部103、解密部106、判断部107、再次加密部108和平文处理部109由执行程序的MPU201实现。当然,也可以取代MPU201而使用实现各部的专用硬件电路。例如,解密部106可以由专用的解密电路来实现,再次加密部108可以由专用的加密电路来实现。
另外,存储器104由DRAM206实现。并且,接收部105和发送部113由有线处理部202和无线处理部203中的至少一方以及执行程序的MPU201来实现。
加密部111例如包含执行用于对发送数据115的载荷部进行加密的程序的MPU201或者专用的加密电路。并且,加密部111内的密钥识别部112可以由如下的硬件来实现。
例如,密钥识别部112可以包含执行用于创建并管理其他通信装置100解密所用的加密密钥的程序的MPU201和设定有更新其他通信装置100解密所用的加密密钥的间隔的定时器IC204。当然,创建并管理其他通信装置100解密所用的加密密钥的硬件也可以不是MPU201而是防篡改PIC微机205。
另外,密钥识别部112可以包含从其他通信装置100接收加密密钥的通知的有线处理部202或者无线处理部203。此时,密钥识别部112包含执行用于根据接收的通知来识别其他通信装置100解密所用的加密密钥,并更新与其他通信装置100解密所用的加密密钥相关的存储内容的程序的MPU201。
另外,其他通信装置100解密所用的加密密钥可以是该其他通信装置100固有的加密密钥,也可以是在多个通信装置100之间共用的加密密钥。第1实施方式可以应用于任何情况。
并且,密钥识别部112包含DRAM206或者防篡改PIC微机205内的RAM作为存储其他通信装置100解密所用的加密密钥的硬件。或者,通信装置100还可以具备未图示的其他的防篡改存储器,将该防篡改存储器用作存储其他通信装置100解密所用的加密密钥的硬件。
如以上比较图4和图3进行的说明那样,通信装置100根据实施方式的不同,可以由合适的硬件实现。接着,参照图5~6对通信装置100所使用的数据进行说明,然后,参照图7~13对通信装置100进行的处理进行说明。
图5是表示第1实施方式的通信装置所存储的数据的一例的图。具体而言,图5中例示了图1的通信装置100A的密钥存储部102和密钥识别部112所存储的数据。
图5所示的密钥存储部102将由密钥管理部101创建的最新的第a代的加密密钥KA,a存储为当前密钥,将密钥管理部101以前创建的第(a-1)代的加密密钥KA,a-1存储为旧密钥。也就是说,图5表示图1的时刻TA101以后到将要到时刻TA104之前的期间的密钥存储部102的状态。另外,如上所述,密钥管理部101反复创建加密密钥,对密钥存储部102的存储内容进行更新。
另外,图5所示的密钥识别部112将与通信装置100A之间建立了密钥的其他通信装置100的加密密钥与地址对应地进行存储。图5的例子具体而言是通信装置100A的密钥识别部112识别了图2的通信装置100B、100C、100D等解密所用的加密密钥的情况下的例子。
此时,通信装置100A的密钥识别部112与通信装置100B的地址AdrB对应地存储通信装置100B的最新的加密密钥KB,b。同样,密钥识别部112与通信装置100C的地址AdrC对应地存储通信装置100C的最新的加密密钥KC,c,与通信装置100D的地址AdrD对应地存储通信装置100D的最新的加密密钥KD,d。当然,通信装置100A的密钥识别部112也可以针对其他的通信装置100存储地址与加密密钥的组。
另外,通信装置100A的密钥识别部112识别其他的通信装置100B、100C、100D等的最新的加密密钥的方法是任意的。
例如,通信装置100B也可以将新的加密密钥KB,b+1通知给通信装置100A。此时,通信装置100A的密钥识别部112根据来自通信装置100B的通知来识别通信装置100B的加密密钥的更新,将与地址AdrB对应的加密密钥从当前的第b代的加密密钥KB,b更新成新的第(b+1)代的加密密钥KB,b+1
或者,通信装置100A的密钥识别部112也可以不与通信装置100B进行通信,而是例如按照时刻的经过来识别通信装置100B的加密密钥KB, b的更新的定时。此时,通信装置100A的密钥识别部112在识别到通信装置100B的加密密钥KB,b的更新的定时时,创建新的加密密钥KB,b+1,将与地址AdrB对应的加密密钥从当前的加密密钥KB,b更新成新的加密密钥KB,b+1
如上所述,密钥识别部112与发送目标的其他通信装置100的地址对应地存储该其他的通信装置100的加密密钥,并在适当的定时进行加密密钥的更新。
另外,在各通信装置100解密所用的加密密钥不同的情况下,密钥识别部112如图5所示,与识别各个通信装置100的地址对应地存储加密密钥。但是,根据实施方式的不同,多个通信装置100解密所用的加密密钥也可以公用。例如,也能够实现自组织网络140内的所有通信装置100使用共用的加密密钥的实施方式。此时,密钥识别部112单纯地将密钥存储部102所存储的当前密钥识别为发送数据115的加密用的加密密钥即可,无需如图5那样按地址存储加密密钥。
图6是说明在第1实施方式中收发的数据的格式的图。以下为了便于说明,和图1的例子同样,以通信装置100B向通信装置100A发送数据的情况为具体例对图6进行说明。
通信装置100B的平文处理部109创建平文的主体301,创建与通信协议对应的头部302,根据主体301计算特征值303。并且,平文处理部109将包含头部302、主体301和特征值303的平文PDU304保存于存储器104。平文PDU304的载荷部是主体301与特征值303的部分。
另外,特征值303是表示主体301的特征的值即可。另外,在图6中,虽然为了便于说明,在主体301的末尾集中附加了特征值303的数据,但是特征值303的数据也可以分散插入主体301内的多个位置。
例如,平文处理部109可以根据主体301的全部或者一部分,利用哈希函数来计算特征值303。也就是说,特征值303可以是哈希值。作为用于计算特征值303的哈希函数,例如能够利用创建消息/摘要或者消息完整性符号(Message Integrity Code;MIC)时所用的任意的哈希函数。另外,特征值303可以是利用固定的加密密钥对哈希值加密而得到的值。
或者,平文处理部109可以将针对主体301的全部或者一部分的检错码计算为特征值303。例如,奇偶检错码、总和检错码、Cyclic RedundancyCheck(CRC)等检错码能够被用作特征值303。另外,检错码中也包含纠错码,例如能够利用海明码、里德所罗门码等纠错码。此时,主体301相当于信息位,特征值303相当于根据信息位计算的符号位。
另外,平文处理部109在将包含特征值303的平文PDU304保存于存储器104时,针对相当于图3的发送数据115的平文PDU304,命令加密部111对载荷部进行加密。其结果,平文的主体301置换为加密后的主体305,平文的特征值303置换为加密后的特征值306。也就是说,在存储器104上,包含头部302、加密后的主体305和加密后的特征值306的密文PDU307被存储为发送数据115。
并且,通信装置100B的发送部113将密文PDU307发送至通信装置100A。例如,图1的密文数据C101是密文PDU307的载荷部的一例,包含加密后的主体305和加密后的特征值306。
从通信装置100B发送的密文PDU307在通信装置100A的接收部105被接收,并被保存于存储器104上。这样,解密部106利用当前密钥对密文PDU307的载荷部(即加密后的主体305和加密后的特征值306)进行解密。
其结果,在存储器104中,成为包含头部302、解密后的主体308和解密后的特征值309的解密PDU310被存储的状态。于是,判断部107从存储器104读取解密后的主体308,并根据解密后的主体308计算特征值311。另外,判断部107根据解密后的主体308计算特征值311的算法与平文处理部109根据主体301计算特征值303的算法相同。
并且,判断部107比较计算出的特征值311和解密后的特征值309。如果计算出的特征值311和解密后的特征值309一致,则判断部107判断为“解密PDU310的载荷部是正常的平文数据”。
相反,如果计算出的特征值311和解密后的特征值309不一致,则判断部107判断为“解密PDU310的载荷部异常”。换言之,判断部107推测为“密文PDU307的加密中使用的不是当前密钥而是旧密钥”。
于是,判断部107命令再次加密部108对解密PDU310的载荷部进行加密。由此,再次加密部108利用当前密钥对解密PDU310的载荷部进行加密,并在存储器104上恢复密文PDU307。另外,再次加密部108在加密的处理结束时,将加密的结束通知给指示部103。
因此,指示部103以来自再次加密部108的通知为触发将选择加密密钥从当前密钥切换为旧密钥,命令解密部106对密文PDU307的载荷部进行解密。在解密部106进行了解密后,与上述同样地进行基于再度判断部107的判断,如果得到了正常的平文数据,则平文处理部109处理正常的平文数据。
另外,接着参照图7~13,对以上说明的通信装置100的动作进一步详细说明。
图7是第1实施方式的通信装置以数据的接收为触发进行的接收处理的流程图。另外,接收部105在接收到PDU时,将接收的PDU的数据作为接收数据114保存于存储器104,因此在图7的接收处理开始的时间点,存储器104存储有接收数据114。
另外,根据通信协议的不同,有时也物理地接收到发往其他通信装置100的PDU,在这种情况下,接收部105在开始图7的接收处理之前,根据接收到的PDU的头部判断发送目的地是否是通信装置100自身。并且,接收部105在发送目的地不是通信装置100自身的情况下,将接收数据114废弃,在发送目的地是通信装置100自身的情况下,开始图7的接收处理。
在步骤S101中,接收部105根据头部判断作为接收数据114存储的PDU是否是利用不固定的加密密钥加密而得的种类的PDU。
在接收到的PDU是利用不固定的加密密钥加密而得的种类的PDU的情况下,接收部105命令解密部106对接收数据114的载荷部进行解密,处理进入步骤S102。另外,在接收到的PDU是其他种类的PDU的情况下,处理进入步骤S113。
另外,第1实施方式是在头部具有表示PDU种类的字段的例子。但是,例如在所有种类的PDU都利用不固定的加密密钥进行加密的实施方式中,步骤S101和后述的步骤S113可以省略。
在步骤S102中,解密部106按照来自接收部105的指令,对接收数据114的载荷部进行解密。具体而言,解密部106从指示部103得到哪个加密密钥是选择加密密钥这样的信息,从密钥存储部102读取选择加密密钥,并利用选择加密密钥对接收数据114的载荷部进行解密。
另外,指示部103在通信装置100被接通了电源的初始状态下,选择当前密钥作为选择加密密钥。另外,图7的处理每当接收到PDU就进行,但是关于步骤S105和S111如后述的那样,指示部103在结束图7的处理的时间点将默认的选择加密密钥、即当前密钥选择为选择加密密钥。因此,在步骤S102的时间点,选择加密密钥是当前密钥。
因此,在步骤S102中,解密部106首先从指示部103得到“选择加密密钥是当前密钥”这样的信息,从密钥存储部102读取当前密钥,利用当前密钥对接收数据114的载荷部进行解密。另外,解密部106在步骤S102中的解密被进行时,如上述那样,利用解密了的数据对接收数据114的载荷部的密文覆盖重写。通过这样的覆盖重写,抑制了多余的存储区域的消耗。
解密部106在结束了解密时,将解密的结束通知给判断部107。并且,处理进入步骤S103。
在步骤S103中,接受了来自解密部106的通知的判断部107从由解密部106解密了的数据抽取特征值。也就是说,判断部107从存储器104读取图6的解密后的特征值309。
并且,在下一步骤S104中,判断部107根据由解密部106解密了的数据的主体计算特征值。也就是说,判断部107从存储器104读取图6的解密后的主体308,并按照规定的算法根据解密后的主体308计算特征值311。另外,步骤S103和步骤S104可以以相反的顺序执行,也可以并列执行。
接着,在步骤S105中,判断部107判断抽取出的特征值和计算出的特征值是否一致。
在2个特征值一致时,判断部107判断为“在步骤S102中被解密并在存储器104上被存储的接收数据114的载荷部是正常的平文数据”。此时,判断部107命令平文处理部109进行存储器104上的接收数据114的处理。
在2个特征值一致时,判断部107也可以命令指示部103为了准备下一PDU的接收而重置选择加密密钥。并且,指示部103也可以将默认的选择加密密钥、即当前密钥再次重选为选择加密密钥。当然,由于步骤S105的时间点的选择加密密钥是当前密钥,所以能够省略这样的明确的选择加密密钥的重置。并且,在2个特征值一致时,处理进入步骤S106。
另一方面,在2个特征值不一致时,判断部107判断为“在步骤S102被解密并在存储器104上被存储的接收数据114的载荷部异常”。此时,判断部107命令再次加密部108对存储器104上的接收数据114的载荷部进行再次加密来使接收数据114返回原始状态。也就是说,判断部107对再次加密部108发出指令,使其从存储器104读出解密部106根据选择加密密钥解密得到的解密数据,并在存储器104对基于选择加密密钥对解密数据进行加密而得的加密数据覆盖重写。并且,处理进入步骤S107。
在步骤S106中,平文处理部109对解密部106解密得到的PDU进行处理。也就是说,平文处理部109读取载荷部被解密为正常的平文并在存储器104被存储为接收数据114的数据,并进行适当的处理。并且,图7的处理结束。
另外,虽然步骤S106中的处理的种类根据实施方式是任意的,但是例如在作为被用作传感器网络的自组织网络140内的节点而使用通信装置100的情况下,平文处理部109也可以进行如下的处理。
例如,设定图2的通信装置100A从通信装置100E接收到PDU。另外,设定通信装置100A利用与实施方式对应的适当的算法,针对路径如下述那样进行识别。即,设定通信装置100A识别为“若接收到自组织网络140内的最终发送目的地是网关装置120的PDU,则将接收到得PDU向通信装置100D转送是合适的”。
此时,通信装置100A的平文处理部109决定将包含由通信装置100E或者未图示的其他通信装置100从传感器得到的数据的接收数据114的载荷部用作发送数据115的载荷部。例如,平文处理部109可以在接收数据114的头部中对转送目标的通信装置100D的地址AdrD覆盖重写,由此在接收数据114的存储区域进行覆盖重写来创建发送数据115。在发送数据115的准备完成时,平文处理部109命令加密部111对发送数据115进行加密。
这样,利用密钥识别部112对应于转送目标的通信装置100D的地址AdrD而识别的加密密钥KD,d,加密部111对发送数据115进行加密,发送部113对发送数据115进行发送。其结果,包含由通信装置100E或者未图示的其他通信装置100从传感器得到的数据的PDU被从通信装置100A转送至通信装置100D。
当然,根据实施方式的不同,也可以在步骤S106中进行上述那样的转送处理以外的处理。例如,在接收数据114、发送数据115是数据链路层的PDU的数据的情况下,平文处理部109也可以进行遵循比网络层靠上层的层的协议的数据处理。或者,在接收数据114、发送数据115是网络层的PDU的数据的情况下,平文处理部109可以进行遵循比传输层靠上层的层的协议的数据处理。
另外,在步骤S107中,再次加密部108利用当前密钥对由解密部106解密得到的数据进行再次加密。具体而言,再次加密部108首先从指示部103得到“选择加密密钥是当前密钥”这样的信息。并且,再次加密部108从密钥存储部102读取当前密钥,并利用当前密钥对接收数据114的载荷部进行加密。
另外,再次加密部108在进行步骤S107的加密时,如上所述,利用加密后的数据对接收数据114的载荷部覆盖重写。通过这样的覆盖重写,抑制了多余的存储区域的消耗。
并且,再次加密部108在结束了加密时,将加密的结束通知给指示部103。由此,指示部103将与当前选择的选择加密密钥不同的加密密钥、即旧密钥重选为选择加密密钥,并命令解密部106对接收数据114的载荷部进行解密。
接着,在步骤S108中,解密部106利用旧密钥对由再次加密部108再次加密得到的数据进行解密。具体而言,解密部106首先从指示部103得到“选择加密密钥是旧密钥”这样的信息。并且,解密部106从密钥存储部102读取旧密钥,并利用旧密钥对接收数据114的载荷部进行解密。
另外,解密部106在进行步骤S108中的解密时,也与步骤S102同样,利用解密后的数据对接收数据114的载荷部的密文覆盖重写。通过这样的覆盖重写,抑制了多余的存储区域的消耗。
并且,解密部106在结束了解密时,将解密结束通知给判断部107。由此,处理进入步骤S109。
在步骤S109中判断部107与步骤S103同样,从由解密部106解密后的数据抽取特征值。
另外,在下一步骤S110中,判断部107与步骤S104同样,根据由解密部106解密后的数据的主体计算特征值。另外,步骤S109和S110可以以相反的顺序执行,也可以并列执行。
接着,在步骤S111中,判断部107判断抽取出的特征值与计算出的特征值是否一致。
在2个特征值一致时,判断部107判断为“在步骤S108中被解密并在存储器104上被存储的接收数据114的载荷部是正常的平文数据”。此时,判断部107命令平文处理部109进行存储器104上的接收数据114的处理。
在2个特征值一致时,判断部107还命令指示部103为了准备下次的PDU的接收而重置选择加密密钥。这样,指示部103将当前密钥重选为选择加密密钥。因此,在下一PDU被接收,图7的处理再次开始的时间点的选择加密密钥是当前密钥。在如上述那样向平文处理部109发出指令并切换了选择加密密钥时,处理进入步骤S106。
另一方面,在2个特征值不一致时,判断部107判断为“在步骤S108中被解密并在存储器104上被存储的接收数据114的载荷部异常”。在步骤S111中2个特征值不一致的情况指的是,对于接收到的PDU的载荷部,无论是利用当前密钥进行解密还是利用旧密钥进行解密,都无法得到正确的平文数据的情况。因此,在这种情况下,判断部107判断为“发生了某些错误”。
另外,在第1实施方式中,密钥存储部102仅保持了当前密钥和旧密钥这2代的加密密钥,因此成为尝试对象的其他代的加密密钥在此基础上并不存在。于是,即使在2个特征值不一致的情况下,判断部107也命令指示部103为了准备下一PDU的接收而重置选择加密密钥。由此,指示部103将当前密钥重选为选择加密密钥。因此,在下一PDU被接收,图7的处理再次开始的时间点的选择加密密钥成为当前密钥。在如上述那样进行了错误发生的识别和选择加密密钥的切换时,处理进入步骤S112。
另外,判断部107能够识别为“在向再次加密部108发出了再次加密的指令后,从解密部106第一次通知了解密结束的情况是对基于旧密钥的解密的结果进行验证的情况”。反之,判断部107能够识别为“如果不是向再次加密部108发出了再次加密的指令后的第一次的解密结束的通知,则是对基于当前密钥的解密的结果进行验证的情况”。
于是,判断部107即使不从指示部103明确得到选择加密密钥是哪个加密密钥这样的信息,也能够适当地进行动作。也就是说,判断部107可以将命令再次加密部108对接收数据114的载荷部再次加密即可、还是识别错误发生即可识别为没有来自指示部103的明确的信息。当然,判断部107也可以从指示部103明确地得到选择加密密钥是哪个加密密钥这样的信息。
在步骤S112中,判断部107进行适当的错误处理。或者,判断部107也可以命令未图示的错误处理部进行错误处理。错误处理的具体的内容是任意的。例如,错误处理可以是单纯地释放接收数据114的存储区域的处理,也可以是请求发送源的其他通信装置100进行PDU的重送的处理。在错误处理的执行后也结束图7的处理。
另外,在步骤S101中,在接收部105判断为“接收到的PDU不是被不固定的加密密钥加密而得的种类的PDU”的情况下,在步骤S113中,进行与接收到的PDU的种类对应的适当的处理。
另外,步骤S113中的处理主体、处理内容以及PDU的种类根据实施方式的不同是任意的。例如,在被固定的加密密钥加密而得的控制用PDU被接收到的情况下,未图示的控制用PDU处理部也可以进行步骤S113的处理。例如,时刻同步用的PDU可能在自组织网络140内中被固定的加密密钥加密。此时,也可以在步骤S113中进行时刻同步处理。或者,在接收到在完全没有加密的情况下发送的PDU的情况下,平文处理部109也可以进行步骤S113的处理。无论在哪种情况下,都进行与PDU的种类对应的适当的处理,并结束图7的处理。
接着,参照图8和9对存储器的节约进一步详细说明。
图8是示意性说明第1实施方式中的存储器上的数据的变化的例子的图。另外,图9是示意性说明比较例中的存储器上的数据的变化的例子的图。
另外,在图8和图9中,黑色背景表示密文,带有实线框的白色背景表示正确的平文。另外,带有虚线框的白色背景表示作为被与加密时不同的加密密钥解密的结果而得到的异常数据。
另外,通信装置100所使用的加密的种类是对称密钥加密。另外,若从其他观点来说明通信装置100所用的加密种类,则通信装置100可以使用流加密,也可以使用块加密。
即,只要成为加密和解密的对象的数据单位的长度在平文和密文之间相等,数据单位的排列顺序在平文和密文之间没有变化,则无论哪个种类的加密都能够利用于各实施方式。在流加密的情况下,成为加密和解密的对象的数据单位是1位或者1字节。在块加密的情况下,成为加密和解密的对象的数据单位是块。以下为了便于说明,主要对使用流加密的情况进行说明。
另外,以下设定“0x”这样的字首表示16进数。并且,以接收到包含4字节的载荷部的PDU的情况为例,参照图8对步骤S102、S107和S108中的存储器104上的区域的覆盖重写进行说明。另外,在图8和图9中,利用每4位的处理结束的状态示意性表示解密和加密的进展的样子。
例如,在图8的时刻TA201,接收部105将0x06ac7963这样的密文数据C201作为接收数据114的载荷部保存于存储器104上。
由此,随着解密部106继续进行图7的步骤S102的解密,如图8中作为时刻TA202~TA209的状态所示的那样,利用当前密钥对密文数据C201中被加密的位从首位开始依次进行解密。并且,加密后的位被解密后的位覆盖重写。因此,当在时刻TA209步骤S102的解密结束时,在本来密文数据C201被存储的存储器104的存储区域上,存储有解密得到的解密数据D201。在图8的例子中,解密数据D201是0x7a6025f3。
这样,根据第1实施方式,由于存储有密文数据C201的存储区域自体被解密数据D201覆盖重写,所以存储器的使用率较高。另外,在使用块加密的情况下,也与使用流加密的情况同样,能够利用解密数据D201对密文数据C201覆盖重写。即,即使在使用块加密的情况下,也只要在存储器104上具有块大小量的临时存储区域即可,无需对密文数据C201整体和解密数据D201整体分别分配另外的存储区域。
另外,除了步骤S102中的解密以外,在步骤S107中的再次加密和步骤S108中的解密中,由于也进行同样的覆盖重写,所以在第1实施方式中存储器的使用率较高。
具体而言,随着再次加密部108继续进行步骤S107的再次加密,如图8中作为时刻TA210~TA217的状态所示那样,利用当前密钥对解密数据D201的位从首位开始依次进行加密。并且,解密数据D201中的各位被加密后的位覆盖重写。因此,当在时刻TA217步骤S107的再次加密结束时,在存储有解密数据D201的存储器104的存储区域上,存储有通过再次加密而被恢复的密文数据C201。
并且,随着解密部106继续进行步骤S108的解密,如图8中作为时刻TA218~TA225的状态所示那样,利用当前密钥对密文数据C201中被加密的位从首位开始依次进行解密。并且,加密后的位被解密后的位覆盖重写。因此,当在时刻TA225步骤S108的解密结束时,在本来存储有密文数据C201的存储器104的存储区域上,存储有解密得到的平文数据P201。在图8的例子中,平文数据P201是0x365a6bf0。
对于基于以上那样的覆盖重写的存储器节约的效果,比较图9的比较例和图8可以更加清楚。在图9的比较例中,当在时刻TA301密文数据C201被存储于存储器104时,为了准备基于利用基于当前密钥的解密无法得到正确的平文数据的情况下的旧密钥的解密,密文数据C201保持原样地持续保持在存储器104中。也就是说,在时刻TA302~TA309所进行的解密中,在与密文数据C201的存储区域不同的存储区域中,通过使用当前密钥的解密而得到的解密数据D201的各位被依次写入。
并且,对在解密数据D201中根据主体的部分(例如最初的3字节的0x7a6025)计算的特征值和解密数据D201所包含的特征值(例如最后的1字节的0xf3)进行比较。在根据比较结果判断为解密数据D201不是正常的平文数据时,在图9的比较例中,存储于与解密数据D201不同的存储区域的密文数据C201被旧密钥解密。
基于旧密钥的解密的结果例如可以被覆盖重写在不需要的解密数据D201被存储的存储区域中,但是即使这样,与图8的第1实施方式的例子相比,图9的比较例中会消耗掉多余的存储区域。即,在时刻TA310~TA317进行的基于旧密钥的解密中,平文数据P201的各位依次被写入与密文数据C201的存储区域不同的存储区域中。
另外,将第1实施方式和图9的比较例对比可知,再次加密所需的时间和所消耗的存储区域具有权衡选择的关系。但是,例如在基于对传感器网络的应用等某些理由,存储器104的容量受到较大限制的情况下,即使再次加密使用很少的时间,也优选能够在节约存储区域的同时进行利用旧密钥的解密的第1实施方式。
另外,加密和解密无论是由执行程序的MPU201执行,还是由硬件电路执行,对称密钥加密的加密和解密的处理速度一般都是高速。因此,再次加密所需的时间在很多情况下是可以被忽视的程度。即,即使认为处理时间和存储容量具有权衡选择的关系,在传感器网络等某种环境下,存储区域的容量减少与再次加密所需的时间的缩短相比具有更大的影响。当然,第1实施方式的通信装置100并不限定于传感器网络内的通信装置,但是通信装置100例如优选是传感器网络内的通信装置。
以上参照图7~9,对通信装置100以PDU的接收为触发进行的处理进行了说明,但是通信装置100也进行与PDU的接收独立的处理。即,通信装置100也进行加密密钥的更新。于是,下面参照图10~13对与加密密钥的更新有关的2个处理方法进行说明。
图10是在第1实施方式中通信装置进行的加密密钥更新处理的流程图。另外,图11是示意性说明伴随着加密密钥更新处理的数据的变化的例子的图。另外,图11是将在通信装置100A中当前密钥是第a代加密密钥KA,a的情况作为具体例进行说明的图。
在步骤S201中,密钥管理部101在到达对加密密钥进行更新的时刻之前进行待机。并且,在密钥管理部101判断为到达了对加密密钥进行更新的时刻时,处理进入步骤S202。
例如,在对定时器IC204预先设定了对加密密钥进行更新的间隔的情况下,定时器IC204可以按更新加密密钥的间隔来输出中断信号。并且,由MPU201或者防篡改PIC微机205实现的密钥管理部101可以以中断信号的检测为触发来识别从步骤S201向步骤S202的进入。
在步骤S202中,密钥管理部101创建新的加密密钥并存储于存储器104上的临时存储区域。例如,如图11所例示的那样,在通信装置100A中,存储于密钥存储部102的当前密钥是第a代加密密钥KA,a,旧密钥是第(a-1)代加密密钥KA,a-1。由此,在步骤S202中,密钥管理部101创建下一个第(a+1)代的新的加密密钥KA,a+1并存储于临时存储区域。
并且,在下一步骤S203中,密钥管理部101将密钥存储部102所存储的当前密钥存储为旧密钥。在图11的例子中,密钥管理部101在密钥存储部102中将当前密钥KA,a复制到旧密钥的字段中。
并且,在下一步骤S204中,密钥管理部101将创建的新的加密密钥作为当前密钥存储于密钥存储部102。在图11的例子中,密钥管理部101将临时存储区域所存储的新的加密密钥KA,a+1复制到密钥存储部102的当前密钥的字段中。其结果,密钥存储部102成为存储新的加密密钥KA,a+1作为当前密钥,并且存储在刚刚之前是当前密钥的加密密钥KA,a作为旧密钥的状态。
并且,在执行了步骤S204后,处理返回步骤S201。
另外,在通信装置100与其他通信装置100之间利用密钥发送建立加密密钥的情况下,通信装置100在步骤S202、S203或者S204之后将创建的新的加密密钥向其他通信装置100发送。密钥发送所需的时间与通信装置100内部的密钥存储部102的更新所需的时间相比较长,因此在步骤S204中对密钥存储部102内的当前密钥进行更新之前(例如紧接着步骤S202),通信装置100可以发送新的加密密钥。
另外,图10的加密密钥更新处理也可以以降低图7的步骤S112的错误处理的执行频度为目的,如图12那样进行变形。下面首先参照图12和图13,对变形的加密密钥更新处理说明处理的流程,然后对优点进行说明。
图12是表示加密密钥更新处理的变形例的流程图。另外,图13是示意性说明伴随着如图12所示那样变形的加密密钥更新处理的数据的变化的例子的图。另外,与图11同样,图13也是以在通信装置100A中当前密钥是第a代加密密钥KA,a的情况为具体例进行说明的图。
在步骤S301中,密钥管理部101在到达对加密密钥进行更新的时刻之前进行待机。并且,在密钥管理部101判断为到达了对加密密钥进行更新的时刻时,处理进入步骤S302。也就是说,步骤S301与步骤S201相同。
在步骤S302中,密钥管理部101创建新的加密密钥并存储于存储器104上的临时存储区域。例如,如图13所例示的那样,在通信装置100A中,设定存储于密钥存储部102的当前密钥是第a代加密密钥KA,a,旧密钥是第(a-1)代加密密钥KA,a-1。由此,在步骤S302中,密钥管理部101创建下一个第(a+1)代的新的加密密钥KA,a+1并存储于临时存储区域。
并且,在下一步骤S303中,密钥管理部101将当前密钥复制于存储器104上的临时存储区域(准确来讲是与在步骤S302中存储新的加密密钥的临时存储区域不同的临时存储区域)。在图13的例子中,密钥管理部101将当前密钥KA,a复制于存储器104上的临时存储区域。
并且,在下一步骤S304中,密钥管理部101将创建的新的加密密钥作为当前密钥存储于密钥存储部102。在图13的例子中,密钥管理部101将存储于临时存储区域的新的加密密钥KA,a+1复制于密钥存储部102的当前密钥的字段中。
并且,在下一步骤S305中,密钥管理部101将在步骤S303中复制于临时存储区域的当前密钥作为旧密钥存储于密钥存储部102。在图13的例子中,密钥管理部101将存储于临时存储区域的加密密钥KA,a复制于密钥存储部102的旧密钥的字段中。其结果,密钥存储部102成为将新的加密密钥KA,a+1存储为当前密钥,并且将在到刚刚之前为止是当前密钥的加密密钥KA,a存储为旧密钥的状态。
并且,在执行了步骤S305后,处理返回步骤S301。另外,在通信装置100与其他通信装置100之间通过密钥发送建立加密密钥的情况下,通信装置100与图10的情况同样,在步骤S302、S303、S304或者S305之后,将创建的新的加密密钥向其他通信装置100发送。另外,在该图12的加密密钥更新处理中,步骤S302和S303的执行顺序可以相反,也可以并列执行步骤S302和S303。
当在密钥存储部102的更新中参照了密钥存储部102时,如以上的图12那样被变形的加密密钥更新处理也被尽量设计为能够根据基于旧密钥的解密得到正确的平文数据。也就是说,图12的加密密钥更新处理被设计为尽量不会导致“在基于更新前的当前密钥KA,a的解密和再次加密之后,解密部106在进行再度解密时读取的旧密钥和在最初解密时所用的加密密钥KA,a相同”这一状况。具体而言,在图12中加密密钥更新处理被变形为在用于进行密钥存储部102的更新的一系列步骤S302~S305中,对更新前的旧密钥KA,a-1进行更新的步骤S305被最后执行。
另外,根据实施方式的不同,密钥管理部101在步骤S202~S204的执行中或者步骤S302~S305的执行中,也可以使由解密部106、再次加密部108对密钥存储部102进行的参照模块化。
接着,参照图14~20对第2实施方式进行说明。在第2实施方式中利用了2种加密密钥。并且,在第1实施方式中,如上所述通信装置100间的密钥建立的方法是任意的,但是在第2实施方式中针对2种加密密钥以不同的2种方法进行密钥建立。
具体而言,第1种加密密钥是通信装置彼此通过按照相同的算法进行创建来在通信装置间建立的加密密钥,是在多个通信装置中共用于加密和解密的加密密钥。下面将第1种加密密钥称为“公共密钥”。并且,第2种加密密钥是各通信装置所固有的加密密钥,下面称为“访问密钥”。通信装置间的访问密钥的建立由密钥发送实现。另外,在第2实施方式中,访问密钥被用于应用数据的加密,共有密钥被用于为了进行访问密钥的发送的加密。
下面为了便于说明,将通信装置自身所创建的访问密钥称为“内部来源(internally-originated)访问密钥”,将从其他通信装置发送的访问密钥称为“外部来源(externally-originated)访问密钥”。
例如,在第1和第2通信装置相互发送访问密钥的情况下,第1通信装置所创建的访问密钥对于第1通信装置而言是内部来源访问密钥,而对于第2通信装置而言是外部来源访问密钥。同样,第2通信装置所创建的访问密钥对于第1通信装置而言是外部来源访问密钥,而对于第2通信装置而言是内部来源访问密钥。
图14是第2实施方式的通信装置的构成框图。另外,图14的通信装置400也能够例如由图4所示的各种硬件实现。
通信装置400具有密钥管理部401。并且,密钥管理部401具有公共密钥管理部402、内部来源访问密钥管理部403和外部来源访问密钥管理部404。
公共密钥管理部402也是第1实施方式的密钥管理部101的具体例之一,也具有密钥识别部112的一部分的功能。具体而言,公共密钥管理部402通过进行针对时刻求出唯一值的处理,来作为创建公共密钥作为1种加密密钥的密钥创建部进行动作,并且也识别作为加密密钥的公共密钥。
另外,内部来源访问密钥管理部403是密钥管理部101的具体例之一。即,内部来源访问密钥管理部403作为创建通信装置400自身所固有的加密密钥、即内部来源访问密钥来作为1种加密密钥的密钥创建部进行动作。
并且,外部来源访问密钥管理部404是密钥识别部112的具体例之一,将外部来源访问密钥与其他通信装置400建立对应地进行管理。
另外,内部来源访问密钥管理部403也是平文处理部109的具体例之一,创建包含内部来源访问密钥的平文的发送数据115。并且,外部来源访问密钥管理部404也是平文处理部109的具体例之一,对包含外部来源访问密钥的平文的接收数据114进行处理来提取外部来源访问密钥。
另外,公共密钥管理部402和内部来源访问密钥管理部403可以由图4的MPU201实现,也可以由防篡改PIC微机205实现。另外,也可以从由图4的定时器IC204实现的后述的计时机构425按加密密钥的更新间隔向公共密钥管理部402和内部来源访问密钥管理部403输入中断信号。外部来源访问密钥管理部404能够由MPU201实现。
另外,通信装置400具有密钥存储部405。并且,密钥存储部405具有公共密钥存储部406、内部来源访问密钥存储部407和外部来源访问密钥存储部408。
公共密钥存储部406具有在第1实施方式中存储解密密钥的密钥存储部102的功能和密钥识别部112的一部分功能(即识别加密密钥的功能)。另外,内部来源访问密钥存储部407具有存储解密密钥的密钥存储部102的功能。并且,外部来源访问密钥存储部408具有密钥识别部112的一部分功能(即识别加密密钥的功能)。
另外,密钥存储部405内的各部可以由DRAM206实现,也可以由防篡改PIC微机205内的RAM实现。或者,在通信装置400包含防篡改存储器作为硬件的情况下,密钥存储部405内的各部可以由该防篡改存储器实现。
并且,通信装置400具有指示部409。指示部409是第1实施方式的指示部103的具体例之一。即,指示部409识别在解密以及再次加密时使用哪个加密密钥。另外,指示部409可以由MPU201实现。
另外,通信装置400具有分别与第1实施方式的存储器104以及接收部105类似的存储器410以及接收部411。存储器410由DRAM206实现,接收部411由有线处理部202和无线处理部203的至少一方和MPU201实现。
并且,通信装置400具有解密部412。解密部412具有都相当于第1实施方式的解密部106的具体例的接收数据解密部413和外部来源访问密钥解密部414。另外,解密部412内的各部可以由执行程序的MPU201实现,也可以由专用的解密电路实现。
另外,也可以物理地使1个解密电路根据输入信号在有时作为接收数据解密部413发挥功能,在有时作为外部来源访问密钥解密部414发挥功能。同样,1个相同的解密算法的程序模块也可以根据变量,有时使MPU201作为接收数据解密部413发挥功能,有时使MPU201作为外部来源访问密钥解密部414发挥功能。
并且,通信装置400具有判断部415。判断部415具有都相当于第1实施方式的判断部107的具体例的外部来源访问密钥判断部416和接收数据判断部417。判断部415内的各部例如由MPU201实现。
并且,通信装置400具有加密部418。加密部418具有都相当于第1实施方式的再次加密部108的具体例的外部来源访问密钥再次加密部419和接收数据再次加密部420。并且,加密部418具有都具有第1实施方式的加密部111的加密功能的发送数据加密部421和内部来源访问密钥加密部422。另外,加密部418内的各部可以由执行程序的MPU201实现,也可以由专用的加密电路实现。
另外,也可以物理地使1个加密电路根据输入信号来作为外部来源访问密钥再次加密部419、接收数据再次加密部420、发送数据加密部421、内部来源访问密钥加密部422之一发挥功能。同样,1个相同的加密算法的程序模块也可以根据变量来使MPU201作为加密部418内的各部之一发挥功能。
并且,通信装置400具有相当于第1实施方式的平文处理部109的具体例之一的数据处理部423。数据处理部423是对载荷部成为平文状态的接收数据114进行处理的平文处理部109的具体例,也是作为创建向其他通信装置100发送的平文的发送数据115的数据创建部的平文处理部109的具体例。另外,数据处理部423可以由MPU201实现。
并且,通信装置400具备具有和第1实施方式的发送部113相同的功能的发送部424。发送部424由有线处理部202和无线处理部203的至少一方与MPU201实现。另外,在第2实施方式中,内部来源访问密钥管理部403、内部来源访问密钥加密部422和发送部424协动来作为将内部来源访问密钥通知给其他通信装置400的内部来源访问密钥发送部进行动作。内部来源访问密钥发送部是将加密密钥通知给其他通信装置的通知部的一例。
并且,通信装置400也具有计时机构425。计时机构425可以由定时器IC204实现。或者,MPU201也可以基于时钟信号来作为计时机构425发挥功能。
另外,在图14中,也图示了存储于存储器410内的接收数据426、发送数据427、外部来源访问密钥发送数据428和内部来源访问密钥发送数据429。另外,在第2实施方式中,在进行加密和解密时也进行与第1实施方式同样的存储区域的覆盖重写。因此,存储器410内所示的各数据的载荷部有时是正确的平文的状态,有时是密文的状态,有时是由与加密时不同的加密密钥解密了的状态。
如上所述,第2实施方式中的通信装置400的各部具有与第1实施方式中的通信装置100的各部相同或者类似的功能。于是,这里省略了通信装置400的各部的详细动作的说明,而按照后述的流程图进行说明。另外,图14的通信装置400可以在图2的自组织网络140中代替通信装置100A~100L而使用,网关装置120可以具备通信装置400的各部。
图15是表示第2实施方式的通信装置所存储的数据的一例的图。
在图15中,例示了某通信装置400的公共密钥存储部406、内部来源访问密钥存储部407和外部来源访问密钥存储部408所存储的数据。
图15所示的公共密钥存储部406将公共密钥管理部402创建的最新的第γ代公共密钥SKγ作为当前公共密钥进行存储。并且,公共密钥存储部406将公共密钥管理部402以前创建的第(γ-1)代公共密钥SKγ-1作为旧公共密钥进行存储。
另外,当前公共密钥是第1实施方式中的当前密钥的具体例之一,旧公共密钥是第1实施方式中的旧密钥的具体例之一。另外,指示部409选择当前公共密钥或者旧公共密钥的一方作为“选择公共密钥”。
并且,图15所示的内部来源访问密钥存储部407将内部来源访问密钥管理部403创建的最新的第a代内部来源访问密钥AKA,a作为当前内部来源访问密钥进行存储。并且,内部来源访问密钥存储部407将内部来源访问密钥管理部403以前创建的第(a-1)代内部来源访问密钥AKA,a-1作为旧内部来源访问密钥进行存储。
另外,当前内部来源访问密钥是第1实施方式中的当前密钥的具体例之一,旧内部来源访问密钥是第1实施方式中的旧密钥的具体例之一。另外,指示部409选择当前内部来源访问密钥或者旧内部来源访问密钥的一方作为“选择内部来源访问密钥”。
并且,图15所示的外部来源访问密钥存储部408将与该通信装置400之间建立了密钥的其他通信装置400的访问密钥与地址对应地存储。另外,地址是唯一地识别其他通信装置400的识别信息的一例。另外,与第1实施方式同样,第2实施方式也能够应用于各种通信协议。因此,外部来源访问密钥存储部408所存储的地址的层根据应用对象的通信协议的层也可以是多种多样的,例如能够利用MAC地址或IP地址等。
具体而言,在图15的例子中,外部来源访问密钥存储部408将从分配有地址AdrB的其他通信装置400发送的最新的外部来源访问密钥AKB, b与地址AdrB对应地存储。同样,外部来源访问密钥存储部408将从分配有地址AdrC的其他通信装置400发送的最新的外部来源访问密钥AKC,c与地址AdrC对应地存储。并且,外部来源访问密钥存储部408将从分配有地址AdrD的其他通信装置400发送的最新的外部来源访问密钥AKD,d与地址AdrD对应地存储。
图16是第2实施方式的通信装置以数据的接收为触发进行的接收处理的流程图。另外,接收部411在接收到PDU时,将接收到的PDU的数据保存于存储器410,因此在图16的处理开始的时间点,存储器410中存储有接收到的PDU的数据。
另外,根据通信协议的不同,有时也会物理地接收到发往其他通信装置400的PDU,此时,接收部411在开始图16的接收处理之前,根据接收到的PDU的头部判断发送目的地是否是通信装置400自身。并且,接收部411在发送目的地不是通信装置400自身的情况下将接收到的PDU的数据废弃,在发送目的地是通信装置400自身的情况下开始图16的接收处理。
在步骤S401中,接收部411参照存储器410来判定接收到的PDU的种类。另外,在第2实施方式中,头部中存在表示PDU的种类的字段。因此,接收部411通过参照表示种类的字段值,能够判定PDU的种类。
在接收到的PDU是访问密钥的发布用PDU的情况下,通信装置400所接收到的访问密钥的发布用PDU的数据具体而言是图14的外部来源访问密钥发送数据428。因此,在该情况下接收部411命令外部来源访问密钥解密部414对外部来源访问密钥发送数据428的载荷部进行解密,处理进入步骤S402。
另外,访问密钥的发布用PDU是图6的密文PDU307的1种。访问密钥的发布用PDU中被加密的主体305是利用公共密钥对包含针对发送密文PDU307的通信装置400的内部来源访问密钥的数据加密而得的数据。
或者,在接收到的PDU是被访问密钥加密的PDU的情况下,通信装置400所接收到的PDU的数据具体而言是图14的接收数据426。因此,此时接收部411命令接收数据解密部413对接收数据426的载荷部进行解密,处理进入步骤S403。
另外,在接收到的PDU不是上述2种中的任一种的情况下,处理进入步骤S404。
例如,在图2的自组织网络140中,可以代替通信装置100A~100L而使用多个通信装置400,通信装置400彼此也可以在自组织网络140内使用预先固定的加密密钥来交换时刻同步的控制用PDU。或者,通信装置400彼此也可以不对特定种类的PDU加密而进行交换。这样,在接收到载荷部被预先固定的加密密钥加密的PDU、载荷部为空文本的PDU等的情况下,处理进入步骤S404。
另外,在步骤S402中,通信装置400进行图17所示的外部来源访问密钥更新处理。并且,图16的接收处理结束。
另外,在步骤S403中,通信装置400进行图18所示的加密PDU接收处理。并且,图16的接收处理结束。
另外,在步骤S404中,通信装置400进行与接收到的PDU的种类对应的适当的处理。并且,在对应于PDU的种类的处理结束时,图16的接收处理也结束。
另外,步骤S404中的处理的主体、处理的内容以及PDU的种类根据实施方式是任意的。例如,在接收到针对步骤S401例示的时刻同步的控制用PDU的情况下,在步骤S404中,未图示的控制用PDU处理部也可以进行根据需要修正计时机构425的时刻同步处理。
图17是在第2实施方式中通信装置进行的外部来源访问密钥更新处理的流程图。另外,在图17的处理中,对于与第1实施方式的图7的接收处理类似的点适当地省略说明。
在步骤S501中,外部来源访问密钥解密部414按照来自接收部411的指令,对外部来源访问密钥发送数据428的载荷部进行解密。具体而言,外部来源访问密钥解密部414首先从指示部409得到将当前公共密钥和旧公共密钥的哪一个选择为选择公共密钥这一信息。并且,外部来源访问密钥解密部414从公共密钥存储部406读取选择公共密钥,并利用选择公共密钥对外部来源访问密钥发送数据428的载荷部进行解密。
另外,指示部409在通信装置400被接入了电源的初始状态下,将当前公共密钥选择为选择公共密钥。另外,图17的处理虽然在每次接收到访问密钥的发布用PDU时被进行,但是如针对步骤S504、S508和S513所后述的那样,指示部409在结束图17的处理的时间点将当前公共密钥选择为选择公共密钥。因此,在步骤S501的时间点,选择公共密钥是当前公共密钥。
因此,在步骤S501中,外部来源访问密钥解密部414首先从指示部409得到“选择公共密钥是当前公共密钥”这一信息。并且,外部来源访问密钥解密部414从公共密钥存储部406读取当前公共密钥,并利用当前公共密钥来对外部来源访问密钥发送数据428的载荷部进行解密。
另外,外部来源访问密钥解密部414在进行步骤S501的解密时,与第1实施方式的解密部106同样,利用解密后的数据对外部来源访问密钥发送数据428的载荷部的密文覆盖重写。通过这样的覆盖重写,抑制了多余的存储区域的消耗。
外部来源访问密钥解密部414在结束了解密时,将解密的结束通知给外部来源访问密钥判断部416。并且,处理进入步骤S502。
在步骤S502中,接收到来自外部来源访问密钥解密部414的通知的外部来源访问密钥判断部416从由外部来源访问密钥解密部414解密得到的数据抽取特征值。
并且,在下一步骤S503中,外部来源访问密钥判断部416根据由外部来源访问密钥解密部414解密得到的数据的主体计算特征值。另外,步骤S502和S503可以以相反顺序执行,也可以并列执行。
接着,在步骤S504中,外部来源访问密钥判断部416判断抽取出的特征值和计算出的特征值是否一致。
在2个特征值一致时,外部来源访问密钥判断部416判断为“在步骤S501中被解密并存储于存储器410上的外部来源访问密钥发送数据428的载荷部是正常的平文数据”。此时,外部来源访问密钥判断部416命令外部来源访问密钥管理部404利用存储器410上的外部来源访问密钥发送数据428来进行提取发送来的外部来源访问密钥并登记在外部来源访问密钥存储部408中的处理。
在2个特征值一致时,外部来源访问密钥判断部416还指令指示部409准备访问密钥的发布用PDU的下一次接收而重置选择公共密钥,指示部409可以重新将当前公共密钥重选为选择公共密钥。另外,与图7的步骤S105同样,能够省略这样的明确的重置。并且,在2个特征值一致时,处理进入步骤S505。
另一方面,在2个特征值不一致时,外部来源访问密钥判断部416判断为“在步骤S501中被解密并存储于存储器410上的外部来源访问密钥发送数据428的载荷部异常”。并且,处理进入步骤S508。
在步骤S505~S507中,外部来源访问密钥管理部404进行参照由外部来源访问密钥解密部414解密得到的外部来源访问密钥发送数据428,提取发送来的外部来源访问密钥并登记在外部来源访问密钥存储部408中的处理。步骤S505~S507中的外部来源访问密钥管理部404作为第1实施方式中的平文处理部109的1种进行动作。
具体而言,在步骤S505中,外部来源访问密钥管理部404参照存储器410,从接收到的PDU的头部抽取发送源地址。也就是说,外部来源访问密钥管理部404从以图6的解密PDU310的状态存储于存储器410的外部来源访问密钥发送数据428中抽取头部302所含的发送源地址。
并且,在下一步骤S506中,外部来源访问密钥管理部404从由外部来源访问密钥解密部414解密后的数据抽取外部来源访问密钥。也就是说,外部来源访问密钥管理部404从以图6的解密PDU310的状态存储于存储器410的外部来源访问密钥发送数据428抽取解密后的主体308所含的外部来源访问密钥。另外,步骤S505和S506可以以相反顺序执行,也可以并列执行。
接着,在步骤S507中,外部来源访问密钥管理部404将在步骤S505中抽取出的发送源地址和在步骤S506中抽取出的外部来源访问密钥相互对应地保存于外部来源访问密钥存储部408。
具体而言,外部来源访问密钥管理部404将抽取出的发送源地址作为检索关键字来对外部来源访问密钥存储部408进行检索。作为检索的结果,如果检索到具有与抽取出的发送源地址一致的地址的项目,则外部来源访问密钥管理部404利用在步骤S506中抽取出的外部来源访问密钥来对检索到的项目中的外部来源访问密钥覆盖重写。反之,如果没有检索到具有与抽取出的发送源地址一致的地址的项目,则外部来源访问密钥管理部404向外部来源访问密钥存储部408追加将抽取出的发送源地址与抽取出的外部来源访问密钥建立了对应的新的项目。并且,图17的处理结束。
当在步骤S504中2个特征值不一致时,在步骤S508中,外部来源访问密钥判断部416判断当前时刻是否在旧公共密钥的有效期限内。另外,在第2实施方式中,“当前时刻在旧公共密钥的有效期限内”指的是“从公共密钥最近的更新到当前为止经过的时间在规定的允许时间(后述的图20中的”ST“)以内”。
另外,在第2实施方式中,网络内的各通信装置400以相同的规定间隔(后述的图20中的“SI”)分别更新公共密钥。在步骤S504中被用作阈值的允许时间ST是短于公共密钥的更新间隔SI的时间。外部来源访问密钥判断部416识别旧公共密钥的有效期限的具体方法根据实施方式可以是多种多样的,例如外部来源访问密钥判断部416可以如以下那样识别旧公共密钥的有效期限。
例如,计时机构425可以在每次经过公共密钥的更新间隔SI时向公共密钥管理部402输出成为公共密钥的更新的触发的公共密钥更新定时信号。公共密钥更新定时信号例如可以是中断信号。
并且,计时机构425可以仅在从输出公共密钥更新定时信号后的允许时间ST期间内维护(assert)表示旧公共密钥有效的旧公共密钥有效信号。也就是说,在经过了允许时间ST后,在到下一次输出公共密钥更新定时信号为止的期间内,计时机构425可以对旧公共密钥有效信号取反(negate)。由此,外部来源访问密钥判断部416能够根据从计时机构425输出的旧公共密钥有效信号来识别当前时刻是否在旧公共密钥的有效期限内。
或者,外部来源访问密钥判断部416也可以从计时机构425取得当前时刻,利用更新公共密钥的基准时刻、公共密钥的更新间隔SI和当前时刻来计算从最近的公共密钥的更新时刻开始到当前为止的经过时间。并且,外部来源访问密钥判断部416也可以将计算出的经过时间与作为阈值的允许时间ST进行比较,若计算出的经过时间在允许时间ST以内,则判断为“当前时刻在旧公共密钥的有效期限内”。另外,并不限于该例子,基于与阈值的比较的判断根据实施方式,可以是“在阈值以下或超过了阈值”这样的判断,也可以是“小于阈值或者在阈值以上”这样的判断,能够适当地决定方针。
并且,在当前时刻在旧公共密钥的有效期限内的情况下,外部来源访问密钥判断部416命令外部来源访问密钥再次加密部419对外部来源访问密钥发送数据428的载荷部进行再次加密来返回原始状态。并且,处理进入步骤S509。
另一方面,在当前时刻超过了旧公共密钥的有效期限的情况下,外部来源访问密钥判断部416判断为“成为图17的处理的触发的访问密钥的发布用PDU无效”。并且,处理进入步骤S514。
另外,在处理从步骤S508进入步骤S514的情况下,选择公共密钥维持当前公共密钥不变。当然,根据实施方式的不同,也可以明确地进行选择公共密钥的重置。
另外,在步骤S509中,外部来源访问密钥再次加密部419对由外部来源访问密钥解密部414解密后的数据进行再次加密。具体而言,外部来源访问密钥再次加密部419首先从指示部409得到“选择公共密钥是当前公共密钥”这一信息。并且,外部来源访问密钥再次加密部419从公共密钥存储部406读取当前公共密钥,并利用当前公共密钥对外部来源访问密钥发送数据428的载荷部进行加密。
另外,外部来源访问密钥再次加密部419与第1实施方式的再次加密部108同样,在进行加密时,利用加密后的数据对外部来源访问密钥发送数据428的载荷部覆盖重写。通过这样的覆盖重写,抑制了多余的存储区域的消耗。
并且,外部来源访问密钥再次加密部419在结束了加密时,将加密的结束通知给指示部409。由此,指示部409将与当前选择的选择公共密钥不同的公共密钥、即旧公共密钥重选为选择公共密钥,并命令外部来源访问密钥解密部414对外部来源访问密钥发送数据428的载荷部进行解密。
接着,在步骤S510中,外部来源访问密钥解密部414利用旧公共密钥对外部来源访问密钥再次加密部419再次加密后的数据进行解密。具体而言,外部来源访问密钥解密部414首先从指示部409得到“选择公共密钥是旧公共密钥”这一信息。并且,外部来源访问密钥解密部414从公共密钥存储部406读取旧公共密钥,并利用旧公共密钥对外部来源访问密钥发送数据428的载荷部进行解密。
另外,外部来源访问密钥解密部414在进行步骤S510中的解密时,也与步骤S501同样,利用解密后的数据对外部来源访问密钥发送数据428的载荷部的密文覆盖重写。通过这样的覆盖重写,抑制了多余的存储区域的消耗。
并且,外部来源访问密钥解密部414在结束了解密时,将解密的结束通知给外部来源访问密钥判断部416。由此,处理进入步骤S511。
在步骤S511中,外部来源访问密钥判断部416与步骤S502同样,从由外部来源访问密钥解密部414解密后的数据抽取特征值。
另外,在下一步骤S512中,外部来源访问密钥判断部416与步骤S503同样,根据由外部来源访问密钥解密部414解密后的数据的主体计算特征值。另外,步骤S511和S512可以以相反顺序执行,也可以并列执行。
接着,在步骤S513中,外部来源访问密钥判断部416判断抽取出的特征值和计算出的特征值是否一致。
在2个特征值一致时,外部来源访问密钥判断部416判断为“在步骤S510中被解密并存储于存储器410上的外部来源访问密钥发送数据428的载荷部是正常的平文数据”。此时,外部来源访问密钥判断部416命令外部来源访问密钥管理部404利用存储器410上的外部来源访问密钥发送数据428来进行将发送来的外部来源访问密钥登记在外部来源访问密钥存储部408中的处理。
在2个特征值一致时,外部来源访问密钥判断部416还命令指示部409准备访问密钥的发布用PDU的下一次接收而重置选择公共密钥。并且,指示部409将当前公共密钥重选为选择公共密钥。因此,在访问密钥的发布用PDU下一次被接收,图17的处理再次开始的时间点的选择公共密钥成为当前密钥。并且,若如上述那样选择公共密钥被重选,则处理进行步骤S505。
另一方面,在2个特征值不一致时,外部来源访问密钥判断部416判断为“在步骤S510中被解密并存储于存储器410上的外部来源访问密钥发送数据428异常,是无效的”。
另外,在第2实施方式中,由于公共密钥存储部406仅保持当前公共密钥和旧公共密钥这2代的公共密钥,所以成为尝试对象的其他代的公共密钥除此以外并不存在。于是,即使在2个特征值不一致时,外部来源访问密钥判断部416也命令指示部409准备访问密钥的发布用PDU的下一次接收而重置选择公共密钥。并且,指示部409将当前公共密钥重选为选择公共密钥,处理进入步骤S514。
另外,在步骤S514中,外部来源访问密钥判断部416废弃接收到的PDU。例如,外部来源访问密钥判断部416具体而言,可以通过释放存储器410上的外部来源访问密钥发送数据428的存储区域来废弃接收到的PDU。并且,在废弃完成时,图17的处理也结束。
图18是在第2实施方式中通信装置进行的加密包接收处理的流程图。另外,在图18的处理中,对于与第1实施方式的图7的接收处理类似的点,适当地省略说明。
在步骤S601中,接收数据解密部413按照来自接收部411的指令对接收数据426的载荷部进行解密。具体而言,接收数据解密部413首先从指示部409得到将当前内部来源访问密钥和旧内部来源访问密钥的哪一个选择为选择内部来源访问密钥这一信息。并且,接收数据解密部413从内部来源访问密钥存储部407读取选择内部来源访问密钥,并利用选择内部来源访问密钥来对接收数据426的载荷部进行解密。
另外,指示部409在通信装置400被接入了电源的初始状态下,将当前内部来源访问密钥选择为选择内部来源访问密钥。另外,图18的处理虽然在每次进行利用访问密钥加密的PDU的接收时被进行,但是如针对步骤S604、S606和S611所后述的那样,指示部409在结束图18的处理的时间点,将当前内部来源访问密钥选择为选择内部来源访问密钥。因此,在步骤S601的时间点,选择内部来源访问密钥是当前内部来源访问密钥。
因此,在步骤S601中,接收数据解密部413首先从指示部409得到“选择内部来源访问密钥是当前内部来源访问密钥”这一信息。并且,接收数据解密部413从内部来源访问密钥存储部407读取当前内部来源访问密钥,并利用当前内部来源访问密钥来对接收数据426的载荷部进行解密。
另外,接收数据解密部413在进行步骤S601中的解密时,与第1实施方式的解密部106同样,利用解密后的数据对接收数据426的载荷部的密文覆盖重写。通过这样的覆盖重写,抑制了多余的存储区域的消耗。
接收数据解密部413在结束了解密时,将解密的结束通知给接收数据判断部417。并且,处理进入步骤S602。
在步骤S602中,接收了来自接收数据解密部413的通知的接收数据判断部417从由接收数据解密部413解密后的数据中抽取特征值。
并且,在下一步骤S603中,接收数据判断部417根据由接收数据解密部413解密后的数据的主体计算特征值。另外,步骤S602和S603可以以相反顺序执行,也可以并列执行。
接着,在步骤S604中,接收数据判断部417判断抽取出的特征值和计算出的特征值是否一致。
在2个特征值一致时,接收数据判断部417判断为“在步骤S601中被解密并存储于存储器410上的接收数据426的载荷部是正常的平文数据”。此时,接收数据判断部417命令数据处理部423进行存储器410上的接收数据426的处理。
在2个特征值一致时,接收数据判断部417还可以命令指示部409准备利用访问密钥加密的PDU的下一次接收而重置选择内部来源访问密钥。并且,指示部409可以重新将当前内部来源访问密钥重选为选择内部来源访问密钥。另外,与图7的步骤S105同样,可以省略这样的明确的重置。并且,在2个特征值一致时,处理进入步骤S605。
另一方面,在2个特征值不一致时,接收数据判断部417判断为“在步骤S601中被解密并存储于存储器410上的接收数据426的载荷部异常”。并且,处理进入步骤S606。
在步骤S605中,数据处理部423对由接收数据解密部413解密后的PDU进行处理。也就是说,数据处理部423读取载荷部被解密为正常的平文并作为接收数据426存储于存储器410的PDU的数据,并进行适当的处理。另外,在步骤S605中由数据处理部423进行的处理是任意的,也可以是针对第1实施方式的步骤S106所例示那样的处理。在步骤S605中的基于数据处理部423的处理结束时,也结束图18的处理。
当在步骤S604中2个特征值不一致时,在步骤S606中,接收数据判断部417判断当前时刻是否在旧内部来源访问密钥的有效期限内。另外,在第2实施方式中,“当前时刻在旧内部来源访问密钥的有效期限内”指的是“从内部来源访问密钥的最近的更新开始到当前为止经过的时间在规定的允许时间(后述的图20中的“AT”)以内”。
另外,在第2实施方式中,通信装置400以规定的间隔(后述的图20中的“AI”)对内部来源访问密钥进行更新。访问密钥的更新间隔AI短于上述的公共密钥的更新间隔SI。另外,为了使所有代的公共密钥都在访问密钥的通知中被利用2次以上,访问密钥的更新间隔AI优选在公共密钥的更新间隔SI的一半以下,详细内容会参照图20进行后述。
并且,在步骤S606中被用作阈值的允许时间AT是短于内部来源访问密钥的更新间隔AI的时间。接收数据判断部417识别旧内部来源访问密钥的有效期限的具体方法根据实施方式可以是各种各样的。具体而言,接收数据判断部417能够通过与针对图17的步骤S508所例示的、外部来源访问密钥判断部416识别旧公共密钥的有效期限的方法类似的方法来识别旧内部来源访问密钥的有效期限。
并且,在当前时刻在旧内部来源访问密钥的有效期限内的情况下,接收数据判断部417命令接收数据再次加密部420对接收数据426的载荷部进行再次加密来返回原始的状态。并且,处理进入步骤S607。
另一方面,在当前时刻超过旧内部来源访问密钥的有效期限的情况下,接收数据判断部417判断为“成为图18的处理的触发的PDU的载荷部异常”。此时,接收数据判断部417判断为“发生了某些错误”,处理进入步骤S612。
另外,在处理从步骤S606进入步骤S612的情况下,选择内部来源访问密钥维持当前内部来源访问密钥不变。当然,根据实施方式的不同,也可以明确地进行选择内部来源访问密钥的重置。
另外,在步骤S607中,接收数据再次加密部420对由接收数据解密部413解密后的数据进行再次加密。具体而言,接收数据再次加密部420首先从指示部409得到“选择内部来源访问密钥是当前内部来源访问密钥”这一信息。并且,接收数据再次加密部420从内部来源访问密钥存储部407读取当前内部来源访问密钥,并使用当前内部来源访问密钥来对接收数据426的载荷部进行加密。
另外,接收数据再次加密部420与第1实施方式的再次加密部108同样,在进行加密时,利用加密后的数据对接收数据426的载荷部覆盖重写。通过这样的覆盖重写,抑制了多余的存储区域的消耗。
并且,接收数据再次加密部420在结束了加密时,将加密的结束通知给指示部409。由此,指示部409将与当前选择的选择内部来源访问密钥不同的内部来源访问密钥、即旧内部来源访问密钥重选为选择内部来源访问密钥,并命令接收数据解密部413对接收数据426的载荷部进行解密。
接着,在步骤S608中,接收数据解密部413利用旧内部来源访问密钥对由接收数据再次加密部420再次加密后的数据进行解密。具体而言,接收数据解密部413首先从指示部409得到“选择内部来源访问密钥是旧由来访问密钥”这一信息。并且,接收数据解密部413从内部来源访问密钥存储部407读取旧内部来源访问密钥,并利用旧内部来源访问密钥来对接收数据426的载荷部进行解密。
另外,接收数据解密部413在进行步骤S608中的解密时,也与步骤S601同样,利用解密后的数据对接收数据426的载荷部的密文覆盖重写。通过这样的覆盖重写,抑制了多余的存储区域的消耗。
并且,接收数据解密部413在结束了解密时,将解密的结束通知给接收数据判断部417。由此,处理进入步骤S609。
在步骤S609中,接收数据判断部417与步骤S602同样,从接收数据解密部413解密后的数据中抽取特征值。
另外,在下一步骤S610中,接收数据判断部417与步骤S603同样,根据由接收数据解密部413解密后的数据的主体计算特征值。另外,步骤S5609和S610可以以相反顺序执行,也可以并列执行。
接着,在步骤S611中,接收数据判断部417判断抽取出的特征值和计算出的特征值是否一致。
在2个特征值一致时,接收数据判断部417判断为“在步骤S608中被解密并存储于存储器410上的接收数据426的载荷部是正常的平文数据”。此时,接收数据判断部417命令数据处理部423进行存储器410上的接收数据426的处理。
在2个特征值一致时,接收数据判断部417还命令指示部409准备利用访问密钥加密的PDU的下一次接收而重置选择内部来源访问密钥。并且,指示部409将当前内部来源访问密钥重选为选择内部来源访问密钥。因此,在利用访问密钥加密的PDU被下一次接收,图18的处理再次开始的时间点的选择内部来源访问密钥成为当前内部来源访问密钥。并且,若如以上那样选择内部来源访问密钥被重选,则处理进入步骤S605。
另一方面,在2个特征值不一致的情况下,接收数据判断部417判断为“在步骤S608中被解密并存储于存储器410上的接收数据426的载荷部异常”。
另外,在第2实施方式中,内部来源访问密钥存储部407仅保持当前内部来源访问密钥和旧内部来源访问密钥这2代的内部来源访问密钥,因此成为尝试对象的其他代的内部来源访问密钥除此之外并不存在。于是,在2个特征值不一致的情况下,接收数据判断部417也命令指示部409准备利用访问密钥加密的PDU的下一次接收而重置选择内部来源访问密钥。并且,指示部409将当前内部来源访问密钥重选为选择内部来源访问密钥,处理进入步骤S612。
在步骤S612中,接收数据判断部417进行适当的错误处理。或者,接收数据判断部417也可以命令未图示的错误处理部进行错误处理。错误处理的具体内容是任意的。例如,错误处理可以是单纯地释放接收数据426的存储区域的处理,也可以是请求发送源的其他的通信装置400重送PDU的处理。在执行了错误处理后,图18的处理也结束。
如以上参照图16~18所说明的那样,在第2实施方式中,在将PDU的接收作为触发的一系列处理中,伴随着解密或者再次加密,也进行存储器410上的存储区域的覆盖重写。因此,第2实施方式也与第1实施方式同样,具有存储区域的节约效果。
另外,通信装置400也进行与PDU的接收独立的处理。即,通信装置100如以下所说明的那样,也进行PDU的发送、公共密钥的更新、内部来源访问密钥的更新、以及内部来源访问密钥的发送。
具体而言,数据处理部423根据要向其他装置发送的数据来创建平文的发送数据427。这样创建的发送数据427是图6的平文PDU304的一例。也就是说,数据处理部423创建或者取得合适的主体301,设定合适的头部302,并根据主体301计算特征值303来创建相当于发送数据427的平文PDU304。
例如,在通信装置400是传感器网络内的节点时,通信装置400可以内置传感器,也可以与传感器连接。并且,数据处理部423可以将从传感器输出的数据设定在主体301中。
当平文的发送数据427在存储器410上创建结束时,数据处理部423命令发送数据加密部421对发送数据427的载荷部进行加密。由此,发送数据加密部421识别发送目标的地址(即其他通信装置400的地址),并读取与识别到的地址对应地存储于外部来源访问密钥存储部408的外部来源访问密钥。
另外,与第1实施方式同样,也可以通过由数据处理部423将发送数据427的发送目标明确地通知给发送数据加密部421,来使发送数据加密部421识别发送目标的地址。或者,发送数据加密部421也可以从发送数据427的头部中读取发送目标的地址,由此来识别发送目标的地址。
并且,发送数据加密部421利用读取到的外部来源访问密钥对发送数据427的载荷部进行加密。此时,与基于外部来源访问密钥再次加密部419和接收数据再次加密部420的再次加密同样,发送数据加密部421也进行针对存储器410上的同一存储区域的覆盖重写。也就是说,发送数据加密部421对发送数据427的平文的载荷部进行加密,并利用通过加密得到的密文的数据对载荷部覆盖重写。通过这样的覆盖重写,在发送数据427的发送时也能够实现存储器410的有效利用。
另外,发送数据加密部421在结束了加密处理时,命令发送部424发送发送数据427。并且,发送部424发送发送数据427。
接着对通信装置400中的公共密钥的更新进行说明。通信装置400的公共密钥管理部402与第1实施方式的密钥管理部101通过进行图10或者图12的处理来更新密钥存储部102上的加密密钥的处理同样地对公共密钥存储部406上的公共密钥进行更新。因此,此处省略详细说明,如下述那样补充说明相当于图10的步骤S201或者图12的步骤S301的处理。
在第2实施方式中,计时机构425可以在每次经过了公共密钥的更新间隔SI时便输出上述的公共密钥更新定时信号。并且,公共密钥管理部402在检测出公共密钥更新定时信号时,可以识别为“到了更新公共密钥的时刻”。或者,公共密钥管理部402可以从计时机构425取得当前时刻,并利用更新公共密钥的基准时刻、公共密钥的更新间隔SI和当前时刻来判断是否到了更新公共密钥的时刻。
接着,对通信装置400中的内部来源访问密钥的更新进行说明。通信装置400的内部来源访问密钥管理部403与第1实施方式的密钥管理部101通过进行图10或者图12的处理来更新密钥存储部102上的加密密钥的处理同样地对内部来源访问密钥存储部407上的内部来源访问密钥进行更新。因此,此处省略详细说明,而如下述那样补充说明相当于图10的步骤S201或者图12的步骤S301的处理。
在第2实施方式中,计时机构425可以在每次经过了内部来源访问密钥的更新间隔AI时便输出内部来源访问密钥更新定时信号(例如中断信号)。并且,内部来源访问密钥管理部403在检测到内部来源访问密钥更新定时信号时,可以识别为“到了更新内部来源访问密钥的时刻”。或者,内部来源访问密钥管理部403可以从计时机构425取得当前时刻,并利用更新内部来源访问密钥的基准时刻、内部来源访问密钥的更新间隔AI和当前时刻来判断是否到了更新内部来源访问密钥的时刻。
接着参照图19对内部来源访问密钥的发送进行说明。图19是在第2实施方式中通信装置进行的内部来源访问密钥发送处理的流程图。
在通信装置400被接入了电源后,在至少向内部来源访问密钥存储部407设定了当前内部来源访问密钥后开始进行图19的处理。例如,内部来源访问密钥管理部403可以在通信装置400被接入了电源时,创建第1代内部来源访问密钥并作为当前内部来源访问密钥保存于内部来源访问密钥存储部407,然后开始进行图19的处理。
在步骤S701中,内部来源访问密钥管理部403在到达通知内部来源访问密钥的时刻之前进行待机。并且,在到了通知内部来源访问密钥的时刻时,若内部来源访问密钥管理部403进行了判断,则处理进入步骤S702。
另外,在第2实施方式中,以规定的通知间隔(后述的图20中的“AN”)将内部来源访问密钥发送至其他通信装置400(即通知)。在第2实施方式中,访问密钥的通知间隔AN短于访问密钥的更新间隔AI。另外,为了使所有代的内部来源访问密钥也被多次通知,访问密钥的通知间隔AN优选在访问密钥的更新间隔AI的一半以下,详细内容参照图20后述。
另外,内部来源访问密钥管理部403识别是否到了通知内部来源访问密钥的时刻的具体方法是任意的。
例如,计时机构425可以在每次经过了访问密钥的通知间隔AN时便输出成为访问密钥的通知的触发的访问密钥通知定时信号。访问密钥通知定时信号例如可以是中断信号。内部来源访问密钥管理部403在检测到来自计时机构425的访问密钥通知定时信号时,识别为到了通知内部来源访问密钥的时刻。
或者,内部来源访问密钥管理部403可以从计时机构425取得当前时刻,并利用通知内部来源访问密钥的基准时刻、访问密钥的通知间隔AN和当前时刻来判断是否到了通知内部来源访问密钥的时刻。
在步骤S702中,内部来源访问密钥管理部403创建包含当前内部来源访问密钥的平文的内部来源访问密钥发送数据429并保存于存储器410上。另外,步骤S702中的内部来源访问密钥管理部403实现了与在第1实施方式中创建发送数据115的平文处理部109类似的功能。
在步骤S702中创建的内部来源访问密钥发送数据429的载荷部还是平文的状态。也就是说,内部来源访问密钥发送数据429是图6的平文PDU304的一例,主体301包含当前内部来源访问密钥。另外,内部来源访问密钥管理部403根据主体301计算特征值303,并适当地设定头部302。另外,如针对步骤S703所说明的那样,在第2实施方式中,设定广播地址作为头部302内的发送目标地址。
并且,当平文的内部来源访问密钥发送数据429在存储器410上创建结束时,内部来源访问密钥管理部403命令内部来源访问密钥加密部422对载荷部进行加密。由此,内部来源访问密钥加密部422从公共密钥存储部406读取当前公共密钥,并利用当前公共密钥来对内部来源访问密钥发送数据429的载荷部进行加密。
此时,与基于外部来源访问密钥再次加密部419和接收数据再次加密部420的再次加密同样,内部来源访问密钥加密部422也进行针对存储器410上的同一存储区域的覆盖重写。也就是说,内部来源访问密钥加密部422对内部来源访问密钥发送数据429的平文的载荷部进行加密,并利用加密得到的密文的数据对载荷部覆盖重写。通过这样的覆盖重写,在发送内部来源访问密钥发送数据429时也能够实现存储器410的有效利用。
另外,内部来源访问密钥加密部422在结束了加密处理时,命令发送部424发送内部来源访问密钥发送数据429。
由此,在下一步骤S703中,发送部424发送在步骤S702中作为加密结果而得到的内部来源访问密钥发送数据429。具体而言,在第2实施方式中,由于设定广播地址作为发送目标地址,所以通信装置400对内部来源访问密钥发送数据429进行广播。
例如,在由多个通信装置400构建无线自组织网络的情况下,步骤S703中的广播指的是针对通过1跳能够到达的范围的所有其他通信装置400的发送。因此,发送部424所发送的PDU在不经过中继就能够直接接收该PDU的所有其他通信装置400中成为图17的处理对象。
另外,在由多个通信装置400构建有线自组织网络的情况下,步骤S703中的广播指的是针对通过1跳能够到达的范围的其他所有通信装置400的发送。也就是说,向由电缆直接与内部来源访问密钥发送数据429的发送源的通信装置400相连接的所有其他通信装置400发送内部来源访问密钥发送数据429。并且,发送的PDU在由电缆直接与内部来源访问密钥发送数据429的发送源的通信装置400相连接的所有其他通信装置400中成为图17的处理对象。
或者,在第2实施方式被应用于以太网(注册商标)的情况下,向属于与内部来源访问密钥发送数据429的发送源的通信装置400相同的广播域的所有其他通信装置400发送内部来源访问密钥发送数据429。并且,发送的PDU在属于与发送源的通信装置400相同的广播域的所有其他通信装置400中成为图17的处理对象。
无论在哪种情况下,在进行了步骤S703中的广播后,处理都返回步骤S701。
另外,根据图19,在每次进行内部来源访问密钥的通知时,都进行内部来源访问密钥发送数据429的载荷部的加密,但是根据实施方式的不同,也可以对内部来源访问密钥发送数据429进行再利用。也就是说,在以相同内部来源访问密钥被多次通知的方式设定内部来源访问密钥的更新间隔AI和通知间隔AN的情况下,可以仅在内部来源访问密钥的更新后的第一次通知时进行内部来源访问密钥发送数据429的创建。
并且,存储器410可以在下次内部来源访问密钥被更新之前持续保持载荷部被加密的状态的内部来源访问密钥发送数据429。由此,在内部来源访问密钥被更新后的第2次以后的通知中,能够省略步骤S702。也就是说,内部来源访问密钥管理部403可以命令发送部424对存储器410上的既存的内部来源访问密钥发送数据429进行再次发送。
接着,参照图20对上述说明的各种处理的执行定时进行说明。图20是表示第2实施方式中的公共密钥和内部来源访问密钥的更新的时序图。
在第2实施方式中,公共密钥管理部402以规定的更新间隔SI定期地更新公共密钥。在图20中,图示了第(γ-1)代公共密钥SKγ-1至第(γ+2)代公共密钥SKγ+2
另外,如针对图17的步骤S508所说明的那样,在第2实施方式中,利用当前公共密钥的解密失败时的再次加密和基于旧公共密钥的解密仅在从公共密钥的更新开始的一定的允许时间ST期间进行。并且,允许时间ST短于更新间隔SI。
另外,更新间隔SI优选被设定为例如与包含有通信装置400的网络中的通信量对应的合适的值。作为一例,更新间隔SI可以是6小时~12小时左右的长度。另外,允许时间ST优选例如根据通信装置400间的同步的精度、或者相互发送访问密钥的通信装置400间的通信所需的时间等来设定成与实施方式对应的合适的值。
并且,内部来源访问密钥管理部403与基于公共密钥管理部402的公共密钥的更新独立地以规定的更新间隔AI定期地更新内部来源访问密钥。在图20中,图示了从第(a-1)代内部来源访问密钥AKA,a-1至第(a+4)代内部来源访问密钥AKA,a+4
内部来源访问密钥的更新间隔AI短于公共密钥的更新间隔SI,优选在公共密钥的更新间隔SI的一半以下。内部来源访问密钥的更新间隔AI优选设定成例如与包含有通信装置400的网络中的通信量对应的合适的值。作为一例,内部来源访问密钥的更新间隔AI可以是10分钟~20分钟左右的长度。另外,公共密钥的更新间隔SI也可以不是能被内部来源访问密钥的更新间隔AI整除的长度。
另外,在第2实施方式中,如针对图18的步骤S606所说明的那样,利用当前内部来源访问密钥的解密失败时的再次加密和基于旧内部来源访问密钥的解密仅在从内部来源访问密钥的更新开始的一定的允许时间AT期间进行。并且,允许时间AT短于更新间隔AI。允许时间AT例如优选根据交换利用访问密钥加密后的PDU的通信装置400间的通信所需的时间等来设定成与实施方式对应的合适的值。
并且,在第2实施方式中,如针对图19的步骤S701所说明的那样,通信装置400以规定的通知间隔AN将内部来源访问密钥通知给其他通信装置400。通知间隔AN短于内部来源访问密钥的更新间隔AI,优选在更新间隔AI的一半以下。作为一例,通知间隔AN可以是1~5分钟左右的长度。另外,更新间隔AI也可以不是能被通知间隔AN整除的长度。
由于通知间隔AN短于更新间隔AI,所以在图20的例子中,例如第a代内部来源访问密钥AKA,a在内部来源访问密钥AKA,a被识别为当前内部来源访问密钥的期间中被通知5次。如这样与内部来源访问密钥的更新相比频繁地进行内部来源访问密钥的通知的情况尤其适用于自组织网络内的通信装置400。
其原因在于,存在与自组织网络连接的通信装置时时刻刻都在动态变化的可能性。例如,存在新的通信装置400在任意的时间点开始参加自组织网络的情况。
更具体而言,例如,可能存在在访问密钥AKA,a的第1次通知的时间点没有与自组织网络连接的新的通信装置400在访问密钥AKA,a的第3次通知的时间点已经与自组织网络连接的情况。由此,新加入自组织网络的该通信装置400能够不用等待下一次第(a+1)代访问密钥AKA,a+1的通知,而从访问密钥AKA,a的第3次通知的时间点开始立即开始基于访问密钥的加密通信。
另外,虽然通信装置400的设置位置可以固定,但是在无线自组织网络中,通信装置400也可以是移动体。由此,可能存在对应于通信装置400的移动,或者对应于遮蔽物的有无等无线通信环境的变化,偶尔无法接收访问密钥的通知的情况。
例如,地址AdrB的通信装置400可能无法接收来自地址AdrA的通信装置400的访问密钥AKA,a的第1次通知。但是,根据无线通信环境的变化,地址AdrB的通信装置400可能能够接收来自地址AdrA的通信装置400的访问密钥AKA,a的第2次通知。由此,地址AdrB的通信装置400在访问密钥AKA,a的第2次通知以后,能够利用访问密钥AKA,a对发往地址AdrA的通信装置400的PDU进行加密并发送。
因此,在将访问密钥从第(a-1)代更新成第a代之后,地址AdrA的通信装置400从地址AdrB的通信装置400接收由旧的访问密钥AKA,a- 1加密后的PDU的情况最多也就到第2次的通知的稍后为止。并且,例如设定如图20那样到访问密钥AKA,a的第2次通知的稍后为止包含在允许时间AT的范围内。由此,对于地址AdrA的通信装置400而言,接收由访问密钥AKA,a-1加密后的PDU的情况在旧内部来源访问密钥AKA,a-1的有效期限内。因此,由访问密钥AKA,a-1加密后的PDU的收发不会浪费,也无需PDU的重送请求等的错误处理。
即,根据上述的例子可知,通知间隔AN更优选不仅短于更新间隔AI,还在允许时间AT的一半以下。如下述那样补充说明其理由。
若通知间隔AN在允许时间AT的一半以下,则允许时间AT内包含多次的通知。因此,“即使访问密钥的更新后的第1次通知在通知目标的某通信装置400中偶然无法接收,在允许时间AT内,通知目标的通信装置400也能够识别更新后的新的访问密钥”的可能性变高。由此,减少了错误处理的频度。另外,如果通知间隔AN较短,则再次加密和基于旧内部来源访问密钥的解密的频度也减少。由此,其结果,各个通信装置400的再次加密和再次的解密所需的处理负荷也减少,网络的浪费的通信量也减少。
另外,本发明不限于上述实施方式。虽然在上述的说明中也说明了一些变形,但是上述实施方式还能够例如根据下述(b1)~(b7)的观点进行各种变形,这些变形只要相互不矛盾,就能够任意地进行组合。
(b1)与加密密钥的更新间隔和通知间隔有关的观点
根据实施方式的不同,访问密钥的通知间隔AN也可以与访问密钥的更新间隔AI相同。也就是说,可以在内部来源访问密钥每次被创建时,在刚刚创建完毕后通知1次内部来源访问密钥。例如,在通信品质较好的有线网络中,通知间隔AN和更新间隔AI可以相同。
另外,有效期限可以仅对公共密钥和访问密钥的一方设定。也就是说,在第2实施方式中,可以省略图17的步骤S508或者图18的步骤S606的与有效期限有关的分支。反之,可以在第1实施方式中导入与第2实施方式同样的有效期限。另外,有效期限被省略这一情况与设定和加密密钥的更新间隔相等的有效期限的情况相同。
另外,在多个通信装置相互按照相同的算法对加密密钥进行创建和更新的情况下,事先决定加密密钥的更新定时,以便多个通信装置针对加密密钥的更新的定时能够具有共同的识别。以固定的间隔进行的更新是用于使多个通信装置针对加密密钥的更新的定时具有共同识别的一个方法。当然,根据实施方式的不同,也可以使多个通信装置间预先共享与加密密钥的更新的定时有关的不规则的间隔的调度。
与此相对,对于通过密钥发送在通信装置间建立的加密密钥而言,通信装置对加密密钥进行更新的间隔也可以不固定。例如,第2实施方式的通信装置400彼此相互发送访问密钥。因此,各个通信装置400可以不用事先识别其他通信装置400更新访问密钥的定时。
例如,在具有第1和第2通信装置400的情况下,第2通信装置400无需知道第1通信装置400对针对第1通信装置400的内部来源访问密钥进行更新的间隔。因此,第1通信装置400例如可以根据PDU的接收频度等状况的变化来动态地变更内部来源访问密钥的更新间隔。
(b2)与保持的加密密钥的数量有关的观点
第1实施方式的密钥存储部102也可以保持2代以上的旧密钥。同样,第2实施方式的公共密钥存储部406也可以保持2代以上的旧公共密钥,内部来源访问密钥存储部407也可以保持2代以上的旧内部来源访问密钥。并且,再次加密和解密根据需要也可以对保持的多个旧加密密钥依次进行尝试。
例如密钥存储部102可以保持当前密钥、1代前的旧密钥和2代前的旧密钥这3代的加密密钥。另外,密钥管理部101在创建了新的加密密钥时,对密钥存储部102上的3代的加密密钥适当更新。此时,对于接收到的PDU的载荷部的解密而言,通信装置100按照“当前密钥、1代前的旧密钥,2代前的旧密钥”那样从较新的加密密钥开始依次进行尝试的情况是合适的。
具体而言,当在图7的步骤S111中2个特征值不一致时,判断部107命令再次加密部108对接收数据114的载荷部进行再次加密。另外,此时,在步骤S111的阶段不进行选择加密密钥的重置。
并且,再次加密部108利用1代前的旧密钥对接收数据114的载荷部进行再次加密。并且,再次加密部108将再次加密的结束通知给指示部103。由此,指示部103将选择加密密钥从当前选择的1代前的旧密钥切换成2代前的旧密钥。
并且,指示部103命令解密部106对接收数据114的载荷部进行解密。由此,解密部106利用2代前的旧密钥对接收数据114的载荷部进行解密。并且,解密部106将解密的结束通知给判断部107。
由此,判断部107从解密后的载荷部抽取特征值,根据主体计算特征值,并对2个特征值进行比较。其结果,如果2个特征值一致,则进行选择加密密钥的重置,处理进入步骤S106。反之,当2个特征值不一致时,进行选择加密密钥的重置,处理进入步骤S112。
当然,第2实施方式也能够与上述同样地进行变形。另外,也可以是还利用3代前的旧密钥的实施方式。如以上那样也利用2代以上之前的旧密钥的实施方式尤其适用于通信较费时间的通信装置间的加密通信。
(b3)与加密密钥被建立的范围有关的观点
加密密钥被建立的范围可以根据实施方式适当地变更。例如,在图14的通信装置400被用作图2的自组织网络140内的节点的情况下,可以在自组织网络140的所有节点间适用同一公共密钥。但是,根据网络的构成、应用对象的协议的层、加密通信的目的等,加密密钥被建立的范围可以适当变形。
例如,在第2实施方式中,在图19的步骤S703中,内部来源访问密钥通过广播被通知给1跳以内的其他所有通信装置400。但是,根据实施方式的不同,内部来源访问密钥的通知目标的通信装置400例如也可以限定为特定的1个。
(b4)与加密密钥的创建算法有关的观点
加密密钥的创建算法是任意的。也就是说,密钥管理部101、公共密钥管理部402和内部来源访问密钥管理部403可以分别按照任意的算法来创建加密密钥。
例如,密钥管理部101、公共密钥管理部402和内部来源访问密钥管理部403可以通过进行针对时刻求出唯一值的处理来创建加密密钥。所谓针对时刻求出唯一值的处理例如是将当前时刻作为种子(seed)来产生随机数,并使用随机数创建加密密钥的处理。另外,种子可以是将识别通信装置的信息(例如ID或者地址)和当前时刻组合得到的信息。
(b5)与特征值有关的观点
如上所述,作为图6的特征值303,例如能够利用哈希值。此时,加密的特征值306相当于作为消息验证码(Message Authentication Code;MAC)的1种的keyed-Hashing for MAC(HMAC)。
另外,在第1和第2实施方式中,主体301和特征值303以相同的加密密钥,按照相同的加密算法被加密。但是,主体301和特征值303也可以以不同的加密密钥被加密,主体301和特征值303也可以按照不同的加密算法被加密。
例如,在第2实施方式中,对于由访问密钥加密的种类的PDU而言,在载荷部中,主体301的部分可以由访问密钥加密,特征值303的部分可以由固定的加密密钥加密。此时,接收数据解密部413利用内部来源访问密钥对加密后的主体进行解密,利用固定的加密密钥对加密后的特征值进行解密即可。另外,接收数据再次加密部420利用内部来源访问密钥对解密后的主体进行再次加密,利用固定的加密密钥对解密后的特征值进行再次加密即可。
另外,根据实施方式的不同,为了进行基于判断部107、外部来源访问密钥判断部416或者接收数据判断部417的判断,也可以利用基于公开密钥加密算法的数字签名。
例如,第1通信装置400向第2通信装置400预先公开公开密钥。并且,第1通信装置400的数据处理部423可以根据主体301计算哈希值,并通过利用秘密密钥对计算得到的哈希值进行加密来创建作为特征值303的数字签名。此时,发送数据加密部421可以利用第2通信装置400的访问密钥对包含数字签名的载荷部整体进行加密,也可以利用第2通信装置400的访问密钥仅对主体301的部分进行加密。
在发送数据加密部421利用第2通信装置400的访问密钥对包含作为特征值303的数字签名的载荷部整体进行加密的实施方式中,第2通信装置400的接收数据解密部413利用访问密钥对载荷部整体进行解密。并且,接收数据判断部417利用公开密钥对解密后的特征值309进行解密,从而得到哈希值。另外,接收数据判断部417根据解密后的主体308计算相当于图6的特征值311的哈希值。
并且,如果得到的2个哈希值相等,则接收数据判断部417判断为“载荷部被与加密所用的密钥相同的访问密钥解密”。也就是说,接收数据判断部417判断为“解密后的数据是正常的平文数据,解密成功”。
另一方面,在得到的2个哈希值不同的情况下,接收数据判断部417判断为“载荷部被与加密所用的密钥不同的访问密钥解密”。也就是说,接收数据判断部417判断为“解密后的数据异常,解密失败”。
也就是说,在第1和第2实施方式中,解密后的特征值309和计算出的特征值311是否完全一致的情况被用于判断解密后的特征值309和计算出的特征值311之间的匹配性。但是,如上所述,根据实施方式的不同,对解密后的特征值309实施了基于公开密钥的解密等的某些操作而得的结果被与特征值311比较。换言之,根据实施方式的不同,基于“解密后的特征值309自身和特征值311是否完全一致”这样的基准以外的基准来进行匹配性的判断。
另外,在使用数字签名的情况下,也能够利用第1通信装置400的发送数据加密部421利用第2通信装置400的访问密钥来仅对主体301的部分进行加密的实施方式。此时,第2通信装置400的接收数据解密部413利用访问密钥仅对加密后的主体305进行解密。
并且,接收数据判断部417利用公开密钥对作为特征值303的数字签名进行解密来得到哈希值。另外,接收数据判断部417根据解密后的主体308计算相当于图6的特征值311的哈希值。并且,接收数据判断部417通过比较2个哈希值来判断特征值303与计算出的特征值311之间的匹配性。
(b6)与数据形式有关的观点
图5和图15以表格式例示了数据,但是密钥存储部102、密钥识别部112、公共密钥存储部406、内部来源访问密钥存储部407以及外部来源访问密钥存储部408所保持的数据的格式不限于表格式。
例如,密钥存储部102可以由大小为3的环缓冲器实现。并且,在环缓冲器中,1个项目可以用于当前密钥,1个项目可以用于旧密钥,1个项目可以用于新创建的加密密钥的临时存储区域。此时,密钥管理部101在每次创建加密密钥时,便使指向当前密钥的指针移动即可。内部来源访问密钥存储部407也同样地可以由环缓冲器实现。
另外,密钥识别部112和外部来源访问密钥存储部408中的数据形式可以是图示那样的表格式,但是也可以是将地址和加密密钥的对保持为要素的线形列表或者First-In-First-Out(FIFO)队列等。
(b7)针对进行覆盖重写的对象的观点
第2实施方式可以变形为针对访问密钥的发送用PDU不进行存储区域的覆盖重写。也就是说,内部来源访问密钥加密部422、外部来源访问密钥解密部414和外部来源访问密钥再次加密部419在进行加密或者解密时,也可以不必进行存储区域的覆盖重写。
其理由在于,访问密钥的发送用PDU等的控制用PDU一般载荷部较短。因此,在是访问密钥的发送用PDU的情况下,不进行存储区域的覆盖重写所造成的存储区域的消耗的影响与是利用访问密钥进行加密的应用数据用PDU的情况相比较小。也就是说,根据实施方式的不同,针对利用访问密钥进行加密的应用数据用PDU仅进行存储区域的覆盖重写,有时也能够充分地实现存储器410的有效利用。
基于相同的理由,例如在“发送频度与接收频度相比较少”、或者“发送数据115的数据长度较短”之类的特定环境下,针对发送数据115也可以不进行存储区域的覆盖重写。
另外,在以上的本说明书的说明中,“覆盖重写”这一用语的意思也包含“回写”。例如,直接利用第2数据对第1数据覆盖重写的情况若根据其他观点来表现,则是直接利用第2数据回写存储第1数据的存储区域。另外,将存储有第1数据的存储区域清空后在相同存储区域回写第2数据的情况是”覆盖重写“的1种。

Claims (7)

1.一种通信装置,具备:
数据存储部,其存储加密数据或者解密数据;
解密部,其对加密数据进行解密;
加密部,其对解密数据进行加密;和
判断部,其向所述加密部发出指令,使所述加密部从所述数据存储部读取第1解密数据,并向所述数据存储部回写第2加密数据,其中,所述第1解密数据是由所述解密部基于加密密钥对第1加密数据进行解密而得的,所述第2加密数据是基于所述加密密钥对所述第1解密数据进行加密而得的。
2.根据权利要求1所述的通信装置,其特征在于,
所述解密部从所述数据存储部读取所述第2加密数据,并向所述数据存储部回写基于与所述加密密钥不同的加密密钥对所述第2加密数据进行解密而得的第2解密数据。
3.根据权利要求1或2所述的通信装置,其特征在于,还具备:
密钥存储部,其包含存储所述加密密钥的第1存储区域和存储与所述加密密钥不同的加密密钥的第2存储区域;和
密钥管理部,其将新的加密密钥存储于第3存储区域,将存储于所述第1存储区域的所述加密密钥复制到第4存储区域中,在将所述加密密钥从所述第1存储区域复制到所述第4存储区域之后将所述新的加密密钥从所述第3存储区域复制到所述第1存储区域中,在将所述新的加密密钥从所述第3存储区域复制到所述第1存储区域之后将复制到所述第4存储区域的所述加密密钥复制到所述第2存储区域中。
4.根据权利要求1或2所述的通信装置,其特征在于,还具备:
密钥管理部,其反复进行所述加密密钥的更新;和
通知部,其以所述密钥管理部对所述加密密钥进行更新的更新间隔的一半以下的间隔将由所述密钥管理部更新后的所述加密密钥通知给其他通信装置。
5.根据权利要求1或2所述的通信装置,其特征在于,
所述通信装置还具备:
密钥管理部,其更新所述加密密钥;和
通知部,其向其他通信装置反复通知由所述密钥管理部更新后的所述加密密钥,
所述判断部仅在所述密钥管理部更新了所述加密密钥之后到经过了决定的允许时间为止这一期间内对所述加密部发出所述指令,
所述通知部进行所述通知的通知间隔在所述允许时间的长度的一半以下。
6.一种程序,其使计算机执行如下处理:
向所述计算机所具备的数据存储部存储第1加密数据;
基于加密密钥对存储的所述第1加密数据进行解密,由此得到解密数据;
将得到的所述解密数据存储于所述数据存储部;
从所述数据存储部读取存储的所述解密数据;
基于所述加密密钥对读取出的所述解密数据进行加密,由此得到第2加密数据;
向所述数据存储部回写所得到的所述第2加密数据。
7.一种方法,其特征在于,通信装置进行如下处理:
向所述通信装置所具备的数据存储部存储第1加密数据;
基于加密密钥对存储的所述第1加密数据进行解密,由此得到解密数据;
将得到的所述解密数据存储于所述数据存储部;
从所述数据存储部读取存储的所述解密数据;
基于所述加密密钥对读取出的所述解密数据进行加密,由此得到第2加密数据;
向所述数据存储部回写得到的所述第2加密数据。
CN201080065354.4A 2010-03-17 2010-03-17 通信装置、程序以及方法 Active CN103109493B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/001912 WO2011114373A1 (ja) 2010-03-17 2010-03-17 通信装置、プログラムおよび方法

Publications (2)

Publication Number Publication Date
CN103109493A true CN103109493A (zh) 2013-05-15
CN103109493B CN103109493B (zh) 2016-01-13

Family

ID=44648512

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080065354.4A Active CN103109493B (zh) 2010-03-17 2010-03-17 通信装置、程序以及方法

Country Status (4)

Country Link
US (1) US20130070925A1 (zh)
JP (1) JP5454673B2 (zh)
CN (1) CN103109493B (zh)
WO (1) WO2011114373A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107113180A (zh) * 2015-01-19 2017-08-29 三菱电机株式会社 分组发送装置、分组接收装置、分组发送程序和分组接收程序

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5285778B2 (ja) * 2009-08-03 2013-09-11 日本電信電話株式会社 関数暗号応用システム及び方法
JP5974504B2 (ja) * 2012-01-30 2016-08-23 株式会社三洋物産 遊技機
JP5974505B2 (ja) * 2012-01-30 2016-08-23 株式会社三洋物産 遊技機
JP5974503B2 (ja) * 2012-01-30 2016-08-23 株式会社三洋物産 遊技機
JP5974502B2 (ja) * 2012-01-30 2016-08-23 株式会社三洋物産 遊技機
JP6136087B2 (ja) * 2012-01-30 2017-05-31 株式会社三洋物産 遊技機
JP5974506B2 (ja) * 2012-01-30 2016-08-23 株式会社三洋物産 遊技機
JP5974507B2 (ja) * 2012-01-30 2016-08-23 株式会社三洋物産 遊技機
US20140064107A1 (en) * 2012-08-28 2014-03-06 Palo Alto Research Center Incorporated Method and system for feature-based addressing
JP6295961B2 (ja) * 2012-11-13 2018-03-20 日本電気株式会社 メッセージ認証システム、およびメッセージ認証方法
KR20150006131A (ko) * 2013-07-08 2015-01-16 삼성전자주식회사 단말 간 통신에서 암호화 적용 방법 및 장치
BR112016015479B1 (pt) * 2014-02-06 2022-10-18 Telefonaktiebolaget Lm Ericsson (Publ) Método executado por um ponto de acesso, método executado por um nó de rede de linha de fio, ponto de acesso, nó de rede de linha de fio, meios de armazenamento legíveis por computador e portadoras
FR3019416A1 (fr) * 2014-03-28 2015-10-02 Orange Procede de traitement de donnees
JP6364957B2 (ja) * 2014-05-26 2018-08-01 株式会社リコー 情報処理システム、情報処理方法、及びプログラム
US9923719B2 (en) 2014-12-09 2018-03-20 Cryptography Research, Inc. Location aware cryptography
US9734095B2 (en) * 2015-09-01 2017-08-15 International Business Machines Corporation Nonvolatile memory data security
CN106599698B (zh) * 2015-10-19 2019-09-20 腾讯科技(深圳)有限公司 一种加密图片、解密图片的方法和装置
US10601793B2 (en) * 2016-03-11 2020-03-24 Pss, Llc Systems and methods for securing electronic data with embedded security engines
US10103883B2 (en) * 2016-03-25 2018-10-16 Ca, Inc. Queueing construct for X.509 digital certificates
US9596079B1 (en) 2016-04-14 2017-03-14 Wickr Inc. Secure telecommunications
CN106022806A (zh) * 2016-05-27 2016-10-12 乐视控股(北京)有限公司 移动终端查验方法、装置及电子终端
JP6491162B2 (ja) * 2016-09-07 2019-03-27 日本電信電話株式会社 データ送受信方法およびセンシングシステム
JP6730602B2 (ja) * 2016-09-13 2020-07-29 株式会社Jvcケンウッド 復号装置、暗号化装置、復号方法、暗号化方法、プログラム
TWI688252B (zh) 2016-10-03 2020-03-11 日商日本電氣股份有限公司 通信裝置、通信方法及記錄媒體
JP6699059B2 (ja) * 2016-11-01 2020-05-27 住友電工システムソリューション株式会社 無線機、路側通信機、更新方法、及びコンピュータプログラム
US10887291B2 (en) 2016-12-16 2021-01-05 Amazon Technologies, Inc. Secure data distribution of sensitive data across content delivery networks
US10860724B2 (en) * 2017-06-13 2020-12-08 Microsoft Technology Licensing, Llc Active key rolling for sensitive data protection
US10778432B2 (en) 2017-11-08 2020-09-15 Wickr Inc. End-to-end encryption during a secure communication session
US10541814B2 (en) 2017-11-08 2020-01-21 Wickr Inc. End-to-end encryption during a secure communication session
US10855440B1 (en) 2017-11-08 2020-12-01 Wickr Inc. Generating new encryption keys during a secure communication session
US11101999B2 (en) 2017-11-08 2021-08-24 Amazon Technologies, Inc. Two-way handshake for key establishment for secure communications
US11039309B2 (en) * 2018-02-15 2021-06-15 Huawei Technologies Co., Ltd. User plane security for disaggregated RAN nodes
US11159498B1 (en) 2018-03-21 2021-10-26 Amazon Technologies, Inc. Information security proxy service
US10979403B1 (en) 2018-06-08 2021-04-13 Amazon Technologies, Inc. Cryptographic configuration enforcement
JP7206869B2 (ja) * 2018-12-05 2023-01-18 凸版印刷株式会社 暗号化通信システム及び暗号化通信方法
US11671251B1 (en) 2019-11-29 2023-06-06 Amazon Technologies, Inc. Application programming interface to generate data key pairs
US11626985B1 (en) * 2019-11-29 2023-04-11 Amazon Technologies, Inc. Data reencryption techniques

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002518935A (ja) * 1998-06-15 2002-06-25 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 報知サービスに対するアクセス制御方法及びシステム
US20020165828A1 (en) * 2000-05-08 2002-11-07 Tetsuhiro Sakamoto Digital data dealing system
US20040260839A1 (en) * 2003-01-15 2004-12-23 Sen'ichi Onoda Content use management system, content use management method, and client device
JP2007141095A (ja) * 2005-11-21 2007-06-07 Toshiba Corp データ処理装置およびデータ処理方法
JP2007199949A (ja) * 2006-01-25 2007-08-09 Mitsubishi Electric Corp 情報管理システムおよび情報処理装置
US20080063191A1 (en) * 2006-09-04 2008-03-13 Yasuo Hatano Encrypting Device, Decrypting Device, Information System, Encrypting Method, Decrypting Method, and Program
WO2008096396A1 (ja) * 2007-02-02 2008-08-14 Panasonic Corporation 無線通信装置および暗号鍵更新方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60326570D1 (de) * 2002-05-29 2009-04-23 Panasonic Corp Bertragungssystem und datenübertragungsverfahren
JP2004186814A (ja) * 2002-11-29 2004-07-02 Fujitsu Ltd 共通鍵暗号化通信システム
CN1826754B (zh) * 2003-07-29 2010-05-05 汤姆森特许公司 用于无线局域网的密钥同步机制
JP4612817B2 (ja) * 2004-08-20 2011-01-12 キヤノン株式会社 グループ管理装置及び情報処理方法、ならびにコンピュータプログラム及び記録媒体
US8189786B2 (en) * 2005-05-25 2012-05-29 Zenith Electronics Llc Encryption system
JP4877932B2 (ja) * 2006-03-30 2012-02-15 富士通テレコムネットワークス株式会社 暗号化通信システム及び暗号鍵更新方法
US8775319B2 (en) * 2006-05-15 2014-07-08 The Directv Group, Inc. Secure content transfer systems and methods to operate the same
JP5060081B2 (ja) * 2006-08-09 2012-10-31 富士通株式会社 フレームを暗号化して中継する中継装置
JP2008103988A (ja) * 2006-10-19 2008-05-01 Fujitsu Ltd 暗号通信システム、装置、方法及びプログラム
JP2008104040A (ja) * 2006-10-20 2008-05-01 Fujitsu Ltd 共通鍵生成装置および共通鍵生成方法
US8104073B2 (en) * 2007-08-10 2012-01-24 Juniper Networks, Inc. Exchange of network access control information using tightly-constrained network access control protocols
WO2009097577A1 (en) * 2008-01-30 2009-08-06 Neology, Inc. Rfid authentication architecture and methods for rfid authentication
JP5077186B2 (ja) * 2008-10-17 2012-11-21 富士通株式会社 通信装置、通信方法及び通信プログラム
US8538027B2 (en) * 2009-10-16 2013-09-17 Brocade Communications Systems, Inc. Storage of keyID in customer data area
US8667575B2 (en) * 2009-12-23 2014-03-04 Citrix Systems, Inc. Systems and methods for AAA-traffic management information sharing across cores in a multi-core system
WO2011114460A1 (ja) * 2010-03-17 2011-09-22 富士通株式会社 通信装置及び方法並びに通信システム
US20110255689A1 (en) * 2010-04-15 2011-10-20 Lsi Corporation Multiple-mode cryptographic module usable with memory controllers
IL210169A0 (en) * 2010-12-22 2011-03-31 Yehuda Binder System and method for routing-based internet security

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002518935A (ja) * 1998-06-15 2002-06-25 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 報知サービスに対するアクセス制御方法及びシステム
US20020165828A1 (en) * 2000-05-08 2002-11-07 Tetsuhiro Sakamoto Digital data dealing system
US20040260839A1 (en) * 2003-01-15 2004-12-23 Sen'ichi Onoda Content use management system, content use management method, and client device
JP2007141095A (ja) * 2005-11-21 2007-06-07 Toshiba Corp データ処理装置およびデータ処理方法
JP2007199949A (ja) * 2006-01-25 2007-08-09 Mitsubishi Electric Corp 情報管理システムおよび情報処理装置
US20080063191A1 (en) * 2006-09-04 2008-03-13 Yasuo Hatano Encrypting Device, Decrypting Device, Information System, Encrypting Method, Decrypting Method, and Program
WO2008096396A1 (ja) * 2007-02-02 2008-08-14 Panasonic Corporation 無線通信装置および暗号鍵更新方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107113180A (zh) * 2015-01-19 2017-08-29 三菱电机株式会社 分组发送装置、分组接收装置、分组发送程序和分组接收程序
CN107113180B (zh) * 2015-01-19 2020-01-17 三菱电机株式会社 分组发送装置、分组接收装置以及存储介质

Also Published As

Publication number Publication date
WO2011114373A1 (ja) 2011-09-22
JP5454673B2 (ja) 2014-03-26
CN103109493B (zh) 2016-01-13
JPWO2011114373A1 (ja) 2013-06-27
US20130070925A1 (en) 2013-03-21

Similar Documents

Publication Publication Date Title
CN103109493A (zh) 通信装置、程序以及方法
US9094818B2 (en) Method for cryptographically transmitting data between network nodes using a nonce value
EP2775660B1 (en) Message authentication method in communication system and communication system
EP2273717B1 (en) Node device and program
CN101631080B (zh) 基于epa协议的工业以太网交换机和报文转发方法
EP2856695B1 (en) A method and system for transferring firmware or software to a plurality of devices
US9032203B2 (en) Key setting method, node, server, and network system
US20120110331A1 (en) Method for activating a network node
CN103209072A (zh) 一种MACsec密钥更新方法及设备
Alzaid et al. A forward & backward secure key management in wireless sensor networks for PCS/SCADA
WO2014030186A1 (ja) 中継装置、中継方法、中継プログラムおよび中継システム
US11250167B2 (en) Secure external SoC debugging
Ebrahimabadi et al. Hardware assisted smart grid authentication
CN110311937B (zh) 数据转发系统
CN100596350C (zh) 工业控制数据的加密解密方法
EP3306853B1 (en) Communication device and communication system
US20140348000A1 (en) Network system, method of controlling network system, and node device
US11599649B2 (en) Method and apparatus for managing transmission of secure data packets
KR101691201B1 (ko) Dnp 메시지의 보안통신장치 및 방법
JP2009004971A (ja) 通信システム、タグ装置、タグリーダ装置及びサーバ装置
CN107317925A (zh) 移动终端
US20220393856A1 (en) Securely and reliably transmitting messages between network devices
US20240106638A1 (en) Method for securely generating and distributing symmetric keys for grouping secure communications
KR102544183B1 (ko) 검증필 암호모듈을 실장한 무선 휴대장치 및 암호화 방법
JP2010016522A (ja) 通信システム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant