JP6453366B2 - 暗号チェックサムの生成 - Google Patents

暗号チェックサムの生成 Download PDF

Info

Publication number
JP6453366B2
JP6453366B2 JP2016575485A JP2016575485A JP6453366B2 JP 6453366 B2 JP6453366 B2 JP 6453366B2 JP 2016575485 A JP2016575485 A JP 2016575485A JP 2016575485 A JP2016575485 A JP 2016575485A JP 6453366 B2 JP6453366 B2 JP 6453366B2
Authority
JP
Japan
Prior art keywords
message
checksum
polynomial
cryptographic
cryptographic checksum
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.)
Expired - Fee Related
Application number
JP2016575485A
Other languages
English (en)
Other versions
JP2017524291A (ja
Inventor
エレーナ ドゥブラヴァ,
エレーナ ドゥブラヴァ,
マッツ ナズルンド,
マッツ ナズルンド,
イェラン セランデル,
イェラン セランデル,
フレードリク リンドクヴィスト,
フレードリク リンドクヴィスト,
Original Assignee
テレフオンアクチーボラゲット エルエム エリクソン(パブル)
テレフオンアクチーボラゲット エルエム エリクソン(パブル)
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 テレフオンアクチーボラゲット エルエム エリクソン(パブル), テレフオンアクチーボラゲット エルエム エリクソン(パブル) filed Critical テレフオンアクチーボラゲット エルエム エリクソン(パブル)
Publication of JP2017524291A publication Critical patent/JP2017524291A/ja
Application granted granted Critical
Publication of JP6453366B2 publication Critical patent/JP6453366B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • 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
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3093Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme
    • 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
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/043Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
    • H04W12/0433Key management protocols
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Power Engineering (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Description

本発明は、暗号チェックサムを生成する方法、対応するコンピュータプログラム、対応するコンピュータプログラム製品、および、暗号チェックサムを生成するためのチェックサムジェネレータに関する。
現在の第3世代(3G)および第4世代(4G)の第3世代パートナーシッププロジェクト(3GPP)モバイルネットワークは、典型的には、制御プレーンにおいて暗号化のみならず認証を使用するのに対して、ユーザプレーンは暗号化のみによって保護される。その一方で、WiMAXおよびワイヤレスローカルエリアネットワーク(WLAN)/WiFiネットワークは、ユーザプレーンに対しても認証を使用する。
ユーザプレーンメッセージングを保護する既知のやり方は、鍵付きハッシュメッセージ認証符号(HMAC)または暗号ブロック連鎖メッセージ認証符号(CBC−MAC)などの鍵付き暗号学的ハッシュ関数をメッセージに適用することによって生成される認証タグを使用することである。暗号学的ハッシュ関数は、メッセージなどの任意のデータブロックに対してメッセージダイジェストとして知られる暗号学的ハッシュ値を生成することによって、メッセージに対するいずれの過失によるまたは故意の変更、すなわち誤りまたは修正も、少なくともある一定の高確率でハッシュ値を変更するようにするハッシュ関数である。それゆえに、メッセージダイジェストは、メッセージの完全性を保証するために使用できる。
鍵付き暗号学的ハッシュ関数には、比較的資源消費が大きいという問題があり、これによって、制約のある装置、すなわち、機械対機械(M2M)タイプおよびモノのインターネット(IoT)タイプの装置といった、計算資源およびバッテリ資源に限界がある装置において該関数の使用が妨げられる。さらには、メッセージダイジェストによるメッセージ長の増加は、送信されるデータのペイロード部分を低減させ、かつ、電力消費を増加させる。
ランダム誤りに対するあるレベルの保護は、巡回冗長検査(CRC)符号を使用することによって実現できる。CRC符号は、バースト誤りを検出するためのデータ通信およびデータ記憶において、非常に資源効率的であり、かつ、広く使用されるある種の分離可能な巡回符号である。CRC処理は、線形フィードバックシフトレジスタ(LFSR)によって効率的に実行できる。一般的なCRCは下記になる(CRC−nは、n次の生成多項式がCRCを符号化および復号するために使用され、この場合、次数はCRCの生成多項式の最大係数であることを意味する)。
−CRC−16−CDMA2000:3Gモバイルネットワークで使用される
−CRC−CCITT:ブルートゥースで使用される
−CRC−32:イーサネットおよび高水準データリンク制御(HDLC)プロトコルで使用される
−CRC−40−GSM:GSM制御チャネルで使用される
n次の生成多項式によるCRCは、n以下の長さのバースト誤り全て、および、生成多項式の倍数ではないいずれの誤りも検出可能である。
在来のCRC技法は、ランダム誤りを検出するのに適するが、悪質な敵対者によって容易に打ち破られ得る。生成多項式がある一定のCRCによって使用されることが敵対者には既知であるため、敵対者は、受信先でCRC検査を通る修正済みメッセージを巧妙に作り上げることが容易である場合がある。これは、例えば、生成多項式の倍数に相当する誤りを元のメッセージに加えることによって実現可能である。
ユーザプレーンにおいてデータ完全性をもたらすためのより資源効率的な解決策は、以下では暗号CRCまたは暗号チェックサムとも呼ばれる、暗号学的に安全なCRCで従来のCRCを置き換えることである。暗号CRCは在来のCRCと同じランダム誤りを検出する能力を有するが、敵対者によって導入されるいずれの悪質な誤りも高確率で検出することもできる。
ある種の暗号学的に安全なCRCは、Krawczyk(Advances in Cryptology−CRYPTO ’94、Lecture Notes in Computer Science、第839巻、Spinger、1994年、129〜139頁における、H.Krawczykによる「LFSR−based Hashing and Authentication」)によって提案された。提案されたCRCは、認証タグを生成するためのn次の既約多項式、すなわちCRCチェックビットを必要とする。基本的な考え方は、CRC多項式を、送信元および受信先のみに知られる共有秘密鍵にすることである。これは、セキュリティの観点からはうまく機能するが、既約多項式を見つけることは簡単ではないため資源非効率的であることに依然悩まされる。既約多項式、すなわち、2つ以上の非自明な多項式の積に組み入れることができない多項式を生成することは、多項式を疑似ランダム的に生成することおよび既約性に関する試験を実行すること、または、既約多項式のデータベースから多項式を疑似ランダム的に選択することのいずれかを必要とする。既約性に関する試験の計算複雑性は、n位のビット演算によるものであり(例えば、Foundations of Computational Mathematics、F.CuckerおよびM.Shub(Eds.)、Springer、1997年、346〜361頁を参照における、S.GaoおよびD.Panarioによる「Tests and Constructions of Irreducible Polynomials over Finite Fields」を参照)、計算的な労力が大きい。既約多項式のデータベースを維持するには場所をとるが、これは、最も一般的なCRC長であるn=32に対する既約多項式の数が227であり、512Mバイトの記憶を必要とするからである。一般に、2進数フィールド上のn次既約多項式の数は、2/nのように増大する。
本発明の目的は、上記技法および先行技術の改良された代替策を提供することである。
より具体的には、本発明の目的は、メッセージの改良された認証を提供することである。特に、本発明の目的は、既知のレベルのセキュリティでの改良された暗号チェックサムを提供することである。
本発明のこれらのおよび他の目的は、独立請求項によって規定されるように、本発明の異なる態様によって実現される。本発明の実施形態は、従属請求項によって特徴付けられる。
本発明の第1の態様によると、メッセージM(x)に対する暗号チェックサムを生成する方法が提供される。方法は、ガロア体上のn次の多項式の集合から生成多項式p(x)を疑似ランダム的に選択することを含む。生成多項式は、第1の暗号鍵に基づいて疑似ランダム的に選択される。方法は、M(x)の第2の関数(f(M(x)))の、p(x)を法とした除算である第1の関数g(すなわち、g(f(M(x))modp(x)))として暗号チェックサムを算出することをさらに含む。
本発明の第2の態様によると、コンピュータプログラムが提供される。コンピュータプログラムは、コンピュータ実行可能命令であって、コンピュータ実行可能命令が装置に含まれる処理ユニット上で実行される時、本発明の第1の態様の一実施形態による方法を該装置に行わせるためのコンピュータ実行可能命令を含む。
本発明の第3の態様によると、コンピュータプログラム製品が提供される。コンピュータプログラム製品は、本発明の第2の態様によるコンピュータプログラムを組み入れているコンピュータ可読記憶媒体を含む。
本発明の第4の態様によると、メッセージM(x)に対する暗号チェックサムを生成するためのチェックサムジェネレータが提供される。チェックサムジェネレータは、ガロア体上のn次の多項式の集合から生成多項式p(x)を疑似ランダム的に選択するようになされた手段を含む。生成多項式は、第1の暗号鍵に基づいて疑似ランダム的に選択される。該手段は、M(x)の第2の関数(f(M(x)))の、p(x)を法とした除算である第1の関数g(すなわち、g(f(M(x))modp(x)))として暗号チェックサムを算出するようにさらになされている。
本発明は、メッセージの効率的な認証が、CRCなどの標準チェックサムを、疑似ランダム的に選択された生成多項式に基づく暗号チェックサムと置き換えることによって提供できることを理解することによって活かされる。提案された暗号チェックサムは、メッセージの完全性を保証するために、すなわち、さらに以下で導き出される既知のレベルのセキュリティで無作為のおよび故意のメッセージ変更を検出するために使用可能である。
現在の状況では、メッセージは、ある一定のフォーマットに頻繁に入れられる2進化情報である。フォーマットはメッセージが関連するプロトコルによって決まる場合がある。典型的には、メッセージはヘッダーおよびペイロードを含み、暗号チェックサムは、メッセージ全体、すなわちヘッダーおよびペイロードのために生成されるのが好ましい。
本発明の実施形態は、在来のCRCと同じランダム誤りを検出する能力を有する暗号チェックサムと従来のCRCを置き換えること、および、さらにはメッセージの完全性を保証することによって、メッセージフォーマットが変更されない点で、先行技術より有利である。特に、追加のMACをメッセージに加えることに基づく既知の解決策と対照的に、メッセージの長さは増加されない。さらに、本発明の実施形態は、処理または記憶の資源への大きな需要を招く、疑似ランダム的に既約多項式を生成することに頼らない点で、Krawczykによる既知の暗号CRCより有利である。
現在の状況では、当然のことながら、生成多項式p(x)はガロア体上のn次の多項式全ての集合から疑似ランダム的に選択されることに留意されたい。その選択は、多項式についての確率分布によって制御可能である。かかる確率分布は、利用可能な多項式の集合を効果的に限定することができる。実際には、ガロア体上のn次の多項式全ての部分集合のみのデータベースを維持することは、要するに、データベースに含有されない多項式の確率がゼロの確率分布を実施することになる。本発明の一実施形態によると、生成多項式p(x)は可約多項式、すなわち、より低い次数の2つ以上の多項式の積として表すことができる多項式である。よって、生成多項式は、ガロア体上のn次の多項式の集合の第1の部分集合から疑似ランダム的に選択され、この第1の部分集合はガロア体上のn次の既約多項式を含む。それゆえに、ガロア体上のn次の既約多項式を含み、第1の部分集合と共通部分を持たない第2の部分集合は、生成多項式を選択するために使用されない。
本発明の一実施形態によると、生成多項式p(x)はゼロ以外の定数項を含む。多項式の集合を限定し、その多項式の集合から、ゼロ以外の定数項を有する多項式の部分集合に対して生成多項式が疑似ランダム的に選択されることは、かかる生成多項式に基づく暗号チェックサムが、さらに後述されるように、既約生成多項式に基づく暗号CRCと同じタイプのバースト誤りを検出する能力を有する点で有利である。
本発明の一実施形態によると、方法は、長さnのパッドsを疑似ランダム的に生成することをさらに含み、第1の関数gはパッドsを加算することを含む。疑似ランダム的に生成されたパッドを加算することは、ハッシュ関数によって暗号チェックサムを生成する線形変換がアフィン変換に変えられる点で有利である。パッドがない場合、敵対者は全てゼロのメッセージを成功裏に導入することができる。オプションとして、パッドは、第1の暗号鍵に等しいまたはこれと異なる場合がある第2の暗号鍵に基づいて生成されてよい。
本発明の一実施形態によると、生成多項式p(x)およびパッドsのうちの少なくとも1つは、メッセージに特有である情報に依存する。すなわち、生成多項式、パッド、またはその両方は、敵対者にはランダムに現れる間にメッセージの送信元および受信先にのみ知られるように、メッセージ特有の情報に基づいて選択されるか生成される。メッセージ特有の情報は、例えば、メッセージシーケンス番号、メッセージ識別子、または、メッセージに含まれるタイムスタンプなどのいずれか1つまたはそれらの組み合わせを含むことができる。
本発明の一実施形態によると、送信元がメッセージを認証する方法が提供される。方法は、メッセージを取得することと、メッセージに対する暗号チェックサムを生成することと、生成された暗号チェックサムをメッセージに付加することと、メッセージおよび付加された暗号チェックサムを送信することとを含む。メッセージおよび付加された暗号チェックサムは一般的に符号語と呼ばれる。
本発明の一実施形態によると、受信先がメッセージを認証する方法が提供される。方法は、メッセージおよび付加された第1の暗号チェックサムを受信することと、メッセージに対する第2の暗号チェックサムを生成することと、第1の暗号チェックサムおよび第2の暗号チェックサムが同一であるかどうかを検証することとを含む。これらチェックサムが同一でない場合、メッセージの完全性は確立できない。すなわち、メッセージは、故意にまたは過失によるどちらかで修正されている。
場合によって、本発明の利点が本発明の第1の態様の実施形態に関して記載されていても、対応する論証は、本発明の他の態様の実施形態に該当する。
本発明のさらなる目的、特徴、および利点は、以下の詳細な開示、図面、および添付の特許請求の範囲を検討すると明らかとなろう。本発明の種々の特徴は以下に記載されるもの以外の実施形態を作成するために組み合わせ可能であることは、当業者には理解されることである。
上記、ならびに、本発明の追加の目的、特徴および利点は、添付の図面を参照して、本発明の実施形態の以下の例示のおよび非限定的な詳細な説明によってより良く理解されるであろう。
通信システムを示す図である。 符号語を示す図である。 メッセージ認証を示すブロック図である。 異なるタイプの生成多項式についての衝突確率による表である。 送信元の、本発明の一実施形態による方法のフローチャートである。 受信先の、本発明の一実施形態による方法のフローチャートである。 本発明の一実施形態による送信元を示す図である。 本発明の一実施形態による受信先を示す図である。 本発明の別の実施形態による送信元を示す図である。 本発明の別の実施形態による受信先を示す図である。 本発明の一実施形態によるICを示す図である。 本発明の一実施形態によるモバイルフォンを示す図である。
図の全ては、概略的であり必ずしも一定の尺度ではなく、全体的に、本発明を明瞭にするために必要な部分のみを示し、他の部分は省略されるか示唆されるだけの場合がある。
本発明について、ここで、本発明のある特定の実施形態が示される添付の図面を参照して以下により詳しく説明する。しかしながら、この発明は、多くの種々の形態で具現化されてよく、本明細書に明記される実施形態に限定されるとして解釈されるべきではない。もっと正確に言えば、これらの実施形態は、この開示が綿密で完全であるように、かつ、本発明の範囲を当業者に完全に伝えられるように、例として提供される。
図1では、通信ネットワーク103上で通信するようになされた送信元101および受信先102を含む通信システム100が示される。特に、送信元101はメッセージ105を送信するようになされ、受信先102はメッセージ105を受信するようになされる。好ましくは、送信元101および受信先102はメッセージを送受信するようになされる。送信元101および受信先102は、コンピュータ、モバイル端末、ユーザ機器(UE)、M2M/IoTタイプの装置、ゲートウェイなどの無線アクセスネットワーク(RAN)のノード、無線ネットワーク制御装置(RNC)、無線基地局(RBS)、NodeBS、またはeNodeBsなどの通信ネットワーク103上での通信を行うことができる任意のタイプの装置であってよい。通信ネットワーク103は、例えば、GSM、UMTS、LTEなどのRAN、WLAN/WiFiネットワーク、イーサネットネットワーク、企業ネットワーク、またはインターネットなどの有線または無線ネットワークの任意の1つまたはそれらの組み合わせであってよい。
通信ネットワーク103を介して送信元101から受信先102へ送信されるメッセージ105は、無作為に/意図せずに、または故意に/悪質に、のいずかによって修正される場合がある。無作為な修正は、例えば、通信ネットワーク103の無線ネットワークの無線インターフェースで送信中に生じるバースト誤りによって引き起こされる場合がある。他方で悪質な修正は、図1にも示される敵対者104から生じる場合がある。敵対者104は、送信元101によって送信されたメッセージ105を傍受し、かつ、そのメッセージの修正済みコピーを受信先102へ再送信することができる。敵対者104は、送信元101から受信されたメッセージの修正に頼らずに新しいメッセージを生成しようと試みることもできる。典型的には、敵対者104の意図は、悪質なメッセージを、受信先102、特に、受信先102のネットワークインターフェース、オペレーティングシステム、またはアプリケーションに導入することである。
メッセージ105の完全性を保証することによってメッセージ105の無作為な修正を検出することは当技術分野では知られている。このことは、図2に示されるように、CRCなどのチェックサムをメッセージ105に提供することによって実現可能である。
この目的のために、CRCなどのチェックサム203は、図2ではヘッダー201、およびペイロードを保持するボディ202を含むものとして示されるメッセージ204に対して生成され、かつ、符号語200を形成するためにメッセージ204に付加される。(図1におけるメッセージ105に対応する)符号語200は、次いで、図3に関して以下で説明されるように、メッセージ204の完全性が検証される受信先102へ送信され、このことは、図1の送信元101および受信先102それぞれに対応する送信側(図3の左)および受信側(図3の右)を示すブロック図300で示される。
送信元101において、受信先102へ送信されるメッセージ204は、例えば、送信元101のプロトコルスタックの上位層から受信されて取得され、第1のチェックサム(図3におけるCS)203、特にCRCを算出するようになされたアルゴリズム301に送り込まれる。メッセージ204に加えて、チェックサムアルゴリズム301は、入力として共有秘密鍵、例えば暗号鍵を受信し、出力として第1のチェックサム203を生成する。オプションとして、チェックサムアルゴリズム301は、さらには、第1のチェックサム203が生成されることに基づいて、入力として初期設定値(IV)を受信することができる。IVは、チェックサムアルゴリズム301への別個の入力であってよい、または、例えば、メッセージ204の最初に付加するまたは最後に付加することによって、メッセージ204の一部として入力されてよい。次いで、メッセージ204およびチェックサム203は、例えば、チェックサム203をメッセージ204に付加することによって、符号語200にまとめられる。符号語200は次いで、例えば通信ネットワーク103を介して受信先102へ送信される。
受信先102では、符号語200が受信され、メッセージ304が符号語200から取り出される。送信元101から受信先102への送信105中のメッセージ204の無作為のおよび/または故意の修正によって、メッセージ304は送信元101によって送信されたメッセージ204と必ずしも同一ではない。メッセージ304は、送信元101のチェックサムアルゴリズム301と同一であり、かつ、メッセージ304に基づいて、さらには送信元101の共有秘密鍵と同一である共有秘密鍵に基づいて、第2のチェックサム303(図3におけるCS’)を生成するチェックサムアルゴリズム301に送り込まれる。オプションとして、チェックサムアルゴリズム301は、さらには、送信元101のIVと同一である、入力としてのIVを受信することができる。その後、受信されたメッセージ304の完全性は、第2のチェックサム303をコンパレータ305に送り込むことによって、かつ、該第2のチェックサム303を受信された符号語200から取り出された第1のチェックサム203と比較することによって検証される。比較の結果は、さらなる使用のために、例えば、受信先102の通信スタックの上位層に対してコンパレータ305によって利用可能とされ、第1のチェックサム203および第2のチェックサム303が同一であるか否かを示す。例えば、コンパレータ305によって出力された結果はブール値であってよく、この場合、高い値(ブール「1」)は2つのチェックサムが同一であることを示し、低い値(ブール「0」)は2つのチェックサムが異なっていることを示し、または逆の場合も同様である。同一である場合、メッセージ304の完全性は保証される、すなわち、受信先102によって受信されるメッセージ304は送信元101によって送信されたメッセージ204と同一である。メッセージ304の完全性を検証することによって、メッセージ304が送信105中に修正されていないことをある一定の確率で推測できる。
既知のチェックサム、特に、HMACまたはCBC−MACのような暗号学的ハッシュ関数であるCRCは、メッセ−ジの無作為の修正を検出するように設計される。より具体的には、n次の生成多項式p(x)によるCRCは、n未満のまたはnに等しい長さのバースト誤り全てを検出することができる。また、CRCは、その生成多項式p(x)の倍数でないいずれの誤りも検出することになる。CRCの符号化および復号は、線形フィードバックシフトレジスタ(LFSR)を使用したハードウェア、およびソフトウェアによって効率的に実行できる。
送信元101で符号化するために、メッセージM(x)204は典型的には、最初にxで乗算され、次いで生成多項式p(x)を法として除算される。剰余の多項式係数は、
r(x)=M(x)・xmodp(x) (1)
になり、CRCチェックサム203、すなわち、メッセージダイジェストを構成し、データビット(M(x)・x)に付加されて符号語200を形成する。この開示全体を通して、「・」は、(有限GF(2)についてはブールAND演算と同等である)有限GF乗算であり、「mod」は、有限体における多項式モジュロ除算の剰余である。xで乗算することは、メッセージM(x)204をnビットシフトすることに留意されたい。すなわち、メッセージM(x)204はCRCチェックサム203と組み合わせる前にシフトされる。この結果、得られる符号語200は分離可能である、すなわち、メッセージビットはチェックサムビットから分離される。
受信先102で復号するために、受信されたデータビットM’(x)・xは生成多項式p(x)を法として除算され、結果として生じる剰余の多項式係数303、
r’(x)=M’(x)・xmodp(x) (2)
は、符号語200で受信されたCRCビットr(x)203と比較される。誤りが生じない、すなわち、メッセージ204が送信中に修正されていない場合、剰余r’(x)は受信された剰余r(x)と同じである。不一致は、誤り、すなわちM’(x)≠M(x)を示す。
在来のCRC技法は、無作為の修正または誤りを検出するために有用であるが、敵対者104は、チェックサムアルゴリズム301によって利用される生成多項式p(x)が送信元101および受信先102に対してのみの秘密ではないため、受信先102におけるCRCチェックを通る、送信元101によって送信されたメッセージへの修正を容易に巧妙に作り上げることができる。例えば、敵対者104は、e(x)modp(x)=0となるように、生成多項式p(x)の倍数である多項式に対応する誤りe(x)を送信されたメッセージM(x)204に加えることができる。また、敵対者104は、送信元101によって送信されたメッセージ204を、恐らく悪質なコンテンツの異なるメッセージ304で単に置き換え、これを送信元101と同じチェックサムアルゴリズム301を使用して符号化し、それを受信先102へ送信し、受信先102で完全性チェックを通る場合がある。
データ完全性を提供するための、特に、ユーザプレーンにおける資源効率的な解決策は、従来のCRCを、在来のCRCと同じ無作為の誤りを検出する能力を有するがいずれの故意のまたは悪質な修正も高確率で検出することもできる暗号学的に安全なCRCで置き換えることである。在来のCRCと同じサイズの暗号学的に安全なCRCを使用する結果として、既存のプロトコルスタックはメッセージサイズの変更を明らかにするためにプロトコルスタック全体を再設計する必要なく、メッセージ認証をサポートするように拡張できる。
Krawczykによって提案された暗号学的に安全なCRCは、生成多項式を送信元101および受信先102にのみ知られる共有秘密鍵にする発想に基づく。それによって、敵対者104は、受信先102において完全性チェックを通るようにメッセージを設計することができない。これは、以上に論じられたように、セキュリティの観点からはうまく機能するが、既約多項式を見つけることは簡単ではないため資源非効率的であることに依然悩まされる。
以下に記載される本発明の実施形態は、送信元101から受信先102へ送信されるメッセージ105の完全性が、従来のCRCと同じサイズであるが、従来のCRCには限界がある、無作為の誤りに加えて高確率で故意のまたは悪質な修正を検出できる暗号チェックサムによって検証できる点で有利である。Krawczykによって提案された暗号チェックサムとは対照的に、本発明の実施形態は、資源需要が少ないという点でさらに有利である。特に、既約多項式を利用するのではなく任意の生成多項式を疑似ランダム的に選択することによって、既約多項式の集合を維持するための既約性または記憶に対する計算的な労力が大きい試験は必要とされない。
この目的のために、本発明の実施形態は、図2および図3に示される符号語200においてCRCなどの従来のチェックサム203と置き換える暗号チェックサムを利用する。メッセージ204、またはその一部、例えばボディ202は、本発明のいくつかの実施形態において暗号化も可能であることに留意されたい。このような場合、受信先102は、完全性検証を行う前に、メッセージまたはメッセージの一部を最初に解読することができる。代替的には、解読プロセスの少なくとも一部は、チェックサム検証とのインターリーブまたは組み合わせが可能である。なおさらなる代替策として、受信先102が、受信されたメッセージを最初に解読する必要はなくてよい。受信先102で受信されたメッセージを最初に解読する必要性は、送信元101における処理の順序に依存する。例えば、チェックサム203が生成されかつ符号語200を形成するためにメッセージ204に付加された後にメッセージ暗号化が送信元101で行われる場合、受信先102は典型的には受信された符号語を最初に解読する必要がある。他方では、暗号化されたメッセージ上でのチェックサム203を計算する前に送信元101が最初にメッセージ204を暗号化する場合、チェックサム203が算出されかつ受信された暗号化済みメッセージの完全性が検証されるまで、受信先102は解読を延期することができる。この開示全体を通して、別段断りのない限り、解読は要求に応じて行われると想定する。
それゆえに、送信元101(図3におけるCS)および受信先102(図3におけるCS’)においてそれぞれ暗号学的に安全なチェックサムを生成するために使用されるチェックサムアルゴリズム301は、下記で説明されるように、Krawczykによって提案されるものと比較すると修正される。
チェックサムアルゴリズム301は、メッセージM(x)204のための暗号チェックサム203を生成するためのハッシュ関数h(M)であり、ガロア体上のn次の、特に、2次のガロア体(GF(2))の多項式の集合から生成多項式p(x)を生成することと、M(x)の第2の関数f(f(M(x))の、p(x)を法とした除算である第1の関数gとして暗号チェックサム203を算出すること、すなわち、
(M)=g(f(M(x))modp(x)) (3)
とを含む。
より具体的には、生成多項式p(x)は、第1の暗号鍵、すなわち、送信元101および受信先102に知られる共有秘密鍵に基づいてガロア体から疑似ランダム的に選択される。共有秘密鍵は、例えば、当技術分野において既知であるような、加入者識別モジュール(SIM)または汎用SIM(USIM)などによってサポートされる公開鍵技法または対称技法によって確立できる。Krawczykに類似している既約多項式の部分集合からではなくガロア体の多項式の集合から生成多項式p(x)を疑似ランダム的に選択することによって、本発明の実施形態は、制約のある装置にとってとりわけ重要であるが、メッセージ認証が先行技術解決策よりも資源の消費がより少ない点で有利である。
オプションとして、生成多項式p(x)は、可約多項式であってよい、すなわち、ガロア体上のn次の多項式の集合の部分集合から選択され、この部分集合はガロア体上のn次の可約多項式を含む。現在の状況では、可約多項式は、両方共が最低の次数の2つ以上の多項式の積として表すことができる多項式である。可約多項式を含む部分集合は、既約多項式を含む部分集合と共通部分を持たない。
さらなるオプションとして、生成多項式p(x)はゼロ以外の定数項、すなわち、
p(x)=p’(x)+c・x (4)
を含むことができる。式中、cはゼロ以外である(GF(2)上の多項式の場合c=1であることを暗に示す)。これは、生成された暗号チェックサムが、さらに以下で導き出されるように、既約生成多項式に基づくKrawczykに類似している暗号チェックサムと同じタイプのバースト誤りを検出する能力を有する点で有利である。対照的に、ゼロの定数項、すなわち、式(4)においてc=0を有する生成多項式は、ランダム誤りを検出する機能を悪化させる場合がある。例えば、かかる生成多項式に基づく暗号チェックサムは、いくつかのシングルビット誤りを検出することができない場合がある。
なおさらなるオプションとして、第1の関数gは、長さnのパッドsを加算することをさらに含むことができる。すなわち、
g(x)=t(M)+s (5)と
t(M)=f(M(x))modp(x) (6)と、を合わせたものである。
式中、「+」は(GF(2)ではブールXOR演算と同等である)GF加算である。パッドsは、例えば、第1の暗号鍵と同一または異なる場合がある第2の暗号鍵に基づいて、疑似ランダム的に生成されてよい。第1の暗号鍵および/または第2の暗号鍵は、例えば、第3の暗号鍵、および送信元101および受信先102に知られるある情報から疑似ランダムビットシーケンスを生成すること、および、第1の暗号鍵となる生成されたビットシーケンスの一部分、および、第2の暗号鍵となるビットシーケンスの残りのビットを選択することによって、第3の暗号鍵から生成可能である。無作為のパッドsの加算は、ハッシュ関数h(M)によって暗号チェックサムを生成する線形変換、すなわち、h(A)+h(B)=h(A+B)が、アフィン変換(h(M)+s)に変えられる点で有利である。パッドがない場合、ハッシュ関数に対して使用される生成多項式に関わらずh(0)=0であり、敵対者は全てゼロのメッセージを導入することが可能になる。ストリーム暗号を使用した暗号化が送信元101で行われる場合、パッドsは、暗号化機能によって、ひいては暗号化および完全性処理をインターリーブするまたは組み合わせることによってもたらされてよいことに留意されたい。この場合、受信先102は、(i)最初に解読によってパッドsを除去してからh(M)のみをチェックサム203として扱うこと、または、(ii)パッドsを除去するのではなく、むしろh(M)+sをチェックサム203として扱うことのいずれかを行うことができる。
本発明の実施形態において使用されるパッドは1900年代初期にバーナムが提唱した周知のワンタイムパッドと同様である。バーナム暗号において、メッセージはブールXOR演算を使用してビット単位でパッドと組み合わせられた。本発明の実施形態では、パッドは、同様に暗号チェックサムと組み合わせられる。
以下では、本発明の実施形態に従って暗号チェックサムを算出するための提案されたハッシュ関数族のセキュリティが解析され、かつ、先行技術解決策、特にKrawczykに類似している暗号チェックサムと比較される。
以下のように既定される暗号学的に安全なハッシュ関数族(m、n)を検討する。2進数長mの任意のメッセージM(x)として、および、ガロア体上のn次のそれぞれの生成多項式p(x)として、ハッシュ関数hは多項式の2進係数として規定される。
(M)=M(x)・xmodp(x) (7)
認証タグ、すなわち、メッセージダイジェストまたは暗号学的に安全なチェックサム、
t(M)=h(M)+s (8)
を計算するために、生成多項式p(x)はガロア体上のn次の多項式の集合から疑似ランダム的に選び出され、ハッシュ関数h(式(7))は評価され、疑似ランダム的に生成されたパッドsは、明示的にまたは暗号化/解読プロセスの一部として加算される(式(8))。生成多項式p(x)は、ガロア体上のn次の多項式全ての集合から選択され、既約多項式に限定されないことが、再び強調される。
提案されたハッシュ関数族のセキュリティを解析するために、M(x)およびtを見た後に敵対者104がt’=tであるようにメッセージM’(x)≠M(x)を見つけることができる場合、敵対者104は認証を突破することに成功することが想定される。ここで、敵対者104がハッシュ関数族(m、n)を知っているが、特定のハッシュ関数h、および特定のメッセージを認証するために使用されるパッドsを知らないことが想定される。
所定長のメッセージ全てにわたるチェックサムの分布を検討することによって解析が行われる。ここで、最悪の場合の状況が考えられること、すなわち、敵対者104が、チェックサムを設計しようとすることによって自身の機会を最大限に高めるようにすることが想定され、敵対者104が成功の確率を最大限に高めるようなメッセージを知っている(および選定する)と想定することに留意されたい。よって、成功の確率は、2つの異なるメッセージMおよびM’が式(8)に従って算出された同一のチェックサムtを有することになる最大確率に依存することになるが、これは、敵対者104が、送信元101によって送信されたメッセージを、検出されない、すなわち、受信先102における完全性チェックを通る別のメッセージに置き換えることができることを意味するからである。すなわち、
maxM、M’Pr[h(M)=h(M’)] (9)
を探し求める。式中、最大値は別個のmビットメッセージMおよびM’全てに対して得られるものであり、確率Prは、ハッシュ関数を規定する生成多項式p(x)の無作為の選定に引き継がれる。確率は統計的量であり、無作為事象を予測するための最適戦略は、事象の統計的分布に従った予測を行うことであることに留意されたい。例えば、(仮想上完璧なコインの)コイン投げで表または裏が出るかどうかを予測することは、たとえどんな資源が利用可能であろうと1/2を上回る成功率で行うことができない。従って、式(9)は、たとえどんな計算資源を敵対者104が自由に使えることができても、任意の敵対者の成功確率の上界をもたらす。式(9)では、生成多項式p(x)はKrawczykの教示とは対照的に既約性を有する必要はないことに留意されたい。
定理4(付録を参照)によると、mおよびnの任意の値として、および、任意のメッセージMとして、
ε≦R1、max/2 (10)
より大きい確率でランダムに選択された生成多項式に基づいて暗号チェックサムによる認証の突破に成功できる敵対者はいない。式中、R1、maxは任意のcに対して長さnの列cにMを写像する族におけるハッシュ関数の最大値である。確率εは衝突確率と呼ばれる。R1、maxは、m+n次の多項式の既約因子から構成できるn次の可約多項式の最大数である。補助定理2(付録を参照)では、それぞれのd次の多項式が所定の多重度kを有するならば、たかだかd次の既約多項式から構成できるn次の可約多項式の数についての公式が導き出される。さらに、補助定理1(付録を参照)によると、dの値は、式
d≧log(m+n+2)−1 (11)
を満たす最小整数として選定できる。
1、maxを最大化する多重度k…kの最良の選定は、n=32およびm≦200として、ならびにn=64およびm≦200としてコンピュータプログラムを使用した全数検査によって見つけられた。結果として生じる衝突確率εの値は、図4における表400の第3列に示される。
同様に、ゼロ以外の定数項(式(4)を参照)を有する生成多項式の場合の衝突確率を推定した。定理5(付録を参照)によると、mおよびnの任意の値として、および、任意のメッセージMとして、
ε≦R2、max/2 (11)
より大きい確率でゼロ以外の定数項の生成多項式に基づいた暗号チェックサムによる認証の突破に成功できる敵対者はいない。式中、R2、maxは任意のcに対して長さnの列cにMを写像する族におけるハッシュ関数の最大値である。R2、maxは、ゼロ以外の定数項を有し、かつ、m+n次の多項式の既約因子から構成できるn次の可約多項式の最大数である。補助定理4(付録を参照)では、それぞれのd次の多項式が所定の多重度kを有するならば、たかだかd次の既約多項式から構成できるこのようなn次の可約多項式の数についての公式が導き出される。さらに、補助定理3(付録を参照)によると、dの値は、式
d≧log(m+n+3)−1 (12)
を満たす最小整数として選定できる。
2、maxを最大化する多重度k…kの最良の選定は、n=32およびm≦200として、ならびにn=64およびm≦200としてコンピュータプログラムを使用した全数検査によって見つけられた。結果として生じる衝突確率εの値は、表400の第4列に示される。
比較のために、表400の第5列はKrawczykに類似している既約生成多項式の場合の衝突確率εの値を示し、この場合、衝突確率は(m+n)/2n−1で示される。
表400からわかるように、無作為に選択された生成多項式(第3列)および、無作為に選択されたゼロ以外の定数項の生成多項式(第4列)について、各衝突確率はKrawczykに類似している既約多項式のものより高い(第5列)。すなわち、これによって、所定のメッセージサイズに対してより低いレベルのセキュリティがもたらされる。それゆえに、セキュリティと資源効率との間の兼ね合いがある。より低いレベルのセキュリティが容認可能であるアプリケーションについて、本発明の実施形態は、資源需要が少なくなるという点で有利である。また、表400からは、提案された暗号チェックサムが短いメッセージに対してとりわけ有利である場合があることがわかるが、これは、本発明の実施形態によってもたらされるセキュリティのレベルが、メッセージサイズでは、Krawczykに類似している暗号チェックサムより急速に低下するからである。
本明細書に提示されるセキュリティ解析が一様にランダム的なパラメータ、例えば、多項式の前提に基づくが、これらのパラメータが実際には疑似ランダム的に生成されることに留意されたい。しかしながらこの相違は、実際には一様な分布と区別できない出力分布を生じさせる疑似ランダム的なジェネレータが既知であるため重要ではない。よって、敵対者はこれらの分布の違いを悪用できない。
本発明の実施形態は、敵対者104が、送信元101および受信先102にとって決定的であるように生成多項式p(x)およびパッドsのうちの少なくとも1つを予測不可能に変更することに基づく。すなわち、生成多項式p(x)および/またはパッドsの変更は、送信元101と受信先102との間で同期させなければならない。
生成多項式が疑似ランダム的に選択されることに基づく共有秘密鍵、すなわち、第1の暗号鍵は、敵対者104に対してチェックサムアルゴリズム301の出力を予測不可能にすることが意図されるが、チェックサムアルゴリズム301は、オプションとして、例えば、タイムスタンプ、メッセージ識別子、または乱数といった、メッセージのシーケンス番号、またはメッセージにおける何か他の一意な情報などのあるメッセージに依存するデータに基づく生成多項式を判断することができる。かかる追加情報は、例えば、メッセージ204のヘッダー201において保持されてよい。
一般に、それぞれのメッセージに対する新しい生成多項式を計算する必要はなくてよく、送信元101と受信先102との間の新しいセッションの開始時に生成多項式を生成すること、および、それを、セッション中、送信元101と受信先102との間で交換されるメッセージ全てに対して定着させ続けることで十分である。しかしながら、パッドは、メッセージごとに変更されなければならず、メッセージ依存データ、すなわち、メッセージに特有の情報に依存して変更されてよい。
図5では、送信元がメッセージを認証する方法の実施形態500が示される。方法500のある実施形態は、例えば、送信元101によって行われてよい。方法500は、例えば、送信元101の通信スタックの上位層または送信元101によって実行されるアプリケーションから、メッセージを取得すること501と、メッセージに対して暗号チェックサムを生成することと、メッセージに生成された暗号チェックサムを付加すること505によって符号語を形成することと、符号語、すなわち、メッセージおよび付加された暗号チェックサムを送信すること506とを含む。
より具体的には、暗号チェックサムを生成することは、第1の暗号鍵に基づいて、ガロア体上のn次の多項式の集合から生成多項式p(x)を疑似ランダム的に選択すること502と、以上で説明されたように、M(x)の第2の関数(f(M(x)))の、p(x)を法とした除算である第1の関数g(f(M(x))modp(x))として暗号チェックサムを算出すること504とを含む。第1の暗号鍵はメッセージの送信元および受信先に知られる共有秘密鍵である。オプションとして、生成多項式は、可約多項式であってよく、ゼロ以外の定数項を含むことができる。暗号チェックサムを生成することは、長さnのパッドsを疑似ランダム的に生成すること503をさらに含むことができ、この場合、第1の関数gはパッドsを加算することを含む。パッドsは、第1の暗号鍵に等しいまたはそれと異なる場合がある第2の暗号鍵に基づいて生成可能である。第2の暗号鍵および第1の暗号鍵は、メッセージの送信元および受信先に知られる共有秘密鍵である。オプションとして、生成多項式p(x)およびパッドsのうちの少なくとも1つ、またはその両方は、メッセージシーケンス番号、タイムスタンプ、または乱数などの、メッセージに特有の情報に依存して生成されてよい。
図6では、受信先がメッセージを認証する方法のある実施形態600が示される。方法600のある実施形態は、例えば、受信先102によって行われてよい。方法600は、符号語、すなわち、メッセージおよび付加された第1の暗号チェックサムを受信すること601と、メッセージに対する第2の暗号チェックサムを生成することと、第1の暗号チェックサムおよび第2の暗号チェックサムが同一であるかどうかを検証すること605とを含む。これらチェックサムが同一でない場合、メッセージの完全性は確立できない。すなわち、メッセージは、誤って/無作為に、または、故意に/悪質に、のどちらかで修正されている。
より具体的には、第2の暗号チェックサムを生成することは、第1の暗号鍵に基づいて、ガロア体上のn次の多項式の集合から生成多項式p(x)を疑似ランダム的に選択すること602と、以上で説明されたように、M(x)の第2の関数(f(M(x)))の、p(x)を法とした除算である第1の関数g(f(M(x))modp(x))として第2の暗号チェックサムを算出すること604とを含む。第1の暗号鍵はメッセージの送信元および受信先に知られる共有秘密鍵である。オプションとして、生成多項式は、可約多項式であってよく、ゼロ以外の定数項を含むことができる。第2の暗号チェックサムを生成することは、長さnのパッドsを疑似ランダム的に生成すること603をさらに含むことができ、この場合、第1の関数gはパッドsを加算することを含む。パッドsは、第1の暗号鍵に等しいまたはそれと異なる場合がある第2の暗号鍵に基づいて生成可能である。第2の暗号鍵および第1の暗号鍵は、メッセージの送信元および受信先に知られる共有秘密鍵である。オプションとして、生成多項式p(x)およびパッドsのうちの少なくとも1つ、またはその両方は、メッセージシーケンス番号、タイムスタンプ、または乱数などの、メッセージに特有の情報に依存して生成されてよい。
本発明の実施形態による暗号チェックサムの計算は、従来のCRCに対して使用されるのと同じタイプの演算に基づく。従って、本発明の実施形態が可変疑似ランダム的生成多項式を利用することを除いて、在来のCRCの簡易さのほとんどが保たれる。それゆえに、ハードウェアにおいて本発明の実施形態を実装することは簡易であり、その結果生じる実装形態は非常に資源効率的である。GF(2)上の多項式を法とした除算の演算は、LFSRによって実装可能であり、ここで、LFSRのタップは、当技術分野において既知であるように、生成多項式p(x)を判断する。xで乗算することさえも高性能のハードウェアにおいて実装できる。しかしながら、生成多項式が定着されかつ前もって知られており、かつ、実装する回路が典型的には、ハードウェアに組み込みの生成多項式を判断するフィードバック接続を有する、在来のCRCとは対照的に、本発明の実施形態による暗号チェックサムは、フィードバック接続がプログラム可能である実装形態を必要とする。この暗号チェックサムは、ハッシングの鍵であり、かつ、変更可能で秘密とすべきものである、これらフィードバック接続の実際の構成である。いくつかの非暗号化CRC回路が、種々の生成多項式に基づいて種々のCRC規格をサポートすること、または、種々の多項式次数をサポートすることを必要とする場合、プログラム可能な接続を使用することもできることに留意されたい(例えば、J.Birch、L.G.Christensen、およびM.Skovによる「A programmable 800 Mbit/s CRC check/generator unit for LAN6 and MANs」、Comp.NetworksおよびISDN Sys.、1992年を参照)。
疑似ランダム的に選択された生成多項式の集合をゼロ以外の定数項を有する多項式の集合に制限することは、本発明の実施形態によるチェックサムジェネレータの実装を複雑にすることはないことに注目することが重要である。かかる多項式について、多項式の定数項に相当するLFSRのタップはプログラム可能ではなく定着可能であることが唯一の違いである。
ソフトウェアにおけるCRCジェネレータの効率的な実装形態も存在する。これらの実装形態において、生成多項式が疑似ランダム的に選択されることに基づいて特定の暗号鍵に依存する事前計算された表を使用することによって、大幅な高速化が実現されるため、暗号鍵ごとに一度だけ計算され、多くのアプリケーションでは手軽に行われる。
本発明の実施形態によるハッシュ関数族における関数は、基本的に、生成多項式p(x)によって規定され、ハッシュ関数が適用されるメッセージの長さによっては規定されない。従って、該関数は、実際には望ましいような、種々の長さのメッセージに適用可能である。特に、メッセージM(x)に対応する多項式は「0」ではなく首位係数として「1」を有するものとする(Mが長さmを有する場合、M(x)は適正なm次を有する)。これによって、メッセージと多項式との間の1対1写像が判断され、特に、ゼロを付加するだけでメッセージの変更が防止される。例えば、メッセージ01011は、5ビットのメッセージとしてよりも4ビットのメッセージ1011として扱われるものとする。そうでなければ、両方のメッセージは、同じメッセージ多項式1・x+0・x+1・x+1・x=x+x+1によって表され、それに応じて、符号化後同じチェックサムを有することになる。その他の場合は、新しいメッセージは同じチェックサムを有するものであることを知って、敵対者は1つまたは複数の先行ゼロをメッセージに単に付加する可能性がある。代替的にはまたはさらには、例えば、メッセージ長をメッセージの最初に付加するまたは最後に付加することによって、認証/検証プロセスへの入力として明確な長さ指示が使用可能である。
受信側では、メッセージ完全性の検証は、メッセージを、1要素が典型的には1ビットであるメッセージ要素の連続的な受信と多かれ少なかれ同期するように処理する有限状態機械(FSM)によって効率的に実行できる。このようなFSMはまた、受信先の媒体アクセス制御(MAC)層内で統合されてよく、典型的には、チェックサムデコーダ、コンパレータ、および制御ブロックから成る。チェックサムデコーダは、受信されたメッセージ要素のチェックビットを、1つずつ、すなわちビット単位で到達する際に再計算する。コンパレータは、再計算されたチェックビットを、メッセージにおいて受信されたチェックビット、すなわち認証タグまたはチェックサムと比較する。再計算されかつ受信されたチェックビットが一致しない場合、コンパレータは、メッセージの完全性が検証できなかったことを示す誤り信号を制御ブロックへ送る。
図7では、図1に示される送信元101など、送信元がメッセージを認証するある実施形態700が示される。送信元700は、例えば、送信元700の通信スタックの上位層または送信元700によって実行されるアプリケーションから、メッセージを取得するためのメッセージバッファ701と、メッセージに対して暗号チェックサムを生成するためのチェックサムジェネレータ702と、メッセージに生成された暗号チェックサムを付加することによって符号語を形成するための符号語バッファ703と、符号語、すなわち、メッセージおよび付加された暗号チェックサムを送信するためのインターフェース704と、チェックサムジェネレータ702に第1の暗号鍵、すなわち、メッセージの送信元700および受信先に知られる共有秘密鍵を与えるための共有秘密鍵モジュール705とを含む。インターフェース704は、例えば、RANとの通信をもたらすようになされたネットワークインターフェースまたは無線送受信機であってよい。
より具体的には、チェックサムジェネレータ702は、第1の暗号鍵に基づいて、ガロア体上のn次の多項式の集合から生成多項式p(x)を疑似ランダム的に選択することによって暗号チェックサムを生成するように、かつ、以上で説明されたように、M(x)の第2の関数(f(M(x)))の、p(x)を法とした除算である第1の関数g(f(M(x))modp(x))として暗号チェックサムを算出するようになされている。オプションとして、生成多項式は、可約多項式であってよく、ゼロ以外の定数項を含むことができる。チェックサムジェネレータ702は、長さnのパッドsを疑似ランダム的に生成するようにさらに設定可能であり、この場合、第1の関数gはパッドsを加算することを含む。パッドsは、第1の暗号鍵に等しいまたはそれと異なる場合がある第2の暗号鍵に基づいて生成可能である。第2の暗号鍵は、メッセージの送信元700および受信先に知られる共有秘密鍵である。それゆえに、共有秘密鍵モジュール705は、第2の暗号鍵をチェックサムジェネレータ702に与えるようにさらに設定可能である。代替的には、パッドsは、以上に記載されたように、チェックサムジェネレータ702によって生成されるのではなく暗号化アルゴリズムによってもたらされてよい。
オプションとして、チェックサムジェネレータ702は、メッセージシーケンス番号、タイムスタンプ、または乱数などの、メッセージに特有の情報に依存した、生成多項式p(x)およびパッドsのうちの少なくとも1つ、またはその両方を生成するように設定されてよい。かかる情報は、チェックサムジェネレータ702、特に、チェックサムジェネレータ702に含まれるLFSRへの入力として利用されてよい。
図8において、図1に示される受信先102など、受信先がメッセージを認証するある実施形態800が示される。受信先800は、符号語、すなわち、メッセージおよび付加された第1の暗号チェックサムを受信するためのインターフェース801と、メッセージおよび第1の暗号チェックサムを受信された符号語から取り出すための符号語バッファ802と、メッセージに対して第2の暗号チェックサムを生成するためのチェックサムジェネレータ803と、第1の暗号チェックサムおよび第2の暗号チェックサムが同一であるかどうかを検証するためのコンパレータ804と、チェックサムジェネレータ803に第1の暗号鍵、すなわち、メッセージの受信先800および送信元に知られる共有秘密鍵を与えるための共有秘密鍵モジュール805と、を含む。受信先800は、受信されたメッセージを記憶し、かつ受信先800の通信スタックの上位層、または受信されたメッセージの完全性が検証されたという、コンパレータ804によって受信された指示に応答して受信先800によって実行されるアプリケーションへメッセージを通すためのメッセージバッファ806をさらに含むことができる。インターフェース801は、例えば、RANとの通信をもたらすように設定されたネットワークインターフェースまたは無線送受信機であってよい。
より具体的には、チェックサムジェネレータ803は、図7に関して説明されたチェックサムジェネレータ702と同様であり、第1の暗号鍵に基づいて、ガロア体上のn次の多項式の集合から生成多項式p(x)を疑似ランダム的に選択することによって第2の暗号チェックサムを生成するように、かつ、以上で説明されたように、M(x)の第2の関数(f(M(x)))の、p(x)を法とした除算である第1の関数g(f(M(x))modp(x))として第2の暗号チェックサムを算出するように設定されている。オプションとして、生成多項式は、可約多項式であってよく、ゼロ以外の定数項を含むことができる。チェックサムジェネレータ803は、長さnのパッドsを疑似ランダム的に生成するようにさらに設定可能であり、この場合、第1の関数gはパッドsを加算することを含む。パッドsは、第1の暗号鍵に等しいまたはそれと異なる場合がある第2の暗号鍵に基づいて生成可能である。第2の暗号鍵は、メッセージの受信先800および送信元に知られる共有秘密鍵である。それゆえに、共有秘密鍵モジュール806は、第2の暗号鍵をチェックサムジェネレータ803に与えるようにさらに設定可能である。代替的には、パッドsは、以上に記載されたように、チェックサムジェネレータ803によって生成されるのではなく暗号化アルゴリズムによってもたらされてよい。
オプションとして、チェックサムジェネレータ803は、生成多項式p(x)およびパッドsのうちの少なくとも1つ、またはその両方を、メッセージシーケンス番号、タイムスタンプ、または乱数などの、受信されたメッセージに特有の情報に依存して生成するように設定されてよい。このような情報は、チェックサムジェネレータ803、特に、チェックサムジェネレータ803に含まれるLFSRへの入力として利用されてよい。
送信元700および受信先800の実施形態は、当技術分野では既知であるように、ハードウェア、ソフトウェア、またはそれらの組み合わせにおいて実行可能である。例えば、モジュール701〜705およびモジュール801〜806は、電子回路、特にデジタル二値論理によって実行可能である。代替的には、モジュール701〜705およびモジュール801〜806はデジタル信号プロセッサ(DSP)に基づいて実行されてよい。インターフェース704および801は、RANの無線インターフェースによって符号語を送信または受信それぞれを行うように設定されたアナログ電子回路を含むことができることは理解されるであろう。
チェックサムジェネレータ702および803の実施形態は、標準CRCジェネレータに非常に類似して動作し、この実装形態は当技術分野では既知である。疑似ランダム的に生成されたパッドsに頼るチェックサムジェネレータ702および803の実施形態は、f(M(x))modp(x)を表すn−ビット列とn−ビットパッドsとの間のビットごとのXOR演算によってパッドsの加算を実行することができる。
図9では、送信元がメッセージを認証するための代替的な実施形態900が示される。送信元900は、例えばDSPといったプロセッサ901と、ソフトウェア、すなわち、送信元900に、コンピュータ実行可能命令がプロセッサ901において実行される時、特に図5に関して以上に記載される、送信元がメッセージを認証する方法の一実施形態を実行させるためのコンピュータ実行可能命令を含むコンピュータプログラム903を含むメモリ902とを含む。送信元900は、通信ネットワーク、例えば、通信ネットワーク103を介して通信をもたらすためのインターフェース904をさらに含むことができる。インターフェース904は、例えば、RANとの通信をもたらすように設定されたネットワークインターフェースまたは無線送受信機であってよい。
図10では、受信先がメッセージを認証する代替的な実施形態1000が示される。受信先1000は、例えばDSPといったプロセッサ1001と、ソフトウェア、すなわち、受信先1000に、コンピュータ実行可能命令がプロセッサ1001において実行される時、特に図6に関して以上に記載される、受信先がメッセージを認証する方法の一実施形態を実行させるためのコンピュータ実行可能命令を含むコンピュータプログラム1003を含むメモリ1002とを含む。受信先1000は、通信ネットワーク、例えば、通信ネットワーク103を介して通信をもたらすためのインターフェース1004をさらに含むことができる。インターフェース1004は、例えば、RANとの通信をもたらすように設定されたネットワークインターフェースまたは無線送受信機であってよい。
図7〜図10に関して記載される送信元および受信先の実施形態1101は、図11に示される集積回路(IC)1100において実装可能である。さらに、図7〜図10に関して記載される送信元および受信先の実施形態1201はまた、図12に示されるモバイルフォン1200などのモバイル端末において実装可能である。なおさらなる代替策として、図7〜図10に関して記載される送信元および受信先の実施形態1201はまた、例えばゲートウェイといったRANのノード、RNC、または、RBS、NodeB、eNodeB、もしくはWLANアクセスポイントなどの無線アクセスノードにおいて実装可能である。
当業者であれば、本発明が上記の実施形態に決して限定されるものではないことを認識する。それどころか、添付の特許請求の範囲内で多くの修正および変更が可能である。
付録
n次の既約生成多項式に基づくCRCが長さnまたはそれより少ないバースト誤り全てを検出できることは既知である。
定理1 ゼロ以外の定数項を有するn次の生成多項式に基づくCRCは、n次の既約生成多項式に基づくCRCと同じタイプのバースト誤りを検出することができる。
証明:任意の生成多項式p(x)に基づくCRCは、p(x)の倍数であるものを除いて誤り全てを検出することができる。p(x)がゼロ以外の定数項を有する多項式である場合、p(x)の全ての因子もゼロ以外の定数項を有する多項式である。
n>0次の任意のバースト誤りも、
b(x)=x・a(x) (1)
のタイプの多項式によって説明できる。式中、i∈{0、1、…、n−1}として、
a(x)=xn−i−1+xn−i−2+…+x+1 (2)
である。p(x)の全ての因子がb(x)の因子でもある時かつその時に限り、多項式b(x)はp(x)の倍数である。
p(x)の次数がa(x)の次数より少なくとも1大きいため、p(x)≠a(x)である。従って、b(x)の倍数にするために、p(x)はp(x)=a(x)・c(x)のタイプでなければならない。式中、c(x)は少なくとも1次のゼロ以外の定数項を有する多項式である。
しかしながら、a(x)を除くb(x)の他の因子全てがゼロの定数項を有する多項式であるため、c(x)はb(x)の因子とすることができない。よって、ゼロ以外の定数項を有するn次の生成多項式に基づくCRCは、長さnまたはそれより少ないバースト誤り全てを検出することができる。
本発明の実施形態の衝突確率の解析を提示する前に、いくつかの背景定義および定理がここで提示される(定義1〜3ならびに定理2および3は、Advances in Cryptology−CRYPTO’94、Lecture Notes in Computer Science、第839巻、Springer、1994年、129〜139頁における、H.Krawczykによる「LFSR−based Hashing and Authentication」からのものである)。
定義1 メッセージMおよびM’全てについて、
h(M+M’)=h(M)+h(M’) (3)
であるならば、ハッシュ関数族Hは+−線形である。
定義2 任意の、長さmのゼロ以外のメッセージMとして、および、任意の、長さmの2進列cとして、
Pr[h(M)=c]≦ε (4)
であるならば、ハッシュ関数族はε−均衡と呼ばれる。
定義3 任意のメッセージMとして、εより大きい確率で認証の突破に成功する敵対者がいないならば、ハッシュ関数族はε−opt−secureと呼ばれる。
定理2 ε−opt−secureとするハッシュ関数族Hについての必要かつ十分な条件は、
∀M≠Mおよび∀c∈{0、1}、Pr[h(M)+h(M)=c]≦ε (5)
とすることである。
定理3 Hが+−線形であるならば、Hがε−均衡の時かつその時に限り、Hはε−opt−secureである。
以下において、本発明の実施形態に対する衝突確率の解析が提示される。
定理4 nおよびmの任意の値として、任意の生成多項式に基づくハッシュ関数族は
Figure 0006453366
についてε−opt−secureである。式中、R1、maxは、m+n次の多項式の既約因子から構成できる別個のn次の可約多項式の最大数である。
証明:ハッシュ関数族は、+−線形でありε−均衡であるならば、ε−opt−secureである。任意の生成多項式に基づくハッシュ関数族は、多項式を法とした除算が線形演算であるため+−線形であり、ここで、加算はビットごとのXOR演算と同等である。族がまたε−均衡であることを示すために、任意のn次の多項式p(x)として、任意の長さmのゼロ以外のメッセージMとして、および、任意の長さnの列cとして、h(M)は、M(x)・xmodp(x)の時かつその時に限りcであり、p(x)がM(x)・x−c(x)を除算する時かつその時に限りc(x)であることに留意されたい。
q(x)=M(x)・x−c(x)が示される。明確には、q(x)はたかだかm+n次のゼロ以外の多項式であり、p(x)はq(x)を除算するn次の多項式である。R1、maxを、q(x)の既約因子から構成できる別個のn次の可約多項式の最大数にする。明らかに、Mをcに写像する族にたかだかR1、maxのハッシュ関数がある。他方では、族に2の要素がある(GF(2)上のn次の多項式の数)。従って、
Figure 0006453366
である。
次に、R1、maxの推定値が導き出される。明確には、既約因子q(x)が多いほど、それから構成できる可約多項式は多くなる。さらに、既約因子の次数が小さいほど、含有することができる既約因子q(x)は多くなる。q(x)の因子が1〜d次の全ての可能な既約多項式を表し、かつ、それぞれの多項式が多重度1で現れる、すなわち、q(x)が、
Figure 0006453366
のタイプであると仮定する。式中、fi、jはi次のj番目の既約多項式を表し、Iは、i∈{1、2、…、d}、j∈{1、2、…、I}として、i次の既約多項式の数を表す。
最初に、dの最大値が推定される。
補助定理1 q(x)を式(7)に従ったタイプのm+n次の多項式にする。そして、dは、式
d≧log(m+n+2)−1 (8)
を満たす最小整数である。
証明:dの値は、式
+2I+…+dI=m+n (9)
を満たすものとする。式中、Iは、i次の既約多項式の数を表す。
Figure 0006453366
ひいては、
+2I+…+dI≦2+2+…+2 (11)
であるため、
m+n≦2d+1−2 (12)
という結果になる。従って、dは、式
log(m+n+2)−1≦d (13)
を満たす最小整数である。
しかしながら、式(7)に従ったタイプのq(x)は典型的には、R1、maxの値を最大化しない。ほとんどの場合、より小さい次数の因子が、1より大きい多重度で現れるならば、すなわち、q(x)が次のタイプ:
Figure 0006453366
であるならば、R1、maxのより大きい値が得られる場合がある。式中、fi、jは、i次のj番目の既約多項式、および、
Figure 0006453366
を表す。
それぞれのd次の多項式が多重度kを有するならば、
Figure 0006453366
を、たかだかd次の既約多項式から構成できる、n>0であるn次の可約多項式の数にする。次に、
Figure 0006453366
についての閉じた公式が導き出される。
補助定理2 d=1として:
Figure 0006453366
であり、d>1として:
Figure 0006453366
であり、ここで、
Figure 0006453366
であり、
Figure 0006453366
である。
証明:dについての帰納法による。基本的なケース:d=1にする。
Figure 0006453366
と示すことは容易である。帰納ステップ:定理はd=d−1に当てはまると想定する。そして、d−1までの次数の既約多項式からn次の可約多項式
Figure 0006453366
が構成可能であり、ここで、式(16)によって
Figure 0006453366
が示される。d−1までの次数の既約多項式に加えて、多重度
Figure 0006453366
を有するd次の1つの既約多項式があるならば構成できるn次の可約多項式の数は、
Figure 0006453366
の多項式である。同様に、d−1までの次数の既約多項式に加えて、多重度kを有するd次の既約多項式Iがある場合、
Figure 0006453366
が得られる。
Figure 0006453366
を最大化する多重度k、k−2、…、kの値についての閉じた公式を導き出すことは困難である。補助定理1によって有界のdの値による全数検査によって、n=32およびn=64として、およびm≦200のメッセージ長として、
Figure 0006453366
についての値が計算された。値は以下の表に示され、ここで、最後の縦列は、
Figure 0006453366
を最大化する多重度k、k−2、…、kを示す。
Figure 0006453366
対応する衝突確率は図4に示される表400に示される。
次に、ゼロ以外の定数項を有する生成多項式に基づくハッシュ関数族(m、n)のケースについての同様の解析が提示される。
定理5 nおよびmの任意の値として、ゼロ以外の定数項を有する生成多項式に基づくハッシュ関数族は、
Figure 0006453366
としてε−opt−secureであり、式中、R2、maxは、m+n次の多項式の既約因子から構成できる別個のゼロ以外の定数項を有するn次の可約多項式の最大数である。
証明:定理4の証明と同様である。
q(x)が式(7)に従ったタイプである場合のゼロ以外の定数項を有する生成多項式についてのdの最大値は、以下の補助定理によって示される。
補助定理3 q(x)を、タイプ(7)のm+n次の多項式にする。そして、dは式
d≧log(m+n+3)−1 (21)
を満たす最小整数である。
証明:dの値は、式
(I−1)+2I+…+dI=m+n (22)
を満たすものとする。式中、Iiはi次の既約多項式の数を表す。
Figure 0006453366
であり、ひいては、
(I−1)+2I+…+dI≦(2−1)+2+…+2 (24)
であるため、
m+n≦2d+1−3 (25)
という結果になる。
従って、dは、式
log(m+n+3)−1≦d (26)
を満たす最小整数である。
それぞれのd次の多項式が多重度kを有するならば、
Figure 0006453366
を、たかだかd次のゼロ以外の定数項を有する既約多項式から構成できる、n>0のn次のゼロ以外の定数項を有する可約多項式の数にする。次に
Figure 0006453366
についての閉じた公式が導き出される。
補助定理4 d=1として:
Figure 0006453366
であり、d>1として:
Figure 0006453366
であり、ここで、
Figure 0006453366
であり、
Figure 0006453366
である。
証明:補助定理2と同様である。
補助定理3によって有界のdの値による全数検査によって、n=32およびn=64として、およびm≦200のメッセージ長として、
Figure 0006453366
についての以下の値
が計算された。値は以下の表に示され、ここで、最後の列は、
Figure 0006453366
を最大化する多重度k、k−2、…、kを示す。
Figure 0006453366
対応する衝突確率は図4に示される表400に示される。

Claims (24)

  1. 通信ネットワークを介して送信元から受信先へ送信されるメッセージM(x)(204;304)に対する暗号チェックサム(203;303)を用いて前記メッセージを認証するための方法(500;600)において
    前記送信元及び受信先は、前記通信ネットワーク上の通信装置であり、
    前記通信装置は、コンピュータ実行可能命令を記憶するメモリと前記命令を実行する処理ユニットを備えており、
    前記方法は、前記命令が前記処理ユニットにおいて実行される時、前記通信装置に、メッセージに対する暗号チェックサムを生成することを実行させることを含み、
    前記メッセージに対する暗号チェックサムを生成することは、
    第1の暗号鍵に基づいて、ガロア体上のn次の多項式の集合から生成多項式p(x)を疑似ランダム的に選択すること(502;602)と、
    M(x)の第2の関数(f(M(x)))の、p(x)を法とした除算である第1の関数g(すなわち、g(f(M(x))modp(x))として前記暗号チェックサムを算出すること(504;604)とを含
    前記生成多項式p(x)は可約多項式である、
    方法。
  2. 前記生成多項式p(x)はゼロ以外の定数項を含む、請求項に記載の方法。
  3. 前記メッセージに対する暗号チェックサムを生成することは、長さnのパッドsを疑似ランダム的に生成すること(503;603)をさらに含み、前記第1の関数gは前記パッドsを加算することを含む、請求項1または2に記載の方法。
  4. 前記パッドsは第2の暗号鍵に基づいて生成される、請求項に記載の方法。
  5. 前記生成多項式p(x)は前記メッセージに特有の情報に依存する、請求項1からのいずれか一項に記載の方法。
  6. 前記パッドsは、前記メッセージに特有の情報に依存する、請求項からのいずれか一項に記載の方法。
  7. 前記メッセージに特有の前記情報はメッセージシーケンス番号を含む、請求項またはに記載の方法。
  8. 前記第2の関数fは固定多項式xで乗算することを含む、請求項1からのいずれか一項に記載の方法。
  9. 前記通信装置が送信元(101)であり、
    前記方法が、
    前記メッセージを取得すること(501)と、
    記メッセージに対する暗号チェックサムを生成することと、
    生成された前記暗号チェックサムを前記メッセージに付加すること(505)と、
    前記メッセージおよび付加された前記暗号チェックサムを送信すること(506)と、を含む、請求項1から8のいずれか一項に記載の方法。
  10. 前記通信装置が受信先(102)であり、
    前記方法が、
    前記メッセージおよび付加された第1の暗号チェックサムを受信すること(601)と、
    記メッセージに対する第2の暗号チェックサムを生成することと、
    前記第1の暗号チェックサムおよび前記第2の暗号チェックサムが同一であるかどうかを検証すること(605)と、を含む、請求項1から8のいずれか一項に記載の方法。
  11. 求項1から10のいずれか一項に記載の方法を前記通信装置に行わせるためのコンピュータ実行可能命令を含む、コンピュータプログラム(903;1003)。
  12. 請求項11に記載のコンピュータプログラムを組み入れているコンピュータ可読記憶媒
  13. メッセージM(x)を認証するために、通信ネットワークを介して送信元装置から受信先装置へ送信される前記メッセージに対する暗号チェックサムを生成するための、コンピュータからなる、チェックサム生成装置(702;803)であって、
    第1の暗号鍵(705;805)に基づいて、ガロア体上のn次の多項式の集合から生成多項式p(x)を疑似ランダム的に選択する手段、および
    M(x)の第2の関数(f(M(x))の、p(x)を法とした除算である第1の関数g(すなわち、g(f(M(x))modp(x))として前記暗号チェックサムを算出する手段を含
    前記生成多項式p(x)は可約多項式である、
    チェックサム生成装置
  14. 前記生成多項式p(x)はゼロ以外の定数項を含む、請求項13に記載のチェックサム生成装置
  15. さnのパッドsを疑似ランダム的に生成する手段をさらに含み
    前記第1の関数gは前記パッドsを加算することを含む、請求項13または14に記載のチェックサム生成装置
  16. 記パッドs第2の暗号鍵(705;805)に基づいて生成される、請求項15に記載のチェックサム生成装置
  17. 前記生成多項式p(x)は前記メッセージに特有の情報に依存する、請求項13から16のいずれか一項に記載のチェックサム生成装置
  18. 前記パッドsは、前記メッセージに特有の情報に依存する、請求項15から17のいずれか一項に記載のチェックサム生成装置
  19. 前記メッセージに特有の前記情報はメッセージシーケンス番号を含む、請求項17または18に記載のチェックサム生成装置
  20. 前記第2の関数fは固定多項式xで乗算することを含む、請求項13から19のいずれか一項に記載のチェックサム生成装置
  21. 請求項13から20のいずれか一項に記載のチェックサム生成装置を含む、通信ネットワークのための送信元装置(700;900)であって、
    前記メッセージを取得する手段(701)、
    成された前記暗号チェックサムを前記メッセージに付加する手段(703)、および、
    前記メッセージおよび付加された前記暗号チェックサムを送信する手段(704)を含む、送信元装置。
  22. 請求項13から20のいずれか一項に記載のチェックサム生成装置を含む、通信ネットワークのための受信先装置(800;1000)であって、
    前記メッセージおよび付加された第1の暗号チェックサムを受信する手段(801)、および、
    前記第1の暗号チェックサムおよび前記受信先装置のチェックサム生成装置により生成される第2の暗号チェックサムが同一であるかどうかを検証する手段(804)を含む、受信先装置。
  23. 請求項21に記載の送信元装置(1201)および請求項22に記載の受信先装置(1201)のうちの少なくとも1つを含む、モバイル端末(1200)。
  24. 請求項21に記載の送信元装置(1201)および請求項22に記載の受信先装置(1201)のうちの少なくとも1つを含む、無線アクセスノード。
JP2016575485A 2014-06-27 2014-06-27 暗号チェックサムの生成 Expired - Fee Related JP6453366B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2014/063632 WO2015197128A1 (en) 2014-06-27 2014-06-27 Generating cryptographic checksums

Publications (2)

Publication Number Publication Date
JP2017524291A JP2017524291A (ja) 2017-08-24
JP6453366B2 true JP6453366B2 (ja) 2019-01-16

Family

ID=51059443

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016575485A Expired - Fee Related JP6453366B2 (ja) 2014-06-27 2014-06-27 暗号チェックサムの生成

Country Status (4)

Country Link
US (1) US10313125B2 (ja)
EP (1) EP3161995B1 (ja)
JP (1) JP6453366B2 (ja)
WO (1) WO2015197128A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10536269B2 (en) * 2015-02-25 2020-01-14 Secret Double Octopus Ltd Method and system for authentication and preserving the integrity of communication, secured by secret sharing
WO2017064361A1 (en) * 2015-10-16 2017-04-20 Nokia Technologies Oy Message authentication
CN110348246B (zh) * 2018-04-08 2022-08-30 腾讯科技(深圳)有限公司 一种验证信息的生成方法、装置、终端设备和介质
US11032061B2 (en) * 2018-04-27 2021-06-08 Microsoft Technology Licensing, Llc Enabling constant plaintext space in bootstrapping in fully homomorphic encryption
JP6921034B2 (ja) * 2018-05-22 2021-08-18 日立Astemo株式会社 車載ネットワークへの不正メッセージ注入防止技術
US20220225092A1 (en) * 2019-04-23 2022-07-14 Telefonaktiebolaget Lm Ericsson (Publ) Network Entities, Methods, Apparatuses and Communications Networks for Authenticating an Event
US10951404B1 (en) * 2020-06-09 2021-03-16 Quantropi Inc. Methods and systems for digital message encoding and signing
WO2022187959A1 (en) 2021-03-10 2022-09-15 Quantropi Inc. Quantum-safe cryptographic methods and systems
US11861046B2 (en) * 2021-04-29 2024-01-02 Infineon Technologies Ag System for an improved safety and security check

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5220606A (en) 1992-02-10 1993-06-15 Harold Greenberg Cryptographic system and method
US5345507A (en) * 1993-09-08 1994-09-06 International Business Machines Corporation Secure message authentication for binary additive stream cipher systems
NL1000669C2 (nl) * 1995-06-26 1996-12-31 Nederland Ptt Werkwijze en inrichtingen voor het overdragen van data met controle op transmissiefouten.
US6754824B1 (en) * 1999-06-25 2004-06-22 Telefonaktiebolaget L M Ericsson (Publ) Modulated message authentication system and method
WO2006092753A1 (en) 2005-03-01 2006-09-08 Nxp B.V. Generator for generating a message authentication code, method of generating a message authentication code, program element and computer-readable medium
TW200708027A (en) * 2005-04-29 2007-02-16 Sean O'neil Process of and apparatus for hashing
DE102009033241B4 (de) * 2009-07-14 2013-07-04 Audi Ag Vermeidung von Maskerade durch Verwendung von Kennungssequenzen

Also Published As

Publication number Publication date
WO2015197128A1 (en) 2015-12-30
EP3161995B1 (en) 2019-11-06
EP3161995A1 (en) 2017-05-03
JP2017524291A (ja) 2017-08-24
US20170141918A1 (en) 2017-05-18
US10313125B2 (en) 2019-06-04

Similar Documents

Publication Publication Date Title
JP6453366B2 (ja) 暗号チェックサムの生成
JP6397987B2 (ja) 暗号学的チェックサムの生成
CN107592968B (zh) 生成密码校验和
CN110073634B (zh) 数据转换系统及方法
Dubrova et al. CRC-based message authentication for 5G mobile technology
Zhang et al. Energy efficiency of encryption schemes applied to wireless sensor networks
Gan et al. Design and ARM‐embedded implementation of a chaotic map‐based multicast scheme for multiuser speech wireless communication
CN112715016A (zh) 密钥封装协议
Kim et al. A secure information transmission scheme with a secret key based on polar coding
EP2087635A2 (en) Processing method for message integrity with tolerance for non-sequential arrival of message data
EP3729716B1 (en) Stream ciphering
Liu et al. A joint encryption and error correction scheme based on chaos and LDPC
EP4082153B1 (en) Public/private key system with increased security
Adamo et al. Joint scheme for physical layer error correction and security
Dubrova et al. Cryptographically secure CRC for lightweight message authentication
Lee et al. Ciphertext-only attack on linear feedback shift register-based Esmaeili-Gulliver cryptosystem
Dubrova et al. Lightweight message authentication for constrained devices
Dubrova et al. Error-correcting message authentication for 5g
Zajac Hybrid encryption from McEliece cryptosystem with pseudo-random error vector
Shoushtari Securing Wireless Communication via Information-Theoretic Approaches: Innovative Schemes and Code Design Techniques
González Vasco et al. Group Key Exchange: Living on the Edge with a Quantum Adversary
Wang Quantum resistant public key encryption scheme rlce and ind-cca2 security for mceliece schemes
Al-Hassan Asymmetric encryption for wiretap channels
Dubrova et al. Lightweight CRC-based Authentication

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180320

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180620

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181212

R150 Certificate of patent or registration of utility model

Ref document number: 6453366

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees