説明

ワイヤレス遠隔通信システムのためのパケットを安全に伝送する方法

【課題】従来技術の欠点のない、送信機と受信機との間のワイヤレスリンク上でパケットを安全に伝送する方法を提供すること。
【解決手段】本発明は、ワイヤレスリンク上でパケットを安全に伝送する方法に関する。有利には、この方法はタイプII HARQプロトコルを使用する。第1のステップ(110)では、受信機がパケットの第1のバージョンを復号化することができないようにパケットの第1のバージョンが伝送される(120)。受信機は、1対の公開鍵およびプライベートキーを生成し、否定応答ならびに前記公開鍵を送信機に送り戻す。次いで、送信機は、前記公開鍵を使用して暗号化されたパケットの第2のバージョンを送信する(130)。受信機は、パケットの第1のバージョンと第2のバージョンの組合せを復号化しようと試みる(140)。成功の場合、肯定応答が送信機に送信され、失敗の場合、再伝送プロセスが反復される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ワイヤレス遠隔通信システムの分野に関し、より詳細にはセキュアード遠隔通信システムの分野に関する。
【背景技術】
【0002】
HARQ(Hybrid Automatic Repeat reQuest)プロトコルは、送信機と受信機との間のいわゆるチャネルフェージングを制御する周知の再伝送要求機構である。具体的には、このプロトコルは、HSPA(High Speed Packet Access)技術を実装する3GPPシステムで使用され、第4世代モバイルシステムで、LTE(Long Term Evolution)プロジェクトの枠組みの中で企図される。
【0003】
現在、HARQプロトコルにはいくつかのバージョンが存在する。
【0004】
タイプI HARQと呼ばれる最も単純なバージョンは、情報データブロックを誤り検出符号(EDC)および誤り訂正符号(ECC)で符号化することにより、前方誤り訂正(FEC)の利点と従来型ARQプロトコルの利点とを組み合わせる。ECC符号が訂正することのできないいくつかの誤りが検出された場合、ブロック再伝送要求が送信機に送られ、2回目の伝送試行が行われる。実際には、誤りのあるブロックは除去されず、バッファ内に格納され、2回目の試行で受信されるブロックと組み合わされる(Chase combining)。組合せ結果がデコーダにかけられる。
【0005】
タイプII HARQまたはIR HARQ(Incremental Redundancy HARQ)と呼ばれるHARQプロトコルの第2のバージョンは、冗長な伝送を回避することを可能にする。このバージョンによれば、第1のブロック伝送時に、冗長シンボルがほとんど伝送されないように符号がパンクチャリングされる。第1の伝送時に受信されたブロックに誤りがあることが判明し、利用可能な冗長シンボルを使用して訂正することができない場合、第1の伝送要求に応答して、パンクチャリング中に除去される追加の冗長シンボルが送信される。誤りのあるブロックを訂正することができない限り、再伝送要求が続行するときに、冗長シンボルが増分式に送信されてプロセスが反復される可能性がある。
【0006】
HARQプロトコルにはそれ自体、伝送されるデータをスパイ受信機による傍受の可能性に対して保護する単独の機能がない。公開鍵または秘密鍵を使用する様々な暗号化方法が現況技術で知られている。しかし、この暗号化は一般に、HARQプロトコル実装の上流側の適用レベルで実施される。一方、このプロトコルでは、タイプIであっても、タイプIIであっても、連続する再伝送により、伝送されるデータの冗長度が増大し、したがって暗号化解除のために使用される鍵が解読される確率が高まる。
【0007】
具体的には、タイプII HARQプロトコルを使用してリンク上で伝送されるパケットを符号化するためにWyner符号のファミリを使用することが、X. Tang他の、「On the throughput of secure hybrid-ARQ protocols for gaussian block-fading channels」と題する、IEEE Trans. on Information Theory、Vol. 5、N°4、2009年4月、1575〜1591頁で発行された論文で提案されている。このファミリ符号は、冗長度増分の伝送に伴う様々なパンクチャリング率に適合するという利点を有する。
【0008】
しかし、上述のセキュアード伝送方法は、伝送されたパケットを復号化するために大量の補助情報が受信機に送られることを仮定する。さらに、上述のセキュアード伝送方法は実装するのが比較的複雑であり、したがって「リアルタイム」型の応用分野には適しておらず、低待ち時間制約を満たすことが可能ではない。最後に、上述のセキュアード伝送方法は、送信機と受信機との間のチャネル品質が送信機とスパイ受信機との間のチャネル品質よりも良好である限りにおいてのみ動作する。
【先行技術文献】
【非特許文献】
【0009】
【非特許文献1】X. Tang他、「On the throughput of secure hybrid-ARQ protocols for gaussian block-fading channels」、IEEE Trans. on Information Theory、Vol. 5、N°4、2009年4月、1575〜1591頁
【発明の概要】
【発明が解決しようとする課題】
【0010】
一般に、本発明の目的は、従来技術の欠点のない、送信機と受信機との間のワイヤレスリンク上でパケットを安全に伝送する方法を提供することである。
【0011】
具体的には、本発明の目的は、実装が単純であり、「リアルタイム」型の応用分野に適合すると共に、非常に高い機密性レベルを示す、タイプII HARQプロトコルを使用してパケットを安全に伝送する方法を提供することである。
【課題を解決するための手段】
【0012】
本発明は、送信機と受信機との間のワイヤレスリンク上でデータパケットを安全に伝送する方法によって定義され、
送信機が、前記パケットをデコーダで復号化することを可能にしないデータパケットの第1のバージョンを前記リンク上で送信し、
パケットの第1のバージョンの復号化失敗の結果として、受信機が、第1のプライベートキーおよび対応する第1の公開鍵からなる第1の1対の鍵を生成し、送信機に第1の公開鍵を送信し、
送信機が、第1の公開鍵から得られた第1の暗号鍵によって暗号化された前記パケットの第2のバージョンを前記リンク上で送信し、
受信機が、パケットの第2のバージョンを暗号化解除し、前記第1のバージョンと第2のバージョンを組み合わせ、前記パケットの第1の組合せバージョンを得て、そのようにして得られた第1の組合せバージョンの復号化を実施する。
【0013】
第1のまたは第2の実施形態によれば、第1の暗号鍵は前記第1の公開鍵であり、受信機は、前記第1のプライベートキーを使用してパケットの第2のバージョンを暗号化解除する。
【0014】
好ましくは、第1の組合せバージョンの復号化が失敗した場合、
受信機が、第2のプライベートキーおよび対応する第2の公開鍵からなる第2の1対の鍵を生成し、
送信機が、第2の公開鍵を使用して前記パケットの第3のバージョンを暗号化した後、前記パケットの第3のバージョンを前記リンク上で送信し、
受信機が、第2のプライベートキーを使用してパケットの第3のバージョンを暗号化解除し、そのようにして暗号化解除した第3のバージョンを少なくとも第1の暗号化解除バージョンまたは第2の暗号化解除バージョンと組み合わせ、前記パケットの第2の組合せバージョンを得て、そのようにして得られた第2の組合せバージョンの復号化を実施する。
【0015】
第3のまたは第4の実施形態によれば、送信機が、送信機プライベートキーと呼ばれるプライベートキーと、送信機公開鍵と呼ばれる、対応する公開鍵とからなる1対の鍵を生成し、送信機はストリーム暗号化を実施し、したがってパケットの第2のバージョンを暗号化するのに使用される第1の暗号鍵が、送信機プライベートキーと受信機第1の公開鍵の積として得られる。
【0016】
この場合、受信機が、送信機公開鍵と受信機第1のプライベートキーの積として得られた前記第1の暗号鍵を使用して、パケットの第2のバージョンを暗号化解除する。
【0017】
有利には、第1の組合せバージョンの復号化が失敗した場合、
受信機が、第2のプライベートキーおよび対応する第2の公開鍵からなる第2の1対の鍵を生成し、送信機に前記第2の公開鍵を送信し、
送信機が、ストリーム暗号化を使用して送信機プライベートキーと受信機第2の公開鍵の積として得られた第2の暗号鍵で前記パケットの第3のバージョンを暗号化した後、前記パケットの第3のバージョンを前記リンク上で送信する。
【0018】
次いで受信機が、送信機公開鍵と受信機第2のプライベートキーの積として得られた前記第2の暗号鍵を使用して、パケットの第3のバージョンを暗号化解除し、そのようにして暗号化解除した第3のバージョンを少なくとも第1のまたは第2の暗号化解除バージョンと組み合わせ、前記パケットの第2の組合せバージョンを得て、そのようにして得られた第2の組合せバージョンの復号化を実施する。
【0019】
有利には、パケットの第1のバージョンが、このパケットを誤り訂正符号によって符号化し、その後に続いて、そのようにして符号化されたパケットを前記符号の訂正能力を超える復号化率で第1のパンクチャリングすることによって得られる。
【0020】
パケットの第2のバージョンは、符号化パケットの第1のパンクチャリングによって除去されたシンボルを含むことができる。
【0021】
パケットの第2のバージョンは、符号化パケットの第2のパンクチャリングによって得ることができ、パケットの第3のバージョンは、第1のおよび/または第2のパンクチャリング(複数可)によってパンクチャリングされたシンボルを含む。
【0022】
パケットの第2のバージョンの暗号化は、第2のパンクチャリング後に実施することができる。
【0023】
有利には、パケットの符号化は系統的なタイプでよく、第1のパンクチャリングは、符号化パケットの系統的シンボルを除去する。
【0024】
好ましくは、伝送方法はタイプII HARQプロトコルを実装する。
【0025】
好ましくは、第1のおよび第2のプライベートキーが同じ種(germ)から生成される。
【0026】
この種は通常、不可逆関数による処理を受け、そのようにして処理された種がプライベートキーとして使用され、対応する公開鍵が、プライベートキーから、例えば楕円曲線特性を利用するアルゴリズムによって得られる。
【0027】
添付の図を参照しながら説明される本発明の好ましい実施形態を考えると、本発明の他の特徴および利点が明らかとなるであろう。
【図面の簡単な説明】
【0028】
【図1】本発明の第1の実施形態による、パケットを安全に伝送する方法を示す略図である。
【図2】本発明の第2の実施形態による、パケットを安全に伝送する方法を示す略図である。
【図3】本発明の第3の実施形態による、パケットを安全に伝送する方法を示す略図である。
【図4】本発明の第4の実施形態による、パケットを安全に伝送する方法を示す略図である。
【図5】本発明の第1のまたは第2の実施形態によるパケットを安全に伝送する方法を実装する送信機の構造を示す略図である。
【図6】本発明の第1のまたは第2の実施形態によるパケットを安全に伝送する方法を実装する受信機の構造を示す略図である。
【図7】本発明の第3のまたは第4の実施形態によるパケットを安全に伝送する方法を実装する送信機の構造を示す略図である。
【図8】本発明の第3のまたは第4の実施形態によるパケットを安全に伝送する方法を実装する受信機の構造を示す略図である。
【発明を実施するための形態】
【0029】
以下では、ワイヤレス遠隔通信システム、より具体的にはパケット伝送を使用する送信機と受信機との間のワイヤレスリンクを考慮する。
【0030】
送信機は移動端末でよく、受信機は基地局でよい(アップリンク)。あるいは、送信機は基地局でよく、受信機は移動端末でよい(ダウンリンク)。
【0031】
さらに、送信されるパケットが、誤り訂正符号ECC、および必要なら周期的冗長検査(CRC)を使用してあらかじめ符号化されると仮定する。
【0032】
次いで、そのようにして符号化されたパケットが、以下で詳述するように(秘密鍵を用いた)対称暗号化アルゴリズムまたは(公開鍵を用いた)非対称暗号化アルゴリズムによって暗号化される。
【0033】
いずれにしても、受信機は、受信したパケットが正しいか、それとも誤りがあるかを判定することができる。
【0034】
本発明の第1の実施形態による伝送方法は、図1に示されるように、複数の連続するパケットの伝送を実装する。
【0035】
より正確には、第1のステップ110では、送信機は、受信機が復号化することができないという特徴を有する、このパケットの第1のバージョンν1(P1)を送信する。パケットのバージョンにより、このパケットのシンボルのサブセットが意図される。例えば、パケットがシンボルのシーケンスからなる場合、シーケンスのいくつかのシンボルが除去されたパケットであるパンクチャドパケットが、このパケットのバージョンとみなされる。
【0036】
通常、受信機で復号化可能ではない、パケットの第1のバージョンは、誤り訂正符号化と、その後に続く、符号の訂正能力を超えるパンクチャリング率での符号化パケットのパンクチャリングとによって得られる。
【0037】
したがって、例えば、パケットがリードソロモン符号(n,k)で符号化される場合、符号化され、次いでs>n-k個のシンボルが削除されるようにパンクチャリングされたパケットが、当該のパケットの復号化不能バージョンとなる。
【0038】
別の例によれば、パケットがいくつかの系統的リカーシブコーダの並列連結(parallel concatenation)からなるターボコーダを使用して符号化される場合、系統的部分が完全にパンクチャリングされていることになる、そのようにして符号化されたパケットが、このパケットの復号化不能バージョンとなる。
【0039】
もちろん、本発明の範囲から必ずしも逸脱することなく、パケットの復号化不能バージョンの他の例を企図することもできる。
【0040】
ステップ120で、受信機が、パケットの第1のバージョンの復号化を実施する。この第1のバージョンは、パケット内に含まれるすべての情報シンボルを再構成することを可能にしないので、この復号化が失敗するのは不可避である。しかし、受信機は、以下で詳述するように、この第1のバージョンを受信バッファ内に格納し、その後でこの第1のバージョンを実行することができる。復号化失敗は灰色で表され、成功は明るい色で表される。
【0041】
この第1のバージョンを傍受するスパイ受信機がパケットを復号化することはできないことを理解されよう。高い機密性レベルを保証するために、有利には、高いパンクチャリング率が送信機で使用される。
【0042】
復号化失敗の結果として、受信機は、1ビット上で符号化される否定応答NACKを送り返す。
【0043】
受信機はまた、第1のプライベートキーprk1および対応する第1の公開鍵puk1からなる第1の1対の鍵(prk1,puk1)と、それ自体周知の非対称暗号化アルゴリズム、例えば楕円曲線の特性を利用するアルゴリズムとを生成する。第1の公開鍵puk1は、否定応答NACKと共に送信機に送られる。
【0044】
NACK信号の受信時に、送信機は、ステップ130で、第1の公開鍵puk1を使用してパケットの第2のバージョンν2(P1)を暗号化した後に、パケットの第2のバージョンν2(P1)を送信する。
【0045】
パケットの第2のバージョンは、パケットの第2のパンクチャリングによって得られる。有利には、パケットの第2のバージョンは、第1のパンクチャリングステップによって除去されたシンボルからなる。さらに、この第2のバージョンは、パケットの第1のバージョン内に既に存在するいくつかのシンボルも含むことができる。
【0046】
ステップ140で、受信機は、第1の公開鍵puk1によって暗号化されたパケットの第2のバージョンを受信し、第1のプライベートキーprk1を使用してパケットの第2のバージョンを暗号化解除する。
【0047】
次いで、受信機は、パケットの第1のバージョンと第2のバージョンを組み合わせ、このパケットの第1の組合せバージョンを得る。
【0048】
第2のバージョンが第1のパンクチャリングステップによって除去されたシンボルのみからなるとき、組合せは、除去されたシンボルではなく、第2のバージョンのシンボルを挿入することからなる。その場合、厳密に言えばパケットデパンクチャリング(packet depuncturing)である。第2のバージョンのいくつかのシンボルが第1のバージョン内に既に存在していた場合、組合せはChaseタイプとなり(Chase Combining)、すなわちその場合、組合せは、どちらのバージョンにも存在するシンボルのソフト値の合計でよい。一般に、組合せは、デパンクチャリングステップ(除去されたシンボルの挿入または連結)と、どちらのバージョンにも存在するシンボルに関するソフト値を加えるステップのどちらも含むことができることを理解されよう。
【0049】
次いで、受信機は、第1の組合せバージョンの第2の復号化試行を実施する。
【0050】
成功した場合、すなわち誤りがない場合、受信機は、送信機に肯定応答ACKを送り返す。次いで、送信機は、新しいパケットを送信する準備ができている。
【0051】
新しい失敗の場合、図1に示されるように、先行するプロセスが反復され、すなわち、第2のプライベートキーprk2および対応する第2の公開鍵puk2からなる第2の1対の鍵が生成される。受信機は、否定応答NACKならびに第2の公開鍵puk2を送信機に送り返す。
【0052】
信号NACKの受信時に、150で、送信機は、第3のパケットパンクチャリングによって得られるパケットの第3のバージョンν3(P1)を送信する。有利には、第3のバージョンは、第1のおよび/または第2のパンクチャリングステップによって除去されたシンボルからなる。最後に、この第3のバージョンは、先行するバージョンと同様に、そのようなものとして送信されるのではなく、今回は第2の公開鍵puk2により、あらかじめ暗号化される。
【0053】
160で、受信機は、この第3のバージョンを暗号化解除し、そのようにして暗号化解除されたバージョンを、格納された第1のおよび/または第2のバージョン(複数可)と組み合わせ、第2の組合せバージョンを得て、第2の組合せバージョンの復号化を実施する。そのような組合せが上記と同じ原理に従って実施されることに留意されよう。
【0054】
送信機が肯定応答ACKを受信するまで、または同一のパケットの連続するバージョンの最大許容数が伝送されるまで、さらにはパケットのすべてのシンボルが既に送信されるまで、再伝送プロセスは続行する。
【0055】
パケットの新しいバージョンの各伝送で暗号鍵を変更することにより、リンク上の非常に高い機密性レベルが保証されることを理解されよう。
【0056】
代替実施形態によれば、Q≧2回の復号化失敗ごとにのみ、新しい暗号鍵を生成することができる。言い換えれば、パケットの復号化に成功しない受信機だけが、Qごとに新しい1対の公開鍵およびプライベートキーを生成する。
【0057】
送信機が肯定応答ACKを受信するとすぐに、送信機は、放出バッファ(emitting buffer)内に存在する次のパケットを送信することができる。HARQプロトコルのこの動作モードは、stop-and-waitと呼ばれる。言い換えれば、送信機は、次のパケットを送信する前に現パケットが実際に受信されることを確認するために待機する。
【0058】
あるいは、本発明は、それ自体周知の、Go-Back-N ARQモードまたは選択的反復ARQモード(selective repeat ARQ mode)を使用することができる。こうした動作モードでは、送信機は、次のパケットを送信するためにパケットの肯定応答を待機しないことを思い起こされよう。
【0059】
より正確には、Go-Back-N ARQモードでは、送信機は、Nパケットのサイズを有するスライディング時間ウィンドウを使用する。サイズNは、送信機が肯定応答ACKを受信することなく送信することのできるパケット数を定義する。送信機がN個のパケットの後に肯定応答を受信しなかった場合、送信機は、それに関する肯定応答ACKを受信しなかったパケットから送信を再開する。
【0060】
「選択的反復ARQ」モードは、受信機が、誤りのあるパケットを受信した後であっても、適切に復号化されたパケットごとに肯定応答ACKを送信する点で、先行するモードとは異なる。送信機がNACK信号を受信した場合、送信機は、誤りのあるパケットをその場で再送信し、次いでその伝送を、伝送を停止した所で再開する。
【0061】
別の代替実施形態では、本発明は、それ自体周知の方式で「N-Stop-and-Wait」モードを使用することができる。そのようなモードは、パケットの伝送とその肯定応答の受信との間の、「Stop-and-Wait」モードの待ち時間を、この時間間隔で新しいパケットを送信することによって有利に使用することを可能にすることを思い起こされよう。各パケットは、互いに独立に処理される。
【0062】
重要な点は、「Go-Back-N ARQ」モード、「選択的反復ARQ」モード、および「N-Stop-and-Wait」モードを本発明の第1の実施形態と組み合わせて使用できることである。話を簡潔にするため、かつ一般化を損なうことなく、以下では選択的反復ARQモードだけを説明する。
【0063】
図2は、本発明の第2の実施形態による、パケットを安全に伝送する方法を表す。より正確には、この実施形態は、選択的反復ARQ再伝送プロトコルを使用し、例としてN=4を取り上げる。
【0064】
第1のステップでは、送信機は、対応する肯定応答を待機することなく、パケットの第1のバージョンν1(P11(P21(P31(P4)を送信することに留意されたい。第1のバージョンν1(P11(P21(P31(P4)は復号化可能ではないので、受信機は、否定応答NACK1,...,NACK4ならびに公開鍵
【0065】
【数1】

【0066】
を送信機に送り返す。
【0067】
次いで、送信機は、時間ウィンドウの先頭で、対応する肯定応答を待機することなく、公開鍵
【0068】
【数2】

【0069】
をそれぞれ使用して符号化された第2のバージョンν2(P12(P22(P32(P4)の伝送で送信を再開する。受信機は、対応するプライベートキー
【0070】
【数3】

【0071】
を使用して、パケットの第2のバージョンを復号化する。
【0072】
すべての4つのパケットについて、受信機は、第1のバージョンと第2のバージョンを組み合わせ、得られた組合せの新しい復号化を試みる。図示されるケースでは、パケットP2、P3について復号化が失敗し、パケットP1、P4について復号化が成功する。したがって、受信機は、ACK1、NACK2と新しい公開鍵
【0073】
【数4】

【0074】
、NACK3と新しい公開鍵
【0075】
【数5】

【0076】
、ならびにACK4を送り返す。
【0077】
送信機が肯定応答を受信したとき、送信機は新しいパケットに移り、その第1のバージョンを送信する。したがって、ACK1の後、送信機はパケットP5を送信し、ACK4の後、送信機はパケットP6を送信する。
【0078】
逆に、送信機が否定応答を受信したとき、送信機は、対応するパケットの新しいバージョンをその場で送信する。したがって、NACK2の後、送信機は、鍵
【0079】
【数6】

【0080】
を使用して暗号化された、パケットP2の第3のバージョンν3(P2)を送信する。さらに、NACK3の後、送信機は、鍵
【0081】
【数7】

【0082】
で暗号化された、パケットν3(P3)の第3のバージョンを送信する。
【0083】
図示される例では、新しい1対の公開鍵およびプライベートキーが、パケットのそれぞれの復号化失敗で生成される。しかし、この生成は、Q回の連続する失敗の後にのみ行うことができる。例えば、Q=N=4と仮定することができる。この場合、パケットの第2のバージョンが同じ公開鍵で暗号化されることに留意されよう。2つの鍵生成の間の失敗数Qは、依然として乱数コンピュータ選択の結果として生じる可能性がある。
【0084】
この1対のプライベートキーと公開鍵の受信機での生成は、種を使用することができ、有利には、種は、電源オンごとに、かつ/または新しい通信の設定ごとにリセットすることができる。例えば、種は、所与のフォーマットに従って表現された、ユーザのPINコードと通信のスタートアップ/設定時間との間のXOR演算を使用して得ることができる。さらにこの種に、生成された鍵の単なる観察からスパイが種に戻すことを防止するように不可逆関数による処理を施すことができる。例えば、この処置は、複雑な算術演算と、その後に続く、素数に関するモジュロからなることができる。もちろん、本発明の範囲から必ずしも逸脱することなく、他の例を企図することもできる。
【0085】
処理の結果は、受信機に関するプライベートキーとしての働きをする。対応する公開鍵が、それ自体周知の方式で、例えば、より短い鍵を生成するという利点を有する、RSAアルゴリズム、楕円曲線暗号アルゴリズムを使用して生成される。
【0086】
図3は、本発明の第3の実施形態による、パケットを安全に伝送する方法の略図を示す。この実施形態は、非対称暗号化アルゴリズムの代わりにストリーム暗号化アルゴリズムが使用される点で第1の実施形態とは異なる。
【0087】
ストリーム暗号化が、特定のタイプの対称暗号化、言い換えれば送信機と受信機(ボブとアリス)との間で共有される秘密鍵を使用する暗号化であることを思い起こされよう。より正確には、ストリーム暗号化は一般に、暗号化擬似ランダム2進ストリーム(encryption pseudo-random binary stream)と、暗号化すべきメッセージのビットとの間の組合せを(例えば排他的論理和XORによって)実施する。擬似ランダム2進ストリームは秘密鍵を使用して生成され、例えば、この鍵を使用して線形フィードバックシフトレジスタの内容を設定することによって生成される。ストリーム暗号化アルゴリズムの中で、具体的にはRC4アルゴリズムまたはPyアルゴリズムを使用することができる。
【0088】
有利には、セッション鍵とも呼ばれる秘密鍵が、送信機の1対の非対称鍵と、受信機の1対の非対称鍵(pukr,prkr)とを使用して生成される。これを行うために、送信機は、1対の非対称鍵(puke,prke)を生成し、この対の公開鍵pukeを受信機に送信する。逆に、受信機も1対の非対称鍵(pukr,prkr)を生成し、この対の公開鍵を送信機に送信する。次いで、送信機と受信機のそれぞれは、以下の特性から秘密鍵Ksを生成する。
Ks=puke・prkr=pukr・prke
【0089】
積pukr・prkeは送信機で計算され、積puke・prkrは受信機で計算される。
【0090】
図3に戻ると、310で、送信機は、第1の実施形態と同様にパンクチャリングによって得られたパケットP1の第1の復号化不能バージョンν1(P1)を送信する。
【0091】
しかし、第1の実施形態とは異なり、送信機は、この新しいバージョンと共に、このセッションのためにあらかじめ生成した1対の非対称鍵puke,prkeの公開鍵pukeを送信する。表現されていない代替実施形態によれば、公開鍵pukeが前のステップで、例えば伝送初期化中に受信機に送信されている。
【0092】
ステップ320で、受信機は、パケットの第1のバージョンが復号化不能であると判定し、否定応答NACK、ならびにこのセッションのためにあらかじめ生成した第1の1対の非対称鍵の公開鍵pukr1を送り返す。
【0093】
320で、受信機は、秘密セッション鍵をKs1=puke・prkr1で計算する。
【0094】
信号NACKの受信時に、ステップ320で、送信機は、セッション秘密鍵を使用してパケットの第2のバージョンν2(P1)を暗号化した後、パケットの第2のバージョンν2(P1)を送信する。これを行うために、送信機は、あらかじめこの鍵をKs1=prke・pukr1で計算する。
【0095】
パケットの第2のパンクチャリングによってパケットの第2のバージョンが得られる。有利には、パケットの第2のバージョンは、第1のパンクチャリングステップで除去されたシンボルからなる。さらに、この第2のバージョンは、パケットの第1のバージョン内に既に存在するいくつかのシンボルをも含むことができる。
【0096】
340で、このようにして暗号化されたパケットの第2のバージョンが、受信機で秘密セッション鍵によって暗号化解除される。
【0097】
次いで、受信機は、パケットの第1のバージョンと第2のバージョンを組み合わせ、このパケットの第1の組合せバージョンを得る。
【0098】
第1の実施形態について企図される異なる代替実施形態(Chase Combiningタイプの組合せを用いた、または用いないデパンクチャリング)も本明細書では適用可能である。
【0099】
次いで、受信機は、そのようにして組み合わせたバージョンの第2の復号化試行を実施する。
【0100】
成功した場合、すなわち誤りがない場合、受信機は、肯定応答ACKを送信機に送り返す。次いで、送信機は、新しいパケットを送信する準備ができている。
【0101】
新しい失敗の場合、340で示されるように、先行するプロセスが反復され、言い換えれば、第2のプライベートキーprkr2および対応する第2の公開鍵pukr2からなる新しい1対の非対称鍵が受信機によって生成される。受信機は、否定応答NACKならびに第2の公開鍵pukr2を送信機に送り返す。340で、受信機はまた、第2の秘密セッション鍵もKs2=puke・prkr2で計算する。
【0102】
信号NACKの受信時に、350で、送信機は、第2の秘密セッション鍵Ks2を使用してパケットの第3のバージョンν3(P1)を暗号化した後、パケットの第3のバージョンν3(P1)を送信する。有利には、この第3のバージョンは、第1のおよび/または第2のパンクチャリングステップで除去されたシンボルからなる。
【0103】
さらに、第2のセッション鍵が、送信機によってKs2=prke・pukr2であらかじめ計算されていることになる。
【0104】
360で、受信機は、第2の秘密セッション鍵Ks2を使用してこの第3のバージョンを暗号化解除し、上記と同じ原理に従って、このようにして暗号化解除したこの第3のバージョンを、格納された第1のおよび/または第2のバージョン(複数可)と組み合わせ、第2の組合せバージョンを得る。次いで、受信機は、第2の組合せバージョンの復号化を実施する。
【0105】
送信機が肯定応答ACKを受信するまで、または同一のパケットの連続するバージョンの最大許容数が伝送されるまで、さらにはパケットのすべてのシンボルが既に送信されるまで、再伝送プロセスは続行する。
【0106】
新しいバージョンの各伝送でセッション鍵を変更することにより、リンク上の非常に高い機密性レベルが保証される。
【0107】
さらに、ストリーム暗号化は、チャネル復号化をあまり乱さないという利点を有する。暗号化メッセージ上の可能な伝送誤りが、増幅なしに、すなわち非暗号化メッセージに対してその数を大幅に増加させることなく現れる。
【0108】
上記のように、「Go-Back-N ARQ」モード、「選択的反復ARQ」モード、および「N-Stop-and-Wait」モードを本発明の第3の実施形態と組み合わせて使用できることに留意することは重要である。話を簡潔にするため、かつ一般化を損なうことなく、以下では選択的反復ARQモードだけを説明する。
【0109】
図4は、本発明の第4の実施形態による、パケットを安全に伝送する方法の略図を示す。
【0110】
この実施形態は、第2の実施形態と同様の選択的反復ARQ伝送モードと、第3の実施形態と同様のストリーム暗号化とを使用する。
【0111】
前のステップで、例えば伝送の初期化時、またはN=4パケットのシーケンスの伝送のかなり前に、送信機が1対の非対称鍵(puke,prke)を生成し、この対の公開鍵pukeを受信機に送信したと仮定する。あるいは、この公開鍵をパケットの第1のバージョンν1(P11(P21(P31(P4)と連結することによってこの公開鍵を送信することもできる。
【0112】
第2の実施形態と同様に、送信機は、対応する肯定応答を待機することなく、パケットの第1のバージョンν1(P11(P21(P31(P4)を送信する。第1のバージョンν1(P11(P21(P31(P4)は復号化可能ではないので、受信機は、否定応答NACK1,...,NACK4ならびに公開鍵
【0113】
【数8】

【0114】
を送信機に送り返す。受信機はまた、
【0115】
【数9】

【0116】
で秘密セッション鍵も計算する。
【0117】
次いで、送信機は、こうした同一の秘密セッション鍵を、i=1,...,4として
【0118】
【数10】

【0119】
で計算する。次いで、送信機は、時間ウィンドウの先頭で、対応する肯定応答を待機することなく、秘密鍵
【0120】
【数11】

【0121】
をそれぞれ使用して符号化された第2のバージョンν2(P12(P22(P32(P4)の伝送で送信を再開する。
【0122】
受信機は、既に計算した秘密鍵
【0123】
【数12】

【0124】
を使用して、パケットの第2のバージョンを復号化する。次いで、すべての4つのパケットについて、受信機は、第1のバージョンと第2のバージョンを組み合わせ、得られた組合せの新しい復号化を試みる。図示されたケースでは、復号化がパケットP2およびP3について失敗し、パケットP1およびP4について成功する。したがって、受信機は、ACK1、NACK2と新しい公開鍵
【0125】
【数13】

【0126】
、NACK3と新しい公開鍵
【0127】
【数14】

【0128】
、ならびにACK4を送り返す。
【0129】
次いで、送信機は、秘密セッション鍵
【0130】
【数15】

【0131】
および
【0132】
【数16】

【0133】
を計算する。
【0134】
一般に、送信機が肯定応答を受信したとき、送信機は新しいパケットに移り、その第1のバージョンを送信する。したがって、ACK1の後、送信機はパケットP5を送信し、ACK4の後、送信機はパケットP6を送信する。
【0135】
逆に、送信機が否定応答を受信したとき、送信機は、対応するパケットの新しいバージョンをその場で送信する。したがって、NACK2の後、送信機は、鍵
【0136】
【数17】

【0137】
を使用して暗号化された、パケットP2の第3のバージョンν3(P2)を送信する。さらに、NACK3の後、送信機は、鍵
【0138】
【数18】

【0139】
で暗号化されたパケットの第3のバージョンν3(P3)を送信する。
【0140】
図4に示される例では、受信機は、パケットのそれぞれの復号化失敗で新しい1対の非対称鍵を生成し、新しいバージョンの暗号化のために使用される新しい秘密セッション鍵を得る。
【0141】
しかし、この生成は、Q回の連続する失敗の後にのみ行うことができる。例えば、Q=N=4と仮定することができる。この場合、パケットの第2のバージョンが同じ秘密セッション鍵で暗号化されることに留意されよう。2つの鍵生成の間の失敗数Qは、依然として乱数コンピュータ選択の結果として生じる可能性がある。
【0142】
最後に、送信機は、非対称鍵の対(puke,prke)を定期的またはランダムに更新することができる。各更新で、新しい公開鍵pukeが受信機に送信される。
【0143】
送信機および/または受信機での非対称鍵の対の生成は、上述のような種で行うことができる。有利には、送信機および受信機は異なる種を使用する。
【0144】
図5は、実装すべき本発明の第1のまたは第2の実施形態によるセキュアード伝送方法を実装する送信機の構造の略図を示す。
【0145】
送信機は、誤り訂正符号と、必要なら誤り検出符号とを使用してパケット500を符号化するコーダ510を備える。誤り訂正コーダは、ブロック符号化、例えばリードソロモン型符号化またはBCH符号化、畳み込み符号化、パラレルまたはシリアルターボ符号化、さらにはLDPC(低密度パリティチェック符号)符号化を実施することができる。
【0146】
パンクチャラ(puncturer)520は、そのように符号化されたパケットを、様々な可能なパンクチャリング率でパンクチャリングする。パンクチャリング率は、受信機で必要とされるパケットのバージョン数の関数である。上記で見たように、第1のバージョンは、受信機での復号化を可能にしない高パンクチャリング率でパンクチャリングされる。例えば、コーダ510が系統的符号化を使用する場合、第1のパンクチャリングは、すべての系統的シンボルを除去することができる。パケットの続くバージョンでは、2つの代替実施形態を企図することができる。
【0147】
第1の代替実施形態によれば、パンクチャラ520は、パケットの続くバージョン(すなわち、第1の再伝送、第2の再伝送など)について、以前のパンクチャリング中に除去されたシンボルを提供するだけである。例えば、コーダ510が系統的符号化を使用する場合、パンクチャラは、パケットの連続するバージョンで、系統的シンボルを提供することができ、次いで、第1のパンクチャリングステップ中に除去された冗長シンボルを提供することができる。この代替実施形態の利点は、新しい各再伝送で新しいシンボルだけを送信することである。
【0148】
第2の代替実施形態によれば、パンクチャラ520は、パケットの第2のバージョン、第3のバージョンなどについて、以前のパンクチャリング中に除去されたシンボルだけではなく、このパケットの以前のバージョンで存在したシンボルも提供する。この代替実施形態の利点は、Chase combiningタイプの組合せを可能にし、したがって低信号対雑音比の場合にパケットの復号化がより迅速となることである。
【0149】
次いで、パンクチャラによって提供されるパケットバージョンが、本明細書でpuk(n)と示される公開鍵を使用して暗号化される。これが受信機によってあらかじめ送信される。
【0150】
図6は、本発明の第1のまたは第2の実施形態によるセキュアード伝送方法を実装する受信機の構造を示す略図である。
【0151】
受信機は受信バッファ610を備え、その中に着信パケットが格納される。パケットは、暗号化解除モジュール620によって、公開鍵puk(n)に関連するプライベートキーprk(n)を使用して暗号化解除される。
【0152】
次いで、このようにして暗号化解除されたパケットバージョンが、モジュール630で処理される。このモジュールは、同じパケットのいくつかの利用可能なバージョンの組合せを実施して、組合せバッファ(図示せず)で組合せバージョンを提供する。受信したシンボルが同じパケットの連続するバージョンで提供されるので、モジュール630は、受信したシンボルでイレージャ(erasure)を置き換える(デパンクチャリング)。必要なら、シンボルがパケットの様々なバージョンで提示されるとき、モジュール630は、例えば同じシンボルのソフト値を合計する。モジュール630は、(バージョンヘッダで送信され、またはカウンタを増分することによって得られる)パケットのバージョン数に関する1つの情報を受信し、その情報から、置き換えるべきイレージャおよび/または合計すべきシンボルのソフト値を推論する。
【0153】
合計機能およびパンクチャリング機能は、このモジュールの実体によって、それが別個のものであってもなくても実行することができる。新しい各バージョンが先行するバージョンのない新しいシンボルを含む場合、言い換えれば新しい各バージョンが冗長度増分である場合、合計機能は実装されない。一般に、組合せがデパンクチャリングステップ(新しいバージョンから受信したシンボルでは、組合せバッファで既に利用可能なシンボルを完了する)と、必要なら加算ステップ(新しいバージョンのシンボルのソフト値が、組合せバッファ内に既に存在するシンボルのソフト値にそれぞれ加算される)とを含むことを理解されよう。この操作の終わりに、組合せバッファはパケットの組合せバージョンを含む。
【0154】
次いで、パケットの組合せバージョンが、デコーダ640を使用して復号化される。このデコーダは、パケットが復号化可能であるか否かを示す。パケットが復号化可能である場合、641で、デコーダは、復号化パケットPを提供し、443で、送信機に肯定応答ACKを送信する。逆の場合、643で、デコーダは否定応答NACKを送信し、(puk(n+1),prk(n+1))と示される新しい1対の公開鍵およびプライベートキーを生成するようにモジュール650に命令する。645で、プライベートキーは受信機で格納され、公開鍵は送信機に送信される。好ましくは、プライベートキーは、対応する公開鍵を使用して暗号化されたパケットのバージョン(複数可)が受信され、暗号化解除されるとすぐに削除される。
【0155】
最後に、「Go-Back-N ARQ」モード、「選択的反復ARQ」モード、および「N-Stop-and-Wait」モードでは、N個のパケットが連続的に受信され、シリアルおよび/またはパラレルモードで互いに独立に処理することができることが確認された。この場合、任意選択でいくつかの共通モジュールを共有する、いくつかの処理ライン、例えば図6に示されるようなN個の処理ラインを、こうしたモジュールの入力および/または出力での多重化を犠牲にして設けることができる。
【0156】
図7は、本発明の第3のまたは第4の実施形態によるセキュアード伝送方法を実装する送信機の構造の略図を示す。
【0157】
モジュール710から740は、それぞれ図5のモジュール510から540と同一である。しかし、この図とは異なり、送信機は、1対の非対称鍵(puke,prke)の発生器745を備える。公開鍵pukeは、別個に、または例えばパケットの第1のバージョンに連結することによって受信機に送信される。745での鍵の発生は、受信機よりもかなり低い速度で、例えば各設定で行われる。秘密セッション鍵(第3の実施形態ではKsi、第4の実施形態では
【0158】
【数19】

【0159】
)が、747で、送信機のプライベートキーprkeに、受信機から受信された公開鍵(実施形態に応じてpukriまたは
【0160】
【数20】

【0161】
)を掛けることによって得られる。
【0162】
図8は、本発明の第3のまたは第4の実施形態によるセキュアード伝送方法を実装する受信機の構造の略図を示す。
【0163】
モジュール810から840は、それぞれ図6のモジュール610から640と同一である。しかし、この図とは異なり、受信機は、本明細書では、860で、送信機から受信される公開鍵pukeに、ローカルに生成されたプライベートキー(実施形態に応じてprkriまたは
【0164】
【数21】

【0165】
)を掛けることにより、暗号化解除のために使用される秘密セッション鍵(第3の実施形態ではKsi、第4の実施形態では
【0166】
【数22】

【0167】
)を計算する。
【0168】
パケットが復号化可能ではない(かつ否定応答が送られる)ごとに、またはQ回の連続する失敗の後にのみ、850で新しい1対の非対称鍵が自動的に生成される。
【符号の説明】
【0169】
100 コンピューティングシステム環境
500 パケット
510 コーダ
520 パンクチャラ
610 受信バッファ
620 暗号化解除モジュール
630 モジュール
640 デコーダ
650 モジュール
745 発生器

【特許請求の範囲】
【請求項1】
送信機と受信機との間のワイヤレスリンク上でデータパケットを安全に伝送する方法であって、
前記送信機が、前記パケットをデコーダで復号化することを可能にしないデータパケットの第1のバージョンを前記リンク上で送信し(110、310)、
前記パケットの前記第1のバージョンの復号化失敗の結果として、前記受信機が、第1のプライベートキーおよび対応する第1の公開鍵からなる第1の1対の鍵を生成し、前記送信機に前記第1の公開鍵を送信し(120、320)、
前記送信機が、前記第1の公開鍵から得られた第1の暗号鍵によって暗号化された前記パケットの第2のバージョンを前記リンク上で送信し(130、330)、
前記受信機が、前記パケットの前記第2のバージョンを暗号化解除し、前記第1のバージョンと第2のバージョンを組み合わせ、前記パケットの第1の組合せバージョンを得て、そのようにして得られた前記第1の組合せバージョンの復号化を実施する(140、340)
ことを特徴とする方法。
【請求項2】
前記第1の暗号鍵が前記第1の公開鍵であり、前記受信機が、前記第1のプライベートキーを使用して、前記パケットの前記第2のバージョンを暗号化解除することを特徴とする請求項1に記載の伝送方法。
【請求項3】
前記第1の組合せバージョンの復号化が失敗した場合、
前記受信機が、第2のプライベートキーおよび対応する第2の公開鍵からなる第2の1対の鍵を生成し、
前記送信機が、前記第2の公開鍵を使用して前記パケットの第3のバージョンを暗号化した後、前記パケットの前記第3のバージョンを前記リンク上で送信し(150)、
前記受信機が、前記第2のプライベートキーを使用して前記パケットの前記第3のバージョンを暗号化解除し(160)、そのようにして暗号化解除した前記第3のバージョンを少なくとも第1の暗号化解除バージョンまたは第2の暗号化解除バージョンと組み合わせ、前記パケットの第2の組合せバージョンを得て、そのようにして得られた前記第2の組合せバージョンの復号化を実施する
ことを特徴とする請求項2に記載の伝送方法。
【請求項4】
前記送信機が、送信機プライベートキーと呼ばれるプライベートキーと、送信機公開鍵と呼ばれる、対応する公開鍵とからなる1対の鍵を生成し、前記送信機がストリーム暗号化を実施し、したがって前記パケットの前記第2のバージョンを暗号化するのに使用される前記第1の暗号鍵が、前記送信機プライベートキーと前記受信機第1の公開鍵の積として得られることを特徴とする請求項1に記載の伝送方法。
【請求項5】
前記受信機が、前記送信機公開鍵と前記受信機第1のプライベートキーの積として得られた前記第1の暗号鍵を使用して、前記パケットの前記第2のバージョンを暗号化解除することを特徴とする請求項4に記載の伝送方法。
【請求項6】
前記第1の組合せバージョンの復号化が失敗した場合、
前記受信機が、第2のプライベートキーおよび対応する第2の公開鍵からなる第2の1対の鍵を生成し(340)、前記送信機に前記第2の公開鍵を送信し、
前記送信機が、ストリーム暗号化を使用して前記送信機プライベートキーと前記受信機第2の公開鍵の積として得られた第2の暗号鍵で前記パケットの第3のバージョンを暗号化した後、前記パケットの前記第3のバージョンを前記リンク上で送信する(350)
ことを特徴とする請求項5に記載の伝送方法。
【請求項7】
前記受信機が、前記送信機公開鍵と前記受信機第2のプライベートキーの積として得られた前記第2の暗号鍵を使用して、前記パケットの前記第3のバージョンを暗号化解除し(360)、そのようにして暗号化解除した前記第3のバージョンを少なくとも前記第1のまたは前記第2の暗号化解除バージョンと組み合わせ、前記パケットの第2の組合せバージョンを得て、そのようにして得られた前記第2の組合せバージョンの復号化を実施することを特徴とする請求項6に記載の伝送方法。
【請求項8】
前記パケットの前記第1のバージョンが、このパケットを誤り訂正符号によって符号化し、その後に続いて、そのようにして符号化された前記パケットを前記符号の訂正能力を超える復号化率で第1のパンクチャリングすることによって得られることを特徴とする請求項1から7のうちのいずれか一項に記載の伝送方法。
【請求項9】
前記パケットの前記第2のバージョンが、前記符号化パケットの前記第1のパンクチャリングによって除去されたシンボルを含むことを特徴とする請求項8に記載の伝送方法。
【請求項10】
前記パケットの前記第2のバージョンが、前記符号化パケットの第2のパンクチャリングによって得られ、前記パケットの前記第3のバージョンが、前記第1のおよび/または第2のパンクチャリング(複数可)によってパンクチャリングされたシンボルを含むことを特徴とする請求項9に記載の伝送方法。
【請求項11】
前記パケットの前記第2のバージョンの暗号化が、前記第2のパンクチャリング後に実施されることを特徴とする請求項10に記載の伝送方法。
【請求項12】
前記パケットの符号化が系統的なタイプであり、前記第1のパンクチャリングが、前記符号化パケットの前記系統的シンボルを除去することを特徴とする請求項8から11のうちのいずれか一項に記載の伝送方法。
【請求項13】
タイプII HARQプロトコルを実装することを特徴とする請求項12に記載の伝送方法。
【請求項14】
前記第1のおよび第2のプライベートキーが同じ種から生成されることを特徴とする請求項3または6に記載の伝送方法。
【請求項15】
前記種が不可逆関数による処理を受け、そのようにして処理された前記種がプライベートキーとして使用され、対応する公開鍵が、前記プライベートキーから、楕円曲線暗号アルゴリズムによって得られることを特徴とする請求項14に記載の伝送方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2011−254459(P2011−254459A)
【公開日】平成23年12月15日(2011.12.15)
【国際特許分類】
【外国語出願】
【出願番号】特願2011−104240(P2011−104240)
【出願日】平成23年5月9日(2011.5.9)
【出願人】(502124444)コミッサリア ア レネルジー アトミーク エ オ ゼネルジ ザルタナテイヴ (383)
【Fターム(参考)】