[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP6289680B2 - パケット送信装置、パケット受信装置、パケット送信プログラムおよびパケット受信プログラム - Google Patents

パケット送信装置、パケット受信装置、パケット送信プログラムおよびパケット受信プログラム Download PDF

Info

Publication number
JP6289680B2
JP6289680B2 JP2016570218A JP2016570218A JP6289680B2 JP 6289680 B2 JP6289680 B2 JP 6289680B2 JP 2016570218 A JP2016570218 A JP 2016570218A JP 2016570218 A JP2016570218 A JP 2016570218A JP 6289680 B2 JP6289680 B2 JP 6289680B2
Authority
JP
Japan
Prior art keywords
data
xth
data block
authentication code
message authentication
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.)
Active
Application number
JP2016570218A
Other languages
English (en)
Other versions
JPWO2016116999A1 (ja
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JPWO2016116999A1 publication Critical patent/JPWO2016116999A1/ja
Application granted granted Critical
Publication of JP6289680B2 publication Critical patent/JP6289680B2/ja
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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • 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/123Applying verification of the received information received data contents, e.g. message integrity
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

本発明は、メッセージ認証コードを含んだパケットの通信に関するものである。
インターネットの普及によって、信頼性および秘匿性を必要とする通信を行う機会が増大している。信頼性はデータの完全性を意味し、データの完全性は送信中にデータが改ざんされないことを意味する。改ざんには、ノイズによって生じるデータ誤りが含まれる。完全性は暗号技術を用いて担保される。
データ誤りは、チェックサムなどの誤り検出符号を用いた技術によって検出することができる。この技術は、メッセージデータをより長いデータに符号化し、その冗長性によってデータ誤りを検出する技術である。しかし、この技術は、第三者による意図的で高度な改ざんに対する耐性が弱い。
第三者による意図的な改ざんに対してメッセージ認証技術が用いられる。メッセージ認証技術は、メッセージデータにメッセージ認証コード(MAC)を付加することによって改ざんを検出する技術の総称である。
送信中のデータに対する改ざんを行えないようにするには、限られた人物のみが正しいMACを生成できるという状況が必要である。そのためには、送信者と受信者との間で秘密裏に共通鍵とMAC生成関数とを共有する必要がある。
送信者は、メッセージデータと共通鍵とをMAC生成関数に入力し、メッセージデータとMACとを含んだパケットを送信する。受信者は、メッセージデータと共通鍵とを用いてMACを送信者と同様に生成し、生成したMACが受信したMACと一致するか検証する。改ざんがなければ両方のMACが一致する。両方のMACが一致しなければ、メッセージデータ、MACまたはその両方に改ざんがあったと判断されて、パケットが破棄される。
メッセージ認証技術は、データの秘匿とは別の技術であり、プライバシー保護の目的に使用できない。メッセージデータを秘匿したい場合には、メッセージデータを暗号化し、暗号化したメッセージデータに対してメッセージ認証技術を適用する。これにより、改ざんの検知とデータの秘匿化との両方を実現することができる。
非特許文献1は、代表的なメッセージ認証技術の一つであるHMACを開示している。HMACはHash−based Message Authentication Codeの略称である。
HMACでは、MACを生成する演算のコアの部分にSHA―1やMD5などのハッシュアルゴリズムが用いられ、それぞれHMAC−SHA1やHMAC−MD5と呼ばれる。
HMACはハッシュアルゴリズムをブラックボックスとして扱うことができるため、特定の条件を満たすハッシュアルゴリズムを利用することができる。なお、HMACの安全性は、利用するハッシュアルゴリズムの安全性に依存する。
HMACの安全性は、なりすまし行為に対する耐性である。なりすまし行為は、共通鍵を持たない第三者がメッセージとMACとの組を偽造することである。具体的には、なりすまし行為は、共通鍵を持たない第三者が、正しいメッセージとMACとの組をもとに、そのいずれとも異なるメッセージとMACとの組を偽造し、受信者のMAC検証をパスする行為である。
HMACにおいて、生成されたMACのサイズを切り詰めることによって付加されるMACを短くすることが可能である。
例えば、HMAC−SHA256を利用した場合に生成される256ビットのMACのうちの上位128ビットを、付加するMACとして利用することが可能である。
但し、付加するMACが短くなると、HMACの安全性は低くなる。
近年、M2Mと呼ばれるシステムおよびサービスが普及しつつある。M2MはMachine to Machineの略称である。
このシステムおよびサービスは、計算リソースが制限されたデバイスを多数用いて構成されたネットワークによって提供される。そして、人間の制御を介在させずに、各デバイスが自律的に稼働する。計算リソースが制限されたデバイスはセンサーノードまたはRFIDタグなどである。RFIDはRadio Frequency IDentifierの略称である。
メッセージデータのサイズが大きい場合、ネットワーク帯域の占有の抑止のため、および、メッセージデータの部分的破損に対する再送コストの軽減のため、メッセージデータは複数のデータブロックに分割されて複数のパケットによって通信される。
この場合、メッセージデータ全体から生成されたMACを最終パケットに付与して送信することができる。しかし、受信者は最終パケットを受け取るまで各パケットの信頼性を検証することができない。
これに対し、特許文献1は、分割データごとにMACを生成し、分割データとMACとを含んだパケットを送信する技術を開示している。
しかし、狭帯域通信において分割データ毎にMACを付加すると、帯域上限を超過する可能性がある。そのため、MACが固定長である場合、分割データのサイズを小さくする必要がある。その結果、パケット数が増えるため、全てのパケットの伝送に時間がかかってしまう。そして、通信路に大きな負荷がかかってしまう。
特許文献2は、デジタル情報信号に含まれる誤り検出コードにMACの機能を持たせることによって、ペイロードを軽くする技術を開示している。
特開2005−167942号公報 特表2003−503743号公報
FEDERAL INFORMATION PROCESSING STANDARDS PUBLICATION 198(FIPS PUB 198)、The Keyed−Hash Message Authentication Code
本発明は、第Xのデータブロックと第X−1のデータブロックとに基づいた付加データを第Xのデータブロックに付加することによって、第Xのデータブロックを検証できるようにすることを目的とする。
本発明のパケット送信装置は、
N個のデータブロックに含まれるデータブロック毎にデータブロックのメッセージ認証コードを生成するメッセージ認証コード生成部と、
前記N個のデータブロックのうちの第2のデータブロックから第Nのデータブロックまでのいずれかのデータブロックである第Xのデータブロックのメッセージ認証コードと、前記N個のデータブロックのうちの第X−1のデータブロックのメッセージ認証コードと、を用いて生成されるデータである第Xの編集データを生成する編集データ生成部と、
前記第Xのデータブロックに付加するデータである第Xの付加データを前記第Xの編集データを用いて生成する付加データ生成部と、
前記第Xのデータブロックと前記第Xの付加データとを含んだ第Xのパケットを生成するパケット生成部と、
前記第Xのパケットを送信するパケット送信部とを備える。
本発明によれば、第Xのデータブロックと第X−1のデータブロックとに基づいた付加データを第Xのデータブロックに付加することができる。これにより、付加データを用いて、第Xのデータブロックを検証することができる。
実施の形態1におけるパケット通信システム100の構成図。 実施の形態1におけるメッセージデータ201およびパケット110を示す図。 実施の形態1におけるパケット送信装置200の機能構成図。 実施の形態1におけるパケット受信装置300の機能構成図。 実施の形態1におけるパケット送信装置200およびパケット受信装置300のハードウェア構成図。 実施の形態1におけるパケット送信方法の概要図。 実施の形態1におけるパケット送信方法のフローチャート。 実施の形態1における第1のデータブロック処理(S130)のフローチャート。 実施の形態1における第Xのデータブロック処理(S140)のフローチャート。 実施の形態1における残りMAC処理(S150)のフローチャート。 実施の形態1におけるパケット受信方法の概要図。 実施の形態1におけるパケット受信方法のフローチャート。 実施の形態1における第1のデータブロック処理(S220)のフローチャート。 実施の形態1における第Xのデータブロック処理(S230)のフローチャート。 実施の形態2におけるパケット送信装置200の機能構成図。 実施の形態2におけるパケット受信装置300の機能構成図。 実施の形態2におけるパケット送信方法の概要図。 実施の形態2におけるパケット送信方法のフローチャート。 実施の形態2における第1のデータブロック処理(S130B)のフローチャート。 実施の形態2における第Xのデータブロック処理(S140B)のフローチャート。 実施の形態2におけるパケット受信方法の概要図。 実施の形態2におけるパケット受信方法のフローチャート。 実施の形態2における第1のデータブロック処理(S220B)のフローチャート。 実施の形態2における第Xのデータブロック処理(S230B)のフローチャート。 実施の形態3におけるパケット送信装置200の機能構成図。 実施の形態3におけるパケット受信装置300の機能構成図。 実施の形態3におけるパケット送信方法のフローチャート。 実施の形態3におけるパケット送信方法の概要図。 実施の形態3におけるパケット受信方法のフローチャート。 実施の形態3におけるパケット受信方法の概要図。 実施の形態4におけるパケット送信装置200の機能構成図。 実施の形態4におけるパケット受信装置300の機能構成図。 実施の形態4におけるパケット送信方法の概要図。 実施の形態4におけるパケット受信方法の概要図。
実施の形態1.
データブロックを検証するための付加データをデータブロックに付加する形態について、図1から図14に基づいて説明する。
***構成の説明***
図1に基づいて、パケット通信システム100について説明する。
パケット通信システム100はパケット110を通信するシステムである。
パケット通信システム100は、パケット110を送信するパケット送信装置200と、パケット110を受信するパケット受信装置300とを備える。
パケット送信装置200およびパケット受信装置300は、ネットワーク109を介してパケット110を送受信する。
図2に基づいて、メッセージデータ201およびパケット110について説明する。
メッセージデータ201は送信されるデータである。
メッセージデータ201はパケット110のサイズに合わせて複数のデータブロック202に分割される。メッセージデータ201の分割数はNである。Nは2以上の整数である。
パケット110はデータブロック202毎に生成される。
パケット110はヘッダ111とデータブロック202と付加データ205とを含む。
ヘッダ111はパケット110を識別するパケット番号を含む。第1のヘッダ111−1に含まれるパケット番号は1であり、第Nのヘッダ111−Nに含まれるパケット番号はNである。パケット番号はデータブロック202を識別するデータブロック番号としても機能する。
付加データ205は、データブロック202が正しいデータブロックであるか判定するための情報である。
さらに、第N+1のパケット120が生成される。
第N+1のパケット120は第N+1のヘッダ121と残りメッセージ認証コード206とを含む。図中のMACはメッセージ認証コードの略称である。
第N+1のヘッダ121は第N+1のパケット120を識別するパケット番号を含む。第N+1のパケット120に含まれるパケット番号はN+1である。
残りメッセージ認証コード206は、第Nのデータブロック202−Nが正しいデータブロックであるか判定するための情報である。
図3に基づいて、パケット送信装置200の機能構成について説明する。
パケット送信装置200は、メッセージデータ取得部210と、データ分割部220と、メッセージ認証コード生成部230と、編集データ生成部240と、付加データ生成部250と、パケット生成部260と、パケット送信部270とを備える。
さらに、パケット送信装置200は、パケットカウント部280と送信記憶部290とメッセージ認証コード記憶部291とを備える。
メッセージデータ取得部210はメッセージデータ201を取得する。
データ分割部220は、メッセージデータ201をN個のデータブロック202に分割する。
メッセージ認証コード生成部230は、N個のデータブロック202に含まれるデータブロック202毎にデータブロック202のメッセージ認証コード203を生成する。
第Xのメッセージ認証コード203−Xは、第Xのデータブロック202−Xのメッセージ認証コードである。
第Xのデータブロック202は、N個のデータブロック202のうちの第2のデータブロック202−2から第Nのデータブロック202−Nまでのいずれかのデータブロックである。
編集データ生成部240は第Xの編集データ204−Xを生成する。
第Xの編集データ204−Xは、第Xのメッセージ認証コード203−Xと第X−1のメッセージ認証コード203−X−1とを用いて生成されるデータである。
付加データ生成部250は、第Xの編集データ204−Xを用いて第Xの付加データ205−Xを生成する。
第Xの付加データ205−Xは、第Xのデータブロック202−Xに付加するデータである。
パケット生成部260は、第Xのヘッダ111−Xと第Xのデータブロック202−Xと第Xの付加データ205とを含んだ第Xのパケット110−Xを生成する。
パケット送信部270は第Xのパケット110−Xを送信する。
パケットカウント部280はパケット番号(X)をカウントする。
送信記憶部290は、パケット送信装置200で使用、生成または入出力されるデータを記憶する。送信記憶部290には共通鍵101などが記憶される。
メッセージ認証コード記憶部291は第X−1のメッセージ認証コード203−X−1を記憶する。
図4に基づいて、パケット受信装置300の機能構成について説明する。
パケット受信装置300は、パケット受信部310と、メッセージ認証コード生成部320と、編集データ生成部330と、比較データ生成部340と、データブロック判定部350と、データ復元部360とを備える。
さらに、パケット受信装置300は、パケットカウント部380と、受信記憶部390と、メッセージ認証コード記憶部391とを備える。
パケット受信部310は、第Xのパケット110−Xと第X−1のパケット110−X−1とを受信する。
メッセージ認証コード生成部320は、第Xのパケット110−Xに含まれる第Xのデータブロック202−Xを用いて、第Xのメッセージ認証コード302−Xを生成する。第Xのメッセージ認証コード302−Xは、第Xのデータブロック202−Xのメッセージ認証コード302である。
メッセージ認証コード生成部320は、第X−1のパケット110−X−1に含まれる第X−1のデータブロック202−X−1を用いて、第X−1のメッセージ認証コード302−X−1を生成する。第X−1のメッセージ認証コード302−X−1は、第X−1のデータブロック202−Xのメッセージ認証コード302である。
編集データ生成部330は第Xの編集データ303−Xを生成する。
第Xの編集データ303−Xは、第Xのメッセージ認証コード302−Xと第X−1のメッセージ認証コード302−X−1とを用いて生成されるデータである。
比較データ生成部340は、第Xの編集データ303−Xを用いて第Xの比較データ304−Xを生成する。
第Xの比較データ304−Xは、第Xのデータブロック202−Xに付加されるべきデータである。
データブロック判定部350は、第Xの比較データ304−Xと第Xの付加データ205−Xとを比較することによって、第Xのデータブロック202−Xが正しいデータブロック202であるか判定する。
データ復元部360は、第1から第Nまでのデータブロック202を連結することによって、メッセージデータ201を復元する。
パケットカウント部380はパケット番号(X)をカウントする。
受信記憶部390は、パケット受信装置300で使用、生成または入出力されるデータを記憶する。受信記憶部390には共通鍵101などが記憶される。この共通鍵101はパケット送信装置200が使用する共通鍵101と同じである。
メッセージ認証コード記憶部391は、第X−1のメッセージ認証コード302−X−1を記憶する。
図5に基づいて、パケット送信装置200およびパケット受信装置300のハードウェア構成例について説明する。
パケット送信装置200およびパケット受信装置300は、プロセッサ901、補助記憶装置902、メモリ903、通信装置904、入力インタフェース905、ディスプレイインタフェース906といったハードウェアを備えるコンピュータである。
プロセッサ901は信号線910を介して他のハードウェアと接続されている。入力インタフェース905はケーブル911を介して入力装置907に接続されている。ディスプレイインタフェース906はケーブル912を介してディスプレイ908に接続されている。
プロセッサ901は、プロセッシングを行うICであり、他のハードウェアを制御する。例えば、プロセッサ901はCPU、DSP、GPUである。ICはIntegrated Circuitの略称である。CPUはCentral Processing Unitの略称であり、DSPはDigital Signal Processorの略称であり、GPUはGraphics Processing Unitの略称である。
補助記憶装置902は、例えば、ROM、フラッシュメモリ、HDDである。ROMはRead Only Memoryの略称であり、HDDはHard Disk Driveの略称である。
メモリ903は例えばRAMである。RAMはRandom Access Memoryの略称である。
通信装置904は、データを受信するレシーバ9041と、データを送信するトランスミッタ9042とを備える。例えば、通信装置904は通信チップまたはNICである。NICはNetwork Interface Cardの略称である。
入力インタフェース905はケーブル911が接続されるポートであり、ポートの一例はUSB端子である。USBはUniversal Serial Busの略称である。
ディスプレイインタフェース906はケーブル912が接続されるポートであり、USB端子およびHDMI端子はポートの一例である。HDMI(登録商標)はHigh Definition Multimedia Interfaceの略称である。
入力装置907は、例えば、マウス、キーボードまたはタッチパネルである。
ディスプレイ908は例えばLCDである。LCDはLiquid Crystal Displayの略称である。
補助記憶装置902にはOSが記憶されている。OSはOperating Systemの略称である。
パケット送信装置200の補助記憶装置902には、パケット送信装置200に備わるメッセージデータ取得部210、データ分割部220、メッセージ認証コード生成部230、編集データ生成部240、付加データ生成部250、パケット生成部260およびパケット送信部270といった「部」の機能を実現するプログラムが記憶されている。
パケット受信装置300の補助記憶装置902には、パケット受信装置300に備わるパケット受信部310、メッセージ認証コード生成部320、編集データ生成部330、比較データ生成部340、データブロック判定部350およびデータ復元部360といった「部」の機能を実現するプログラムが記憶されている。
OSの少なくとも一部はメモリ903にロードされ、プロセッサ901はOSを実行しながら「部」の機能を実現するプログラムを実行する。「部」の機能を実現するプログラムは、メモリ903にロードされ、プロセッサ901に読み込まれ、プロセッサ901によって実行される。
なお、パケット送信装置200およびパケット受信装置300が複数のプロセッサ901を備えて、複数のプロセッサ901が「部」の機能を実現するプログラムを連携して実行してもよい。
「部」の処理の結果を示すデータ、情報、信号値および変数値などは、メモリ903、補助記憶装置902、プロセッサ901内のレジスタ、または、プロセッサ901内のキャッシュメモリに記憶される。
「部」は「サーキットリ」で実装してもよい。「部」は「回路」、「工程」、「手順」または「処理」に読み替えてもよい。
「回路」及び「サーキットリ」は、プロセッサ901、ロジックIC、GA、ASIC、FPGAといった処理回路を包含する概念である。GAはGate Arrayの略称であり、ASICはApplication Specific Integrated Circuitの略称であり、FPGAはField−Programmable Gate Arrayの略称である。
***動作の説明***
パケット通信システム100の動作はパケット通信方法に相当し、パケット送信装置200の動作はパケット送信方法に相当し、パケット受信装置300の動作はパケット受信方法に相当する。
また、パケット通信方法はパケット通信プログラムの処理手順に相当し、パケット送信方法はパケット送信プログラムの処理手順に相当し、パケット受信方法はパケット受信プログラムに相当する。
図6に基づいて、Nが3である場合のパケット送信方法について説明する。
図中の「H」はMAC生成関数を意味する。また、「||」は連結を意味し、「MAC(Y)」は第Yの編集データ204のメッセージ認証コードを意味する。
第1のデータブロック202−1およびパケット番号(1)がMAC生成関数に入力されて、第1のメッセージ認証コード203−1が生成される。
第1のメッセージ認証コード203−1にメッセージ認証コード203の初期値(0)が連結されて、第1の編集データ204−1が生成される。
第1の編集データ204−1がMAC生成関数に入力されて、第1の編集データ204−1のメッセージ認証コードが生成される。
第1の編集データ204−1のメッセージ認証コードから第1の付加データ205−1が抽出される。
第1のデータブロック202−1と第1の付加データ205−1とを含んだ第1のパケット110−1が生成される。第1のパケット110−1が送信される。
第2のデータブロック202−2およびパケット番号(2)がMAC生成関数に入力されて、第2のメッセージ認証コード203−2が生成される。
第2のメッセージ認証コード203−2に第1のメッセージ認証コード203−1が連結されて、第2の編集データ204−2が生成される。
第2の編集データ204−2がMAC生成関数に入力されて、第2の編集データ204−2のメッセージ認証コードが生成される。
第2の編集データ204−2のメッセージ認証コードから第2の付加データ205−2が抽出される。
第2のデータブロック202−2と第2の付加データ205−2とを含んだ第2のパケット110−2が生成される。第2のパケット110−2が送信される。
第3のデータブロック202−3およびパケット番号(3)がMAC生成関数に入力されて、第3のメッセージ認証コード203−3が生成される。
第3のメッセージ認証コード203−3に第2のメッセージ認証コード203−2が連結されて、第3の編集データ204−3が生成される。
第3の編集データ204−3がMAC生成関数に入力されて、第3の編集データ204−3のメッセージ認証コードが生成される。
第3の編集データ204−3のメッセージ認証コードから第3の付加データ205−3が抽出される。
第3のデータブロック202−3と第3の付加データ205−3とを含んだ第3のパケット110−3が生成される。第3のパケット110−3が送信される。
第3の編集データ204−3のメッセージ認証コードから残りメッセージ認証コード206が抽出される。
残りメッセージ認証コード206を含んだ第N+1のパケット120として第4のパケットが生成される。第4のパケットが送信される。
図7に基づいて、パケット送信方法の処理の流れについて説明する。
S110はメッセージデータ取得処理である。
S110において、メッセージデータ201は、ユーザインタフェースまたは入力装置を用いて、パケット送信装置200に入力される。
メッセージデータ取得部210は、パケット送信装置200に入力されたメッセージデータ201を取得する。
S120はデータ分割処理である。
S120において、データ分割部220は、メッセージデータ201をN個のデータブロック202に分割する。
S130は第1のデータブロック処理である。
図8に基づいて、第1のデータブロック処理(S130)について説明する。
S131はメッセージ認証コード生成処理である。
S131において、メッセージ認証コード生成部230は、第1のデータブロック202−1とパケット番号(1)と共通鍵101とを入力として用いて、MAC生成関数を演算する。これにより、第1のメッセージ認証コード203−1が生成される。MACはメッセージ認証コードの略称である。
第1のメッセージ認証コード203−1は、第1のデータブロック202−1のメッセージ認証コード203である。
S132は編集データ生成処理である。
S132において、編集データ生成部240は、第1のメッセージ認証コード203−1とメッセージ認証コード203の初期値とを用いて、第1の編集データ204−1を生成する。
第1の編集データ204−1は、第1のメッセージ認証コード203−1にメッセージ認証コード203の初期値を連結したデータである。メッセージ認証コード203の初期値はオールゼロである。
S133は付加データ生成処理である。
S133において、付加データ生成部250は、第1の編集データ204−1を用いて、以下のように第1の付加データ205−1を生成する。
付加データ生成部250は、第1の編集データ204−1と共通鍵101とを入力として用いて、MAC生成関数を演算する。これにより、第1の編集データ204−1のメッセージ認証コードが生成される。このMAC生成関数は、S131で演算されるMAC生成関数と同じである。
付加データ生成部250は、第1の編集データ204−1のメッセージ認証コードを用いて、第1の付加データ205−1を生成する。第1の付加データ205−1は、第1の編集データ204−1のメッセージ認証コードから抽出される部分である。
第1の編集データ204−1のメッセージ認証コードは256ビットのビット列であり、第1の付加データ205−1は第1の編集データ204−1のメッセージ認証コードの前半のYビット(0<Y≦256)である。
S134はパケット生成処理である。
S134において、パケット生成部260は、第1のヘッダ111−1と第1のデータブロック202−1と第1の付加データ205−1とを含んだ第1のパケット110−1を生成する。
S135はパケット送信処理である。
S135において、パケット送信部270は、第1のパケット110−1をパケット受信装置300に送信する。
S135の後、第1のデータブロック処理(S130)は終了する。
図7に戻り、S140から説明を続ける。
S140は第Xのデータブロック処理である。
図9に基づいて、第Xのデータブロック処理(S140)について説明する。
S141からS145までの処理は、変数Xの値が2からNまでの間、繰り返し実行される。変数Xの初期値は2である。変数Xの値は、S141からS145までの処理が実行される毎に、パケットカウント部280によって1ずつ加算される。
S141はメッセージ認証コード生成処理である。
S141において、メッセージ認証コード生成部230は、第Xのデータブロック202−Xと共通鍵101とを入力として用いて、MAC生成関数を演算する。これにより、第Xのメッセージ認証コード203−Xが生成される。このMAC生成関数は、S131(図8参照)で演算されるMAC生成関数と同じである。
S142は編集データ生成処理である。
S142において、編集データ生成部240は、第Xのメッセージ認証コード203−Xと第X−1のメッセージ認証コード203−X−1とを用いて、第Xの編集データ204−Xを生成する。
第Xの編集データ204−Xは、第Xのメッセージ認証コード203−Xに第X−1のメッセージ認証コード203−X−1を連結したデータである。
S143は付加データ生成処理である。
S143において、付加データ生成部250は、第Xの編集データ204−Xを用いて、以下のように第Xの付加データ205−Xを生成する。
付加データ生成部250は、第Xの編集データ204−Xと共通鍵101とを入力として用いて、MAC生成関数を演算する。これにより、第Xの編集データ204−Xのメッセージ認証コードが生成される。このMAC生成関数は、S131(図8参照)で演算されるMAC生成関数と同じである。
付加データ生成部250は、第Xの編集データ204−Xのメッセージ認証コードを用いて、第Xの付加データ205−Xを生成する。第Xの付加データ205−Xは、第Xの編集データ204−Xのメッセージ認証コードから抽出される部分である。
第Xの編集データ204−Xのメッセージ認証コードは256ビットのビット列であり、第Xの付加データ205−Xは第Xの編集データ204−Xのメッセージ認証コードの前半のYビット(0<Y≦256)である。
S144はパケット生成処理である。
S144において、パケット生成部260は、第Xのヘッダ111−Xと第Xのデータブロック202−Xと第Xの付加データ205−Xとを含んだ第Xのパケット110−Xを生成する。
S145はパケット送信処理である。
S145において、パケット送信部270は、第Xのパケット110−Xをパケット受信装置300に送信する。
図7に戻り、S150から説明を続ける。
S150は残りメッセージ認証コード処理である。
図10に基づいて、残りメッセージ認証コード処理(S150)について説明する。
S151はパケット生成処理である。
S151において、パケット生成部260は、第N+1のヘッダ121と残りメッセージ認証コード206とを含んだ第N+1のパケット120を生成する。
残りメッセージ認証コード206は、第Nの編集データ204−Nのメッセージ認証コードから第Nの付加データ205−Nを除いた部分である。
第Nの編集データ204−Nのメッセージ認証コードおよび第Nの付加データ205−Nは、S143(図9参照)において変数Xの値がNであるときに生成されている。
つまり、残りメッセージ認証コード206は、第Nの編集データ204−Nのメッセージ認証コードの後半のYビット(0<Y≦256)である。
S152はパケット送信処理である。
S152において、パケット送信部270は、第N+1のパケット120をパケット受信装置300に送信する。
S152の後、残りメッセージ認証コード処理(S150)は終了する。
図11に基づいて、Nが3である場合のパケット受信方法について説明する。
第1のデータブロック202−1と第1の付加データ205−1とを含んだ第1のパケット110−1が受信される。
第1のデータブロック202−1およびパケット番号(1)がMAC生成関数に入力されて、第1のメッセージ認証コード302−1が生成される。
第1のメッセージ認証コード302−1にメッセージ認証コード302の初期値(0)が連結されて、第1の編集データ303−1が生成される。
第1の編集データ303−1がMAC生成関数に入力されて、第1の編集データ303−1のメッセージ認証コードが生成される。
第1の編集データ303−1のメッセージ認証コードから第1の比較データ304−1が抽出される。
第1の比較データ304−1が第1の付加データ205−1と比較される。
第2のデータブロック202−2と第2の付加データ205−2とを含んだ第2のパケット110−2が受信される。
第2のデータブロック202−2およびパケット番号(2)がMAC生成関数に入力されて、第2のメッセージ認証コード302−2が生成される。
第2のメッセージ認証コード302−2に第1のメッセージ認証コード302−1が連結されて、第2の編集データ303−2が生成される。
第2の編集データ303−2がMAC生成関数に入力されて、第2の編集データ303−2のメッセージ認証コードが生成される。
第2の編集データ303−2のメッセージ認証コードから第2の比較データ304−2が抽出される。
第2の比較データ304−2が第2の付加データ205−2と比較される。
第3のデータブロック202−3と第3の付加データ205−3とを含んだ第3のパケット110−3が受信される。
第3のデータブロック202−3およびパケット番号(3)がMAC生成関数に入力されて、第3のメッセージ認証コード302−3が生成される。
第3のメッセージ認証コード302−3に第2のメッセージ認証コード302−2が連結されて、第3の編集データ303−3が生成される。
第3の編集データ303−3がMAC生成関数に入力されて、第3の編集データ303−3のメッセージ認証コードが生成される。
第3の編集データ303−3のメッセージ認証コードから第3の比較データ304−3が抽出される。
第3の比較データ304−3が第3の付加データ205−3と比較される。
残りメッセージ認証コード206を含んだ第4のパケットが第N+1のパケット120として受信される。
第3の編集データ303−3のメッセージ認証コードから残り比較データ305が抽出される。
残り比較データ305が残りメッセージ認証コード206と比較される。
図12に基づいて、パケット受信方法の処理の流れについて説明する。
S210はパケット受信処理である。
S210において、パケット受信部310は第1から第Nまでのパケット110を受信する。
S220は第1のデータブロック処理である。
図13に基づいて、第1のデータブロック処理(S220)について説明する。
S221はメッセージ認証コード生成処理である。
S221において、メッセージ認証コード生成部320は、第1のデータブロック202−1とパケット番号(1)と共通鍵101とを入力として用いて、MAC生成関数を演算する。これにより、第1のメッセージ認証コード302−1が生成される。このMAC生成関数は、S131(図8参照)で演算されるMAC生成関数と同じである。
第1のメッセージ認証コード302−1は、第1のデータブロック202−1のメッセージ認証コード302である。
S222は編集データ生成処理である。
S222において、編集データ生成部330は、第1のメッセージ認証コード302−1とメッセージ認証コード302の初期値とを用いて、第1の編集データ303−1を生成する。
第1の編集データ303−1は、第1のメッセージ認証コード302−1にメッセージ認証コード302の初期値を連結したデータである。メッセージ認証コード302の初期値はオールゼロである。
S223は比較データ生成処理である。
S223において、比較データ生成部340は、第1の編集データ303−1を用いて、以下のように第1の比較データ304−1を生成する。
比較データ生成部340は、第1の編集データ303−1と共通鍵101とを入力として用いて、MAC生成関数を演算する。これにより、第1の編集データ303−1のメッセージ認証コードが生成される。このMAC生成関数は、S133(図8参照)で演算されるMAC生成関数と同じである。
比較データ生成部340は、第1の編集データ303−1のメッセージ認証コードを用いて、第1の比較データ304−1を生成する。第1の比較データ304−1は、第1の編集データ303−1のメッセージ認証コードから抽出される部分である。
第1の編集データ303−1のメッセージ認証コードは256ビットのビット列であり、第1の比較データ304−1は第1の編集データ303−1のメッセージ認証コードの前半のYビット(0<Y≦256)である。
S224はデータブロック判定処理である。
S224において、データブロック判定部350は、第1の比較データ304−1と第1のパケット110−1に含まれる第1の付加データ205−1とを比較する。
そして、データブロック判定部350は、第1のパケット110−1に含まれる第1のデータブロック202−1が正しいデータブロック202であるか、比較結果に基づいて判定する。
第1の比較データ304−1が第1の付加データ205−1と同じである場合、第1のデータブロック202−1は正しいデータブロック202である。
第1の比較データ304−1が第1の付加データ205−1と異なる場合、第1のデータブロック202−1は誤ったデータブロック202である。
S224の後、第1のデータブロック処理(S220)は終了する。
図12に戻り、S220の後の処理を説明する。
第1のデータブロック202−1が誤ったデータブロック202であった場合、パケット受信方法の処理は終了する。
第1のデータブロック202−1が正しいデータブロック202であった場合、処理はS230に進む。
S230は第Xのデータブロック処理である。
図14に基づいて、第Xのデータブロック処理(S230)について説明する。
S231からS234までの処理は、変数Xの値が2からNまでの間、繰り返し実行される。変数Xの初期値は2である。変数Xの値は、S231からS234までの処理が実行される毎に、パケットカウント部380によって1ずつ加算される。
S231はメッセージ認証コード生成処理である。
S231において、メッセージ認証コード生成部320は、第Xのデータブロック202−Xと共通鍵101とを入力として用いて、MAC生成関数を演算する。これにより、第Xのメッセージ認証コード302−Xが生成される。このMAC生成関数は、S141(図9参照)で演算されるMAC生成関数と同じである。
S232は編集データ生成処理である。
S232において、編集データ生成部330は、第Xのメッセージ認証コード302−Xと第X−1のメッセージ認証コード302−X−1とを用いて、第Xの編集データ303−Xを生成する。
第Xの編集データ303−Xは、第Xのメッセージ認証コード302−Xに第X−1のメッセージ認証コード302−X−1を連結したデータである。
S233は比較データ生成処理である。
S233において、比較データ生成部340は、第Xの編集データ303−Xを用いて、以下のように第Xの比較データ304−Xを生成する。
比較データ生成部340は、第Xの編集データ303−Xと共通鍵101とを入力として用いて、MAC生成関数を演算する。これにより、第Xの編集データ303−Xのメッセージ認証コードが生成される。このMAC生成関数は、S143(図9参照)で演算されるMAC生成関数と同じである。
比較データ生成部340は、第Xの編集データ303−Xのメッセージ認証コードを用いて、第Xの比較データ304−Xを生成する。第Xの比較データ304−Xは、第Xの編集データ303−Xのメッセージ認証コードから抽出される部分である。
第Xの編集データ303−Xのメッセージ認証コードは256ビットのビット列であり、第Xの比較データ304−Xは第Xの編集データ303−Xのメッセージ認証コードの前半のYビット(0<Y≦256)である。
S234はデータブロック判定処理である。
S234において、データブロック判定部350は、第Xの比較データ304−Xと第Xのパケット110−Xに含まれる第Xの付加データ205−Xとを比較する。
そして、データブロック判定部350は、第Xのパケット110−Xに含まれる第Xのデータブロック202−Xが正しいデータブロック202であるか、比較結果に基づいて判定する。
第Xの比較データ304−Xが第Xの付加データ205−Xと同じである場合、第Xのデータブロック202−Xは正しいデータブロック202である。
第Xの比較データ304−Xが第Xの付加データ205−Xと異なる場合、第Xのデータブロック202−Xは誤ったデータブロック202である。この場合、第Xのデータブロック処理(S230)は終了する。
図12に戻り、S230の後の処理を説明する。
第Xのデータブロック202−Xが誤ったデータブロック202であった場合、パケット受信方法の処理は終了する。
第Xのデータブロック202−Xが正しいデータブロック202であった場合、処理はS240に進む。
S240はデータブロック判定処理である。
S240において、データブロック判定部350は、残り比較データと第N+1のパケット120に含まれる残りメッセージ認証コード206とを比較する。残り比較データについては後述する。
そして、データブロック判定部350は、第Nのパケット110−Nに含まれる第Nのデータブロック202−Nが正しいデータブロック202であるか、比較結果に基づいて判定する。
残り比較データが残りメッセージ認証コード206と同じである場合、第Nのデータブロック202−Nは正しいデータブロック202である。
残り比較データが残りメッセージ認証コード206と異なる場合、第Nのデータブロック202−Nは誤ったデータブロック202である。
残り比較データは、第Nの編集データ303−Nのメッセージ認証コードから第Nの比較データ304−Nを除いた部分である。
第Nの編集データ303−Nのメッセージ認証コードおよび第Nの比較データ304−Nは、S233(図14参照)において変数Xの値がNであるときに生成されている。
つまり、残り比較データは、第Nの編集データ303−Nのメッセージ認証コードの後半のYビット(0<Y≦256)である。
第Nのデータブロック202−Nが誤ったデータブロック202であった場合、パケット受信方法の処理は終了する。
第Nのデータブロック202−Nが正しいデータブロック202であった場合、処理はS250に進む。
S250はデータ復元処理である。
S250において、データ復元部360は、第1から第Nまでのデータブロック202を連結することによって、メッセージデータ201を復元する。
***効果の説明***
第Xのデータブロック202−Xと第X−1のデータブロック202−X−1とに基づいた第Xの付加データ205−Xを第Xのデータブロック202−Xに付加することによって、第Xのデータブロック202−Xを検証することができる。
これにより、第Xの編集データ204−Xのメッセージ認証コードの一部を第Xの付加データ205−Xから切り捨てて第Xの付加データ205−Xのサイズを小さくし、第Xのデータブロック202−Xの改ざんの検出率を高め、パケット通信の安全性を向上させることができる。
実施の形態は、狭帯域通信を利用することによって構築コストを削減したいセキュアシステム、あるいは、保守コストを下げるために通信負荷および消費電力を抑えることが要求されるセキュアシステム、に特に有効である。狭帯域の通信規格の一例として、Z−waveおよびZigBeeがある。それぞれの規格の最低帯域として、9.6kbpsおよび20kbpsが規定されている。
実施の形態が特に有効なシステムの一例として、工場、プラントおよび建築現場の機器の稼働状態を監視するセンサとそれらのデータを集約するサーバとから構成されるシステムが挙げられる。その他に、車載機器間の通信または建物のエネルギーマネジメントなどのアプリケーションで限定された小さなデータが多数のデバイスによって断続的または連続的に送受信されるシステムが挙げられる。また、エナジーハーベストまたは無線給電を行うセンサーノードネットワークシステムが挙げられる。
実施の形態2.
編集データ204を生成する方法が実施の形態1と異なる形態について、図15から図24に基づいて説明する。但し、実施の形態1と重複する説明は省略する。
***構成の説明***
図15に基づいて、パケット送信装置200の機能構成について説明する。
編集データ生成部240は、第Xのデータブロック202−Xと第X−1の編集MAC259−X−1とを用いて、第Xの編集データ204−Xを生成する。
メッセージ認証コード生成部230は、第Xの編集MAC207−Xを生成する。第Xの編集MAC207−Xは、第Xの編集データ204−Xのメッセージ認証コードである。
付加データ生成部250は、第Xの編集MAC207−Xの一部を第Xの付加データ205−Xとして抽出する。
図16に基づいて、パケット受信装置300の機能構成について説明する。
編集データ生成部330は、第Xのデータブロック202−Xと第X−1の編集MAC306−X−1とを用いて、第Xの編集データ303−Xを生成する。
メッセージ認証コード生成部320は、第Xの編集MAC306−Xを生成する。第Xの編集MAC306−Xは、第Xの編集データ303−Xのメッセージ認証コードである。
比較データ生成部340は、第Xの編集MAC306−Xの一部を第Xの比較データ304−Xとして抽出する。
***動作の説明***
図17に基づいて、Nが3である場合のパケット送信方法について説明する。
第1のデータブロック202−1にパケット番号(1)および編集MAC207の初期値(0)が連結されて、第1の編集データ204−1が生成される。
第1の編集データ204−1がMAC生成関数に入力されて、第1の編集MAC207−1が生成される。
第1の編集MAC207−1から第1の付加データ205−1が抽出される。
第1のデータブロック202−1と第1の付加データ205−1とを含んだ第1のパケット110−1が生成される。第1のパケット110−1が送信される。
第2のデータブロック202−2にパケット番号(2)および第1の編集MAC207−1が連結されて、第2の編集データ204−2が生成される。
第2の編集データ204−2がMAC生成関数に入力されて、第2の編集MAC207−2が生成される。
第2の編集MAC207−2から第2の付加データ205−2が抽出される。
第2のデータブロック202−2と第2の付加データ205−2とを含んだ第2のパケット110−2が生成される。第2のパケット110−2が送信される。
第3のデータブロック202−3にパケット番号(3)および第2の編集MAC207−2が連結されて、第3の編集データ204−3が生成される。
第3の編集データ204−3がMAC生成関数に入力されて、第3の編集MAC207−3が生成される。
第3の編集MAC207−3から第3の付加データ205−3が抽出される。
第3のデータブロック202−3と第3の付加データ205−3とを含んだ第3のパケット110−3が生成される。第3のパケット110−3が送信される。
第3の編集MAC207−3から残りメッセージ認証コード206が抽出される。
残りメッセージ認証コード206を含んだ第N+1のパケット120として第4のパケットが生成される。第4のパケットが送信される。
図18に基づいて、パケット送信方法の処理の流れについて説明する。
メッセージ送信方法の処理の流れは、実施の形態1(図7参照)と同じである。
メッセージデータ取得処理(S110)、データ分割処理(S120)および残りMAC処理(S150)は実施の形態1と同じである。
以下に、第1のデータブロック処理(S130B)と第Xのデータブロック処理(S140B)とについて説明する。
図19に基づいて、第1のデータブロック処理(S130B)について説明する。
S131Bにおいて、編集データ生成部240は、第1のデータブロック202−1と編集MAC207の初期値とを用いて、第1の編集データ204−1を生成する。
第1の編集データ204−1は、第1のデータブロック202−1に編集MAC207の初期値を連結したデータである。編集MAC207の初期値はオールゼロである。
S132Bにおいて、メッセージ認証コード生成部230は、第1の編集データ204−1と共通鍵101とを入力として用いて、MAC生成関数を演算する。これにより、第1の編集MAC207−1が生成される。
第1の編集MAC207−1は、第1の編集データ204−1のメッセージ認証コードである。
S133Bにおいて、付加データ生成部250は、第1の編集MAC207−1の先頭のYビット(0<Y≦256)を第1の付加データ205−1として抽出する。
S134およびS135は実施の形態1(図8参照)と同じである。
図20に基づいて、第Xのデータブロック処理(S140B)について説明する。
S141Bにおいて、編集データ生成部240は、第Xのデータブロック202−Xと第X−1の編集MAC207−X−1を用いて、第Xの編集データ204−Xを生成する。
第Xの編集データ204−Xは、第Xのデータブロック202−Xにパケット番号(X)および第X−1の編集MAC207−X−1を連結したデータである。
S142Bにおいて、メッセージ認証コード生成部230は、第Xの編集データ204−Xと共通鍵101とを入力として用いて、MAC生成関数を演算する。これにより、第Xの編集MAC207−Xが生成される。
第Xの編集MAC207−Xは、第Xの編集データ204−Xのメッセージ認証コードである。
S143Bにおいて、付加データ生成部250は、第Xの編集データ204−Xの先頭のYビット(0<Y≦256)を第Xの付加データ205−Xとして抽出する。
S144およびS145は実施の形態1(図8参照)と同じである。
図21に基づいて、Nが3である場合のパケット受信方法について説明する。
第1のデータブロック202−1と第1の付加データ205−1とを含んだ第1のパケット110−1が受信される。
第1のデータブロック202−1にパケット番号(1)および編集MAC306の初期値(0)が連結されて、第1の編集データ303−1が生成される。
第1の編集データ303−1がMAC生成関数に入力されて、第1の編集MAC306−1が生成される。
第1の編集MAC306−1から第1の比較データ304−1が抽出される。
第1の比較データ304−1が第1の付加データ205−1と比較される。
第2のデータブロック202−2と第2の付加データ205−2とを含んだ第2のパケット110−2が受信される。
第2のデータブロック202−2にパケット番号(2)および第1の編集MAC306−1が連結されて、第2の編集データ303−2が生成される。
第2の編集データ303−2がMAC生成関数に入力されて、第2の編集MAC306−2が生成される。
第2の編集MAC306−2から第2の比較データ304−2が抽出される。
第2の比較データ304−2が第2の付加データ205−2と比較される。
第3のデータブロック202−3と第3の付加データ205−3とを含んだ第3のパケット110−3が受信される。
第3のデータブロック202−3にパケット番号(3)および第2の編集MAC306−2が連結されて、第3の編集データ303−3が生成される。
第3の編集データ303−3がMAC生成関数に入力されて、第3の編集MAC306−3が生成される。
第3の編集MAC306−3から第3の比較データ304−3が抽出される。
第3の比較データ304−3が第3の付加データ205−3と比較される。
残りメッセージ認証コード206を含んだ第4のパケットが第N+1のパケット120として受信される。
第3の編集MAC306−3のメッセージ認証コードから残り比較データ305が抽出される。
残り比較データ305が残りメッセージ認証コード206と比較される。
図22に基づいて、パケット受信方法の処理の流れについて説明する。
パケット受信方法の処理の流れは、実施の形態1(図12参照)と同じである。
パケット受信処理(S210)、データブロック判定処理(S240)およびデータ復元処理(S250)は、実施の形態1と同じである。
以下に、第1のデータブロック処理(S220B)と第Xのデータブロック処理(S230B)とについて説明する。
図23に基づいて、第1のデータブロック処理(S220B)について説明する。
S221Bにおいて、編集データ生成部330は、第1のデータブロック202−1とパケット番号(1)と編集MAC306の初期値とを用いて、第1の編集データ303−1を生成する。
第1の編集データ303−1は、第1のデータブロック202−1にパケット番号(1)および編集MAC306の初期値を連結したデータである。編集MAC306の初期値はオールゼロである。
S222Bにおいて、メッセージ認証コード生成部320は、第1の編集データ303−1と共通鍵101とを入力として用いて、MAC生成関数を演算する。これにより、第1の編集MAC306−1が生成される。
第1の編集MAC306−1は、第1の編集データ303−1のメッセージ認証コードである。
S223Bにおいて、比較データ生成部340は、第1の編集MAC306−1の先頭のYビット(0<Y≦256)を第1の比較データ304−1として抽出する。
S224は実施の形態1(図13参照)と同じである。
図24に基づいて、第Xのデータブロック処理(S230B)について説明する。
S231Bにおいて、編集データ生成部330は、第Xのデータブロック202−Xとパケット番号(X)と第X−1の編集MAC306−X−1とを用いて、第Xの編集データ303−Xを生成する。
第Xの編集データ303−Xは、第Xのデータブロック202−Xにパケット番号(X)および第X−1の編集MAC306−X−1を連結したデータである。
S232Bにおいて、メッセージ認証コード生成部320は、第Xの編集データ303−1と共通鍵101とを入力として用いて、MAC生成関数を演算する。これにより、第Xの編集MAC306−Xが生成される。
第Xの編集MAC306−Xは、第Xの編集データ303−Xのメッセージ認証コードである。
S233Bにおいて、比較データ生成部340は、第Xの編集MAC306−Xの先頭のYビット(0<Y≦256)を第Xの比較データ304−Xとして抽出する。
S234は実施の形態1(図14参照)と同じである。
***効果の説明***
第Xの付加データ205−Xには第X−1のデータブロック202−X−1より前の各データブロック202の情報も含まれるため、第Xのデータブロック202−Xの改ざんの検出率を高めることができる
MAC生成関数の演算の回数が実施の形態1の半分であるため、データブロック202に対する処理時間を短縮することができる。
実施の形態3.
実施の形態1におけるデータブロック202を暗号化する形態について、図25から図30に基づいて説明する。
***構成の説明***
図25に示すように、パケット送信装置200は、実施の形態1(図3参照)で説明した機能に加えて、暗号化部281を備える。
暗号化部281は、第Xのデータブロック202−Xを暗号化することによって、第Xの暗号化ブロック208−Xを生成する。第Xの暗号化ブロック208−Xは、暗号化された第Xのデータブロック202−Xである。
メッセージ認証コード生成部230は、第Xのデータブロック202−Xの代わりに第Xの暗号化ブロック208−Xを用いて、第Xのメッセージ認証コード203−Xを生成する。
パケット生成部260は、第Xのデータブロック202−Xの代わりに第Xの暗号化ブロック208−Xを含んだ第Xのパケット110−Xを生成する。
図26に示すように、パケット受信装置300は、実施の形態1(図4参照)で説明した機能に加えて、復号部381を備える。
復号部381は、第1から第Nのデータブロック202を復号する。
***動作の説明***
図27に基づいて、パケット送信方法の処理の流れについて説明する。
S110、S120およびS150は実施の形態1(図7参照)と同じである。
S121において、暗号化部281は、N個のデータブロック202を暗号化鍵を用いて暗号化することによって、N個の暗号化ブロック208を生成する。暗号化鍵は共通鍵101または別の鍵である。
第1の暗号化ブロック処理(S130C)は、実施の形態1の第1のデータブロック処理(S130)においてデータブロック202を暗号化ブロック208に置き換えた処理である。
第Xの暗号化ブロック処理(S140C)は、実施の形態1の第Xのデータブロック処理(S140)においてデータブロック202を暗号化ブロック208に置き換えた処理である。
図28は実施の形態1の図6に対応する。図28において、暗号化ブロック208は、図6におけるデータブロック202の代わりに処理される。
図29に基づいて、パケット受信方法の処理の流れについて説明する。
S210は実施の形態1(図12参照)と同じである。
第1の暗号化ブロック処理(S220C)は、実施の形態1の第1のデータブロック処理(S220)においてデータブロック202を暗号化ブロック208に置き換えた処理である。
第Xの暗号化ブロック処理(S230C)は、実施の形態1の第Xのデータブロック処理(S230)においてデータブロック202を暗号化ブロック208に置き換えた処理である。
第Nのデータブロック判定処理(S240C)は、実施の形態1の第Nのデータブロック判定処理(S240)においてデータブロック202を暗号化ブロック208に置き換えた処理である。
S251において、復号部381は第1から第Nまでの暗号化ブロック208を復号鍵を用いて復号する。復号鍵は共通鍵101または別の鍵である。
S250は実施の形態1と同じである。
図30は実施の形態1の図11に対応する。図30において、暗号化ブロック208は、図11におけるデータブロック202の代わりに処理される。
***効果の説明***
データブロック202の暗号化によって、メッセージデータ201の秘匿性を担保することができる。
実施の形態4.
実施の形態2におけるデータブロック202を暗号化する形態について、図31から図34に基づいて説明する。
***構成の説明***
図31に示すように、パケット送信装置200は、実施の形態2(図15参照)で説明した機能に加えて、暗号化部281を備える。
暗号化部281は、第Xのデータブロック202−Xを暗号化することによって、第Xの暗号化ブロック208−Xを生成する。第Xの暗号化ブロック208−Xは、暗号化された第Xのデータブロック202−Xである。
編集データ生成部240は、第Xのデータブロック202−Xの代わりに第Xの暗号化ブロック208−Xを用いて、第Xの編集データ204−Xを生成する。
パケット生成部260は、第Xのデータブロック202−Xの代わりに第Xの暗号化ブロック208−Xを含んだ第Xのパケット110−Xを生成する。
図32に示すように、パケット受信装置300は、実施の形態2(図16参照)で説明した機能に加えて、復号部381を備える。
復号部381は、第1から第Nのデータブロック202を復号する。
***動作の説明***
パケット送信方法の処理の流れは、実施の形態3(図27参照)と同じである。
但し、第1の暗号化ブロック処理(S130C)は、実施の形態2の第1のデータブロック処理(S130B)においてデータブロック202を暗号化ブロック208に置き換えた処理である。
また、第Xの暗号化ブロック処理(S140C)は、実施の形態2の第Xのデータブロック処理(S140B)においてデータブロック202を暗号化ブロック208に置き換えた処理である。
図33は実施の形態2の図17に対応する。図33において、暗号化ブロック208は、図17におけるデータブロック202の代わりに処理される。
パケット受信方法の処理の流れは、実施の形態3(図29参照)と同じである。
但し、第1の暗号化ブロック処理(S220C)は、実施の形態2の第1のデータブロック処理(S220B)においてデータブロック202を暗号化ブロック208に置き換えた処理である。
また、第Xの暗号化ブロック処理(S230C)は、実施の形態2の第Xのデータブロック処理(S230B)においてデータブロック202を暗号化ブロック208に置き換えた処理である。
図34は実施の形態2の図21に対応する。図34において、暗号化ブロック208は、図21におけるデータブロック202の代わりに処理される。
***効果の説明***
データブロック202の暗号化によって、メッセージデータ201の秘匿性を担保することができる。
各実施の形態は、好ましい形態の例示であり、本発明の技術的範囲を制限することを意図するものではない。各実施の形態は、部分的に実施してもよいし、他の実施の形態と組み合わせて実施してもよい。
フローチャート等を用いて説明した処理手順は、パケット送信方法、パケット送信プログラム、パケット受信方法およびパケット受信プログラムの処理手順の一例である。
各実施の形態は、以下のような形態であってもよい。
パケット送信装置200は、パケット受信装置300の機能を備えるパケット通信装置であってもよい。
編集データは連結以外の編集によって生成されてもよい。
付加データおよび比較データは、編集データのメッセージ認証コードの一部ではなくて、編集データのメッセージ認証コードの全部であってもよい。さらに、付加データおよび比較データは、編集データを用いて生成されるデータあれば、編集データのメッセージ認証コードの一部および編集データのメッセージ認証コードの全部と異なるデータであってもよい。
以下に記す符号は、ハイフンを付した符号を総括する。例えば、データブロック202は、第1のデータブロック202−1、第Xのデータブロック202−Xおよび第Nのデータブロック202−Nの総称である。
100 パケット通信システム、109 ネットワーク、110 パケット、111 ヘッダ、120 第N+1のパケット、121 第N+1のヘッダ、200 パケット送信装置、201 メッセージデータ、202 データブロック、203 メッセージ認証コード、204 編集データ、205 付加データ、206 残りメッセージ認証コード、207 編集MAC、208 暗号化ブロック、210 メッセージデータ取得部、220 データ分割部、230 メッセージ認証コード生成部、240 編集データ生成部、250 付加データ生成部、260 パケット生成部、270 パケット送信部、280 パケットカウント部、290 送信記憶部、291 メッセージ認証コード記憶部、300 パケット受信装置、302 メッセージ認証コード、303 編集データ、304 比較データ、305 残り比較データ、306 編集MAC、310 パケット受信部、320 メッセージ認証コード生成部、330 編集データ生成部、340 比較データ生成部、350 データブロック判定部、360 データ復元部、390 受信記憶部、391 メッセージ認証コード記憶部、901 プロセッサ、902 補助記憶装置、903 メモリ、904 通信装置、9041 レシーバ、9042 トランスミッタ、905 入力インタフェース、906 ディスプレイインタフェース、907 入力装置、908 ディスプレイ、910 信号線、911 ケーブル、912 ケーブル。

Claims (14)

  1. N個のデータブロックに含まれるデータブロック毎にデータブロックのメッセージ認証コードを生成するメッセージ認証コード生成部と、
    前記N個のデータブロックのうちの第2のデータブロックから第Nのデータブロックまでのいずれかのデータブロックである第Xのデータブロックのメッセージ認証コードと、前記N個のデータブロックのうちの第X−1のデータブロックのメッセージ認証コードとを用いて、前記第Xのデータブロックのメッセージ認証コードに前記第X−1のデータブロックのメッセージ認証コードを連結して第Xの編集データを生成する編集データ生成部と、
    前記第Xの編集データを用いて第Xの編集データのメッセージ認証コードを生成し、前記第Xの編集データのメッセージ認証コードの一部を、前記第Xのデータブロックに付加するデータである第Xの付加データとして抽出する付加データ生成部と、
    前記第Xのデータブロックと前記第Xの付加データとを含んだ第Xのパケットを生成するパケット生成部と、
    前記第Xのパケットを送信するパケット送信部と
    を備えるパケット送信装置。
  2. 前記付加データ生成部は、第Nの編集データのメッセージ認証コードを生成し、前記第Nの編集データのメッセージ認証コードから第Nの付加データを抽出し、
    前記パケット生成部は、前記第Nの編集データのメッセージ認証コードから前記第Nの付加データを除いた部分を含んだパケットを第N+1のパケットとして生成し、
    前記パケット送信部は、前記第N+1のパケットを送信する
    請求項に記載のパケット送信装置。
  3. 前記編集データ生成部は、第1のデータブロックのメッセージ認証コードとメッセージ認証コードの初期値とを用いて第1の編集データを生成し、
    前記付加データ生成部は、前記第1の編集データを用いて第1の付加データを生成し、
    前記パケット生成部は、前記第1のデータブロックと前記第1の付加データとを含んだ第1のパケットを生成し、
    前記パケット送信部は、前記第1のパケットを送信する
    請求項1に記載のパケット送信装置。
  4. 前記N個のデータブロックのそれぞれのデータブロックは暗号化されたデータブロックである請求項1に記載のパケット送信装置。
  5. N個のデータブロックのうちの第2のデータブロックから第Nのデータブロックまでのいずれかのデータブロックである第Xのデータブロックと前記第Xのデータブロックを用いて生成されたデータである第Xの付加データとを含んだ第Xのパケットと、第X−1のデータブロックを含んだ第X−1のパケットとを受信するパケット受信部と、
    前記第Xのパケットに含まれる前記第Xのデータブロックを用いて前記第Xのデータブロックのメッセージ認証コードを生成し、前記第X−1のパケットに含まれる前記第X−1のデータブロックを用いて前記第X−1のデータブロックのメッセージ認証コードを生成するメッセージ認証コード生成部と、
    前記第Xのデータブロックのメッセージ認証コード前記第X−1のデータブロックのメッセージ認証コードを連結して第Xの編集データを生成する編集データ生成部と、
    前記第Xの編集データを用いて第Xの編集データのメッセージ認証コードを生成し、前記第Xの編集データのメッセージ認証コードの一部を、前記第Xのデータブロックに付加されるべきデータである第Xの比較データとして抽出する比較データ生成部と、
    前記第Xの比較データと前記第Xの付加データとを比較することによって、前記第Xのデータブロックが正しいデータブロックであるか判定するデータブロック判定部と
    を備えるパケット受信装置。
  6. 前記N個のデータブロックのそれぞれのデータブロックは暗号化されたデータブロックである請求項に記載のパケット受信装置。
  7. N個のデータブロックのうちの第のデータブロックから第N−1のデータブロックまでのいずれかのデータブロックである第X−1のデータブロックに第X−2のデータブロックに対応する第X−2の編集データのメッセージ認証コードを連結して第X−1の編集データを生成する編集データ生成部と、
    前記第X−1の編集データのメッセージ認証コードを生成するメッセージ認証コード生成部と、
    前記第X−1の編集データのメッセージ認証コードの一部を第X−1の付加データとして抽出する付加データ生成部と、
    前記第X−1のデータブロックと前記第X−1の付加データとを含んだ第X−1のパケットを生成するパケット生成部と、
    前記第X−1のパケットを送信するパケット送信部とを備え、
    前記編集データ生成部は、前記N個のデータブロックのうちの第Xのデータブロックに前記第X−1の編集データのメッセージ認証コードを連結して第Xの編集データを生成し、
    前記メッセージ認証コード生成部は、前記第Xの編集データのメッセージ認証コードを生成し、
    前記付加データ生成部は、前記第Xの編集データのメッセージ認証コードの一部を第Xの付加データとして抽出し、
    前記パケット生成部は、前記第Xのデータブロックと前記第Xの付加データとを含んだ第Xのパケットを生成し、
    前記パケット送信部は、前記第Xのパケットを送信する
    パケット送信装置。
  8. 前記N個のデータブロックのそれぞれのデータブロックは暗号化されたデータブロックである請求項に記載のパケット送信装置。
  9. N個のデータブロックのうちの第のデータブロックから第N−1のデータブロックまでのいずれかのデータブロックである第X−1のデータブロックと前記第X−1のデータブロックを用いて生成されたデータである第X−1の付加データとを含んだ第X−1のパケットと、第X−2のデータブロックと前記第X−2のデータブロックを用いて生成されたデータである第X−2の付加データとを含んだ第X−2のパケットとを受信するパケット受信部と、
    前記第X−1のパケットに含まれる前記第X−1のデータブロックと前記第X−2のパケットに含まれる前記第X−2のデータブロックとを用いて、前記第X−1のデータブロックに前記第X−2のデータブロックに対応する第X−2の編集データのメッセージ認証コードを連結して第X−1の編集データを生成する編集データ生成部と、
    前記第X−1の編集データのメッセージ認証コードを生成するメッセージ認証コード生成部と、
    前記第X−1の編集データのメッセージ認証コードの一部を第X−1の比較データとして抽出する比較データ生成部と、
    前記第X−1の比較データと前記第X−1の付加データとを比較することによって、前記第X−1のデータブロックが正しいデータブロックであるか判定するデータブロック判定部とを備え、
    前記パケット受信部は、第Xのデータブロックと前記第Xのデータブロックを用いて生成されたデータである第Xの付加データとを含んだ第Xのパケットを受信し、
    前記編集データ生成部は、前記第Xのデータブロック前記第X−1の編集データのメッセージ認証コードを連結して第X−1の編集データを生成し、
    前記メッセージ認証コード生成部は、前記第Xの編集データのメッセージ認証コードを生成し、
    前記比較データ生成部は、前記第Xの編集データのメッセージ認証コードの一部を第Xの比較データとして抽出し、
    前記データブロック判定部は、前記第Xの比較データと前記第Xの付加データとを比較することによって、前記第Xのデータブロックが正しいデータブロックであるか判定するパケット受信装置。
  10. 前記N個のデータブロックのそれぞれのデータブロックは暗号化されたデータブロックである請求項に記載のパケット受信装置。
  11. N個のデータブロックに含まれるデータブロック毎にデータブロックのメッセージ認証コードを生成するメッセージ認証コード生成処理と、
    前記N個のデータブロックのうちの第2のデータブロックから第Nのデータブロックまでのいずれかのデータブロックである第Xのデータブロックのメッセージ認証コードと、前記N個のデータブロックのうちの第X−1のデータブロックのメッセージ認証コードとを用いて、前記第Xのデータブロックのメッセージ認証コードに前記第X−1のデータブロックのメッセージ認証コードを連結して第Xの編集データを生成する編集データ生成処理と、
    前記第Xの編集データを用いて第Xの編集データのメッセージ認証コードを生成し、前記第Xの編集データのメッセージ認証コードの一部を、前記第Xのデータブロックに付加するデータである第Xの付加データとして抽出する付加データ生成処理と、
    前記第Xのデータブロックと前記第Xの付加データとを含んだ第Xのパケットを生成するパケット生成処理と、
    前記第Xのパケットを送信するパケット送信処理と
    をコンピュータに実行させるためのパケット送信プログラム。
  12. N個のデータブロックのうちの第2のデータブロックから第Nのデータブロックまでのいずれかのデータブロックである第Xのデータブロックと前記第Xのデータブロックを用いて生成されたデータである第Xの付加データとを含んだ第Xのパケットと、第X−1のデータブロックを含んだ第X−1のパケットとを受信するパケット受信処理と、
    前記第Xのパケットに含まれる前記第Xのデータブロックを用いて前記第Xのデータブロックのメッセージ認証コードを生成し、前記第X−1のパケットに含まれる前記第X−1のデータブロックを用いて前記第X−1のデータブロックのメッセージ認証コードを生成するメッセージ認証コード生成処理と、
    前記第Xのデータブロックのメッセージ認証コード前記第X−1のデータブロックのメッセージ認証コードを連結して第Xの編集データを生成する編集データ生成処理と、
    前記第Xの編集データを用いて第Xの編集データのメッセージ認証コードを生成し、前記第Xの編集データのメッセージ認証コードの一部を、前記第Xのデータブロックに付加されるべきデータである第Xの比較データとして抽出する比較データ生成処理と、
    前記第Xの比較データと前記第Xの付加データとを比較することによって、前記第Xのデータブロックが正しいデータブロックであるか判定するデータブロック判定処理と
    をコンピュータに実行させるためのパケット受信プログラム。
  13. N個のデータブロックのうちの第のデータブロックから第N−1のデータブロックまでのいずれかのデータブロックである第X−1のデータブロックに第X−2のデータブロックに対応する第X−2の編集データのメッセージ認証コードを連結して第X−1の編集データを生成する編集データ生成処理と、
    前記第X−1の編集データのメッセージ認証コードを生成するメッセージ認証コード生成処理と、
    前記第X−1の編集データのメッセージ認証コードの一部を第X−1の付加データとして抽出する付加データ生成処理と、
    前記第X−1のデータブロックと前記第X−1の付加データとを含んだ第X−1のパケットを生成するパケット生成処理と、
    前記第X−1のパケットを送信するパケット送信処理とをコンピュータに実行させて、
    前記編集データ生成処理は、前記N個のデータブロックのうちの第Xのデータブロック前記第X−1の編集データのメッセージ認証コードを連結して第Xの編集データを生成し、
    前記メッセージ認証コード生成処理は、前記第Xの編集データのメッセージ認証コードを生成し、
    前記付加データ生成処理は、前記第Xの編集データのメッセージ認証コードの一部を第Xの付加データとして抽出し、
    前記パケット生成処理は、前記第Xのデータブロックと前記第Xの付加データとを含んだ第Xのパケットを生成し、
    前記パケット送信処理は、前記第Xのパケットを送信する
    パケット送信プログラム。
  14. N個のデータブロックのうちの第1のデータブロックから第N−1のデータブロックまでのいずれかのデータブロックである第X−1のデータブロックと前記第X−1のデータブロックを用いて生成されたデータである第X−1の付加データとを含んだ第X−1のパケットと、第X−2のデータブロックと前記第X−2のデータブロックを用いて生成されたデータである第X−2の付加データとを含んだ第X−2のパケットとを受信するパケット受信処理と、
    前記第X−1のパケットに含まれる前記第X−1のデータブロックと前記第X−2のパケットに含まれる前記第X−2のデータブロックとを用いて、前記第X−1のデータブロックに前記第X−2のデータブロックに対応する第X−2の編集データのメッセージ認証コードを連結して第X−1の編集データを生成する編集データ生成処理と、
    前記第X−1の編集データのメッセージ認証コードを生成するメッセージ認証コード生成処理と、
    前記第X−1の編集データのメッセージ認証コードの一部を第X−1の比較データとして抽出する比較データ生成処理と、
    前記第X−1の比較データと前記第X−1の付加データとを比較することによって、前記第X−1のデータブロックが正しいデータブロックであるか判定するデータブロック判定処理とをコンピュータに実行させて、
    前記パケット受信処理は、第Xのデータブロックと前記第Xのデータブロックを用いて生成されたデータである第Xの付加データとを含んだ第Xのパケットを受信し、
    前記編集データ生成処理は、前記第Xのデータブロック前記第X−1の編集データのメッセージ認証コードを連結して第X−1の編集データを生成し、
    前記メッセージ認証コード生成処理は、前記第Xの編集データのメッセージ認証コードを生成し、
    前記比較データ生成処理は、前記第Xの編集データのメッセージ認証コードの一部を第Xの比較データとして抽出し、
    前記データブロック判定処理は、前記第Xの比較データと前記第Xの付加データとを比較することによって、前記第Xのデータブロックが正しいデータブロックであるか判定する
    パケット受信プログラム。
JP2016570218A 2015-01-19 2015-01-19 パケット送信装置、パケット受信装置、パケット送信プログラムおよびパケット受信プログラム Active JP6289680B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/051192 WO2016116999A1 (ja) 2015-01-19 2015-01-19 パケット送信装置、パケット受信装置、パケット送信プログラムおよびパケット受信プログラム

Publications (2)

Publication Number Publication Date
JPWO2016116999A1 JPWO2016116999A1 (ja) 2017-04-27
JP6289680B2 true JP6289680B2 (ja) 2018-03-07

Family

ID=56416567

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016570218A Active JP6289680B2 (ja) 2015-01-19 2015-01-19 パケット送信装置、パケット受信装置、パケット送信プログラムおよびパケット受信プログラム

Country Status (6)

Country Link
US (1) US10412069B2 (ja)
JP (1) JP6289680B2 (ja)
CN (1) CN107113180B (ja)
DE (1) DE112015005991B4 (ja)
TW (1) TW201628379A (ja)
WO (1) WO2016116999A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109150504A (zh) * 2017-06-14 2019-01-04 深圳市中兴微电子技术有限公司 一种实现数据传输处理的方法及高级加密标准系统
WO2019043921A1 (ja) * 2017-09-01 2019-03-07 三菱電機株式会社 暗号化装置、復号装置、暗号化方法、復号方法、暗号化プログラム及び復号プログラム
WO2019142306A1 (ja) * 2018-01-19 2019-07-25 ルネサスエレクトロニクス株式会社 半導体装置、データ提供方法、データ復号方法、およびプログラム
JPWO2019234850A1 (ja) * 2018-06-06 2020-06-25 サスメド株式会社 セキュリティシステムおよびデータ処理装置
CN110098939B (zh) * 2019-05-07 2022-02-22 浙江中控技术股份有限公司 消息认证方法及装置
US11343097B2 (en) * 2020-06-02 2022-05-24 Bank Of America Corporation Dynamic segmentation of network traffic by use of pre-shared keys
US11818045B2 (en) 2021-04-05 2023-11-14 Bank Of America Corporation System for performing dynamic monitoring and prioritization of data packets
US11743156B2 (en) * 2021-04-05 2023-08-29 Bank Of America Corporation System for performing dynamic monitoring and filtration of data packets

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5757913A (en) 1993-04-23 1998-05-26 International Business Machines Corporation Method and apparatus for data authentication in a data communication environment
JP2001519930A (ja) 1998-02-04 2001-10-23 サンマイクロシステムズ インコーポレーテッド 階層型ハッシュを用いた効率的な認証及び完全性検査の方法及びその装置
US6754824B1 (en) 1999-06-25 2004-06-22 Telefonaktiebolaget L M Ericsson (Publ) Modulated message authentication system and method
US7373506B2 (en) * 2000-01-21 2008-05-13 Sony Corporation Data authentication system
JP3948595B2 (ja) * 2000-03-06 2007-07-25 Kddi株式会社 メッセージ認証装置
JP4333351B2 (ja) 2003-12-05 2009-09-16 株式会社デンソー 通信システム
US7457954B2 (en) 2003-06-18 2008-11-25 Denso Corporation Communications system and packet structure
JP2005012466A (ja) 2003-06-18 2005-01-13 Denso Corp メッセージ認証方法及びメッセージ認証システム
US20060136728A1 (en) 2003-08-15 2006-06-22 Gentry Craig B Method and apparatus for authentication of data streams with adaptively controlled losses
JP2005072650A (ja) 2003-08-22 2005-03-17 Ntt Docomo Inc 被検証装置、検証装置、被検証方法及び検証方法
CN101507178A (zh) * 2006-08-28 2009-08-12 三菱电机株式会社 数据处理系统、数据处理方法以及程序
JP4938409B2 (ja) 2006-10-13 2012-05-23 Kddi株式会社 デジタル放送用コンテンツ配信装置、デジタル放送用コンテンツ認証システム、デジタル放送用コンテンツ認証方法およびプログラム
US8122247B2 (en) 2006-10-23 2012-02-21 Alcatel Lucent Processing method for message integrity with tolerance for non-sequential arrival of message data
US8204216B2 (en) 2006-10-23 2012-06-19 Alcatel Lucent Processing method for message integrity with tolerance for non-sequential arrival of message data
US8949600B2 (en) 2006-10-27 2015-02-03 Qualcomm Incorporated Composed message authentication code
JP2010510756A (ja) 2006-11-21 2010-04-02 アルカテル−ルーセント ユーエスエー インコーポレーテッド メッセージデータの非順次到着に対する許容性があるメッセージの完全性のための処理方法
JP5148190B2 (ja) * 2007-07-20 2013-02-20 京セラ株式会社 受信方法および受信装置
JP5556659B2 (ja) 2008-08-29 2014-07-23 日本電気株式会社 通信システム、送信側及び受信又は転送側の通信装置、データ通信方法、データ通信プログラム
JP5245935B2 (ja) 2009-03-11 2013-07-24 株式会社Ihi ロボットハンド及び移送ロボット
CN103109493B (zh) * 2010-03-17 2016-01-13 富士通株式会社 通信装置、程序以及方法
DE102010042539B4 (de) * 2010-10-15 2013-03-14 Infineon Technologies Ag Datensender mit einer sicheren, aber effizienten Signatur
JP5286380B2 (ja) * 2011-03-07 2013-09-11 株式会社東芝 データ送信装置および送信方法
US20120331308A1 (en) * 2011-06-22 2012-12-27 Media Patents, S.L. Methods, apparatus and systems to improve security in computer systems
JP5770602B2 (ja) 2011-10-31 2015-08-26 トヨタ自動車株式会社 通信システムにおけるメッセージ認証方法および通信システム
DE102013206202A1 (de) * 2013-04-09 2014-10-30 Robert Bosch Gmbh Sensormodul und Verfahren zum Betreiben eines Sensorsmoduls
US20140351598A1 (en) * 2013-05-24 2014-11-27 Qualcomm Incorporated Systems and methods for broadcast wlan messages with message authentication
US10042780B2 (en) * 2014-11-07 2018-08-07 Synopsys, Inc. Integrity protection for data storage
US9350732B1 (en) * 2014-11-07 2016-05-24 Elliptic Technologies Inc. Integrity protection for data storage
CN107094080B (zh) * 2016-02-12 2020-07-17 东芝存储器株式会社 通信装置

Also Published As

Publication number Publication date
JPWO2016116999A1 (ja) 2017-04-27
DE112015005991T5 (de) 2017-11-09
TW201628379A (zh) 2016-08-01
CN107113180A (zh) 2017-08-29
US20170353440A1 (en) 2017-12-07
WO2016116999A1 (ja) 2016-07-28
US10412069B2 (en) 2019-09-10
CN107113180B (zh) 2020-01-17
DE112015005991B4 (de) 2024-02-08

Similar Documents

Publication Publication Date Title
JP6289680B2 (ja) パケット送信装置、パケット受信装置、パケット送信プログラムおよびパケット受信プログラム
US9614668B1 (en) Conversion schemes for cryptography systems
US8086865B2 (en) Supplying cryptographic algorithm constants to a storage-constrained target
RU2638639C1 (ru) Кодер, декодер и способ кодирования и шифрования входных данных
EP3183836B1 (en) Generating cryptographic checksums
JP2007089147A (ja) 認証方法
JP5630913B2 (ja) 通信チャネルでの暗号化の存在を隠すための帯域効率的な方法及びシステム
CN112600665B (zh) 一种基于区块链和加密技术的隐蔽通信方法、装置及系统
CN113259132B (zh) 数据传输加解密方法、装置、计算机设备及存储介质
US20180253559A1 (en) Secured lossless data compression using encrypted headers
CN102780698A (zh) 物联网平台中用户终端安全通信的方法
CN110912920A (zh) 数据处理方法、设备及介质
WO2016140033A1 (en) Classification device and method of performing a real- time classification of a data stream, computer program product, and system
CN115580396A (zh) 匿踪查询系统及匿踪查询方法
CN113449338B (zh) 基于区块链的信息加密存储方法及系统
CN117640256B (zh) 一种无线网卡的数据加密方法、推荐装置和存储介质
US10200356B2 (en) Information processing system, information processing apparatus, information processing method, and recording medium
CN111615106A (zh) 一种语音数据包的加密方法及装置
CN103825725B (zh) 一种基于矢量量化的高效随机物理层密钥产生方法
CN116488919A (zh) 一种数据处理方法、通信节点及存储介质
CN115277094A (zh) 一种基于区块链的通信方法、终端、系统及存储介质
CN115102768B (zh) 一种数据处理方法、装置及计算机设备
US11336456B2 (en) Message authentication system, apparatus, and message verification method
GB2590282A (en) Cryptographic key management for end-to-end communication security
US9948755B1 (en) Methods and systems of transmitting header information using rateless codes

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161012

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161012

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180206

R150 Certificate of patent or registration of utility model

Ref document number: 6289680

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250