JP6693574B2 - メッセージ認証システム、装置及びメッセージ検証方法 - Google Patents

メッセージ認証システム、装置及びメッセージ検証方法 Download PDF

Info

Publication number
JP6693574B2
JP6693574B2 JP2018556125A JP2018556125A JP6693574B2 JP 6693574 B2 JP6693574 B2 JP 6693574B2 JP 2018556125 A JP2018556125 A JP 2018556125A JP 2018556125 A JP2018556125 A JP 2018556125A JP 6693574 B2 JP6693574 B2 JP 6693574B2
Authority
JP
Japan
Prior art keywords
message
tag
error correction
code
verified
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
JP2018556125A
Other languages
English (en)
Other versions
JPWO2018109906A1 (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Publication of JPWO2018109906A1 publication Critical patent/JPWO2018109906A1/ja
Application granted granted Critical
Publication of JP6693574B2 publication Critical patent/JP6693574B2/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
    • 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
    • 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/3247Cryptographic 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 involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/34Encoding or coding, e.g. Huffman coding or error correction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless

Description

本発明は、メッセージ認証システム、装置及びメッセージ検証方法に関し、特に、誤り訂正符号による誤り訂正機能を持つメッセージ認証システム、装置及びメッセージ検証方法に関する。
メッセージ認証(Message Authentication Code, MAC)とは、メッセージに対して秘密鍵を知るものだけが計算できるタグを付与することで、メッセージが正当であることを保証する技術である。例えば、メッセージ認証を用いれば、秘密鍵を共有した2者の通信において、通信の間に行われた、第三者による改ざんを検知することが可能となる。具体的には、メッセージの送信者と受信者で共有される秘密鍵をK、メッセージをMとすると、送信者はメッセージMとともにタグT=MAC(K,M)を受信者に送る。なお、MAC(K,M)は、MとKを入力して、タグTを出力する関数Fを示す。
通信路を介して受信者側で受け取られたメッセージとタグをそれぞれメッセージM’、タグT’と記す。メッセージM’とタグT’を受け取った受信者は、受信メッセージM’と、送信者と共有する鍵Kとを用いてタグT’’を計算する。ここで、受信したタグT’とT’’の一致/不一致を確認することで、メッセージM’が正当な送信者から送られたものかどうかを判断できる。
このような方式の一例として、非特許文献1のCMAC(Cipher-based Message Authentication Code;以下、[CMAC]と記す)や、非特許文献2のHMAC(Hash−based Message Authentication Code;以下、[HMAC]と記す)などがある。
一方、通信においては自然の要因によるエラーが起きうるため、誤り訂正符号(Error−Correcting Code以下、ECCと記す)も適用することが一般的である。この際、通常、誤り訂正符号は通信内容全体に適用される。従って、メッセージ認証を用いている場合は、メッセージMと、タグT=MAC(M)とを連結した系列(M||T)全体に、誤り訂正符号の符号化処理を行うことになる(なお、||は連結演算子を示す)。
任意の2値系列xに対する符号化処理をg(x)とすれば、送信内容はg(M||MAC(M))となる。受信者は、まず誤り訂正処理を行い、得られた(M||T)の推定値についてMAC検証処理を行う。
非特許文献3[DNSN]、非特許文献4[LGV]及び特許文献1には、上記メッセージ認証と、誤り訂正符号の機能を組み合わせた方式が提案されている。
特開2015−204508号公報
NIST Special Publication 800−38B、"Recommendation for Block Cipher Modes of Operation: The CMAC Mode for Authentication"、[online]、[平成28年11月28日検索]、インターネット〈URL:http://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-38b.pdf〉 Mihir Bellare, Ran Canetti and Hugo Krawczyk、"Keying Hash Functions for Message Authentication"、[online]、[平成28年11月28日検索]、インターネット〈URL:http://cseweb.ucsd.edu/~mihir/papers/kmd5.pdf〉 Elena Dubrova, Mats Naslund, Goran Selander, Karl Norrma、"Error−Correcting Message Authentication for 5G"、[online]、[平成28年11月28日検索]、インターネット〈URL:https://www.ericsson.com/res/docs/2016/error-correcting-message-authentication-for-5g.pdf〉 C.Y. Lam, G. Gong, S.A. Vanstone、"Message Authentication Codes with Error Correcting Capabilities"、 4th International Conference, ICICS 2002、2002年6月20日[online]、[平成28年11月28日検索]、インターネット〈URL:http://cacr.uwaterloo.ca/techreports/2002/corr2002-19.ps〉
以下の分析は、本発明によって与えられたものである。上記したように、メッセージ認証(MAC)と誤り訂正符号(ECC)とを組み合わせる場合、メッセージMと、タグT=MAC(M)とを連結した系列(M||T)全体に、誤り訂正符号の符号化処理が行われる(特許文献1の段落0065、0110−0111参照)。通常、誤り訂正符号の機能は通信デバイスの中にハードウェアとして組み込まれており、メッセージ認証は通信デバイスの外側で、典型的にはソフトウェアで実行されていることが多いため、上記処理順序の制約は問題とはならない。
しかしながら、例えば、ストレージから入出力されるパケットに対する誤り訂正などはソフトウェアで行われる。この場合、メッセージ認証と、誤り訂正(ECC)とをそれぞれソフトウェアで処理することになるため、処理速度の向上を図る際のボトルネックとなりうる。
また、上記したメッセージ認証に用いられるタグは固定長(例えば32bitから128bit)の比較的短いデータであり、一般的なインターネットのパケットにおいてはメッセージの方がタグより十分長いため問題とはならない。
しかしながら、IoT(Internet of Things)に代表される低電力動作の無線通信を用いたセンサーネットワーク等のアプリケーションでは、ビットあたりの送信にかかる電力量が相対的に大きい。このため、アプリケーションの側でメッセージを極めて短くするような設計がなされることが多い。結果として、既存のメッセージ認証方式と組みわせた場合、メッセージとタグの長さは同等か、メッセージの方が短くなることも予想される。これらメッセージ本文に対するオーバーヘッドは、低電力動作の無線通信においては無視できない消費電力増加の要因となる。
上記の諸点に関連し、非特許文献3[DNSN]は、シングルビット誤り訂正と組み合わせたメッセージ認証方式を提案するものであり、任意のメッセージ認証コードと任意の誤り訂正符号との組合せを実現するものではない。また、非特許文献4[LGV]は、誤り訂正機能を持つメッセージ認証コード自体の構築であり、こちらも任意のメッセージ認証コードと任意の誤り訂正符号との組合せを実現するものではない。
本発明は、任意のメッセージ認証コードと任意の誤り訂正符号とを用いる場合の処理順序の制約をなくし、処理速度を向上可能とするとともに、オーバーヘッドの抑制に貢献できるメッセージ認証システム、装置及びメッセージ検証方法を提供することを目的とする。
第1の視点によれば、第1の装置と、第2の装置と、を含むメッセージ認証システムが提供される。第1の装置は、第2の装置に送信するメッセージMを入力とし、所定の誤り訂正符号による符号化を行って符号語Cを出力する誤り訂正符号化手段と、前記メッセージMを入力とし、所定のメッセージ認証用のタグTを出力するメッセージ認証タグ生成手段と、前記符号語CとタグTとを送信情報Sとして前記第2の装置に送信する送信手段と、を備える。第2の装置は、前記第1の装置から受信した送信情報Sから前記符号語CとタグTに対応する符号語C’とタグT’とを抽出する抽出手段と、前記符号語C’に対して前記所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力する誤り訂正符号復号手段と、前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’とが所定の同一性基準を満たす場合、前記検証対象のメッセージM*が改ざんされていないものとして判定するメッセージ検証結果出力手段と、を備える。
第2の視点によれば、上記メッセージ認証システムを構成する第1の装置及び第2の装置がそれぞれ提供される。
第3の視点によれば、符号語CとタグTとを送信情報Sとして第2の装置に送信する第1の装置から受信した送信情報Sから前記符号語CとタグTに対応する符号語C’とタグT’とを抽出するステップと、前記符号語C’に対して前記所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力するステップと、前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’とが所定の同一性基準を満たす場合、前記検証対象のメッセージM*が改ざんされていないものとして判定するステップと、を含むメッセージ検証方法が提供される。本方法は、送信情報S中の符号語C’についての誤り訂正処理と、メッセージM*、秘密鍵K及び受信タグT’とを用いたメッセージ検証とを行う機能を有する装置という、特定の機械に結びつけられている。
第4の視点によれば、上記メッセージ認証システムを構成する第1の装置及び第2の装置にそれぞれ搭載されたコンピュータに実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な(非トランジエントな)記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
本発明によれば、メッセージ認証と誤り訂正符号とを用いる通信におけるこれらの処理速度を向上可能とするとともに、オーバーヘッドを低減することが可能となる。
本発明の一実施形態の構成を示す図である。 本発明の一実施形態の動作を説明するための図である。 本発明の第1の実施形態のメッセージ認証システムの構成を示す図である。 本発明の第1の実施形態のメッセージ送信装置の構成を示す図である。 本発明の第1の実施形態のメッセージ検証装置の構成を示す図である。 本発明の第1の実施形態のメッセージ送信装置の動作を表したフローチャートである。 本発明の第1の実施形態のメッセージ検証装置の動作を表したフローチャートである。 比較例と本発明の第1の実施形態のメッセージ認証システムとの差異を説明するための参考図である。 本発明の第1の実施形態のメッセージ認証システムを構成する装置のハードウェア構成を示す図である。
はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。また、以降の説明で参照する図面等のブロック間の接続線は、双方向及び単方向の双方を含む。一方向矢印については、主たる信号(データ)の流れを模式的に示すものであり、双方向性を排除するものではない。
本発明は、その一実施形態において、図1に示すように、第1の装置100と、第2の装置200と、を含むメッセージ認証システムにて実現できる。より具体的には、第1の装置100は、第2の装置200に送信するメッセージMを入力とし、所定の誤り訂正符号による符号化を行って符号語Cを出力する誤り訂正符号化手段101と、同じく前記メッセージMを入力とし、所定のメッセージ認証用のタグTを出力するメッセージ認証タグ生成手段102と、前記符号語CとタグTとを連結して送信情報Sとして第2の装置200に送信する送信手段103と、を備える。
一方、第2の装置200は、第1の装置100から受信した送信情報Sから符号語CとタグTに対応する符号語C’とタグT’とを抽出する抽出手段201と、前記符号語C’に対して前記所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力する誤り訂正符号復号手段202と、前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’とが所定の同一性基準を満たす場合、前記検証対象のメッセージM*が改ざんされていないものとして判定するメッセージ検証結果出力手段203と、を備える。
図2は、上記メッセージ認証システムの動作を説明するための図である。第1の装置100に、メッセージMが入力されると、誤り訂正符号化手段101と、メッセージ認証タグ生成手段102とが、それぞれ動作し、符号語CとタグTとをそれぞれ計算して、送信手段103に出力する。送信手段103は、符号語CとタグTとを連結して送信情報Sとして、第2の装置200に送信する。なお、本実施形態においてはタグTを先に計算しなければならないという制約はないので、誤り訂正符号化手段101と、メッセージ認証タグ生成手段102の動作は、図2に示すように、独立して並列に動作させることができる。また、符号語CとタグTとの連結は、第1、第2の装置間で事前に取り決めた種々の態様を採ることができる。例えば、所定の送信フォーマットの前段に符号語Cを格納し、その後ろにタグTを格納する態様を採ることができる。もちろん、この態様に限られず、送信フレームのヘッダ領域にタグTを格納する形態や結合後のデータを暗号化する形態等の種々の形態を採ることができる。
第2の装置200は、送信情報Sを受信すると、送信情報Sから符号語CとタグTの部分を抽出する(抽出した段階では同一性が保証されていないため、それぞれ”C’”、”T’”と記す)。次に、第2の装置200は、符号語C’を復号して検証対象のメッセージM*を得る。この検証対象のメッセージM*は、改ざん有無の確認はなされていないが、伝送過程で生じた誤りが訂正されたものとなっている。次に、第2の装置200は、このメッセージM*を入力として、事前に第1の装置100と共有している秘密鍵を用いてタグT*を計算する。さらに、第2の装置200は、タグT*と、第1の装置100から受信した送信情報Sから抽出したタグT’とが所定の同一性基準を満たす場合、検証対象のメッセージM*が改ざんされていないものとして判定する。他方、前記タグT*と、前記タグT’とが所定の同一性基準を満たしていない場合、第2の装置200は、検証対象のメッセージM*が改ざんされたものとして判定する。
以上のように、本発明によれば、誤り訂正符号化処理と、メッセージ認証用タグTの計算処理とを独立して実施可能であるため、送信側の装置における処理速度を向上させることができる。また、本発明によれば、誤り訂正符号化処理の対象からタグT(例えば、32〜128ビットの長さとなる)は除外されるため、計算量及び第2の装置200側に送信するデータ量を少なくすることができる(図6参照)。
なお、前記所定の同一性基準としては、2つのデータの類似の度合いに基づいて、実施的な同一性を判定する種々の方法を採用することができる。例えば、前記タグT*と、前記タグT’との差異の大きさを示す値(距離)が、所定のしきい値以下であった場合、検証対象のメッセージM*が改ざんされていないものとして判定する基準を用いることができる。また、前記しきい値としても、第1の装置100と第2の装置200の間の通信路において想定される誤り率や、第1の装置100と第2の装置200の間の通信に求められる改ざん検知機能の精度に応じて設定した値を用いることができる。
[第1の実施形態]
続いて、本発明の第1の実施形態について図面を参照して詳細に説明する。以下、とくに断りのない限り、メッセージMがmビット、タグTがtビットであるとする。図3は、本発明の第1の実施形態のメッセージ認証システムの構成を示す図である。図3を参照すると、タグ付きのメッセージを送信するメッセージ送信装置10と、メッセージ送信装置10から受信したタグ付きのメッセージを検証するメッセージ検証装置20とが示されている。
メッセージ送信装置10は、各種の無線端末やセンサ端末などデータの送信側の装置である。メッセージ検証装置20は、メッセージ送信装置10からメッセージを受信する端末やサーバなどデータの受信側の装置である。本実施形態では、メッセージ送信装置10とメッセージ検証装置20間の通信は無線で行われるものとして説明するが、メッセージ送信装置10とメッセージ検証装置20とが有線で接続されていてもよい。
はじめに、メッセージ送信装置10の構成について説明する。図4は、メッセージ送信装置10の構成を示すブロック図である。図4を参照すると、メッセージ入力手段110と、誤り訂正符号化手段111と、メッセージ認証タグ生成手段112と、出力手段113とを備えた構成が示されている。
メッセージ入力手段110は、ユーザ等から処理対象となるメッセージMの入力を受け付け、誤り訂正符号化手段111と、メッセージ認証タグ生成手段112とに出力する手段である。このようなメッセージ入力手段110は、例えばキーボードなどの文字入力装置や外部からメッセージを受信する通信ユニットにより実現される(例えば、図9の通信デバイス930、入力デバイス940参照)。
誤り訂正符号化手段111は、メッセージMに対し、所定の誤り訂正符号の符号化関数を適用し、その結果である符号語Cを出力する手段である。誤り訂正符号としては、ハミング符号やReed−Solomon符号を含む、任意のものを利用可能である。符号化関数をg(x)とすると、符号語Cは、g(M)と表すことができる。
メッセージ認証タグ生成手段112は、メッセージMに対し、共通鍵暗号を用いたメッセージ認証コードのタグ生成関数を適用し、その結果であるタグTを出力する手段である。メッセージ認証コードとしては、ブロック暗号を用いたCMAC(非特許文献1)や、ハッシュ関数を用いたHMAC(非特許文献2)など、擬似ランダム関数を実現する任意のメッセージ認証コードを利用可能である。タグ生成関数をF(x)とすると、タグTは、F(M)と表すことができる。
出力手段113は、誤り訂正符号化手段111の出力する符号語Cと、メッセージ認証タグ生成手段112の出力するタグTとを連結して、送信情報Sとして、メッセージ検証装置20側に送信する手段である。出力手段113は、送信情報Sを構成し、メッセージ検証装置20側に送信するコンピュータプログラム及びメッセージを送信する通信ユニットにより構成することができる。
上記したメッセージ送信装置10は、CPUと記憶装置(メモリ/ディスク)とを備えたコンピュータにより実現可能である(図9参照)。また、上記したメッセージ送信装置10の各手段は、図9に示すように、上記CPU910に、上記各手段に相当する処理を実行させるコンピュータプログラムを記憶装置920に格納しておき(図9のプログラム記憶部922参照)、このプログラムをCPU910上で動作させることにより実現することができる。
次に、メッセージ検証装置20の構成について説明する。図5は、メッセージ検証装置20の構成を示すブロック図である。図5を参照すると、送信情報入力手段120と、メッセージ分割手段121と、誤り訂正符号復号手段122と、メッセージ検証結果出力手段123と備えた構成が示されている。
送信情報入力手段120は、メッセージ送信装置10から送信された送信情報Sを入力する手段である。送信情報入力手段120は、外部からメッセージを受信する通信ユニットなどにより実現される(例えば、図9の通信デバイス930、入力デバイス940参照)。
メッセージ分割手段121は、上述した抽出手段に相当し、送信情報Sを分割して、受信した符号語C’と、受信したタグT’を得る手段である。
誤り訂正符号復号手段122は、メッセージ分割手段121にて得られた符号語C’に対し誤り訂正符号の復号関数を適用し、復号結果のメッセージM*を出力する手段である。ここで、M*は、受信した符号語C’の通信中に改ざんがなく、かつ、通信において生じたエラーが利用した誤り訂正符号の訂正能力の範囲内であれば、元のメッセージMと一致することになる。復号関数をg−1(x)とすると、M*の算出式は、g−1(C’)と表すことができる。
メッセージ検証結果出力手段123は、前記復号結果のメッセージM*に対し、メッセージ送信装置10と同じメッセージ認証コードのタグ生成関数F(x)を用いてF(M*)を計算し、ローカルなタグT*を得る。メッセージ検証結果出力手段123は、さらに、タグT*と前記受信したタグT’とを比較し、その距離(タグT*とタグT’の差異の大きさを示す値)が通信路のノイズから期待されるしきい値を超える場合には改ざんがあったと判定し、そうでない場合は改ざんなしとして判定する。メッセージ検証結果出力手段123は、前記判定の結果をディスプレイなどへ出力する。ここでの距離は通信路の性質に依存する。たとえば通常の2元対称通信路であればハミング距離でよい。しきい値はノイズのパラメータに依存する。
上記したメッセージ検証装置20も、メッセージ送信装置10と同様に、CPUと記憶装置(メモリ/ディスク)とを備えたコンピュータにより実現可能である(図9参照)。また、上記したメッセージ検証装置20の各手段は、図9に示すように、上記CPU910に上記各手段に相当する処理を実行させるコンピュータプログラムを記憶装置920に格納しておき(図9のプログラム記憶部922参照)、このプログラムをCPU910上で動作させることにより実現することができる。
続いて、本実施形態の動作について図面を参照して詳細に説明する。図6は、本発明の第1の実施形態のメッセージ送信装置の動作を表したフローチャートである。図6に示すように、まず、メッセージ送信装置10のメッセージ入力手段110が、対象となるメッセージMの入力を受け付ける(図6のステップS001)。
次に、メッセージ送信装置10の誤り訂正符号化手段111が、メッセージMの符号化を行ない、符号語Cを出力する(図6のステップS002)。
次に、メッセージ送信装置10のメッセージ認証タグ生成手段112が、メッセージMにメッセージ認証コードのタグ生成関数を適用してタグTを計算し、出力する(図6のステップS003)。
メッセージ送信装置10の出力手段113が符号語CとタグTを連結して、送信情報Sを作成する(図6のステップS004)。送信情報Sは図6に示すように、g(M)||F(M)=C||Tより構成される。
最後に、メッセージ送信装置10は、作成された送信情報Sをメッセージ検証装置20に送信する(図6のステップS005)。
図7は、本発明の第1の実施形態のメッセージ検証装置の動作を表したフローチャートである。図7に示すように、まず、メッセージ検証装置20の送信情報入力手段120が、検証の対象となる送信情報Sの入力を受け付ける(図7のステップS101)。
次に、メッセージ検証装置20のメッセージ分割手段121が送信情報Sから符号語C’と受信したタグT’を取り出す(図7のステップS102)。メッセージ分割手段121は、誤り訂正符号復号手段122に符号語Cを送る。
次に、メッセージ検証装置20の誤り訂正符号復号手段122は符号語C’に対し、誤り訂正符号の復号処理を行い、復号結果としてメッセージM*を出力する(図7のステップS103)。
次に、メッセージ検証装置20のメッセージ検証結果出力手段123が復号結果のメッセージM*に対して、メッセージ認証コードのタグ生成関数を適用し、ローカルなタグT*を得る。次に、メッセージ検証結果出力手段123は、前記ローカルなタグT*と受信したタグT’とを比較する(図7のステップS104)。
前記比較の結果、タグT*とタグT’間の距離が所定のしきい値th以上である場合(Diff(T*,T’)≧th)、メッセージ検証結果出力手段123は、改ざんがあったと判定し(INVALID)、そうでない場合は改ざんなしとし(VALID)、判定結果を出力する(図7のステップS105)。
以上説明したように、本実施形態によれば、メッセージ認証コードと誤り訂正符号の両方を適用した通信において、送信側でのメッセージ認証用のタグ作成と誤り訂正符号化の処理順序を任意に変えることができる。また、本実施形態によれば、タグ作成と誤り訂正符号化とを並列に実行することも可能となる(第1の効果)。その理由は、メッセージ認証用のタグ作成と誤り訂正符号化を独立にメッセージへ適用する構成を採用したことにある。この点は、図8の上段に示すように、メッセージ認証用のタグ作成を先に行う必要がある特許文献1の方式等と比較して、処理速度の向上、計算量及びデータサイズの削減等において大きなアドバンテージとなる。
一方、本実施形態の受信側においては、まず誤り訂正をメッセージに対して行った後、この結果から計算されたタグT*と、受信したタグT’とを比較することでメッセージの検証を行う。ここで、送信されたタグT’には誤り訂正符号が適用されていないため、通信路のノイズがそのまま加わっていることが予想される。このため、通常のメッセージ認証コードのように厳密な一致判定を行うと、多くの場合で検証結果は失敗(改ざんがあると判定)とされてしまう。そこで、本実施形態では、計算されたタグT*と受信したタグT’との差異の大きさを示す値(例えば、ハミング距離)が通信路のエラー率から期待される値以上であったときのみ、メッセージM*に改ざんがあったと判定することで、メッセージの検証を行う。
上記しきい値による判定はメッセージ認証コードの受理基準を弱めていることに相当する。ここで重要なのは、メッセージ認証コードは一般的に擬似ランダム関数(Pseudorandom Function, PRF)より作られており、PRF出力は異なる入力ごとに完全にランダムとなることである(より正確には、計算量的に完全な乱数と判別がつかない、擬似乱数となる)。
従って、タグがtビット、通信路のエラー率から平均してrビットがタグに生じるノイズだとした場合、上記のようにメッセージ認証コードの受理基準を弱めたとしても、改ざん成功確率は高々2^r倍にしかならない。
典型的な例でt=64,エラー率を0.08とした場合、平均で約5ビットがノイズとして載るが、この場合でも、元々のメッセージ認証コードでの改ざん成功確率が2^−64である。これに対し、本発明での改ざん成功確率は2^−59となるのみである。
また、本実施形態によれば、誤り訂正符号の適用範囲が狭まることによる、送信データのサイズと計算量を低減することができる。図8は、比較例として示す特許文献1のメッセージ認証方法と、第1の実施形態のメッセージ認証方法とを対比した図である。図8に示すように比較例の場合、メッセージ認証用タグT+メッセージMに誤り訂正符号(ECC)を適用し、タグのチェックは厳密な一致判定で行われる。一方、本実施形態では、誤り訂正符号(ECC)の対象となるのはメッセージのみであり、タグのチェックは、二つのタグの距離尺度Diff(F(M*),T’)としきい値thとによるしきい値判定で行う。図8のメッセージMがmビット、タグTがtビットであるとする。例えばm=t=64の場合、比較例(特許文献1相当)の方法では両者を連結した128ビットの(M,T)へ誤り訂正を行うため、単純な繰り返し符号では256ビットを送信することになる。一方、本実施形態では、誤り訂正の適用範囲はメッセージMのみとなるため、128+64=192ビットに圧縮できる。
一般的に、帯域削減(送信データサイズ圧縮)の効果は用いる誤り訂正符号のレートが最適に近い(すなわち完全符号に近い)ほど弱まるが、本実施形態によれば、たとえ完全符号だとしても効果はなくならない。例えば1ビット誤り訂正可能な完全符号である、ハミング符号を用いる場合を示す。m=57,t=63の場合で、1ビット誤り訂正をハミング符号で行うには、比較例(特許文献1相当)の方法では(127,120)ハミング符号の符号語(増分は127−(m+t)=7ビット)を送信することになる((n,k)ハミング符号のnは符号長、kは情報数を示す)。これに対して、本実施形態では、(63,57)のハミング符号の符号語(増分は63−m=6ビット)とタグTビットを連結した126ビットを送信すればよく、1ビット削減となる。
別の例として、極めてメッセージが短く、しかし十分な認証強度を保ちたい場合として、m=4,t=53とした場合、比較例(特許文献1相当)では、(63,57)ハミング符号の符号語を送信するのに対して、本発明では(7,4)ハミング符号の符号語とタグTビットを連結した60ビットを送信すればよく、3ビット削減となる。このような例はセンサーによる死活監視など、毎回送る情報が数ビットでよい場合に相当する。
また、本実施形態によれば、これらの例が示すように符号の入出力が小さくなるために全体の計算量が下がるため、計算量低減の効果がある。
以上、本発明の各実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、各図面に示した装置の数及び接続構成、各要素の構成、メッセージの表現形態は、本発明の理解を助けるための一例であり、これらの図面に示した構成に限定されるものではない。
最後に、本発明の好ましい形態を要約する。
[第1の形態]
(上記第1の視点によるメッセージ認証システム参照)
[第2の形態]
上記したメッセージ認証システムのメッセージ検証結果出力手段は、タグT*と、タグT’との差異の大きさを示す値が、所定のしきい値以下であった場合、検証対象のメッセージM*が改ざんされていないものとして判定することができる。
[第3の形態]
上記したメッセージ認証システムにおいて、
前記しきい値は、第1の装置と第2の装置の間の通信路において想定される所定の誤り率に応じて設定された値とすることができる。
[第4の形態]
上記したメッセージ認証システムにおいて、
誤り訂正符号化手段とメッセージ認証タグ生成手段とが並列して動作するよう構成することが好ましい。
[第5の形態]
上記したメッセージ認証システムの第1の装置及び第2の装置は、それぞれCMAC(Cipher-based Message Authentication Code)を用いてタグT及びタグT*を計算することもできる。
[第6の形態]
上記したメッセージ認証システムの第1の装置及び第2の装置は、それぞれHMAC(Hash−based Message Authentication Code)を用いてタグT及びタグT*を計算することもできる。
[第7の形態]
符号語CとタグTとを送信情報Sとして第2の装置に送信する第1の装置から受信した送信情報Sから前記符号語CとタグTに対応する符号語C’とタグT’とを抽出する抽出手段と、
前記符号語C’に対して前記所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力する誤り訂正符号復号手段と、
前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’とが所定の同一性基準を満たす場合、前記検証対象のメッセージM*が改ざんされていないものとして判定するメッセージ検証結果出力手段と、を含む第2の装置。
[第8の形態]
第2の装置に送信するメッセージMを入力とし、所定の誤り訂正符号による符号化を行って符号語Cを出力する誤り訂正符号化手段と、
前記メッセージMを入力とし、所定のメッセージ認証用のタグTを出力するメッセージ認証タグ生成手段と、
前記符号語CとタグTとを送信情報Sとして前記第2の装置に送信する送信手段と、を備える第1の装置。
[第9の形態]
(上記第3の視点によるメッセージ検証方法参照)
[第10の形態]
符号語CとタグTとを送信情報Sとして第2の装置に送信する第1の装置から受信した送信情報Sから前記符号語CとタグTに対応する符号語C’とタグT’とを抽出する処理と、
前記符号語C’に対して所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力する処理と、
前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’とが所定の同一性基準を満たす場合、復号されたメッセージM*が改ざんされていないものとして判定する処理と、を第2の装置に搭載されたコンピュータに実行させるプログラム。
なお、上記第7〜第10の形態は、第1の形態と同様に、第2〜第6の形態に展開することが可能である。
なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の開示の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
本発明によれば、無線もしくは有線のデータ通信における誤り訂正とメッセージ認証に適用可能であるが、具体的なアプリケーションとして、無線センサーデバイスと情報収集サーバとの通信の完全性の確保といった用途に適用できる。
10 メッセージ送信装置
20 メッセージ検証装置
100 第1の装置
101、111 誤り訂正符号化手段
102、112 メッセージ認証タグ生成手段
103 送信手段
110 メッセージ入力手段
113 出力手段
120 送信情報入力手段
121 メッセージ分割手段
200 第2の装置
201 抽出手段
202、122 誤り訂正符号復号手段
203、123 メッセージ検証結果出力手段
910 CPU
920 記憶装置
921 しきい値記憶部
922 プログラム記憶部
930 通信デバイス
940 入力デバイス
950 出力デバイス

Claims (7)

  1. 第2の装置に送信するメッセージMを入力とし、所定の誤り訂正符号による符号化を行って符号語Cを出力する誤り訂正符号化手段と、
    前記メッセージMを入力とし、所定のメッセージ認証用のタグTを出力するメッセージ認証タグ生成手段と、
    前記符号語CとタグTとを送信情報Sとして前記第2の装置に送信する送信手段と、を備える第1の装置と、
    前記第1の装置から受信した送信情報Sから前記符号語CとタグTに対応する符号語C’とタグT’とを抽出する抽出手段と、
    前記符号語C’に対して前記所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力する誤り訂正符号復号手段と、
    前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’との差異の大きさを示す値が、所定のしきい値以下であった場合、前記検証対象のメッセージM*が改ざんされていないものとして判定するメッセージ検証結果出力手段と、を備える第2の装置と、
    を含むメッセージ認証システム。
  2. 前記しきい値は、前記第1の装置と前記第2の装置の間の通信路において想定される所定の誤り率に応じて設定された値である請求項1のメッセージ認証システム。
  3. 前記誤り訂正符号化手段と前記メッセージ認証タグ生成手段とが並列して動作するよう構成されている請求項1又は2のメッセージ認証システム。
  4. 前記第1の装置及び前記第2の装置は、それぞれCMAC(Cipher-based Message Authentication Code)を用いてタグT及びタグT*を計算する請求項1から3いずれか一のメッセージ認証システム。
  5. 前記第1の装置及び前記第2の装置は、それぞれHMAC(Hash−based Message Authentication Code)を用いてタグT及びタグT*を計算する請求項1から3いずれか一のメッセージ認証システム。
  6. 符号語CとタグTとを送信情報Sとして第2の装置に送信する第1の装置から受信した送信情報Sから前記符号語CとタグTに対応する符号語C’とタグT’とを抽出する抽出手段と、
    前記符号語C’に対して所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力する誤り訂正符号復号手段と、
    前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’との差異の大きさを示す値が、所定のしきい値以下であった場合、前記検証対象のメッセージM*が改ざんされていないものとして判定するメッセージ検証結果出力手段と、を含む第2の装置。
  7. 符号語CとタグTとを送信情報Sとして第2の装置に送信する第1の装置から受信した送信情報Sから前記符号語CとタグTに対応する符号語C’とタグT’とを抽出するステップと、
    前記符号語C’に対して所定の誤り訂正符号の復号処理を行い、検証対象のメッセージM*を出力するステップと、
    前記検証対象のメッセージM*と前記タグT’とを入力として、検証対象のメッセージM*から得られるタグT*と、前記タグT’との差異の大きさを示す値が、所定のしきい値以下であった場合、前記検証対象のメッセージM*が改ざんされていないものとして判定するステップと、を含むメッセージ検証方法。
JP2018556125A 2016-12-15 2016-12-15 メッセージ認証システム、装置及びメッセージ検証方法 Active JP6693574B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/087405 WO2018109906A1 (ja) 2016-12-15 2016-12-15 メッセージ認証システム、装置及びメッセージ検証方法

Publications (2)

Publication Number Publication Date
JPWO2018109906A1 JPWO2018109906A1 (ja) 2019-10-31
JP6693574B2 true JP6693574B2 (ja) 2020-05-13

Family

ID=62558217

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018556125A Active JP6693574B2 (ja) 2016-12-15 2016-12-15 メッセージ認証システム、装置及びメッセージ検証方法

Country Status (3)

Country Link
US (1) US11336456B2 (ja)
JP (1) JP6693574B2 (ja)
WO (1) WO2018109906A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3661115B1 (en) * 2017-09-01 2024-01-17 Mitsubishi Electric Corporation Encryption device, decryption device, encryption method, decryption method, encryption program, and decryption program
CN116707934B (zh) * 2023-06-20 2023-10-24 甘肃省地震局(中国地震局兰州地震研究所) 一种基于无线传感网络的数据加密传送方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6845449B1 (en) * 1999-07-23 2005-01-18 Networks Associates Technology, Inc. System and method for fast nested message authentication codes and error correction codes
ATE389987T1 (de) * 2001-05-03 2008-04-15 Ericsson Telefon Ab L M Verfahren und vorrichtung zum schutz der datenintegrität
US7921284B1 (en) * 2001-12-12 2011-04-05 Gary Mark Kinghorn Method and system for protecting electronic data in enterprise environment
US7284127B2 (en) * 2002-10-24 2007-10-16 Telefonktiebolaget Lm Ericsson (Publ) Secure communications
FR2864387B1 (fr) * 2003-12-23 2006-04-28 Eads Telecom Procede et dispositif de transmission d'informations avec verification des erreurs de transmission involontaires ou volontaires
US7630402B2 (en) 2006-01-06 2009-12-08 Fujitsu Limited Media access layer processors for network communications
JP2008278416A (ja) * 2007-05-07 2008-11-13 Matsushita Electric Ind Co Ltd データ暗号処理装置、データ復号処理装置、データ暗号処理方法、データ復号処理方法、データ暗号処理プログラム、データ復号処理プログラムおよび集積回路
US8320350B2 (en) * 2007-09-26 2012-11-27 Motorola Solutions, Inc. Method, system and a data frame for communication in a wireless communication system
US8139763B2 (en) * 2007-10-10 2012-03-20 Spansion Llc Randomized RSA-based cryptographic exponentiation resistant to side channel and fault attacks
JP5169449B2 (ja) * 2008-05-01 2013-03-27 富士通株式会社 無線通信装置及び受信方法
US8850293B2 (en) * 2011-12-06 2014-09-30 Welch Allyn, Inc. Wireless transmission reliability
WO2015102694A2 (en) * 2013-09-30 2015-07-09 Hughes Richard J Streaming authentication and multi-level security for communications networks using quantum cryptography
JP2015204508A (ja) 2014-04-14 2015-11-16 株式会社日立製作所 情報処理システム及びデータ転送方法
US10211990B2 (en) * 2014-07-25 2019-02-19 GM Global Technology Operations LLC Authenticating messages sent over a vehicle bus that include message authentication codes

Also Published As

Publication number Publication date
JPWO2018109906A1 (ja) 2019-10-31
WO2018109906A1 (ja) 2018-06-21
US20200076611A1 (en) 2020-03-05
US11336456B2 (en) 2022-05-17

Similar Documents

Publication Publication Date Title
JP5564434B2 (ja) 確率的対称暗号化のための方法およびエンティティ
JP6519473B2 (ja) 認証暗号装置、認証暗号方法および認証暗号用プログラム
JP6397987B2 (ja) 暗号学的チェックサムの生成
CN107592968B (zh) 生成密码校验和
JP6740902B2 (ja) 認証暗号化方法、認証復号方法および情報処理装置
JP6289680B2 (ja) パケット送信装置、パケット受信装置、パケット送信プログラムおよびパケット受信プログラム
JP6453366B2 (ja) 暗号チェックサムの生成
JP2010508719A (ja) 合成メッセージ認証コード
JP5174826B2 (ja) 圧縮されたecdsa署名
WO2016067524A1 (ja) 認証付暗号化装置、認証付復号装置、認証付暗号システム、認証付暗号化方法、プログラム
JP6693574B2 (ja) メッセージ認証システム、装置及びメッセージ検証方法
KR101088549B1 (ko) 송신용 애플리케이션 패킷 처리 방법과 수신된 애플리케이션 패킷 세그먼트 처리 방법
CN110351085B (zh) 一种用于量子密钥分发后处理的方法及系统
JP6295961B2 (ja) メッセージ認証システム、およびメッセージ認証方法
JP4756489B2 (ja) 誤り訂正符号化装置、誤り訂正符号化方法及びプログラム
JPWO2003007543A1 (ja) 共有データ精製装置及び共有データ精製方法
US20150341651A1 (en) Jpeg file format based encoding and decoding method in mobile apparatus and device thereof
JP2017073716A (ja) タグリスト生成装置、タグリスト検証装置、タグリスト更新装置、タグリスト生成方法及びプログラム
CN101247221A (zh) 在加密之前给信号加水印
JP2016502358A5 (ja)
CN108737075B (zh) 一种生成共享密钥的方法、装置及系统
WO2023089776A1 (ja) 通信システム、送信装置、受信装置、並びに、それらの方法およびプログラム
JP3238670B2 (ja) ハッシュ関数方式
JP5355408B2 (ja) メッセージデータの非順次着信に対する許容度を有するメッセージ完全性のための処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190614

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191023

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191220

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20200114

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200217

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20200302

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: 20200317

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200330

R150 Certificate of patent or registration of utility model

Ref document number: 6693574

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150