JP2003506750A - メッセージ認証コードを発生するための方法および装置 - Google Patents

メッセージ認証コードを発生するための方法および装置

Info

Publication number
JP2003506750A
JP2003506750A JP2001515574A JP2001515574A JP2003506750A JP 2003506750 A JP2003506750 A JP 2003506750A JP 2001515574 A JP2001515574 A JP 2001515574A JP 2001515574 A JP2001515574 A JP 2001515574A JP 2003506750 A JP2003506750 A JP 2003506750A
Authority
JP
Japan
Prior art keywords
bits
bit
message
generator
crc
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.)
Pending
Application number
JP2001515574A
Other languages
English (en)
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2003506750A publication Critical patent/JP2003506750A/ja
Pending legal-status Critical Current

Links

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/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
    • 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
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • 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 Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Error Detection And Correction (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

(57)【要約】 【課題】保証された変造検出特性を有したメッセージ認証コードを発生すること。 【解決手段】メッセージ認証コード(MAC)を発生するための方法は、擬似乱数分配フォーマットに従ってより大きなメッセージにメッセージのビットを分配するステップを含む。より大きなメッセージの巡回冗長検査(CRC)ビットが計算され、メッセージのためのMACとして使用される。より大きなメッセージは作られる必要がない。多項式x(iはより大きなメッセージの意図されたビット位置)のCRC多項式の剰余モジュロが計算される。CRCと計算された剰余のイクスクルーシブOR演算がビットごとに行なわれ新しいCRCが引き出される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】
本発明は、一般に通信の分野に関し、特にメッセージ認証コードの発生に関す
る。
【0002】
【従来の技術】
メッセージ認証コード(MAC)はメッセージが特定のパーティから由来され
その他のパーティにより変更されなかったことを検証するために特定のメッセー
ジに付加可能な暗号的に得られるアイテムである。MACが電気通信の多くの分
野で使用を発見するのは当然のことである。例示的分野は無線通信である。
【0003】 無線通信の分野は、コードレス電話、ページング、無線ローカルループ、パー
ソナルデジタルアシスタンス(PDA)のような無線データアプリケーション、
セルラおよびPCS電話システムのような無線電話、モバイルインターネットプ
ロトコル(IP)電話および衛星通信システムを含む多くのアプリケーションを
有する。特に重要なアプリケーションは移動加入者の無線電話である。
【0004】 例えば、周波数分割多重アクセス(FDMA)、時分割多重アクセス(TDM
A)および符号分割多重アクセス(CDMA)を含む無線通信システムのために
種々の放送インターフェースが開発されてきた。それらに関連して、例えばアド
バンストモバイルフォーンサービス(Advanced Mobile Phone Service)(AMP
S)、モバイル通信のためのグローバルシステム(GSM)および暫定規格95
(IS−95)を含む種々の国内および国際規格が確立された。
【0005】 例示的な無線電話通信システムは符号分割多重アクセス(CDMA)システム
である。IS−95規格およびその派生物であるIS−95A、ANSI J−
STD−008、IS−95B、提案された第3世代規格IS−95CおよびI
S−2000、データ専用の提案された高データレートCDMA規格等(以下集
合的にIS−95と呼ぶ)は電気通信産業協会(TIA)により、公布され、セ
ルラまたはPCS電話通信システムのためのCDMA放送インターフェースの使
用を指定する他の公知の規格団体がある。実質的にIS−95規格の使用に従っ
て構成された例示無線通信システムは、本発明の譲受人に譲渡され、参照するこ
とにより本明細書にそのすべてが組み込まれる米国特許第5,103,459号
および第4,901,307号に記載されている。
【0006】 典型的な通信において、MACmは(長さLの)メッセージMおよび関数の
入力としてメッセージ創作者および受取人のみにより知られている共有秘密鍵K
を用いて計算された関数の出力である。選択された特定の関数が安全であるなら
ば、送られたメッセージを妨害し、潜在的に変更することのできる積極的な攻撃
者は鍵Kを発見することができず、また、妥当な確率で正当なものとして受取人
により受け取られるであろうメッセージを作成することができない。MACが長
さL(ビット)を有する場合、攻撃者は常に所望のメッセージのmの値を単に
推測することができるかも知れない、そして1/2Lmの確率でその推測は正し
いであろう。それゆえ、MACのための安全の保障は、本質的に確率的である。
MACは、意図的にあるいはランダムに導入した場合であろうとも、この確率よ
り良いエラー検出の補償を与えない。特にメッセージの単一ビットエラーは他の
置換えをしたとしてもそのメッセージに付加されたMACと一致する同じ確率を
有する。この確率は小さいけれども、依然として重要である。
【0007】 巡回冗長検査(CRC)は公知のエラー検出および訂正コード(ECC)の一
例である。ECCはデータ送信を変造でき、受信機が最も一般的な変造を検出し
、その変造を訂正することができることを望む多くのアプリケーションに使用さ
れる。CRCは計算するのに効果的であり、有用なエラー特性検出を有する。受
信したメッセージM’が少数ビットにエラーを有する場合、CRCは、エラーが
あることを検出することを保証し、そして事実(そのエラーができるだけ少数で
あると仮定して)どのビットがエラーであるかを示すであろう。これはエラーの
訂正を可能にする。CRCは、メッセージのビットが多項式の係数であると考え
、多項式が次数Lの多項式Pにより分割されるとき剰余を計算することにより計
算される。多項式Pを注意深く選択することにより、所望のエラー検出および訂
正の性質が得られる。CRCは送信中に導入されたランダムエラーの種類を検出
するのにはよいが、積極的な攻撃の類には役に立たない。なぜなら攻撃者はメッ
セージの変更のCRC上の効果を容易に計算することができるからである。それ
に応じて攻撃者はまたCRCを変更することができる。これは、ある秘密の情報
がCRCの計算に組み込まれ、メッセージとともに送信されない場合であっても
成立する。
【0008】 結合されたMAC/CRC、すなわちCRCにより検出されたであろう小さな
ランダムエラーがメッセージとそのMACとの不一致により検出されるであろう
保証を含むコードを供給することが望ましい。さらに、秘密情報Kを知らない積
極的な攻撃者はKを発見することができない、あるいは1/(2−1)よりも
よい確率を持ったメッセージを偽造できないであろうことをコードが同時に保証
することは都合が良い。(当業者には理解されるように、確率値における付加的
な「−1」は、攻撃者が変更しようとしているメッセージとほとんど同じメッセ
ージに対してオリジナルのMACは作用せず、従ってそのかわりに他の可能性の
あるMACをランダムに選択するであろうことを攻撃者が知っているという事実
に基づく。従って、保証された変造検出性質を有したMACを発生する方法の必
要がある。
【0009】
【課題を解決するための手段】
本発明は、保証された変造検出特性を有したMACを発生する方法に向けられ
ている。従って、本発明の一観点において、メッセージ認証コードを発生する方
法は、鍵に依存する態様で第1の複数のメッセージビットを第2の複数のビット
に擬似乱数的に配付するステップと、第2の複数のビットの巡回冗長検査から構
成される第3の複数のビットを発生するステップと、第1の複数のメッセージビ
ットと第3の複数のビットから構成されるメッセージ認証コードを送信するステ
ップを有利に含む。
【0010】 本発明の他の観点において、メッセージ認証コードを発生するように構成され
た発生器は、鍵に依存する態様で第1の複数のメッセージビットを第2の複数の
ビットに擬似乱数的に配布する手段と、第2の複数のビットの巡回冗長検査を構
成する第3の複数のビットを発生する手段と、第1の複数のメッセージビットと
、第3の複数のビットを構成するメッセージ認証コードを送信する手段とを有利
に含む。
【0011】 本発明の他の観点において、メッセージ認証コードを発生するように構成され
た発生器は、鍵に依存する態様で第1の複数のメッセージビットを第2の複数の
ビットに擬似乱数的に配付するように構成されたプロセッサと、分配器と接続さ
れ、第2の複数のビットの巡回冗長検査を構成する第3の複数のビットを発生す
るように構成された発生器と、前記発生器と接続され第1の複数のメッセージビ
ットと、第3の複数のビットを構成するメッセージ認証コードを送信するように
構成された送信機を有利に含む。
【0012】 本発明の実施形態において、メッセージのビットを擬似乱数的に配布する方法
は、多項式xi(但しiは意図されたメッセージビットロケーションであり、P
は巡回冗長検査多項式)の剰余モジュロ(remainder modulo)Pを計算するステッ
プと、1に等しいメッセージの各ビットに対してビット毎に、CRCビットと計
算された剰余のイクスクルーシブOR演算を行なうステップを有利に含む。
【0013】
【発明の実施の形態】
以下に記載された例示実施形態は、CDMA放送インタフェースを採用するよ
うに構成された無線電話通信システムに存在する。しかしながら、当業者には、
この発明の特徴を具現化するMAC発生方法および装置は、当業者に知られてい
る広範囲の技術を採用した種々の通信システムのいずれにも存在することができ
ることが理解されるであろう。
【0014】 図1に示すように、CDMA無線電話システムは一般に複数の移動加入者装置
10、複数の基地局12、基地局コントローラ(BSC)14、および移動交換
センタ(MSC)16を含む。MSC16はまたBSC14とインタフェースす
るように構成される。BSC14は迂回中継線を介して基地局12に接続される
。迂回中継線は、例えばE1/T1、ATM、IP、PPP、フレームリレイ、
HDSL、ADSLまたはxDSLを含む幾つかの公知のインターフェースのい
ずれかを支持するように構成可能である。システムには2以上のBSC14があ
り得ることが理解される。各基地局12は少なくとも1つのセクタ(図示せず)
を有利に含む。各セクタは全方向アンテナまたは基地局12から放射状に特定の
方向に向けられたアンテナで構成される。あるいは各セクタはダイバーシチ受信
のための2つのアンテナから構成するようにしてもよい。各基地局12は複数の
周波数割当てを支持するように有利に設計可能である。セクタの交さおよび周波
数割当てはCDMAチャネルと呼ぶことができる。基地局12はまた、基地局ト
ランシーバサブシステム(BTS)12としても知られている。あるいは、「基
地局」はこの産業では、BSC14および1つ以上のBTS12に言及するのに
使用可能である。BTS12はまた「セルサイト」12としても知られている。
あるいは、与えられたBTS12の個々のセクタをセルサイトと呼ぶこともでき
る。移動加入者装置10は一般にセルラまたはPCS電話10である。このシス
テムはIS−95規格に従って使用されるように有利に構成される。
【0015】 セルラ電話システムの一般的な動作中に基地局12は移動装置10群から逆方
向リンク信号群を受信する。移動装置10は電話呼または他の通信を行なってい
る。所定の基地局12により受信された各逆方向リンク信号はその基地局12内
で処理される。その結果得られたデータはBSC14に送られる。BSC14は
基地局12間のソフトハンドオフの統合を含む呼リソース割当ておよび移動管理
機能を提供する。BSC14はまた受信したデータをMSC16に送り、MSC
16は、PSTN18とインタフェースするためのさらなるルーチングサービス
を提供する。同様に、PSTN18はMSC16とインタフェースし、MSC1
6はBSC14とインタフェースし、BSC14は次に基地局12を制御して順
方向リンク信号群を移動装置群10に送信する。
【0016】 図2に示すように一実施形態によれば、MACを含むメッセージを発生するた
めの機構100はプロセッサ102、ソフトウエアモジュール104、および記
憶媒体106を含む。プロセッサ102は便宜的には、マイクロプロセッサまた
はデジタルシグナルプロセッサ(DSP)のような特殊目的のプロセッサである
が、一般的な形態のプロセッサ、コントローラ、マイクロコントローラまたはス
テートマシンであってもよい。プロセッサ102はソフトウエアモジュール10
4に接続される。ソフトウエアモジュール104はプロセッサ102の動作を指
示するソフトウエア命令を保持するRAMメモリとして便宜的に実現される。ソ
フトウエア命令はソフトウエアプログラムまたはマイクロコード群から構成し得
る。RAMメモリ104は基板上のRAMであり、あるいはプロセッサ102と
RAMメモリ104をASICに存在させることもできる。他の実施形態におい
て、ソフトウエアモジュール104の代わりにファームウエア命令が使われる。
記憶媒体106はプロセッサ102に接続され、便宜的にRAMメモリと、例え
ばROMメモリのようななんらかの形態の一般的不揮発性メモリの組合せとして
実現される。記憶媒体106は以下に述べるようにMACを発生するためにリニ
アフィードバックシフトレジスタ(LFSR)を実現し、あらかじめ計算された
テーブルおよび命令を記憶するのに使用される。例えば、命令およびテーブルは
ROMメモリコンポーネントに記憶され、レジスタはRAMメモリコンポーネン
トに記憶される。あるいは、記憶媒体106はプロセッサ102によりアクセス
可能なディスクメモリまたはフラッシュメモリとして実現可能である。あるいは
、記憶媒体106はレジスタとして実現可能である。機構100は図1のCDM
A無線電話システムの移動加入者装置10または基地局12に存在することがで
きる。
【0017】 図3に示すように、一実施形態において、メッセージおよび相関するMACを
発生するための発生器200は鍵入力擬似乱数(PRN)分配器202、巡回冗
長検査(CRC)発生器204、変調器206、および送信機208を含む。メ
ッセージMのメッセージビットは鍵入力PRN分配器202に供給される。鍵入
力PRN分配器202は以下に詳細に述べるように、鍵に依存した態様で擬似乱
数的にメッセージビットをビットシーケンスに分配する。分配されたメッセージ
ビットを含むビットシーケンスはCRC発生器204に供給される。CRC発生
器204は、当業者に知られているなんらかの一般的なCRC計算のための方法
に従って、分配されたビットを含むビットシーケンスのCRCを計算する。
【0018】 CRC発生器204はCRCビットを発生する。発生されたCRCビットはメ
ッセージビットのためのMACとして使用される。MACビットとメッセージビ
ットは変調器206に供給される。変調器206は、受信したビットを通信チャ
ネル上に送信するために変調する。変調機構は使用される通信システムおよび通
信チャネルの種類により変化する。一実施形態において、変調機構はCDMA機
構であり、通信システムは図1の無線電話システムである。変調器206は変調
されたメッセージおよびMAC信号を送信機208に供給する。送信機208は
変調されたメッセージとMAC信号を通信チャネルに送信する。
【0019】 図3を参照して記載した実施形態に従って、攻撃者により予測できない鍵に依
存した態様でオリジナルメッセージMのビットが分配されたMACとして、より
大きな「メッセージ」(ビットシーケンス)のCRCが計算され、送信される。
従って、小さな乱数エラーは通常のCRC機構により検出および修正でき、有効
な攻撃(すなわち有効な攻撃でなかったら合法的なメッセージの意図的変更)は
成功の確率が低い。
【0020】 便宜的に、より大きなメッセージを介してオリジナルメッセージMのビットを
分配する方法はメッセージごとに変化する。分配方法を変えることにより、攻撃
者がメッセージを収集するのを防止し、それにより、成功する攻撃の確率を徐々
に増大する。MACは小さなエラーを検出することを保証しなければならないの
で、(当然異なるMACを有した)2つの似通ったメッセージが送信されると、
この2つの類似したメッセージの両方に類似するが異なる別のメッセージのMA
Cも異なる。従って攻撃者は2−2の可能性のあるMACからしか選択するこ
とができない。「salt」を示す情報Sは、例えばメッセージが送信される時間あ
るいはシーケンス番号のような特別のメッセージについての情報を、メッセージ
ビットが分配される態様と相関させるのに使用されると都合がよい。これは、ス
トリーム暗号は2つの異なるメッセージあるいは単一メッセージの2つの異なる
セグメントに対して同じストリームの出力を発生しないという事実に類似してい
る。
【0021】 従って、攻撃者に予測不可能であり、共有秘密鍵Kについて攻撃者が情報を発
見するのを手助けしない態様で、より大きなメッセージにオリジナルメッセージ
Mからのビットを分配する必要がある。従って、図3を用いて記載した実施形態
において、より大きなメッセージ内のメッセージビットの配布を制御するために
均一に分配されたPRNが発生される。均一に分配されたPRNは、攻撃者に予
測不可能な態様で、共有秘密鍵Kおよびsalt(S)から得ることが都合がよい。
【0022】 例示実施形態において、SOBERと呼ばれるストリーム暗号の出力はPRN
の源として使用される。SOBERストリーム暗号は、この発明の譲受人に譲渡
され、1999年2月8日に出願された米国出願第09/246,366(発明
の名称:「暗号化ストリーム暗号を発生するための方法および装置」)に記載さ
れている。ストリーム暗号は、送信されるべきメッセージの各ビットとビットご
とにイクスクルーシブOR(XOR)され、それにより暗号化メッセージを発生
する擬似乱数的に発生されるビットストリームである。暗号化されたメッセージ
が受信されると、オリジナルメッセージを生成するために同じストリーム暗号と
XORされる。他の実施形態において、他の形態のPRN発生器をストリーム暗
号の代わりに使用することができる。特に、ストリーム暗号よりも少ない安全性
を提供するPRN発生器をストリーム暗号の代わりに使用することができる。
【0023】 一実施形態において、図4に示すように、メッセージM300のビットは、キ
ーPRN発生器(図示せず)の制御により、より大きなメッセージ302のある
オフセットで開始し、ビット間でより大きなメッセージ302の予測できない数
の位置をスキップしながら、シーケンシャルにビットを載置することにより分配
される。より大きなメッセージ302の終端に遭遇したときまたはしたならば、
分配位置はより大きなメッセージの始めで再び開始する。より大きなメッセージ
302のビット間でスキップされる位置の最大数は、分配位置が完全にラップア
ラウンドしないように、すなわちより大きなメッセージの最初の位置に到達しな
いようにあるいは通過しないように決定されることが都合がよい。これは、メッ
セージM300の2ビットより大きなメッセージ302の同一位置に分配されな
いようにすることを保証する。2ビットがより大きなメッセージ302の同一位
置に分配された場合には、これらのビットの双方への同時変化はキャンセルされ
、検出されず、目標を得ることはできないであろう。最悪の場合を考慮するため
に、分配されたビット間の各ギャップが最大長であり、最大ギャップ長は制限さ
れなければならない。しかしながら、平均ギャップ長は最大ギャップ長のわずか
に1/2である。それゆえ、平均してメッセージビットはより大きなメッセージ
のわずか1/2以内に分配される。この分配技術は十分な安全性と相対的な実現
の容易性を提供することが都合がよい。
【0024】 他の実施形態において、メッセージビット300は、より大きなメッセージ3
02をおおよそ等しいサイズのブロックに分割して、ランダムオフセットで開始
し、ラップアラウンドし、1ビットを各ブロック内のランダム位置に載置するこ
とにより分配される。この分配技術は、ビットがより大きなメッセージの全体に
よく分配されるので、望ましい性質を有する。
【0025】 より大きなメッセージ302のビットはCRC発生器304に供給される。C
RC発生器304は受信したビットのCRCを計算する。CRCビット306は
メッセージM300のMAC306として使用される。図6を参照して以下に記
載される他の実施形態に関連して示されるように、所望の効果を得るためにより
大きなメッセージ302を実際に作る必要がないことを指摘しなければならない
【0026】 例示実施形態において、CRC/MACの長さLは16ビットである。エラ
ー検出のための保証が適用される最大メッセージはCRC自体を含めて216
ットである。((1+x)と原始多項式の乗算がCRCのための発生器として使
用されるなら、最大メッセージ長は215−1ビットである。)入力メッセージ
M300の長さLは215−16ビットより極めて小さく維持することが都合
がよい。上述した第2実施形態に従ってより大きなメッセージ302をほぼ等し
いサイズのブロックに分割するならば、入力メッセージM300の長さLは2 15 −16ビットの1/2より小さく制限されることが都合がよい。上述した第
1の実施形態に従ってより大きなメッセージ302内でビット位置がスキップさ
れるなら、入力メッセージM300の長さLは215−16ビットの1/4よ
り小さく制限されることが都合がよい。
【0027】 メッセージM300の最初のビットが載置された後、残りのL−1ビットは
残りの215−17位置に載置される。入力メッセージMの長さLMが1520
ビットならば、最大分配間隔あるいはブロックサイズは32751/1519、
すなわち21ビットより小さい最大整数となるであろう。しかしながら、PRN
発生器はビットのストリームを生成するように見ることができる。従って、21
ビットを使用する代わりに2の累乗である数を使用することがより効率的であり
都合がよい。2の累乗が最大分配間隔あるいはブロックサイズとして使用される
なら、0乃至15の範囲のランダム数はPRN発生器からの出力の4ビットを取
ることにより発生可能である。次に、乱数は5乃至20の範囲に入るように調節
することが都合がよい。ビット間の平均間隔あるいはブロックのサイズは少なく
とも2でなければならないことは当業者には理解できるであろう。それゆえ、間
隔またはブロックサイズのための最適値は、2および2との間の2の累乗で
ある。それゆえ、メッセージM300の各ビットの載置はPRN出力の2乃至4
ビットを必要とする。
【0028】 以下にさらに述べるように、PRN発生器からの出力の受取り量を少なくする
ことによりビット位置の不確かさが制限されたとしてもビットをさらに広げるこ
とは都合がよい。最小拡散サイズまたは最小ブロックサイズは定数または変数に
かかわらず使用することができる。
【0029】 他の実施形態において、メッセージビットは、オリジナルビット位置から新し
いビット位置を得るためにブロック暗号のような鍵置換関数を使用することによ
り分配される。特定の実施形態において、14ビットのブロックサイズを有する
ブロック暗号は、より大きなメッセージ302のランダムオフセット位置と共に
採用される。各メッセージに対して異なる置換を使用する必要性は、ブロック暗
号が各メッセージ300に対して異なる鍵を使用することを必要とすることに注
意しなければならない。これは理論的に可能であるが、実用面で非能率的である
【0030】 図5に示す一実施形態において、CRC発生器400は16個の1ビット記憶
素子402a−g(簡単化のために記憶素子402のみ示されている)、3個の
モジュロ−2加算器404、406、408および3個のスイッチ410、41
2、414を含むレジスタとして実現される。他の実施形態において、CRC発
生器は、図2を参照して上述したように、便宜的にRAMメモリに含まれるソフ
トウエア命令群を実行するマイクロプロセッサと、ROMメモリまたはフラッシ
ュメモリに便宜的に含まれる参照テーブル(LUTs)をアクセスすることによ
り実現される。
【0031】 CRC発生器400において、入力メッセージビットはスイッチ410に供給
される。スイッチ410は入力メッセージビットを受信するかあるいは1のデジ
タル値を受信するように設定される。スイッチ412は零のデジタル値を受信す
るかあるいはモジュロ−2加算器408からの値を受信するように設定可能であ
る。スイッチ414はスイッチ410からの値を受信するか、あるいはスイッチ
412からの値およびモジュロ−2加算器408からの値を受信するように設定
可能である。出力CRCはスイッチ414から得られる。モジュロ−2加算器4
04は5番目の1ビット記憶素子402cおよび6番目の1ビット記憶素子40
2dとの間に配置される。モジュロ−2加算器406は12番目の1ビット記憶
素子402eおよび13番目の記憶素子402fとの間に配置される。モジュロ
−2加算器408は16番目の1ビット記憶素子402hの後に配置されスイッ
チ410からの値を受信するように構成される。CRCの発生器多項式は、モジ
ュロ−2加算器404、406、408の配置により定義されるようにx16
12+x+1に等しい。
【0032】 作動中、スイッチ410、412、414は(図に示すように)始めに「アッ
プ」位置に設定される。レジスタはk回クロックされる。kは、入力メッセージ
の長さ+8ビットとして定義される。(図に示すように)レジスタはシフトレジ
スタであり、各クロックサイクルで各ビットは1つの記憶素子を右方向に移動す
る。次に、スイッチ410、412、414は(図に示すように)「ダウン」位
置に設定される。次に、レジスタはさらに16回クロックされる。16の付加的
出力ビットはそのメッセージのCRCフィールドを構成する。ビットは、CRC
発生器400の出力に現われる順に送信される。
【0033】 入力メッセージビットは「より大きなメッセージ」を構成する。より大きなメ
ッセージのためのCRCフィールドはメッセージMのMACとして作用する。従
って、MACはCRCの固有の安全利益を含むことが都合がよい。計算されたM
ACは実際にはCRCなので、「バーストエラー」に適用する保証を除いて、C
RCに適用するエラー検出および訂正についての保証はMACに適用する。バー
ストエラー保証は、計算中に連続するビットが分離されるので、もはや「バース
ト」を形成しないので、破られる。
【0034】 本質的にMACに対して2種類の攻撃がある。MACに対する第1の種類の攻
撃はサービスの窃盗である。攻撃者は、他の正当なメッセージを観察しながら、
正当なMACを有したメッセージを作成しようと試みる。あるいは攻撃者が思い
のままに、偽造したメッセージを作成することを可能にする秘密鍵Kを推論しよ
うと試みる。MACに対する第2の種類の攻撃は選択されたメッセージである。
攻撃者は、秘密鍵Kの発見を目的として特別のメッセージを作成しようと試みそ
してどうにかしてシステムが正当なMACを計算するように工夫する。
【0035】 正当なMACを有したメッセージに単一のビット変更をしたいと思う攻撃者は
CRCに対して対応する変更を計算できる必要があるであろう。これは、拡張さ
れたメッセージ内のビットの位置を予測することができることを必要とする。ビ
ットの可能な位置は2L−1以下なので、攻撃者はMACを推量するよりもほん
のわずか良くできるに過ぎない。
【0036】 何らかのMACに対する1つの可能な攻撃はいわゆる選択された平文攻撃であ
る。この種の攻撃において、メッセージが攻撃者により選択された特定の内容を
有するように、攻撃者は、正当なMACを付随してメッセージを送信させるよう
に何とかして配列可能である。例えば、攻撃者は電子メールを受取人に送ること
が出来るかもしれない。これは結局送信チャネルを介して導かれ、計算され付加
された正しいMACを有するであろう。攻撃者は、単一の「1」ビットから構成
されその後にすべての「0」ビットが続くようなメッセージ作るかもしれない。
計算されたCRCを観察することにより、攻撃者は最初の位置を推測することが
でき、それゆえPRN発生器の出力のいくつかを推測することができるであろう
。これは、将来の出力を予測する方法に導くかもしれないので望ましくない。従
って、一実施形態において、より大きなメッセージの他の1ビットが1に設定さ
れる。この他のビットはランダムな位置において選択される。
【0037】 攻撃者は、すべて零から構成されるメッセージを送信する他の方法を有する。
観察されたCRCは攻撃者にPRN発生器からの出力のLビットを与える。こ
れはPRN発生器からの出力のLmビットを与えたとしても、秘密鍵情報Kの回
復を防止するように十分安全である必要がある。
【0038】 攻撃者がビットの開始位置を予測することに加えてメッセージに対する複数ビ
ットの変更を行なうことを試みるならば、攻撃者は、ビットの分散も決定しなけ
ればならない。これは1ビットのみに対して行なった場合よりも成功の確率を小
さくするであろう。
【0039】 適用可能な1つの変形攻撃が残存する。攻撃者がCRC多項式の倍数のパター
ンに展開される変更を行なうことができた場合、計算されたMACに影響はない
であろう。これはビットの初期位置の予測不能性を有効に無効にする。少数のス
トリーム暗号ビットを使用することが望ましい場合には、多項式の小さな倍数に
対してこの種の攻撃を不可能にし、多項式の大きな倍数に対して統計的に困難に
させるように特定のCRC多項式を考慮してビットを展開する方法を選択するこ
とは利点がある。
【0040】 一実施形態において、実際により大きなメッセージを作らずに入力メッセージ
MのためのMACを発生するためにCRC計算をより大きなメッセージに行う。
架空の「より大きなメッセージ」に分配される入力メッセージMの各ビットに対
して、多項式x(但し、iはより大きなメッセージのメッセージビットの意図
された位置である)の剰余モジュロPを計算する必要がある。CRCは線形なの
で、剰余計算は、メッセージの特定ビットが1であるならば、既存のCRCに、
多項式加算すなわちイクスクルーシブOR(XOR)により付加することができ
る。オール零メッセージのCRCは零なので、入力メッセージMの各ビットにX
OR多項式加算技術を適用することにより、CRCはより大きなメッセージを作
らずに、かつL計算を行うのみで計算できる。同様に零でないビットを有した
入力メッセージMの初期シーディング(seeding)はその計算のランダム開始CR
Cを選択することと等価である。
【0041】 xmodP(但しiは(Lが16であると仮定すると)0乃至32767
の範囲である)を計算することは種々の方法で行なうことができる。特定の実施
形態において、1対の参照テーブル(LUTs)が使用される。上述した式のi
の各可能な値に対応するCRCを与える単一LUTで十分であるが、216の1
6−ビットテーブルエントリが必要となる。その代わりiは256hi+loの形で
表される。この場合、hiおよびloはそれぞれiの上位8ビットおよび下位8ビッ
トである。それぞれCRC計算x256himodPおよびxlomodPの結果を
与えるように2つのLUTがあらかじめ計算されるので、第2のLUTの対応す
るエントリを有する第1LUTの各入力にXOR演算を行なうことはCRCを計
算することに等しい。従って、2つのLUTが必要であり、各LUTは256の
16−ビットエントリを有し、CRCを計算するために、入力メッセージMのノ
ンゼロビットごとに2つのテーブルルックアップが行なわれる。
【0042】 ビットはより大きなメッセージを介して分配されているので、hiは迅速には変
わらない。従って同じ値を繰り返し参照することは互いを相殺するということに
言及することは、ソフトウエア実現において、都合がよい。最終結果において実
際に重要になってくるであろう全ては、hiの各値が奇数回使用されたかどうかで
ある。
【0043】 一実施形態において、PRN発生器は、図6のフローチャートに図示されるア
ルゴリズムステップに従ってより大きなメッセージを作ることなく、架空の「よ
り大きなメッセージ」のCRCとして、入力メッセージMのMACを発生する。
この特定の実施形態において、Lは16ビットであり、Lは1520ビット
である。CRC多項式Pは16ビットCRC−CCITT多項式P(x)=x16+x12+x 5 +1である。CRC値を参照するための特定のLUTsは当業者に理解されるよ
うに容易に計算できる。表示R(但しnは整数)は、PRN発生器(図示せず
)から次のnビットを取り込まなければならないことを示すために以下で使用さ
れる。この特定の実施形態において、5ビットの一定の最小スペースが採用され
、そしてPRN出力の3ビットが使用され、5ビット乃至12ビットからなるビ
ットを均一に分配したビット間にスペースを与える。変数Cは最終的な出力MA
Cのアキュムレータを示す。変数Kは「より大きなメッセージ」に載置されるべ
き次のビットの位置を示す。変数iは入力メッセージMのビットの位置を示す。
【0044】 ステップ500において、発生器はCをR16と等しく設定する。これは、1
に設定されるランダムビット位置を選択することと等価である。発生器出力の次
の16ビットはCRCを形成する。次に、発生器はステップ502に進む。ステ
ップ502において、発生器はKをR15モジュロ32751に等しくなるよう
に設定する。これは事実上分配されるべき入力メッセージMの第1ビットの位置
である。次に、発生器はステップ504に進む。ステップ504において、発生
器はiを零に等しく設定する。発生器は次にステップ506に進む。
【0045】 ステップ506において、発生器はビットM[i](現在分配されている入力
メッセージビット)が1に設定されているかどうか判断する。ビットM[i]が
1に設定されていないなら、発生器はステップ508に進む。一方ビットM[i
]が1に設定されている場合、発生器はステップ510に進む。ステップ510
において、発生器は、上述した多項式加算技術に従って、xモジュロPを計算
し、CとxモジュロPのXOR演算をビット毎に行なう。Cの新しい値は、X
OR計算から得られたビットに等価に設定される。発生器は次にステップ508
に進む。
【0046】 ステップ508において、発生器は32751を法としてK、5、およびR (発生器出力の次の3ビット)の和を計算する。この結果はKに等しく設定され
るので、Kは入力メッセージの次のビットが分配されるロケーションになるよう
に更新される。この計算は、ステップ510において、現在のビットM[I]の
分配後に実行される。発生器は次にステップ512に進む。ステップ512にお
いて、発生器はiを1だけインクリメントする。次に、発生器はステップ514
に進む。ステップ514において、発生器はiが1519より大きいか否か判断
する。iが1519より大きくない場合には、発生器はステップ506に戻り、
次の入力メッセージビットM[i]を処理する。一方、iが1519よりも大き
い場合には、発生器はステップ516に進む。ステップ516において、発生器
は入力メッセージのMACとしてCの値に戻る。
【0047】 他の実施形態において、ステップ508において実行される計算は65521
を法として、K、10、R(発生器出力の次の4ビット)の和を計算する。再
度その結果はKに等しく設定される。この実施形態に従って、発生器はステップ
502において、KをR16モジュロ65521に等しく設定する。この実施形
態に従って使用できる原始多項式はx16+x14+x12+x+x+x +x+x+1である。
【0048】 他の実施形態において、PRN発生器は、図7のフローチャートに示されるア
ルゴリズムステップに従って、より大きなメッセージを作ることなしに架空の「
より大きなメッセージ」のCRCとして入力メッセージMのためのMACを発生
する。この特定の実施形態において、Lは16ビットであり、Lは1520
ビットである。CRC多項式Pは16−ビットCRC−CCITT多項式P(x
)=x16+x12+x+1である。CRC値を参照するための特定のLUT
sは当業者に理解されるように容易に計算可能である。表示R(nは整数)P
RN発生器(図示せず)からの出力の次のnビットを取り込まなければならない
ことを示すために以下に使用される。この特定の実施形態において、5ビットの
一定の最小スペースが採用され、そしてPRN出力の3ビットが使用され、5ビ
ット乃至12ビットからなるビットを均一に分配したビット間にスペースを与え
る。変数Cは最終的な出力MACのアキュムレータを示す。変数Kは「より大き
なメッセージ」に載置されるべき次のビットの位置を示す。変数iは入力メッセ
ージMのビットの位置を示す。
【0049】 ステップ600において、発生器はCをR16と等しく設定する。これは、1
に設定されるランダムビット位置を選択することと等価である。発生器出力の次
の16ビットはCRCを形成する。次に、発生器はステップ602に進む。ステ
ップ602において、発生器はKをR15モジュロ32751に等しくなるよう
に設定する。これは事実上分配されるべき入力メッセージMの第1ビットの位置
である。次に、発生器はステップ604に進む。ステップ604において、発生
器はiを零に等しく設定する。発生器は次にステップ606に進む。
【0050】 ステップ606において、発生器はビットM[i](現在分配されている入力
メッセージビット)が1に設定されているかどうか判断する。ビットM[i]が
1に設定されていないなら、発生器はステップ608に進む。一方ビットM[i
]が1に設定されている場合、発生器はステップ610に進む。ステップ610
において、発生器は、上述した多項式加算技術に従って、xモジュロPを計算
し、CとxモジュロPのXOR演算をビット毎に行なう。Cの新しい値は、X
OR計算から得られたビットに等価に設定される。発生器は次にステップ608
に進む。
【0051】 ステップ608において発生器はiを1だけインクリメントする。次に発生器
はステップ612に進む。ステップ612において、発生器はiが1519より
大きいか否か判断する。iが1519より大きくないなら発生器はステップ61
4に進む。一方、iが1519より大きいなら、発生器はステップ616に進む
。ステップ616において、発生器は入力メッセージのためのMACとしてCの
値に戻る。ステップ614において、発生器は32751を法としてK,5、お
よびR(発生器出力の次の3ビット)の和を計算する。この結果はKに等しく
設定されるので、Kは入力メッセージの次のビットが分配されるロケーションに
なるように更新される。新しいビットロケーションの計算は新しいビットが分配
されようとするとき実行される。ステップ614の計算を実行後、発生器はステ
ップ606に戻り、次の入力メッセージビットM[i]を処理する。
【0052】 他の実施形態において、ステップ614において実行される計算は65521
を法として、K、10、R(発生器出力の次の4ビット)の和を計算する。再
度その結果はKに等しく設定される。この実施形態に従って、発生器はステップ
602において、KをR16モジュロ65521に等しく設定する。この実施形
態に従って使用できる原始多項式はx16+x14+x12+x+x+x +x+x+1である。
【0053】 以上MACを発生するための新規な方法および装置について述べた。当業者に
は、ここに開示した実施形態に関連して記載した種々の図示論理ブロックおよび
アルゴリズムステップは、デジタルシグナルプロセッサ(DSP)、特定用途向
け集積回路(ASIC)、ディスクリートゲートまたはトランジスタロジック、
例えばレジスタやFIFOのようなディスクリートハードウエアコンポーネント
、一連のファームウエア命令を実行するプロセッサ、あるいはいかなる一般的な
プログラマブルソフトウエアモジュールおよびプロセッサを用いて実現または実
行可能であることが理解されよう。プロセッサはマイクロプロセッサであること
が都合がよいが、一般的なプロセッサ、コントローラ、マイクロコントローラあ
るいはステートマシンであってもよい。ソフトウエアモジュールは、RAMメモ
リ、フラッシュメモリ、レジスタあるいは従来知られている他の形態の書き込み
可能な記憶媒体に常駐させることができる。さらに当業者には、上記記載を通し
て参照し得るデータ、命令、コマンド、情報、信号、ビット、シンボル、および
チップは、電圧、電流、電磁波、磁界または磁性粒子、光学フィールドまたは光
学粒子あるいはそれらの組合せによって表されると都合がよいことが理解されよ
う。
【0054】 以上、この発明の好適実施形態について図示および説明した。しかしながら、
この発明の精神または範囲を逸脱することなく、ここに開示された実施形態に対
して種々の変更を加えることができることは当業者には明らかである。それゆえ
、この発明は以下のクレームに従う場合を除いて制限されない。
【図面の簡単な説明】
【図1】 セルラ電話システムのブロック図である。
【図2】 メッセージおよび相関するメッセージ認証コード(MAC)を発生するために
使用されるプロセッサおよび相関するメモリエレメントのブロック図である。
【図3】 メッセージおよび相関するMACを発生するための発生器のブロック図である
【図4】 鍵に合わせた擬似乱数(PRN)メッセージビット配布技術を採用するために
図3の発生器において使用可能なレジスタの概略図である。
【図5】 図3の発生器において使用可能な巡回冗長検査(CRC)発生器の概略図であ
る。
【図6】 メッセージのためのMACを発生するために図3の発生器のような発生器によ
り実行される方法ステップを示すフローチャートである。
【図7】 メッセージのためのMACを発生するために図3の発生器のような発生器によ
り実行される方法ステップを示すフローチャートである。
【符号の説明】
10・・・移動加入者装置 12・・・基地局 14・・・基地局コントローラ 16・・・移動交換センタ 18・・・PSTN 100・・・MACを含むメッセージを発生するための機構 102・・・プロセッサ 104・・・ソフトウエアモジュール 106・・・記憶媒体 200・・・メッセージおよび相関するMACを発生するための発生器 202・・・鍵入力擬似乱数分配器 204・・・巡回冗長検査発生器 206・・・変調器 208・・・送信機 300・・・メッセージM 302・・・より大きなメッセージ 400・・・CRC発生器 402・・・記憶素子 404、406、408・・・加算器 410、412、414・・・スイッチ
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),OA(BF,BJ ,CF,CG,CI,CM,GA,GN,GW,ML, MR,NE,SN,TD,TG),AP(GH,GM,K E,LS,MW,MZ,SD,SL,SZ,TZ,UG ,ZW),EA(AM,AZ,BY,KG,KZ,MD, RU,TJ,TM),AE,AG,AL,AM,AT, AU,AZ,BA,BB,BG,BR,BY,BZ,C A,CH,CN,CR,CU,CZ,DE,DK,DM ,DZ,EE,ES,FI,GB,GD,GE,GH, GM,HR,HU,ID,IL,IN,IS,JP,K E,KG,KP,KR,KZ,LC,LK,LR,LS ,LT,LU,LV,MA,MD,MG,MK,MN, MW,MX,MZ,NO,NZ,PL,PT,RO,R U,SD,SE,SG,SI,SK,SL,TJ,TM ,TR,TT,TZ,UA,UG,UZ,VN,YU, ZA,ZW (72)発明者 ベンダー、ポール・イー アメリカ合衆国、カリフォルニア州 92122 サン・ディエゴ、エンジェル・ア ベニュー 2879 (72)発明者 クイック、ロイ・フランクリン・ジュニア アメリカ合衆国、カリフォルニア州 92107 サン・ディエゴ、デル・モンテ・ アベニュー 4502 (72)発明者 ウォルフ、ジャック・ケー アメリカ合衆国、カリフォルニア州 92037 ラ・ジョラ、プレストウィック・ ドライブ 8529 Fターム(参考) 5J104 AA08 FA01 NA07 NA09 NA23 5K067 AA30 BB02 EE02 EE10 EE16 GG01 GG11 HH22 HH23 HH24 HH25 HH36 KK13 KK15

Claims (29)

    【特許請求の範囲】
  1. 【請求項1】 下記工程を具備するメッセージ認証コードを発生する方法: 鍵に依存した態様で、第1の複数のメッセージビットを第2の複数のビットに
    擬似ランダム的に分配する; 前記第2複数ビットの巡回冗長検査を構成する第3の複数のビットを発生する
    ;および 前記第1の複数のメッセージビットおよび前記第3の複数のビットから構成さ
    れるメッセージ認証コードを送信する。
  2. 【請求項2】 前記発生ステップは、マイクロプロセッサ、前記マイクロプ
    ロセッサによりアクセス可能な参照テーブルおよび前記マイクロプロセッサによ
    り実行可能なソフトウエア命令群を用いて実行される、請求項1記載の方法。
  3. 【請求項3】 前記発生ステップはシフトレジスタを用いて実行される、請
    求項1記載の方法。
  4. 【請求項4】 前記擬似ランダム的に分配する工程が下記工程から構成され
    る、請求項1記載の方法: 前記第1の複数のビットの第1ビットを前記第2の複数のビットのオフセット
    ビットロケーションに載置する;および 前記第2の複数のビットのオフセットビットロケーションから予測できない数
    のビットロケーションをスキップする。
  5. 【請求項5】 前記第1の複数のビットの次のビットを前記第2の複数のビ
    ットのイニシャルビットロケーションを加える工程をさらに具備する、請求項4
    記載の方法。
  6. 【請求項6】 前記第2の複数のビットのイニシャルビットロケーションが
    到達あるいは通過されないように、前記スキップ工程でスキップされたビットロ
    ケーションの最大数を決定する工程をさらに具備する、請求項4記載の方法。
  7. 【請求項7】 前記スキップ工程においてスキップされたビットロケーショ
    ンの数は4乃至16までの2の累乗である、請求項4記載の方法。
  8. 【請求項8】 前記擬似ランダム的に分配する工程が下記工程から構成され
    る、請求項1記載の方法: 前記第2の複数のビットをほぼ均一ブロックサイズのブロックに分割する;お
    よび 前記第1の複数のビットを各ブロック内のランダムビットロケーションに載置
    し、各ブロックに1ビットが載置されるようにする。
  9. 【請求項9】 前記均一ブロックサイズは4乃至16の2の累乗である、請
    求項8記載の方法。
  10. 【請求項10】 鍵入力された順列関数を用いて前記第2の複数のビット内
    の前記第1の複数のビットの元のビットロケーションから新しいビットロケーシ
    ョンを引き出す工程から構成される、請求項1記載の方法。
  11. 【請求項11】 前記擬似ランダム的に分配する工程が下記工程から構成さ
    れる、請求項1記載の方法: 多項式xの剰余モジュロPを計算する(但し、iは前記第2の複数のビット
    の意図されたビットロケーションであり、Pは前記第3の複数のビットから引き
    出された巡回冗長検査多項式である);および 1に等しい前記第1の複数のビットの各ビットに対して、前記第3の複数のビ
    ットと前記計算された剰余のイクスクルーシブOR演算をビット毎に行なう。
  12. 【請求項12】 下記手段を具備する、メッセージ認証コードを発生するよ
    うに構成された発生器: 鍵に依存した態様で第1の複数のメッセージビットを第2の複数のビットに擬
    似ランダム的に分配する手段; 前記第2の複数のビットの巡回冗長検査を構成する第3の複数のビットを発生
    する手段;および 前記第1の複数のメッセージビットと、前記第3の複数のビットを構成するメ
    ッセージ認証コードを送信する手段。
  13. 【請求項13】 前記発生手段はマイクロプロセッサ、前記マイクロプロセ
    ッサによりアクセス可能な参照テーブル、および前記マイクロプロセッサにより
    実行可能なソフトウエア命令群から構成される、請求項12記載の発生器。
  14. 【請求項14】 前記発生手段はシフトレジスタで構成される、請求項12
    記載の発生器。
  15. 【請求項15】 前記擬似ランダム的に分配する手段が下記手段から構成さ
    れる、請求項12記載の発生器: 前記複数の第1のビットの第1ビットを前記第2の複数のビットのオフセット
    ビットロケーションに載置する手段;および 前記第2の複数のビットのオフセットビットロケーションから予測できない数
    のビットロケーションをスキップする手段。
  16. 【請求項16】 前記第1の複数のビットの次のビットを前記第2の複数の
    ビットのイニシャルビットロケーションに加える手段をさらに具備する請求項1
    5記載の発生器。
  17. 【請求項17】 前記第2の複数のビットのイニシャルビットロケーション
    が到達されないまたは通過されないように、スキップされるビットロケーション
    の最大数を決定する手段をさらに具備する、請求項15記載の発生器。
  18. 【請求項18】 前記スキップされるビットロケーションの数は4乃至16
    の2の累乗である、請求項15記載の発生器。
  19. 【請求項19】 前記擬似ランダム的に分配する手段が下記手段から構成さ
    れる、請求項12記載の発生器: 前記第2の複数のビットをほぼ均一ブロックサイズのブロックに分割する手段
    ;および 前記第1の複数のビットを各ブロック内のランダムビットロケーションに載置
    し、各ブロックに1ビットが載置されるようにする手段。
  20. 【請求項20】 前記均一ブロックサイズは4乃至16の2の累乗である、
    請求項19記載の発生器。
  21. 【請求項21】 鍵入力された順列関数を用いて前記第2の複数のビット内
    の前記第1の複数のビットの元のビットロケーションから新しいビットロケーシ
    ョンを引き出す手段から構成される、請求項12記載の発生器。
  22. 【請求項22】 前記擬似ランダム的に分配する手段が下記手段から構成さ
    れる、請求項12記載の発生器: 多項式xの剰余モジュロPを計算する手段(但し、iは前記第2の複数のビ
    ットの意図されたビットロケーションであり、Pは前記第3の複数のビットから
    引き出された巡回冗長検査多項式である);および 1に等しい前記第1の複数のビットの各ビットに対して、前記第3の複数のビ
    ットと前記計算された剰余のイクスクルーシブOR演算をビット毎に行なう手段
  23. 【請求項23】 下記手段を具備するメッセージ認証コードを発生するよう
    に構成された発生器: 鍵に依存した態様で第1の複数のメッセージビットを第2の複数のビットに擬
    似ランダム的に分配するように構成されたプロセッサ; 前記分配器に接続され、前記第2の複数のビットの巡回冗長検査を構成する第
    3の複数のビットを発生するように構成された発生器;および 前記発生器と接続され、前記第1の複数のメッセージビットと、前記第3の複
    数のビットを構成するメッセージ認証コードを送信する送信機。
  24. 【請求項24】 前記発生器は、前記マイクロプロセッサによりアクセス可
    能な参照テーブルと、前記マイクロプロセッサにより実行可能であり、メモリエ
    レメントに記憶されたソフトウエア命令群から構成される、請求項23記載の発
    生器。
  25. 【請求項25】 前記発生器はシフトレジスタから構成される、請求項23
    記載の発生器。
  26. 【請求項26】 前記プロセッサは前記第1の複数のビットの第1ビットを
    前記第2の複数のビットのオフセットビットロケーションに載置し、前記第2の
    複数のビットのオフセットビットロケーションから予測できない数のビットロケ
    ーションをスキップする、請求項23記載の発生器。
  27. 【請求項27】 前記プロセッサは前記第1の複数のビットの次のビットを
    前記第2の複数のビットのイニシャルビットロケーションに加えるように構成さ
    れる、請求項26記載の発生器。
  28. 【請求項28】 前記プロセッサは、前記第2の複数のビットをほぼ均一な
    ブロックサイズのブロックに分割し、前記第1の複数のビットを各ブロック内の
    ランダムビットロケーションに載置し、各ブロックに1ビットが載置されるよう
    にする、請求項23記載の発生器。
  29. 【請求項29】 前記プロセッサは、多項式xの剰余モジュロPを計算す
    るように構成された計算機(但し、iは前記第2の複数のビットの意図されたビ
    ットロケーションであり、Pは前記第3の複数のビットから引き出された巡回冗
    長検査多項式である)と;および1に等しい前記第1の複数のビットの各ビット
    に対して、前記第3の複数のビットと前記計算された剰余のイクスクルーシブO
    R演算をビット毎に行なう多項式加算器から構成される、請求項23記載の発生
    器。
JP2001515574A 1999-08-09 2000-08-07 メッセージ認証コードを発生するための方法および装置 Pending JP2003506750A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US37114799A 1999-08-09 1999-08-09
US09/371,147 1999-08-09
PCT/US2000/021589 WO2001011818A2 (en) 1999-08-09 2000-08-07 Method and apparatus for generating a message authentication code

Publications (1)

Publication Number Publication Date
JP2003506750A true JP2003506750A (ja) 2003-02-18

Family

ID=23462682

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001515574A Pending JP2003506750A (ja) 1999-08-09 2000-08-07 メッセージ認証コードを発生するための方法および装置

Country Status (7)

Country Link
EP (1) EP1210790A2 (ja)
JP (1) JP2003506750A (ja)
KR (1) KR20020026370A (ja)
CN (1) CN1163018C (ja)
AU (1) AU6625000A (ja)
HK (1) HK1046795B (ja)
WO (1) WO2001011818A2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2808948B1 (fr) * 2000-05-12 2006-03-03 Ibm Corp Internat Business Mac Systeme et methode pour authentifier de maniere unique chaque reproduction d'un groupe de documents electroniques
FR2839594B1 (fr) * 2002-05-10 2004-07-30 Radio Systemes Ingenierie Procede de transmission radiofrequence securisee et systeme mettant en oeuvre ce procede
US7702910B2 (en) 2002-10-24 2010-04-20 Telefonaktiebolaget L M Ericsson (Publ) Message authentication
US7103754B2 (en) 2003-03-28 2006-09-05 International Business Machines Corporation Computer instructions for having extended signed displacement fields for finding instruction operands
KR20060008976A (ko) * 2003-05-07 2006-01-27 마츠시타 덴끼 산교 가부시키가이샤 송수신 시스템
US7356710B2 (en) * 2003-05-12 2008-04-08 International Business Machines Corporation Security message authentication control instruction
US7159122B2 (en) 2003-05-12 2007-01-02 International Business Machines Corporation Message digest instructions
US7257718B2 (en) 2003-05-12 2007-08-14 International Business Machines Corporation Cipher message assist instructions
EP1856837A1 (en) 2005-03-01 2007-11-21 Nxp B.V. Generator for generating a message authentication code, method of generating a message authentication code, program element and computer-readable medium
WO2008034998A1 (fr) * 2006-09-18 2008-03-27 France Telecom Amelioration de la resistance aux attaques cryptanalytiques d'une fonction de hachage
US9455962B2 (en) * 2013-09-22 2016-09-27 Winbond Electronics Corporation Protecting memory interface

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5646997A (en) * 1994-12-14 1997-07-08 Barton; James M. Method and apparatus for embedding authentication information within digital data
EP0805575A3 (en) * 1996-05-03 2002-03-06 Texas Instruments Deutschland Gmbh Transponder

Also Published As

Publication number Publication date
WO2001011818A3 (en) 2001-06-07
HK1046795A1 (en) 2003-01-24
KR20020026370A (ko) 2002-04-09
EP1210790A2 (en) 2002-06-05
WO2001011818A2 (en) 2001-02-15
HK1046795B (zh) 2005-04-22
CN1369157A (zh) 2002-09-11
AU6625000A (en) 2001-03-05
CN1163018C (zh) 2004-08-18

Similar Documents

Publication Publication Date Title
US7007050B2 (en) Method and apparatus for improved pseudo-random number generation
US5365585A (en) Method and apparatus for encryption having a feedback register with selectable taps
US6014446A (en) Apparatus for providing improved encryption protection in a communication system
JP6397987B2 (ja) 暗号学的チェックサムの生成
KR100845166B1 (ko) 확산 스펙트럼 통신 시스템용 pn 발생기
JP5230820B2 (ja) 広帯域無線通信システムにおいて疑似ランダムシーケンスを生成する方法及び装置
US10924462B2 (en) Cryptanalysis method and system
EP1863301B1 (en) Method and apparatus for encrypting a security key in a mobile communication terminal
KR100855890B1 (ko) 대칭-키 암호에 대한 선형 변환
US10623187B2 (en) Generating cryptographic checksums
EP2122877A1 (en) Pilot transmission in a wireless communication system
JP2003506750A (ja) メッセージ認証コードを発生するための方法および装置
JP3728500B2 (ja) 変調メッセージの認証システム及び方法
JP2001520841A (ja) 情報伝送の暗号化方法及び装置
JP2003514438A (ja) ストリームサイファの効率的な不規則同期の方法と装置
JP3234202B2 (ja) 擬似雑音系列の出力装置、送信装置、受信装置、通信システム、擬似雑音系列の出力方法、送信方法、受信方法、および、情報記録媒体
EP1197035B1 (en) Method and apparatus for securely transmitting distributed challenge values (rand) for use in mobile station authentication
US6285873B1 (en) Method for generating a broadcast challenge value
JP2004511812A (ja) メッセージ認証コードのためのキーの整数の置換の生成
JP2003518797A (ja) 自己クロック方式で制御された擬似ランダム雑音(pn)シーケンスの生成
US20050047592A1 (en) Single-round enciphering apparatus and method using a reduced number of elements in a mobile communication system
CN116634421B (zh) 高安全性手机通信方法
Zibideh et al. Key-based coded permutation ciphers with improved error performance and security in wireless channels