JP7164218B2 - 通信システムにおける端末識別情報保護方法 - Google Patents

通信システムにおける端末識別情報保護方法 Download PDF

Info

Publication number
JP7164218B2
JP7164218B2 JP2020512004A JP2020512004A JP7164218B2 JP 7164218 B2 JP7164218 B2 JP 7164218B2 JP 2020512004 A JP2020512004 A JP 2020512004A JP 2020512004 A JP2020512004 A JP 2020512004A JP 7164218 B2 JP7164218 B2 JP 7164218B2
Authority
JP
Japan
Prior art keywords
terminal
partition
key
bit
nonce
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020512004A
Other languages
English (en)
Other versions
JP2020532235A (ja
Inventor
ベック、アンドリュー
ジョージ マッキリアム、ロバート
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Myriota Pty Ltd
Original Assignee
Myriota Pty Ltd
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
Priority claimed from AU2017903469A external-priority patent/AU2017903469A0/en
Application filed by Myriota Pty Ltd filed Critical Myriota Pty Ltd
Publication of JP2020532235A publication Critical patent/JP2020532235A/ja
Application granted granted Critical
Publication of JP7164218B2 publication Critical patent/JP7164218B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0847Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving identity based encryption [IBE] schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • H04L9/0836Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0872Generation of secret information including derivation or calculation of cryptographic keys or passwords using geo-location information, e.g. location data, time, relative position or proximity to other entities
    • 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/3239Cryptographic 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 non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/42Anonymization, e.g. involving pseudonyms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

本出願は、「通信システムにおける端末識別情報保護方法(Terminal Identity Protection Method in A Communication System)」という名称の2018年8月28日提出のオーストラリア仮特許出願第2017903469号による利益を主張し、その内容の全体を参照により本明細書に援用する。
本開示は、通信システムに関する。特定の形態では、本開示は、衛星通信システムの端末を安全に識別する方法に関する。
多くの通信システムでは、端末には、全てのメッセージに含まれる固有の端末識別子(または端末ID)が割り当てられる。しかしながら、この端末IDは一般的に数十ビットを消費し、一部の衛星通信または低電力通信システムでは、できるだけパケットを短くすることが望ましい。更に、端末識別子は暗号化されずに伝送される場合がほとんどである。これによって、送信端末が有効な端末またはシステムユーザであるか(したがって、メッセージを本物であるとして受理し、処理すべきか)を、受信側が決定することが可能になる。いくつかのシステムでは、メッセージ本文は暗号化され、端末IDを平文で伝送することによって、受信側が、メッセージの残りの部分を認証し復号する、適正な端末キーを選択することが可能になる。しかしながら、この方策の1つの課題は、端末識別子を暗号化せずに伝送することによって、相手方が端末を識別し、場合によっては追跡できることである。
相手方の識別および追跡を軽減することができる1つの方策は、一組の識別子(即ち、識別子のプール)を端末または一組の端末に割り振り、(受信側には分かっている)この組から端末識別子を端末に選択させるものである。しかしながら、これによって相手方は端末を追跡しにくくなるが、特に、プールが小さく、相手方が拡張ベースで送信を監視してプールを決定することができる場合、課題がなくなるわけではない。別の方策は、公開/秘密キー暗号化を使用して「共有秘密」キーを導き出すものである。しかしながら、これには一般に、メッセージ本文で追加データを伝送する必要がある。更に別の方策は、端末が、一組の端末IDおよび/または将来使用されるであろうキー・ペアを暗号化し送信するものである。しかしながら、かかる方策は、あたかもメッセージが失われ、それによって将来のキーの組が失われるような、同期の問題につながる。これは特に、メッセージ確認応答が不可能な(または提供されない)一方向通信チャネルの場合の問題である。更に、キーのプールを周期的に再伝送することによって更なる帯域幅が消費される。
発明が解決しようする課題
したがって、衛星通信システムの端末を識別する改善された方法を提供すること、または少なくとも、既存のシステムに対する有用な代替物を提供することが必要とされている。
第1の態様によれば、通信システムにおいて端末から受信したメッセージから端末IDを決定する方法が提供され、方法は、
複数のアクセス・ノードと、複数のアクセス・ノードに動作可能に接続された認証ブローカーと、複数の端末とを含む通信システムのアクセス・ノードによって、固有の端末識別子(ID)を有する端末から送信されるメッセージと、端末キーとを受信するステップであって、受信メッセージが、少なくともメッセージ認証コード(MAC)と、nビット・ハッシュと、暗号化されたメッセージ・テキストとを含み、少なくとも端末キーおよびノンスがMACを生成するのに使用され、端末IDまたは端末キーのどちらも送信メッセージには含まれない、ステップと、
少なくとも受信したメッセージ認証コード(MAC)およびnビット・ハッシュを認証ブローカーに提供するステップであって、認証ブローカーが、通信システムの複数の端末に対する全ての(端末ID、端末キーの)ペアの組を格納する、ステップと、
端末キーの組を少なくとも2つのパーティションにパーティション分割し、nビット・ハッシュを使用して受信メッセージを送信した端末の端末キーを含む探索パーティションを識別するステップと、
MACを認証する端末キーに関して探索パーティションを探索するステップと、
MACを認証する端末キーを使用して端末IDを識別するステップとを含む。
1つの形態では、ノンスは受信メッセージに含まれず、端末および認証ブローカーには分かっている既定のパーティション分割関数が、少なくともノンスおよび端末キーからnビット・ハッシュを生成するのに使用され、方法は、ノンスを取得するステップを更に含み、ノンスは、認証ブローカーには分かっているかもしくは認証ブローカーによって推定可能なシステム情報、または端末および認証ブローカーの両方には分かっているかもしくは端末および認証ブローカーの両方によって推定可能な共通情報を使用して取得される。
更なる形態では、端末キーの組をパーティション分割するステップは、取得したノンスと端末キーとを既定のパーティション分割関数への入力として使用することによって、各端末に対してnビットのテスト値を生成するステップと、同じnビット・ハッシュを有する端末をグループ化するステップとを含み、探索パーティションを識別するステップは、nビットのテスト値が受信したnビット・ハッシュと合致する端末を含むパーティションを選択するステップを含む。更なる形態では、既定の関数は、
Figure 0007164218000001
(ノンス)であり、式中、Kは対応する端末キーである。
更なる形態では、ノンスは、端末の履歴の空間的、時間的、または空間時間的送信パターンを分析することによって取得される。更なる形態では、方法は、受信したものの送信元であった地理的領域を推定するステップを更に含み、ノンスを選択するステップは、既定の時間窓にわたってシステムの各端末に関して最後に分かっていた位置を使用して実施され、探索パーティションは、最後に分かっていた位置が推定された地理的領域内であった端末を含む。別の形態では、ノンスを取得するステップは、システムの送信端末のタイミングまたは周波数パターンを使用して実施され、探索パーティションは、受信した送信の時間に基づいて識別される。
1つの形態では、ノンス値は、メッセージの送信時間に関して決定された時間におけるカウンタの現在値を決定することによって取得され、カウンタは、受信側および送信側には分かっている衛星軌道のパラメータに基づいて、予め定められた基準時間および増分ポイントに関して計数される。更なる形態では、カウンタは、メッセージの送信時における複数の衛星のうちの衛星に関する軌道カウントであり、基準時間は基準エポックであり、増分ポイントは予め定められた軌道基準ポイントである。更なる形態では、軌道カウントは、衛星通信ネットワークの衛星に対するエフェメリス・データから決定される。更なる形態では、複数のアクセス・ノードは複数の衛星アクセス・ノードを含み、カウンタの基準である衛星は複数の衛星アクセス・ノードの1つである。
1つの形態では、パーティションの数は2つであり、パーティション分割および探索は、
端末に関して、既定のパーティション分割関数を端末キーおよびノンスに適用することによって取得されるnビットのテスト値を計算するステップと、
端末に関して、nビットのテスト値が受信したnビット・ハッシュと合致するかを決定し、nビットのテスト値が受信したnビット・ハッシュと合致する場合、端末キーおよびノンスがMACの認証に成功するかを決定するステップとによって、全ての端末キーの組を通して反復することによって同時に実施される。
1つの形態では、ノンスは受信メッセージに含まれ、端末および認証ブローカーには分かっている既定のパーティション分割関数は、端末IDからnビットを選択するのにノンスを使用することによって、nビット・ハッシュを生成するのに使用され、端末キーの組をパーティション分割するステップは、受信したノンスおよび端末識別子を既定のパーティション分割関数への入力として使用することによって、各端末に関してnビットのテスト値を生成するステップと、同じnビット・ハッシュを有する端末をグループ化するステップとを含み、探索パーティションを識別するステップは、nビットのテスト値が受信したnビット・ハッシュと合致する端末を含むパーティションを選択するステップを含む。更なる形態では、ノンスは、端末によって擬似乱数ソースから生成される。
更なる形態では、既定のパーティション分割関数は、
端末識別子をm個のnビットの重なり合わない部分へとパーティション分割するステップと、
≧mの要件に依存する、ノンスの既定のkビット部分の値jモジュロmを計算し、Lビットの端末識別子のjモジュロmのnビット部分を選択するステップとによって、nビットのテスト値をノンスおよび端末識別子から生成する。
更なる形態では、ノンスの既定のkビット部分はノンスの最初または最後のkビット部分である。
更なる形態では、パーティション分割は、端末の履歴の空間的、時間的、または空間時間的送信パターンを分析することに基づく。
1つの形態では、ノンスは受信メッセージに含まれ、端末キーの組をパーティション分割するステップは、メッセージを受信する前にm回のパーティション分割を生成するステップを含み、m回のパーティション分割のうちj番目のパーティション分割は、
各端末識別子のj番目のnビット部分を選択し、それらの端末識別子の同じj番目のnビット部分を含む端末をグループ化して、各j=1,…,mに対して2個のパーティションを形成するステップと、
メッセージを受信する際に、2≧mの要件に依存する、ノンスの既定のkビット部分の値jモジュロmを計算するステップによって取得され、探索パーティションを識別するステップは、m回のパーティション分割のうちj番目のパーティション分割において、それらの端末識別子のnビット部分が受信したnビット・ハッシュと合致する端末キーで構成されるパーティションを選択するステップを含む。
1つの形態では、ノンスは16ビットのノンス値であり、nは7である。1つの形態では、MACは30ビットである。
1つの形態では、少なくとも2つのパーティションはそれぞれ関連するパーティション・キーを有し、nビット・ハッシュは、探索パーティションに関するパーティション・キーから生成されるパーティション・メッセージ認証コード(pMAC)であり、探索パーティションを識別するステップは、受信したpMACを認証するパーティション・キーに関してパーティション・キーの組を探索するステップを含む。
1つの形態では、少なくとも2つのパーティションは、複数の階層状パーティション層を形成するようにツリー状にグループ化された複数のパーティションであり、各パーティションは関連するパーティション・キーを有し、nビット・ハッシュは、根ノードから探索パーティションを含む葉ノードまでツリーを横断する探索経路の各層における、各パーティション・キーから生成される各パーティション・メッセージ認証コード(pMAC)の順序付き組み合わせであり、探索パーティションを識別するステップは、順序付き組み合わせから決定された層と関連付けられた受信したpMACを認証するパーティション・キーに関して、ツリーの各層におけるパーティション・キーの組を探索することによって、ツリーを横断するステップを含み、葉ノード層と関連付けられた受信したpMACをパーティション・キーが認証する葉ノードは、探索パーティションである。
1つの形態では、少なくとも2つのパーティションは、複数の階層状パーティション層を形成するようにツリー状にグループ化された複数のパーティションであり、葉ノード・パーティションを除く各パーティションは関連するパーティション・キーを有し、葉ノード・パーティションがそれぞれ単一の端末キーを含み、nビット・ハッシュは、根ノードから葉ノードまでツリーを横断する探索経路の各層における、各パーティション・キーから生成される各パーティション・メッセージ認証コード(pMAC)の順序付き組み合わせであり、探索パーティションを識別するステップは、葉ノードの組が取得されるまで、順序付き組み合わせから決定された層と関連付けられた受信したpMACを認証するパーティション・キーに関して、ツリーの各層におけるパーティション・キーの組を探索することによって、ツリーを横断するステップを含み、探索パーティションが、端末キーが端末のMACを認証する葉ノード・パーティションである。
更なる形態では、順序付き組み合わせは、根ノードから葉ノードまでツリーを横断することによって取得される順序であり、nビット・ハッシュは、探索経路における各pMACの探索パーティションに対する連結である。
1つの形態では、端末識別子は128ビットであり、端末キーは128または256ビットである。1つの形態では、パーティションの数は100超過である。
更なる形態では、複数の既定のパーティション分割関数は端末キーの組をパーティション分割するのに使用され、メッセージは、複数の既定のパーティション分割関数からどの既定のパーティション分割関数が端末キーの組をパーティション分割するのに使用されるかを決定するのに、認証ブローカーによって使用される、少なくとも1ビットの標識フィールドを更に含む。
1つの形態では、通信システムは衛星通信システムであり、複数のアクセス・ノードは複数の衛星アクセス・ノードを含む。
第2の態様によれば、複数の端末と、複数のアクセス・ノードと、認証ブローカーとを含む通信システムのアクセス・ノードに送信する端末によって、認証済みメッセージを生成する方法であって、各端末が固有の端末識別子(ID)と端末キーとを格納し、認証ブローカーが、複数の端末それぞれに対する(端末ID、端末キーの)ペアの組を格納する、方法が提供され、方法は、
ノンス値を生成するステップと、
暗号化されたメッセージ・テキストを取得するのに、端末によって格納された端末キーおよびノンス値を使用して、送信のためのメッセージを暗号化するか、または送信のための暗号化されたメッセージ・テキストを取得するステップと、
端末によって、少なくとも端末キーおよびノンスからnビットを生成するか、またはnビットを端末IDから選択することによってnビットのテスト値を生成する、既定のパーティション分割関数を使用して、nビット・ハッシュを生成するステップであって、あるいはnビットが、端末キーを含むパーティションと関連付けられたパーティション・キーから生成される1つまたは複数のパーティション・メッセージ認証コード(pMAC)を含む、ステップと、
少なくともノンスおよび端末キーを使用して、メッセージ認証コード(MAC)を生成するステップと、
複数のアクセス・ノードのうちのアクセス・ノードに、端末によって、少なくともnビット・ハッシュと、MACと、暗号化されたメッセージ・テキストとを含むメッセージを送信するステップとを含む。
1つの形態では、ノンス値は、端末および認証ブローカーの両方には分かっているかもしくは端末および認証ブローカーの両方によって推定可能な共通情報を使用して決定され、ノンスは送信されず、既定のパーティション分割関数は、少なくとも端末キーおよびノンスからnビット・ハッシュを生成する。更なる形態では、ノンスは、メッセージの送信時間に関して決定された時間におけるカウンタの現在値を決定することによって取得され、カウンタは、受信側および送信側には分かっている衛星軌道のパラメータに基づき、予め定められた基準時間および増分ポイントに関して計数され、ノンスは送信されない。1つの形態では、カウンタは、メッセージの送信時における衛星に関する軌道カウントであり、基準時間は基準エポックであり、増分ポイントは予め定められた軌道基準ポイントである。1つの形態では、nビット端末ハッシュは、
Figure 0007164218000002
(ノンス)を使用して取得され、式中、Kは対応する端末キーである。1つの形態では、nビット端末ハッシュは、CSPRNGからの出力ハッシュのうち最初または最後の7ビットである。
1つの形態では、ノンスは擬似乱数ソースから生成され、メッセージで送信され、既定のパーティション分割関数は、端末IDからnビットを選択することによって、nビット端末ハッシュを生成する。更なる形態では、nビット端末ハッシュを生成するステップは、
ノンスの既定のkビット部分を選択するステップと、
≧mに依存する、端末識別子をm個のnビットの重なり合わない部分へとパーティション分割するステップと、
ノンス値のkビット部分の値jモジュロmを計算するステップと、
端末識別子のj番目のnビット部分をnビット端末ハッシュとして選択するステップとを含む。
1つの形態では、パーティション関数は更に、複数のパーティションを複数の階層状パーティション層を含むツリーへとグループ化し、パーティション・キーは各パーティションと関連付けられ、nビット・ハッシュは、根ノードから端末キーを含む葉ノード・パーティションまでツリーを横断する探索経路の各層における、各パーティション・キーから生成される各パーティション・メッセージ認証コード(pMAC)の順序付き組み合わせである。
1つの形態では、ノンスは暗号化されたメッセージ・テキストから生成され、MACは、暗号化されたメッセージ・テキストおよびnビット・ハッシュに署名するのに使用される。1つの形態では、MACは30ビットであり、nは7である。
上述の方法では、アクセス・ノードは衛星アクセス・ノードであってもよく、通信システムは衛星通信システムであってもよい。更なる態様によれば、プロセッサと、第1の態様の方法を実現するようにプロセッサを構成する命令を含むメモリとを備える、認証ブローカー装置、アンテナと、通信ハードウェアと、プロセッサと、第2の態様の方法を実現するようにプロセッサを構成する命令を含むメモリとを備える、端末装置、ならびに複数の端末と、複数の衛星であってもよい複数のアクセス・ノードと、認証ブローカー装置とを備える、通信システムが提供される。更なる態様によれば、固有の端末識別子を生成し、ネットワークの端末を登録する方法が提供される。
本開示の実施形態について添付図面を参照して記載する。
一実施形態による通信システムを示す概略図である。
一実施形態による端末キーのグループ化を示す概略図である。
一実施形態によるメッセージの第1のフレーム構造を示す概略図である。
一実施形態によるメッセージの第2のフレーム構造を示す概略図である。
一実施形態による登録メッセージのフレーム構造を示す概略図である。
一実施形態によるノンス値の決定を示す概略図である。
一実施形態によるnビット端末ハッシュの決定を示す概略図である。
一実施形態によるノンスおよびnビット端末ハッシュの決定を示す概略図である。
EAX-AES暗号化スキームを使用する暗号化のアルゴリズムを示す図である。
EAX-AES暗号化スキームを使用する復号のアルゴリズムを示す図である。
EAX-AES暗号化スキームを使用するメッセージMの暗号化を示す概略図である。
一実施形態による署名付きメッセージを生成する方法を示すフローチャートである。
一実施形態による端末IDを決定する方法を示すフローチャートである。
別の実施形態による端末IDを決定する方法を示すフローチャートである。
別の実施形態による端末IDを決定する方法を示すフローチャートである。
一実施形態によるパーティションの階層状グループ化を示す概略図である。
以下の説明では、図面全体を通して類似の参照符号は類似のまたは対応する部分を指定する。
次に図1を参照すると、一実施形態による通信システムが示されている。この通信システムでは、端末によって伝送されるメッセージ・パケットに、端末キーを使用して端末によってデジタル署名して、メッセージの真正性を受信側でチェックすることを可能にしている(即ち、受信側は、受信メッセージが、システムが知っているかまたは登録している端末によって伝送されたことを検証する)。それに加えて、安全性を改善するため、送信メッセージにおいて端末識別子が省略される(即ち、含まれない)。これによって、受信側において、端末キーの完全な組を探索してメッセージを認証する端末キーを識別しなければならないので、潜在的な計算の負担が生じる。したがって、受信側を支援するため、全ての可能な端末キーの組がパーティション分割され、どのパーティションが送信を行った端末の端末キーを含むかを受信側が決定するのを可能にする方法が提供される。そのため、受信側は、受信メッセージを認証するキーを見つけるのに、このパーティションのみを探索すればよいので、認証ステップにおける計算コスト(または負担)が低減される。通信システムのこの特徴および他の特徴については、以下に考察する。
図1に示される通信システムは、同等に通信ネットワークと呼ばれることがある。いくつかの実施形態では、通信システムは衛星通信システムである。このシステムまたはネットワークは、パブリッシャー・サブスクライバー・モデルを使用し、以下のシステム(またはネットワーク)エンティティを備える。
端末10:端末内の通信モジュールは、アクセス・ノードに対するコア・ネットワーク接続性を提供する。端末10には、デバイス12およびセンサ14の両方が取り付けられてもよい。これらは、物理的に取り付けられるかもしくは統合されてもよく、またはローカル有線もしくはローカル無線リンクを通じて端末に動作可能に接続されてもよい。
デバイス12:これらのエンティティは、認証ブローカーを介して、登録しているデータを受信する。
センサ14:これらのエンティティは、他のネットワーク・ノードを意識せずにデータを発行する。センサはまた、一時的制御データを受信し、ACkメッセージを発行するなどを行うことができてもよい。
アクセス・ノード20:複数のアクセス・ノードは、複数の端末との無線通信を提供する。いくつかの実施形態では、アクセス・ノードは衛星アクセス・ノードである。他の実施形態では、アクセス・ノードは、大部分は衛星アクセス・ノードであってそれといくつかの地上基地局との組み合わせである。他の実施形態では、アクセス・ノードは、衛星、空中、および地上アクセス・ノードの組み合わせである。いくつかの実施形態では、アクセス・ノードは地上アクセス・ノードである。アクセス・ノードはコア・ネットワーク2に対するアクセスを提供する。
アクセス・ゲートウェイ30:これらは、アクセス・ノードと認証ブローカーとの間のゲートウェイとして作用する。ゲートウェイは、アクセス・ノード20(例えば、衛星に搭載)と組み合わされてもよい。
認証ブローカー40:パブリッシャーとサブスクライバーとの間のブローカー。ブローカーは、受信メッセージが登録された端末からのものであると認証し、端末IDを決定する。
アプリケーション・ゲートウェイ50:多数のインターフェースを実現する、アプリケーション60とブローカー40との間のデータ・ゲートウェイ。これは、クラウド・ベースのインターフェースであってもよい。インターフェースは、顧客制御のエンドポイント、または顧客アクセス可能なエンドポイントへ転送する、メッセージ・キュー・テレメトリ・トランスポート(MQTT)インターフェースを含む。
アプリケーション60:顧客アプリケーション。これらは、例えばクラウド・ベースのアプリケーション・ゲートウェイへの、有線および無線リンクを通じて、アプリケーション・ゲートウェイと通信する。
ネットワークは、複数の端末10と、衛星アクセス・ノードなどの複数のアクセス・ノード20とを備える。コア・ネットワーク2は、アクセス・ノード(衛星および地上)と、アクセス・ゲートウェイ30と、認証ブローカー40と、アプリケーション・ゲートウェイ50とを備える。ブローカー40は、アプリケーション・ゲートウェイ50を介してアプリケーション60とデータ62を交換し、アプリケーション60によって情報64を直接制御することができる。コア・ネットワーク2の構成要素は、通信リンクを通じて分配され、通信してもよい。一部の構成要素はクラウド・ベースであってもよい。システムは、特に、アクセス・ノードの大部分が衛星アクセス・ノードである衛星通信システムに適合されているが、様々な実施形態は、衛星アクセス・ノード、空中アクセス・ノード、および地上アクセス・ノード(移動地上アクセス・ノードを含む)の様々な組み合わせによるもの、または完全に空中もしくは完全に地上のアクセス・ノードを含む3つの様々な組み合わせによるものを含む、他の通信システムで使用されてもよいことが理解されるであろう。
上述したように、端末の識別情報を保護するため、端末は送信メッセージに端末識別子を含まず、メッセージは、端末キーおよびノンス値を使用して生成されるメッセージ認証コード(MAC)で署名され、出力MACは送信メッセージに含まれる。次に、MACは、受信側(および特に、認証ブローカー)によって、メッセージが登録端末または既知の端末によって伝送されたものであると検証するのに使用される。これには、受信側または認証ブローカーが、MACを生成するのに使用される端末キーおよびノンスの両方を分かっていることが必要である。システムは、全ての端末キーの組をパーティション分割する方法と、受信メッセージを伝送した端末の端末キーを含む探索パーティションを決定する補完的な方法とを実現する。このキー空間のパーティション分割によって、全ての可能な端末キーを用いて受信メッセージの認証を試行して、限定された探索の実施を可能にし、それによって方法の計算効率を高めるための計算コストが低減される。探索を行うパーティションは、本明細書では、探索パーティションと呼ばれることがある。また、送信を行った端末の端末キーを含むパーティションであることに基づいて、ソース・パーティションと呼ばれる場合もある。探索(もしくはソース)パーティションの決定は受信側で実施され、アクセス・ノード20自体などの受信側で実施されてもよく、または受信側/アクセス・ノード、もしくは受信側/アクセス・ノードの下流側の他の何らかのモジュールに動作可能に接続された、認証ブローカー40によって実施されてもよい。後述するように、このプロセスにおいて認証ブローカー(または他の受信側エンティティ)を支援するため、パーティション識別コード(またはフィールド)がメッセージに含まれる。便宜上、このパーティション識別コードをnビット・ハッシュと呼ぶこととし、暗号学的ハッシュ関数または他の何らかの関数もしくは方法によって生成されてもよい。パーティション識別コード(またはnビット・ハッシュ)は、一般的に、メッセージ・フレームの単一フィールドであるが、複数のフィールドにわたって拡散できることが理解されるであろう。nビット・ハッシュを生成するのに使用される方法は、ノンスが送信メッセージに含まれるか否かに応じて決まる。受信側では、nビット・ハッシュは、受信メッセージに対する探索パーティションを決定するのに使用され、nビット・ハッシュを生成するのに使用される方法は、(例えば、パーティションの事前計算を可能にするため)全ての端末の組をパーティション分割するのにも使用されてもよい。一実施形態では、nビット・ハッシュは、端末キーおよびノンス値の関数(ならびに任意に、端末IDなどの他の情報)から取得され、ノンスはメッセージには含まれない。代わりに、ノンスは、受信側には分かっているかもしくはそれによって誘導可能/推定可能なシステム情報を使用して、または送信側および受信側の両方には分かっているかもしくはそれら両方によって誘導可能/推定可能な共通情報を使用して決定され、あるいはメッセージは、探索パーティションを識別する際に受信側を支援する情報を含んでもよい。他の実施形態では、ノンスは、端末によって生成されるとともにメッセージに含まれ、nビット・ハッシュは、送信側および受信側の両方には分かっている方法にしたがって、端末IDから生成される。例えば、端末IDはm個の部分に分割されてもよく、(端末および認証ブローカーの両方によって分かっている)ノンスの既定の部分は、端末IDのm個の部分のうちどれをnビット・ハッシュとして使用するかを決定するのに使用される。ノンスが取得されると、次に、認証ブローカーは、探索端末をパーティション分割し、nビット・ハッシュを使用して探索パーティションを決定することができる。一般的に、端末キーはまた、(暗号文と呼ばれる)メッセージで伝送されるメッセージ・テキストを暗号化するのに使用され、したがって、端末キーを識別することによって、受信した暗号文を復号して元のメッセージ・テキストを回復できるようにすることが可能になる。しかしながら、他の実施形態では、メッセージ・テキストは端末キーとは異なるキーを使用して暗号化することができ、その場合、メッセージが既知の端末によって伝送されたことの認証が成功すると、メッセージ・テキストを暗号化するのに使用されるキーがわかっている(したがって、暗号文を復号することができる)、下流側のシステムまたはエンド・ユーザ・エンティティまたはアプリケーションに暗号文を渡すことができる。
図2は、一実施形態による端末キーのパーティション分割(またはグループ化)を示す概略図である。システムは複数の端末を備え、各端末10は、固有の端末識別子(ID)12によって識別されるとともに、メッセージにデジタル署名し、また任意にメッセージを暗号化するのに使用される、関連する端末キーK 14を有する。端末キーおよびノンスは、メッセージを認証するのに使用することができる、メッセージ認証コード(MAC)を生成するのに使用される。この実施形態では、端末キーはまた、メッセージ・テキストを暗号化して暗号文を生成するのに使用され、暗号文およびMACは送信されるメッセージに含まれる。受信側は、候補のキーをテストして、MACを認証するかを決定する。いくつかの実施形態では、メッセージの暗号化および認証に、端末IDが端末キーとともに使用される。例えば、EAX認証方法が使用される実施形態では、端末IDを入力ヘッダとして使用することができる。したがってこの場合、端末IDおよび端末キーの両方が、テキストを暗号化し、MACを生成するのに使用され、したがって、受信メッセージの認証および復号に必要である。しかしながら、端末キーは端末IDとペアにされるので、一方を識別することによって両方の識別が可能になる。したがって、便宜上、概して端末キーの識別または使用について言及するが、これは、既知のペアリングによる端末キーおよび端末IDの識別または使用と等価であることが理解されるべきである。
いくつかの実施形態では、MACの認証(または検証)は二値の結果(真/偽)を返す。同じ端末キーがMACの生成とメッセージ・テキストの暗号化に使用された場合、MACを認証するこの端末キーが暗号文を復号するのに使用される。いくつかの実施形態では、認証および復号は同じ操作の一部として実施される(候補のキーがMACを有効にしない場合、復号されたテキストが返されないか、または任意の「復号された」テキストが、元のメッセージ・テキストに戻る真の復号ではないものとして破棄される)。メッセージ・テキストが、MACを生成するのに使用される端末キーとは異なるキーを用いて暗号化された場合、受信した暗号文は、メッセージ・テキストを暗号化するのに使用されるキーが分かっているエンティティによる復号のため、下流側のエンティティに渡される。この実施形態では、端末IDはLビット列であり、端末キーはXビット長である。一般的に、LおよびXは2の累乗であり、同じ長さであっても(または異なっても)よい。例えば、Lは128ビットであってもよく、Xは128ビットまたは256ビットであってもよい。しかしながら、システム内の一意性に対応できる限り、他の適切な長さが使用されてもよい。これらは、一般的に、端末メーカーによって作成され割り当てられる(しかしながら、ネットワーク・コントローラがこの機能を実施することができる)。これらはともに、端末10によって格納される(端末ID、端末キーの)ペアを形成する。端末はネットワークに登録されるので、認証ブローカー40は、ネットワークで登録された端末に対する全ての(端末ID、端末キーの)ペア200のデータベース242を格納する(またはそれに動作可能に接続される)。あるいは、認証ブローカーは、ネットワークには分かっている情報から、全ての(端末キー、端末IDの)ペアの組を計算または決定することができてもよい。全ての端末キーのこの組は、メッセージ署名を認証して、受信メッセージの真正性および整合性を検証し、(端末ID、端末キーの)ペアを介して、メッセージを送信した端末を識別するのに使用される。認証ブローカーは更に、本明細書に記載される方法の実施形態を実現するように構成することができる、1つまたは複数のプロセッサ244を備える。いくつかの実施形態では、このタスク、または認証ブローカーの全ての機能性は、例えば衛星に搭載された、または受信側装置の下流側にある、アクセス・ノード内で直接実施される。
図7Aは、一実施形態による署名付きメッセージを生成する(送信側)方法700のフローチャート、図7Bは、それに対応する、一実施形態による端末IDを決定する(受信側)方法710のフローチャートである。方法700は広く、ノンス値の生成701を含む。これは、端末には分かっている情報を使用して生成されてもよく、または暗号学的ハッシュ関数などの擬似乱数ソースから生成されてもよい。ステップ702で、nビット端末ハッシュが生成される。ノンスがどのように生成されるかに応じて、これは、ノンスおよび端末キーの暗号学的ハッシュ関数を、また任意に端末ID(例えば、EAX方法もしくは変形例のOMAC (ノンス)関数を使用する)を使用して生成されてもよく、または端末ICの選択されたビットから生成されてもよい。任意のステップ703で、メッセージ・テキストも、暗号文と呼ばれる暗号化されたメッセージ・テキストを取得するのに、ノンスおよび端末キーを使用して暗号化されてもよい。ステップ704で、メッセージ認証コード(MAC)は、ノンスおよび端末キーを使用して生成されてもよく、ステップ705で、メッセージが構成され送信され、メッセージは少なくともnビット端末ハッシュ、暗号文、およびMACを含む。ヘッダなどの追加情報が含まれてもよいが、端末識別子は省略される。方法に応じて、ノンスが含まれるか、または送信メッセージから除外されてもよい。メッセージを暗号化するステップおよびMACを生成するステップは、別個にまたはともに実施されてもよい。いくつかの実施形態では、MACは暗号文の暗号に基づいて生成され、nビット端末ハッシュは認証されない。他の実施形態では、MACは、nビット・ハッシュおよび暗号文の両方を認証するのに使用することができるように生成される。例えば、暗号化ステップ703は、nビット端末ハッシュおよびメッセージの連結を暗号化し、暗号文およびnビット端末ハッシュの両方に署名しそれらを認証するのに使用することができる、MACを生成することができる。一実施形態では、MACのz個の最上位ビットのみがメッセージに含まれる。
図7Bは、メッセージを認証し、受信メッセージを送信した端末の端末IDを識別する、対応する受信側方法を示している。衛星アクセス・ノードなどの受信側は、nビット端末ハッシュ、MAC、および暗号文を含む送信メッセージを受信する(711)。次に、メッセージから、または端末によって使用されるノンスを独立して決定することによって、ノンスが取得される(712)。次に、受信側(または一般的に、受信側の、もしくは受信側に接続された認証ブローカー)は、nビット・ハッシュを使用してMACを認証する端末キーを含む、探索パーティションを決定し(713)、ステップ716で、このキーの探索パーティションを探索する。これは、一般的に、探索パーティションの各端末キーをテストして、MACを認証するかを決定することを伴う。MACを認証する端末キーが見出された場合、ステップ717で、(端末キー、端末IDの)ペアリングが分かっていることを用いて、端末IDを識別することができる。一実施形態では、探索パーティションの全ての端末キーがテストされ、ステップ717は、単一のキーが見出された場合のみ実施される。メッセージを認証する複数のキーが見出された場合、メッセージは破棄される。任意のステップ718で、対応する暗号化ステップ703が実施されたものと仮定して、暗号文が端末キーおよびノンスを使用して復号される。ステップ717および718の認証および復号は、同時に、または別個の動作として実施されてもよい。次に、復号メッセージ(またはステップ718が実施されない場合、暗号文)を、更なる処理のため、別のシステム・エンティティに提供することができる(例えば、ゲートウェイ、および最終的にはアプリケーション60)。
図7Cは、図7Bに示される方法の変形例を示している。この実施形態では、nビット・ハッシュを使用して探索パーティションを決定するステップ713は、最初に、各端末のnビット・テスト値を計算することによって端末をパーティション分割し、次に同じnビット・テスト値を共有する端末をグループ化して、複数のパーティション714を形成することによって実施される。このパーティション分割は、メッセージを受信する前に行われてもよい(事前パーティション分割)。例えば、nビット・テスト値は、ノンス、端末キー、および端末IDの暗号学的ハッシュ関数から取得されてもよく、したがって、受信側が、使用されるであろうノンス値を分かっている場合、メッセージの到着前に端末をパーティション分割することができる。ステップ715で、探索パーティションは、nビット・テスト値が受信メッセージ711のnビット端末ハッシュと合致する、パーティション含有端末として選択される。この端末キーの事前パーティション分割は図2に示されている。全ての端末キー(もしくは端末ID、キーのペア)の組200は、複数のパーティション220にパーティション分割され(210)、各パーティション222は、本明細書に記載するようなパーティション分割方法を使用する、端末キーの重なり合わないグループまたはサブセットを含む。各パーティション222は、数値的パーティション指数221でラベル付けされてもよい。マッピング関数であってもよく、またはマッピング関係が端末10および認証ブローカー40の両方に、もしくは認証ブローカー40のみに分かっていてもよい、既定のパーティション分割関数210は、少なくとも端末キーおよび/または端末IDを使用して、端末をパーティション分割する。パーティションのサイズとも呼ばれる、パーティションにおけるキーの数は、必ずしも同一でなくてもよい。
いくつかの実施形態では、パーティション分割関数210は、全ての端末キーの組200を2つのパーティションへとパーティション分割する。これは、受信メッセージを送信した端末の端末キーを含む(もしくは含むことが予期される)探索パーティション224と、他の全ての端末を含む第2のパーティションとに分割されるものであってもよい。端末を探索パーティション224および第2の(候補ではない)パーティションへと分割することは、何らかの基準もしくは確率閾値に基づいてメッセージを送信した可能性があると決定された、端末の探索パーティションへの明確な包含に基づいていてもよく、あるいは分割は、やはり何らかの基準もしくは確率閾値に基づいて、メッセージを送信したことが予期されない端末に基づいた、第2のパーティションへの端末の明確な排除に基づいていてもよい。例えば、全ての端末のセットを通るループ(もしくは他の反復的探索)を実施することができ、各端末は、候補の端末であるか、またその場合は探索パーティションに追加されるかを決定するためにテストされる。ループが完成すると、認証キーが見出されるまで、探索パーティションの端末を通して探索が実施される。探索は、単一の認証キーが見出されることを確保する、完全な探索であってもよい(即ち、探索パーティションの全てのキーがテストされる)。他の実施形態では、パーティション分割は、二段階テストの方策を使用することによる、全ての端末の組を通る反復またはルーピングの間、暗黙に実施される。全ての端末の組を通して反復(例えば、ループ)が行われ、第1の候補のテストは、端末が送信端末(即ち、候補の端末)である可能性があるかを決定する。このテストに合格した場合のみ、計算的により高価な認証テストがこの候補の端末に対して実施される。あるいは、第1の候補のテストは、端末が確実に送信端末ではないかを決定することができ、その場合、第2の認証テストを飛ばし、次の端末がテストされる(即ち、この方策はブルーム・フィルタ法に類似している)。この方策は、第1の候補の試験段階の計算コスト(即ち、時間および/または資源)が第2の認証テスト段階よりも少ない場合に有効である。
図7Dは、全ての端末の組を通した探索の間に、パーティション分割および認証テストが暗黙に(即ち、同時にもしくはオンザフライで)行われる、図7Bの方法の変形例である、端末ID 720を識別する方法を示している。ステップ721および722はステップ711および712と同一であり、ステップ723で、全ての端末の組における次の端末を選択することによって、全ての端末の組を通るループが実施される。選択された各端末に関して、端末724のnビット・テスト値が計算され、ステップ725で、これが受信したnビット端末ハッシュと比較される。それらが合致しない場合、ループは反復してステップ723に戻り、次の端末が選択される。しかしながら、nビット・テスト値が受信したnビット端末ハッシュと合致する場合(はい)、認証テストが実施され、端末キーが受信メッセージのMACを認証するかが決定される(726)。テストが不合格の場合(キーがMACを認証しない)、ループは反復してステップ723に戻り、次の端末が選択される。MACを認証するキーが識別されると(はい)、探索を停止する(ループを出る)ことができ、従来のように、認証キー(例えば、データベース242から)とペアリングされるかまたは関連付けられた端末IDを検索することによって、端末IDが識別される(727)。次に、暗号文を復号するか、別のシステム・エンティティ(例えば、ゲートウェイ、および最終的にはアプリケーション60)に提供して更なる処理を行うことができる。任意に、第1の認証キーが見出された後に探索を終了するのではなく、認証端末キーはステップ728で格納され、全ての可能性がある端末キーがテストされるまで、残りの端末を通して探索が継続される(即ち、ステップ723に戻る)。次に、ステップ729で、MACを認証した1つの端末キーのみが見出されるかを決定する、テストが実施される。1つのキーのみが見出された場合(はい)、メッセージが検証され、端末IDがステップ727で見出される。しかしながら、複数の認証キーが見出された場合(ステップ729のいいえ)、メッセージは破棄される(730)。
他の実施形態では、明確なパーティションの数は2よりもはるかに大きく、数百または数千のパーティションがあることを含む。やはり、パーティションのサイズは同一でなくてもよいが、いくつかの実施形態では、全てのパーティションが類似または同一のサイズであってもよい。好ましくは、パーティション分割方法は、認証段階の間に効率的なキー探索を実施できるように、探索パーティションのサイズが合計のキー・プールのサイズよりもはるかに小さいことを確保するように選ばれる。例えば、パーティションがほぼ同じサイズの場合、また全ての端末キーが事前パーティション分割されることを仮定すると、効率向上はパーティションの数にほぼ等しい(例えば、100個の等しいサイズのパーティションは、探索の必要がある端末キーの数が100分の1になることを表し、したがって探索効率が100倍に増大する)。多くの例では、明確なパーティションの数は、二値ラベル付けおよび計算処理を容易にするため、2の累乗かまたは2の累乗よりもわずかに少ない。例えば、図2に示される実施形態では、2個のパーティション(またはグループもしくはサブセット)があり、既定のマッピング関数220は各端末を2個のパーティションの1つに割り振る。例えば、この場合、8個のパーティション(n=3)があり、送信端末10(ID,K)は、この場合は4番目のパーティション(二進表現100)である、p番目のパーティション224にマッピングされるかまたは割り振られる。このp番目のパーティション224は、探索パーティションであり、送信端末226のキーを含む縮小された組の端末キーを含む。このグループ224のキー探索が実施され、各キーは、受信メッセージのMACを認証し暗号文を復号することを確かめるためにテスト(即ち、使用)される。MACを認証するキーKが識別されると、探索を停止することができ、端末ID IDは、キーとペアリングされた(または関連付けられた)端末ID(例えば、データベース242のペア226)を検索することによって識別される。あるいは、探索パーティションの全ての端末キーがテストされて、キーKがMACを認証する探索パーティションの唯一のキーであることが確保される。
いくつかの実施形態では、ノンスの取得は、認証ブローカーには分かっているかもしくはそれによって推定可能(または誘導可能もしくは決定可能)なシステム情報を使用して、または送信側および認証ブローカーの両方には分かっているかもしくはそれら両方によって誘導可能もしくは推定可能な共通情報を使用して実施される。例えば、いくつかの実施形態では、ノンスは省略されるが、端末および認証ブローカーによって別個に決定され、既定のパーティション分割関数は、ノンスおよび端末キーを使用してnビット・ハッシュを生成する。例えば、nビットはOMAC (ノンス)によって取得されてもよい。認証ブローカーは、ノンスを決定し、既定のパーティション分割関数を全ての端末キーに適用して、それらをパーティション分割することができる。次に、探索パーティションがメッセージのnビット・ハッシュに基づいて識別される。システム情報は、空間的、時間的、または空間時間的など、端末の履歴送信パターンであってもよい。この場合、探索パーティションは、送信元の時間もしくは地理的領域、および/または送信側位置などの送信パラメータ、または送信側がいつもしくはどの程度の頻度で送信を行えるかなどの構成パラメータなど、受信した送信のパラメータに基づいて識別される。これらのパラメータは、端末の履歴送信パターンをパーティション分割し、任意の所与の送信における詳細によって、探索パーティションを複数のパーティションから識別することが可能になる。上述したように、認証ブローカーは、(端末ID、端末キーの)ペアのデータベース242を格納する。この情報は、認証ブローカーによってデータベース242に格納されてもよく、または別のエンティティによって格納され、認証ブローカーがパーティション分割に利用するのが可能にされてもよい。この後者の例を包含するため、認証ブローカーの広範な解釈を使用してかかるエンティティを包含し、即ち、認証ブローカーは分散されたエンティティであってもよく、物理的資源またはデータベースを他のシステム・エンティティと共有してもよい。いくつかの実施形態では、認証ブローカー・データベース242は、何らかの時間フレームにおける最後の送信の記録、または最後のN個の送信、あるいは端末がいつまたはどの程度の頻度で送信(もしくは再送信)を行えるかに対する任意の制限など、各端末の何らかの構成パラメータなど、端末送信に関する追加情報を格納するように構成される。次に、この情報を認証ブローカーによって使用して、端末をパーティション分割することができる。これらの実施形態は、暗黙のパーティションおよび探索、即ち、全ての端末の組を通る反復ならびにパーティションおよび探索テストの実施を使用して実現されてもよく、パーティションの数は、2つ超過、一般的には数百、数千、または更には100,000など、2つをはるかに超過してもよい。サイズは、端末の数に応じて、ならびに全ての端末キーを探索しなければならない場合を上回る効率を達成するのに使用される、正確なパーティション分割基準に応じて決まる。
一実施形態では、履歴の空間的または空間時間的パターンは、例えば地理的関連情報に基づいて、端末をパーティション分割するのに使用される。例えば、端末キーは、何らかの時間窓にわたる端末の最後に分かっていた地理的位置に基づいて、パーティション分割されてもよい。例えば、これは、最近の送信(即ち、時間窓が現在時間までである)、または先週の、もしくは昨日の終わり(0:00UTC)など、何らかの基準時間ポイントまでの最近の送信であってもよい。受信したものの送信元である地理的領域の推定値が利用可能な場合、探索パーティションは、最後に分かっていた位置が推定された地理的領域内にあった端末を含むパーティションである。この実施形態では、システムの地理的な合計設置面積は、各パーティションが明確な(重なり合わない)地理的領域をカバーする、複数の地理的パーティションにパーティション分割される。システムの地理的な合計設置面積は、地球全体、あるいは通信システムに対応している、地球のある領域または国もしくは国のグループであってもよい。端末は、何らかの時間フレーム(最近の24時間もしくは週における最近の送信)にわたる各端末の最後に分かっていた位置に基づいて、またはカットオフ(もしくは閾値)時間ポイント(0:00UTC)までの端末からの最後の送信に基づいて、これらの地理的パーティションに割り振られる。次に、受信側は、送信の地理的位置と、どのパーティションが地理的領域を含むかを決定し、そのパーティションに割り振られた端末のキー探索を実施する。いくつかの実施形態では、地理的パーティションの次元(または境界もしくはサイズ)は、見込まれる端末の分布の推定値、および/または衛星設置面積のサイズ、または位置推定における誤差に基づく。好ましくは、地理的パーティションはそれぞれ類似の数の端末を含む。
別の変形例では、端末を既定の地理的パーティションに事前に割り振るのではなく、パーティション分割は、送信時間に送信側を含むことが予期された領域の受信した送信時間および次元(境界)に基づいて行われてもよい。この方法では、送信時間と、送信側を含むことが予期された領域による推定値とが記録される。上述したように、これは、送信時間における衛星設置面積、または受信信号の信号処理に基づいた設置面積(例えば、到達角度に基づいた推定値)、または推定位置に対する誤差制限によって規定される領域の推定値であってもよい。次に、全ての端末の組は、例えば、時間フレーム内もしくはカットオフ時間ポイントまでの各端末の最後に分かっていた位置に基づいて、領域内にあることが予期される端末、ならびに領域内にない端末(即ち、探索パーティションおよび第2のもしくは他のパーティション)へとパーティション分割される。次に、領域内(即ち、探索パーティション内)にあることが予期される端末に対して、端末キー探索が実施される。
別の実施形態では、パーティション分割は、時間的、または空間時間的パターンなど、端末の履歴送信パターンに基づいて実施することができる。例えば、端末は、送信の頻度に基づいてパーティション分割することができるので、頻度に基づいたパーティション分割によって、最も高頻度で送信する端末が最初に探索され、次にそれよりも低い頻度で送信する端末が探索されることが確保される。別の実施形態では、端末がいつ送信してもよいかの制限が付与されてもよい。例えば、一部の端末は、週のうち特定の日のみに送信を行うように構成されてもよく、したがって、この既知の情報に基づいて端末をパーティション分割することができる。別の実施形態では、端末は、例えば、衛星パスもしくは日ごとに1回、または何らかの整数のパスもしくは日ごとに1回(5パスごとに1回、もしくは5日ごとに1回)のみ送信を行って、送信を離隔させるように構成されてもよい。この場合、端末は、それらがいつ最後の送信を行ったかに基づいてパーティション分割することができる。したがって、端末は、潜在的に送信を行うことができるもの、および以前の送信の時間に基づいて除外された端末を含むパーティションに、パーティション分割することができる。他の実施形態では、端末は、送信の確率が時間に伴って増加する、確率閾値を使用してもよい。例えば、端末は、送信の確率をゼロに設定し、次に送信の可能性pを時間に伴って増加することによって、24時間の間は再送信しないようにされてもよい。例えば、p=0.01×t-0.24であり、式中、tは端末による最後の送信からの時間(hour)単位の時間である。端末によって使用される送信関数の確率、および最後の送信からの時間を知ることによって、送信時間(または、送信時の時間(hour))の現在の送信確率に基づいて、端末の組をパーティション分割することができる。例えば、パーティションは確率範囲(例えば、=1,0.9~1、0.8~0.9など)に対応することができ、探索順序は最も高確率のパーティションから最も低確率のものへと進行する。
追加の時間的データは空間的データと組み合わせることができる。例えば、端末の最後に分かっていた位置を、端末がいつ送信できるかに対する制限と組み合わせて使用して、位置および最後の送信時間に基づいて、端末を送信できたものと送信から除外されたものとにパーティション分割することができる。あるいは、パーティションは、可能性の順序で(即ち、地理的領域において、送信確率が高いものを最初に)探索することができる。他の実施形態では、端末はまた、配置のうち特定の衛星のみに送信するように制限することができ、または、例えば特定の衛星に送信するか否かの決定を行うのに確率閾値を使用することによって、特定の衛星に優先的に送信するように構成することができる。したがって、端末は、どの衛星が送信を受信したか、また端末が受信側衛星に送信することができた可能性に基づいて、パーティション分割することができる。
別の実施形態では、システムは、端末の組の送信パターンを学習するのに、人工知能または機械学習システムを使用してもよい。例えば、第三者の端末メーカーが、1日2件のメッセージのみを伝送するように限定された端末を製造するライセンスを取得してもよい。第三者の端末メーカーは、毎日同じ時間に、または特定の時間窓の間のみ、2件のメッセージを常に伝送するように端末を構成することができる。第三者の端末メーカーは、端末がいつ送信するように構成されているかに関して認証ブローカー(またはネットワーク管理者)に通知する必要がないことがあり、その代わりに、認証ブローカー(または受信側システム)が、AIまたは機械学習システムを代わりに使用して、時間に伴う端末からの送信について研究し、送信パターン(即ち、特定の時間フレームの間にどの端末が常に送信を行うか)を決定することができる。次に、これらの学習した送信パターンを、端末をパーティション分割するための基礎として使用することができる。
上述したように、いくつかの実施形態では、メッセージは、パーティション識別コードなど、受信側が探索パーティションを識別するのを支援する情報を含む。パーティション識別コードは、平文もしくは二値識別子、または探索パーティションを識別するのに利用することができるnビット・ハッシュであることができる。パーティション識別コードは、受信メッセージの単一のフィールドであるか、または受信メッセージのいくつかのフィールドを組み合わせることによって形成されてもよい。一実施形態では、パーティション分割は、既定の地理的パーティションを使用して、地理的位置に基づいてもよい。この実施形態では、端末は、その概算位置を決定し、パーティション識別コードとしての概算位置を送信する。これは、センサ(GPS受信機など)を使用して、または近くのエンティティの位置を使用してもよい。位置が高精度まで分かっている場合、概算位置まで切り捨てるかまたは丸められてもよい。概算位置を使用することによって、必要なメッセージ・サイズ(即ち、メッセージに含まれるべきビット数)が低減され、また、端末の正確な位置の特定が回避される(窃盗または損傷の可能性が低減される)。例えば、概算位置は、1km、10km、または更には100kmまで正確であってもよい。精度は、システム・パラメータと予期される端末の分布および密度とに基づいて決定されてもよい。あるいは、地理的パーティションが固定であって端末には分かっている場合、端末は、自身が含まれている地理的パーティションを識別し、この地理的パーティションのパーティション識別子を送信することができ、受信側がそれを使用することができる。これらの実施形態は、端末が固定であるか、またはそれらの最後の送信から1つもしくは2つ以上の地理的パーティションを移動していないという過程に基づく。端末が実際は予期される以上に移動していた場合、または端末がその位置を決定できない場合、端末は、大きい移動または未知の位置を示す特別なパーティション識別コードを送信して、この送信に対して完全な端末キー探索が必要であることを受信側(もしくは認証ブローカー)に信号伝送することができる。
いくつかの実施形態では、端末および認証ブローカー(または他の受信側コア・ネットワーク・エンティティ)の両方が独立して、送信に含まれないが端末および受信側が独立して決定することができる、ノンス値を決定する。例えば、ノンス値は、受信側の衛星の識別子および現在の軌道番号に基づくことができる。別の実施形態では、少量の追加の非識別データがメッセージに含まれ、パーティションを識別するか、あるいは各メッセージを認証するのに探索されるべき端末キーの数を低減するのに使用される。追加データのサイズは、計算の複雑性を制御するように調整されてもよい。それに加えて、メーカーが、固有の(端末ID、端末キーの)ペアを生成し、それらの端末に関してネットワークで安全に登録するのを可能にする、方法が記載される。
以下、端末および受信側の両方がノンスを決定する送信メッセージから端末IDを決定する方法の実施形態について、図2~7Dを参照して記載する。この実施形態では、メッセージは、探索パーティションを識別し、探索する端末キー空間を低減するのに使用される7ビット・ハッシュなど、nビット端末ハッシュの形態の情報を含む。既定のパーティション分割関数210は、端末ハッシュおよびノンスに基づいて、または端末IDの選択されたビットから、nビット・テスト値pを取得するのを可能にする既定のマッピング関数である。(全ての端末の組における)端末は、nビット値に基づいて2個のグループ(またはサブセット)に分割される。つまり、各パーティション222は同じnビット値の端末で構成され、この値はパーティション・ラベル221として使用される。送信前に、端末は、既定のパーティション分割関数(またはマッピング関係)を使用してnビット端末ハッシュを計算し、暗号化されたメッセージ・テキスト(暗号文)およびメッセージ認証コード(MAC)とともに、送信に(例えば、端末ハッシュ・フィールド301もしくは331に)含まれる。したがって、nビット端末ハッシュはパーティション識別コードとして作用する。
衛星またはアクセス・ノードは、送信メッセージを受信し、合致するnビット・テスト値pを有するパーティション(もしくはグループ)224を選択し、それによって端末キーの探索空間を低減する(即ち、パーティションが等しいサイズの場合、合計探索空間の1/2)。このグループ224のキー探索が実施され、各キーは、MACを認証するかを判断するのに使用(もしくはテスト)される。MACを認証するキー226が識別されると、探索を停止することができ、端末IDは、キーと関連付けられるかまたはペアリングされた端末ID(例えば、データベース242からのもの)を検索することによって識別される。あるいは、探索は、探索パーティションの全てのキーがテストされて、単一のキーのみがMACを認証することを確保するまで継続される。1つを超えるキーがMACを認証する場合、メッセージを破棄することができる。
いくつかの実施形態では、AES-EAXは、基礎となる暗号化/認証スキームとして使用される(Bellare M., Rogaway P., Wagner D. (2004) The EAX Mode of Operation. In: Roy B., Meier W. (eds) Fast Software Encryption. FSE 2004. Lecture Notes in Computer Science, vol 3017. Springer, Berlin, Heidelberg。完全版はhttp://www.cs.ucdavis.edu/~rogaway/papers/eax.htmlで入手可能)。AES-EAXは、暗号化にAES-CTRを使用するとともに、認証にCMAC(AESブロック暗号に構築される)を使用する。図6Aおよび6Bは、EAX-AES暗号化スキームを使用する暗号化および復号のアルゴリズムであり、図6Cは、EAX-AES暗号化スキームにしたがってノンスNおよびメッセージ・ヘッダHを使用する、メッセージMの暗号化の概略図である。これによって、暗号文CT(=C||T)と呼ばれる暗号化されたメッセージ・テキストおよびメッセージ認証コードMACが生成される。これらの図では、OMACは同一キーMACアルゴリズムまたは関数を指し、CTRは逆モードの暗号化アルゴリズムまたは関数を指す。図6Cに示されるように、AES-EAXは、メッセージ・ヘッダHを入力とし、暗号化および認証方法で使用される暗号化されたヘッダを生成する。一実施形態では、端末IDはメッセージ・ヘッダとして使用され、したがってメッセージの暗号化および認証に使用されている間、端末IDは送信されない。またこの場合、端末IDを受信側で検証および復号の一部として使用することができる。しかしながら、端末キーおよび端末IDがペアリングされるので、一方が分かれば他方が分かること(即ち、両方が分かること)が示唆される。しかしながら、EAX2、GCM、またはCCMを含む、使用されてもよい多数の代替スキームがある。
つまり、方法は、端末から送信されたメッセージを受信する衛星(またはアクセス・ノード)を含む。受信メッセージは、nビット端末ハッシュ、メッセージ認証コード(MAC)、および暗号化されたメッセージ・テキストを含む。メッセージに含まれるMACは、暗号化/認証スキームによって生成されるMACのz個の最上位ビットであってもよい。一実施形態では、MACはEAX MACの30個の最上位ビットである。端末キーK(または端末キーおよび端末ID)は、メッセージ・テキストを暗号化し、MACを生成するのに使用されるが、端末IDまたは端末キーのどちらも送信メッセージには含まれない。メッセージ、または少なくとも受信したnビット端末ハッシュ、メッセージ認証コード(MAC)、および暗号化されたメッセージ・テキストは、認証ブローカーに提供される。ノンス値が取得され、認証ブローカー(または関連するネットワーク構成要素)は、(例えば、構成されたプロセッサ244を使用して)端末のnビット・テスト値を計算するように構成される。この値は、既定のパーティション分割関数またはマッピング関係を端末識別子(ID)に適用することによって取得される。所与の端末に関して、ブローカーは次に、nビット・テスト値が受信したnビット端末ハッシュに合致するかを決定する。nビット・テスト値が受信したnビット端末ハッシュに合致する場合、ブローカーは、端末キーおよびノンスがMACの認証に成功するかを決定(もしくはチェック)することができる。端末キーがMACの認証に成功する場合、暗号化されたメッセージ・テキストを復号することができる(端末キーを使用して暗号化された場合)。次に、端末IDおよび復号されたメッセージ・テキスト(または暗号文)を、認証ブローカーの上流側のシステム・エンティティに提供することができる。計算および決定ステップは、受信したMACの認証に成功する端末キーを有する端末が見出されるまで、複数の端末それぞれに対して実施される。
これらのテストおよび有効な動作は反復して実施することができ(即ち、合致する端末がそれぞれ識別されると、それがMACを有効にするかを判断するテストが行われる)、または別個のステップとして実施することができる。つまり、計算ステップは、最初にシステムの端末それぞれに対して実施されるので、2個の(テスト)グループが形成される。これらが取得されると、決定ステップは、受信されたnビット端末ハッシュに合致するnビットのテスト値を有するグループを選択することと、受信したMACの認証に成功する端末キーが見出されるまで、グループ内の各端末に対する各キーをテストすることとを含む。
以下、メッセージを暗号化するのに使用されるノンス値が送信メッセージに含まれるか省略される(含まれない)かに基づいて異なる、2つの方法について記載する。端末および認証ブローカーの両方によってノンスを独立して決定する(もしくは取得する)ことができる実施形態では、nビット・ハッシュは、暗号学的ハッシュ関数などの既定のパーティション分割関数210を使用して、端末キーおよびノンス(また、場合によっては端末ID)から決定される。認証ブローカーが決定できないようなやり方で、ノンスが擬似乱数ソースから生成されるかまたは端末によって生成され、ノンスがメッセージに含まれる実施形態では、nビット端末ハッシュは、端末および認証ブローカーの両方に分かっている既定のパーティション分割関数210にしたがって、端末識別子の選択されたビットから取得される。単一ビットの標識フィールド(302、312)を使用して、2つの方法を区別することができ、したがってどのパーティション分割方法を認証ブローカーが使用すべきかを区別することができる。例えば、標識フィールドは、方法Aの場合は「0」に、方法Bの場合は「1」に(またはその逆に)設定することができる。複数のパーティション分割方法が使用される場合、標識フィールドを(必要に応じて)広くすることができる。標識フィールドを含むシステムでは、メッセージ・ブローカーは、この標識フィールドの値を使用して、端末キーをパーティション分割するのに、複数の既定のパーティション分割方法からどの既定のパーティション分割方法を使用すべきか(即ち、どの認証方法を使用するか)を決定することができる。この標識ビットは、方法のうち単一のもののみを用いるシステムにおいて、省略するか、またはパケットから除去することができる(既定のマッピング関数も端末およびブローカーの両方に分かるため)。
1つの方法では、ノンスは、(例えば、量子化された時間スタンプまたは軌道番号を使用して)端末および受信側によって別個に決定され、送信メッセージから省略される。一実施形態では、ノンスは、メッセージの送信時間に関して決定される時間におけるカウンタの現在値を決定することによって取得される。カウンタは、予め定められた基準時間(即ち、ゼロ時間)、ならびに端末およびブローカーによって独立して決定することができる、増分期間またはイベントに関して計数される。例えば、端末は現在値を格納することができ、この値は、一般的には送信時間の直前である、メッセージ・パケットの組立て時に検索することができる。別の実施形態では、カウンタの値は送信の予期される時間に決定することができる。あるいは、規則的な基準時間に(例えば、10分ごとに)計算することができる。
一実施形態では、カウンタは、メッセージの送信の推定時間に計算される、送信側10が送信する衛星(即ち、受信側衛星)の衛星軌道のパラメータに基づき、基準時間は基準エポックであり、増分ポイントは予め定められた軌道基準ポイントである。別の実施形態では、パラメータの値を決定するのに、送信側が送信する衛星の衛星軌道のパラメータを使用するのではなく、システムにおける他のある衛星を何らかのスキームにしたがって使用することができる。例えば、24の衛星がある場合、送信時におけるUTC時間に対応する衛星IDを、カウンタ値を決定するのに軌道パラメータが使用される衛星として使用することができる。一実施形態では、軌道パラメータは軌道カウントであり、衛星通信ネットワークの衛星に関するエフェメリス・データから決定することができる。これは、時間tに端末20からの送信を受信する低軌道で地球404を周回する衛星20の衛星軌道402の概略図である、図4Aに示されている。基準ポイント410、この場合は衛星が赤道の上を通る各時間が、カウンタ306を増分するのに使用される(この場合、カウンタは1001=9番目の軌道である)。衛星の発射などのエポック時間が設定されてもよい。他の基準ポイントは地上局、または緯度もしくは経度の線である。この方法は、軌道のエフェメリス・データが端末に対して発行され、端末がネットワーク時間と同期された時間基準を有する場合に使用することができる。例えば、衛星は、端末によって格納されてもよいエフェメリス・データをブロードキャストしてもよい。多くの場合、同期は比較的大まかであることができる。この実施形態では、ノンスは、衛星IDとカウンタ(軌道番号)306との連結である。ダウンリンクが利用可能な場合、衛星は、送信端末によって使用されるノンスを選択しブロードキャストすることができる。
ノンスが送信されないこの実施形態では、既定のパーティション分割関数(またはマッピング関係)は、ノンス12の既定のハッシュ関数422と少なくとも端末キーとを計算することと、次に、端末ハッシュ301としてのノンス424の既定のハッシュにおける既定のnビット部分426を選択することとを含む。既定のハッシュ関数は、好ましくは、既定のnビット部分426をそこから選択することができる出力ハッシュ424を取得するのに使用される、暗号学的に安全な擬似乱数発生器(CSPRNG)である。一実施形態では、既定のハッシュ関数は、
Figure 0007164218000003
(ノンス)であり、式中、Kは対応する端末キーである。一実施形態では、既定のnビット部分は出力ハッシュの最初または最後の7ビットである。図4Bに示される実施形態では、7ビットの端末ハッシュ301は値1001011を有する。この実施形態では、MACはEAX MACの30個の最上位ビットによって与えられ、暗号文はEAXによって生成されるAES-CTR暗号化ブロックであり、ノンスは、(Norad ID||Orbit #)を使用して送信側および受信側によって推論され、端末ハッシュは、OMAC (ノンス)などのCSPRNGを介して生成される一時的な端末ハッシュの最後の7ビットである。反射攻撃は同じ軌道内で実施することができ、それによって単に冗長性が加わる(これは良いことである)。この実施形態は、端末IDを完全に隠されたままに保ち、1メッセージ当たりのヘッダ・オーバーヘッドを低減する短いメッセージを使用することができる。この実施形態では、nビット端末ハッシュはパーティション識別コードとして作用する。
別の実施形態では、ノンス314は送信メッセージに含まれるので(図3Bを参照)、受信側が利用可能である。ノンスは、端末によって擬似乱数ソースから生成されてもよい。一実施形態では、ノンスは、暗号化されたカウンタ、もしくは前の送信からのMACの破棄されたビットから生成されるか、あるいは現在のメッセージの暗号文もしくはMACから、カウンタから、または暗号学的に安全な擬似乱数発生器(CSPRNG)から生成される。この実施形態は図5に示されている。この実施形態では、端末のパーティション分割は、受信したノンスおよび端末識別子を規定のパーティション分割関数への入力として使用することによって、各端末のnビット・テスト値を計算することと、同じnビット・ハッシュを有する端末をグループ化して、同じテスト値を有する端末が同じパーティションに配置されるようにすることとを含む。探索パーティションの識別は、nビット・テスト値が受信したnビット・ハッシュと合致する端末を含むパーティションを選択することを含む。既定のパーティション分割関数は、
Lビットの端末識別子12をm個のnビットの重なり合わない部分502へとパーティション分割するステップと、
≧mの要件に依存する、ノンス値314の既定のkビット部分506の値jモジュロmを計算し、Lビットの端末識別子のjモジュロmのnビット部分を選択するステップとによって、nビット・テスト値をノンスおよび端末識別子から生成する。
次に、端末を、この同じnビット・テスト値(即ち、Lビットの端末識別子12のjモジュロmのnビット部分)を共有する端末を含むパーティションに割り振ることができる。次に、nビット・テスト値が受信したnビット端末ハッシュ311と合致する端末を含むパーティションを選択することによって、探索パーティションを識別することができる。次に、探索パーティションの端末をテストして、それらがメッセージを認証するかを判断することができる。全ての端末の組を通して反復することによって、パーティション分割および探索が同時に実施される場合、nビット・テスト値が上述のように計算され、方法は、
nビット・テスト値(端末識別子のj番目のnビット部分)が受信したnビット端末ハッシュ311と合致するかを決定することによって進行する。合致している場合、キーおよびノンスをテストして、それらがMACを認証するかが判断される。
重なり合わない部分は隣接していなくても規則的に離間していなくてもよい。この場合、端末およびブローカーはそれぞれ、各部分の位置(例えば、開始ビット)を格納する必要がある。ノンス314の最後のkビット506は値jを有する。2≧mの要件によって、全ての可能な部分を使用することができることが確保され、モジュロmを値jに適用すること(j%m)によって、値が0からmの範囲に返されることが確保される。mが2の倍数である場合、モジュロ・ステップを省略することができる。この実施形態では、ノンス値の既定のkビット部分はノンスの最後のkビット部分であるが、最初のkビット部分であるか、またはノンス値における位置が分かっているものとして他の部分であることができる。一実施形態では、ノンスは16ビットのノンス値であり、nは最後の7ビットである。図5に示されるように、値j(またはj%m)は5番目の部分であり、値100=4を有する。端末識別子におけるこのnビット幅のj番目の部分は、0~2-1の値の範囲を有する。したがって、チェックする識別子の部分が分かると(即ち、j番目の部分)、全ての端末の組を、2個のパーティションまたはグループ510に分割することができ、各パーティション(グループ)は、同じj番目の部分の値を有するが異なるキーをそれぞれ有する端末で形成される。この場合、端末識別子のj番目のnビット部分508は、受信したnビット端末ハッシュ311に合致する値p(100=値4)を有する。次に、このp番目のグループ514は、MACメッセージを認証する端末キー516に関して探索を行うことができ、したがってメッセージを伝送する端末の端末識別子を決定することができる。しかしながら、現在のメッセージの暗号化されたメッセージ(暗号文)が、nビット・ハッシュに関して端末IDから選択するビットを決定するのに使用される場合、MACを使用して、(例えば、暗号化されたメッセージおよびnビット・ハッシュの連結からMACを計算することによって)暗号化されたメッセージおよびnビット・ハッシュの両方に署名することができる。
別の実施形態では、事前パーティション分割ステップは、メッセージが受信される前に実施することができる。この実施形態では、m回のパーティション分割が実施される。m回のパーティション分割のうちj番目のパーティション分割は、各端末識別子のj番目のnビット部分を選択し、それらの端末識別子において同じj番目のnビット部分を有する端末をグループ化して、2個のパーティションを形成することによって取得される。これは、j=1,…,mに対して実施される。次に、メッセージを受信すると、ノンスの既定のkビット部分の値jモジュロm(やはり、2≧mの要件に依存する)を計算することができる。端末識別子のnビット部分が受信したnビット・ハッシュと合致する端末キーで構成される、m回のパーティション分割のうちj番目のパーティション分割におけるパーティションであるものとして、探索パーティションを識別することができる。
この実施形態では、既定のパーティション分割関数は、送信されたノンスの一部分を使用して端末識別子の一部分を選択し、この部分の値は、端末によってメッセージのnビット端末ハッシュとして使用される。つまり、関数は、端末識別子のどのビットがnビット・ハッシュを生成するのに使用されるかを決定するのに、ノンスのどのビットが使用されるかを定義する。それに加えて、端末識別子のこの部分の値は、全ての端末の組を2個の探索グループに分割するのに使用される。したがって、この実施形態によって、探索空間を低減して、完全な端末IDを送信することなく、送信端末の識別を可能にすることができる。端末識別子の小さい部分が送信されるが、所与の端末を用いて繰り返される場合であっても、送信されたノンスを端末ハッシュと、即ち端末(ID、キー)のペアと関連付ける明確なやり方はない。したがって、この実施形態では、ノンスを含むnビット端末ハッシュはパーティション識別コードとして作用する。ノンスがメッセージに含まれ、nビット・ハッシュが(何らかのマッピング関数210を使用して)端末IDのn個の選択されたビットである、これらの実施形態では、端末はやはり、履歴の空間的(例えば、地理的)、時間的、もしくは空間時間的パターン、または衛星の軌道カウント/パラメータを使用するなど、上述したパーティション分割方法を使用してパーティション分割されてもよい。
メッセージを認証する許容可能な計算コストを取得するのに、ハッシュの正確なサイズ(ビット数)が選択される。ノンスのサイズは、所与の端末キーに関してノンス衝突率(即ち、複数の端末キーが同じメッセージを認証する可能性)を増加させることによって低減することができ、例えば、11ビットで、1日当たりメッセージ4件の送信率で1.4年分の固有のノンスが得られる。MACのサイズによって、メッセージを偽装し、またPHYエラーを検出する能力が決定されるが、性能は誕生日問題によって制限される。上述した実施形態では、MACは30ビットのMACである。ブローカー内において、複数のキーが所与のメッセージを「認証」できることがあり得るので、認証衝突が起こり得ることが注目される。本明細書に記載されるように、いくつかの実施形態では、キーを認証するための探索は、探索パーティションの全てのキーに対して実施され、複数の端末キーに対する認証を行う受信パケットは拒絶されて、パケット損失率が効率的に押し上げられる。また、無用な(例えば、ランダム・ノイズ)パケットが所与のキーによって「認証される」ことがある、偽認証が起こり得る可能性もある。偽装されるかまたは誤ってデコードされたパケットが、所与の端末キーに対する認証を行うことがある。このイベントの可能性は、MACサイズを増加させることによって低減される。したがって、MACのサイズは、偽認証の確率を最小限に抑えるように選ぶことができる。偽装の場合、敵意をもった当事者が有効なMACを有し、偶然同じMACを有するメッセージを生成する。通常、これは「誕生日攻撃」として分析される。やはり、より大きいMACは偽装が成功する確率を低減し、システム要件にしたがってMACの長さを選ぶことができる。
上述の実施形態は、暗号化スキーム(例えば、高度暗号化規格(AES))を使用して、端末のデータおよび識別情報の両方を隠す。したがって、特定の端末暗号化キーの知識がなければ、その端末からの送信を識別するには、暗号化プロトコルを破る(即ち、AESを破る)必要がある。しかしながら、上述の方法は計算の複雑性を増す可能性がある。例えば、端末の識別情報を隠そうとしない実現例と比べて、より多数のビットを端末識別に費やすのが必要なことがある。また、いくつかの実施形態では、メッセージの復号には、認証が達成されるまで、パーティション内の全ての端末のキーを用いて復号する必要がある。これは、端末の数がおよそ百万を超えて増加するので、計算上法外になる可能性がある。例えば、業界標準のOpenSSLライブラリを実装した2.50GHzで稼働するインテル・コアi7-6500U CPUは、1件のメッセージを約1マイクロ秒で、即ち1日約1011件のメッセージを復号することができる。T個の端末がある場合、メッセージ1件当たり平均T/2回の復号を試行する必要がある。各端末が1日平均10件のメッセージを送信する場合、1日当たり平均で5T回の復号が試行される。計算の複雑性は、端末の数に伴って2次関数的に増大することが観察される。T=10個の端末がある場合、約5T/D≒50台の中級のラップトップが必要である。アマゾン・ウェブ・サービス(AWS)を使用すると、これには年間約25、000ドルかかる。10億台の端末(T=10)がある場合、システムは5T/D≒50×10台の中級のラップトップを必要とし、年間約250億ドルかかる。
したがって、計算の複雑性を低減するとともに安全性を向上することができる、更なる方法について記載する。この方策では、共有暗号化キーの組を使用して端末をパーティション分割することによって、計算の複雑性が低減される。この方策では、端末の組は、上述したようにP個のパーティションにパーティション分割され、各パーティションに暗号化キーが割り当てられる。つまり、各端末はここで、従来のようなそれ自体の固有のキーと、端末が属するパーティションのキーとの2つのキーを有する。ここで、端末は2つのキーを用いて暗号化を行い、つまり、
1.最初に、およそτビットのMACを生成するそれらの固有のキーを用いて暗号化を行い、
2.およそτビットの別のMAC(パーティションMACまたはpMACと呼ばれる)を生成する、それらのパーティション・キーを用いて暗号化を行う。
2つのMACは連結されるので、MACビットの合計数はτ=τ+τである。更に、2回の暗号化は実際には不要であり、固有のキーのみを用いて暗号化を行うことによって、ある程度の計算を削減できることに注目する。必要なのは、MACビットτを生成することのみであり、パーティション・キーを用いた暗号化は実際には行わない。
このように2つのキーを使用することがなぜ役立つのかを知るため、受信側がメッセージを復号し認証するのに何を行うのかを見てみる。受信側は、
1.各パーティション・キーおよびMACの最初のτビットを用いた認証を試行し、
2.認証を行わなかったパーティション内の端末を破棄し、
3.MACの残りのτビットを使用して、残り全ての端末の固有のキーを用いた認証を試行し、
4.単一の端末キーが認証を行う場合、その端末は送信側であったと考えられる。
計算の削減は、認証を行わなかったパーティションが破棄されるステップ2に見られる。この方策の利点は、パーティション分割がMACを使用して暗号学的に行われることである。攻撃者は、どのパーティションが送信元であるかを決定するために、暗号を破る(即ち、AESを破る)か、またはパーティション・キーを取得する必要がある。
この方策は、(例えば、図2に示されるような)パーティションの単一の層が使用される単純な事例について記載したものである。このシステムでは、全てのパーティション・キーの組が認証ブローカー40には分かっており、各端末は、それが属するパーティションのパーティション・キーを分かっている。この実施形態では、nビット・ハッシュは、探索パーティション(即ち、端末キーを含むパーティション)に関するパーティション・キーから生成されたパーティション・メッセージ認証コード(pMAC)である。探索パーティションの識別は、受信したpMACを認証するパーティション・キーに関してパーティション・キーの組を探索することを含む。したがって、メッセージは、従来のように端末のMACを送信することと、pMACを(nビット・ハッシュとして)送信することとを含む。したがって、これによって計算の複雑性が低減されるとともに、nビット・ハッシュが暗号学的関数から取得されるpMACなので、より一層安全なシステムが提供される。
上述の実施形態は、パーティションの層を使用することによって計算の複雑性を更に低減するように、更に拡張することができる。概念的には、各パーティションに関して、端末キーの小さい組を含む小さいパーティションに至るまで、更に数回パーティション分割などをする。いくつかの実施形態では、単一の固有の端末キーをそれぞれ含むパーティションの組に至るまで、パーティション分割を継続することができる。ここで、各端末は、d-1個のパーティション・キーと1個の固有の端末キーとの、d個のキーの関連するリストを有する。そうすると、nビット・ハッシュを形成するように連結された(または、何らかの既知のやり方で順序付けられた)d-1個のタグ・ビットτ、τ、…、τd-1(例えば、d-1個のpMAC)が存在することになる。概念的には、nビット・ハッシュおよびMACフィールドを組み合わせることができるので、MACはd-1個のpMACに端末MACを加えたものである。
したがって、この実施形態では、パーティションは、ツリー構造などの階層状パーティション層にグループ化される。つまり、各パーティションは関連するパーティション・キーを有し、nビット・ハッシュは、根ノードから葉ノードまでツリーを横断する探索経路の各層において、各パーティション・キーから生成された各パーティション・メッセージ認証コード(pMAC)の順序付き組み合わせである。したがって、葉ノードは探索パーティション(即ち、端末キーを含むパーティション)である。探索パーティションを識別することは、順序付き組み合わせから決定された層と関連付けられた受信pMACを認証する、パーティション・キーのツリーの各層においてパーティション・キーの組を探索することによって、ツリーを横断することを含む。パーティション・キーが葉ノード層と関連付けられた受信pMACを認証する葉ノードは、探索パーティションである。更なる変形例では、葉ノード・パーティションを除く各パーティションは関連するパーティション・キーを有し、葉ノード・パーティションはそれぞれ単一の端末キーを含む。この実施形態では、探索パーティションを識別することは、葉ノードの組が取得されるまで、順序付き組み合わせから決定された層と関連付けられた受信pMACを認証する、パーティション・キーのツリーの各層においてパーティション・キーの組を探索することによって、ツリーを横断することを含む。したがって、探索パーティションは、その端末キーが端末のMACを認証する葉ノード・パーティションである。これらの実施形態では、pMACビットτ、…τd-1は、nビット・ハッシュを形成するパーティション・キーと対応する(また、各pMACがpビットの場合、n=p(d-1)である)。順序付き組み合わせは、根ノードから葉ノードまでツリーを横断することによって取得される順序であってもよく、nビット・ハッシュは、探索経路における各pMACの探索パーティションに対する連結である。端末側の方法は図7Bに概要が示されており、ステップ713は、ツリーを横断して探索パーティションを見出すことを含む。
図8は、ツリー構造840におけるパーティションの階層状グループ化を示す概略図である。この実施形態では、ツリーは3つのレベル841、842、843を有する。このツリーは、各ノードが2つの子を有する二値ツリーであるが、他の実施形態では、各ノードは2つを超える子(または更には単一の子)を有することができることに注目する。この実施形態では、ツリーは二値ツリーであり、第1のレベル841に根ノード800と2つのノード801および802を、第2のレベル842に4つのノード811、812、821、および822を、第3のレベル843に8つの葉ノード831、832、833、834、835、836、837、および838を有する。第3のレベル843の各葉ノードは、(図2に示されるパーティション222の単一層に対応する)複数の端末キーを含むパーティション222を含む。ノードはそれぞれ、組{[K,K],[K11,K12,K21,K22],[K111,K112,K121,K122,K211,K212,K221,K222]}を形成する、関連するパーティション・キー854を有する。この組は、認証ブローカー40には分かっており、データベース242に格納されるか、またはデータベース242もしくは同様の記憶エンティティに格納された情報から誘導可能である。一実施形態では、認証ブローカーはマスター・キーを格納し、キーの組は、マスター・キーをシードとして使用する暗号学的に安全な擬似乱数発生器から取得される。nビット・ハッシュ850は、根ノードから探索パーティション224(即ち、端末キー226を含むパーティション)である葉ノード835までの経路844に沿って、各層のパーティション・キー851、852、853を連結することによって形成される。したがって、nビット・ハッシュ850は、(MAC(K)、MAC(K21)、MAC(K211))である。pMACが連結され、各pMACがpビットであるこの実施形態では、次に、探索は、最初のpビット851をnビット・ハッシュから取ることによって第1のpMACを取得し、第1のレベルのパーティション・キー[K,K]のうちどれがpMACを認証するか(この場合、K)を決定することによって実施される。次に、次のpビット852をnビット・ハッシュから取り、第2のレベルのパーティション・キー[K11,K12,K21,K22]のうちどれが第2のpMACを認証するか(この場合、K21)を決定することによって、第2のレベルのpMACを取得する。更に、これは二値ツリーなので、実際は、右側のブランチ[K21,K22]をテストするだけでよい。次に、最後のpビット853をnビット・ハッシュから取得し、第3のレベル(葉ノード)のパーティション・キー[K111,K112,K121,K122,K211,K212,K221,K222]のうちどれが第3のpMACを認証するか(この場合、K211)を決定することによって、第3のレベルのpMACを取得する。更に、これは二値ツリーなので、実際は、ブランチの2つのキー[K211,K212]をテストするだけでよい。このように、探索パーティション224を見出しており、MACを認証する端末キー226に関してこれを探索することができる。
ツリーによって、キーの組を通して確率的探索を行うことができるようになるので、予期される数の復号の試行は、0(logT)、0(logT)、または0(Tα)のいずれかの順序を有し、ここで、ツリーがどのように構築されるか、また端末認証および識別に割り振られるビット数に応じて、α<1である。結果として、単位時間ごと、例えば1日ごとに実施される復号の試行数は、端末の数とともに、0(TlogT)、0(TlogT)、または0(Tα+1)のように増加させることができる。端末の観点から、メッセージを暗号化するため、端末はここで、異なるキーごとに認証暗号化方式(例えば、AES)の0(logT)の反復を実施しなければならない。結果として、これには、0(logT)キーが各端末によって格納される必要がある。しかしながら、実際の実施形態では、これは重要ではない。例えば、一実施形態では、各端末は20個のキーを格納し、各キーは16ビット長なので、20個のキーを格納するのに必要なメモリは320ビットである。それに加えて、一般的に、認証に必要なビット数はより多い。ビット数は構築されるツリーに応じて決まる。一般的に、計算動作がより少数になるツリーは、より多数のビットを必要とする。
計算の複雑性は形式的に評価することができる。1つの葉が各端末に対応する、T個の葉を有するツリーを構築する。このツリーの各エッジに暗号化キーを割り当てる。各端末は、葉をツリーの根ノードに接続する経路に沿ったキーを備える。単純にするため、これらの経路長は全て同じであり、すなわち全ての端末が同じ深さdの葉にあり、したがって各端末が正確にd個のキーに割り当てられるものと仮定する。二値ツリーが使用される単純な例では、
Figure 0007164218000004
を有する。
1,t,K2,t,…,Kd,t
を、根ノードに接続されたエッジに、即ちツリーの深さ1においてK1,t、深さ2においてK2,tなどが割り当てられた、t番目の端末に割り当てられたd個のキーとする。端末は、メッセージMを暗号化して、再帰によって定義される暗号文Cとする。
k-1=eax(Kk,t,τ,C), k=1,…,d
式中、C=Mであり、τ,…,τは、深さに依存するタグ・ビットのシーケンスである。このシーケンスはどの端末でも同じである。暗号化は、結果として、それぞれ異なるキーを用いて、また潜在的に異なる数のタグ・ビットを用いて、認証暗号化方式をd回適用することになることを観察する。認証に使用されるタグ・ビットの合計数は、τ+τ+…+τである。最も単純な例では、τ=τ=…=τが選ばれるが、以下ではこれを前提としない。
次に、復号のプロセスについて記載する。Kを、ツリーの根ノードに接続されたキーの組、つまり深さ1のエッジに割り当てられたキーの組とする。深さlのキーkの場合、A(k)によって、その祖先キーの組を、つまり深さl+1にあるkに対してノードを介して接続されたキーを示す。暗号文Cに対する候補の復号メッセージの組は、decrypt(C,K,1)によって与えられ、decryptは、再帰によって定義される集合値函数である。
decrypt(c,K,l)=∪k∈Kdecrypt(deax(k,τ,c),A(k),l+1) (1)
また、decrypt(INVALID,K,l)=φであり、φは空集合である。実際上、この関数は、キーのツリーを通る深さ優先探索として実現することができる。和集合内部に現れるキーkがツリーの葉に接続され、対応する祖先の組A(k)が空であるポイントl=dまで、再帰が反復することが観察される。したがって、
l>dのとき、decrypt(c,K,l)=φ (2)
となる。
次に、この深さ優先探索の計算の複雑性について分析する。分析を単純にするため、以下のように仮定する。
1.グラフは平衡しており、つまり、祖先の数|A(k)|はd未満の段階の全てのキーkに関して同じである。以下、祖先の数はAによって示す。分析を拡張して、段階|A(k)|が定数未満で境界をつけられる、より一般的な事例において、複雑性に境界をつけるようにするのが簡単である。
2.計算の複雑性は、deax関数によって支配されるので、deax関数の呼出し数を計数するのに十分であり、つまり復号の試行回数を計数するのに十分である。
3.cがキーkに関して有効な暗号文ではない場合、deax(k,τ,c)は、不正確な認証を行う確率2-τを有し、そうでない場合は確率1-2-τのINVALIDを返す。
これらの仮定のうち最後のものは、各キーkに関して、確率
Figure 0007164218000005
の1および確率
Figure 0007164218000006
のゼロに等しい確率変数Vの定義を促し、式中、lはキーの深さである。これらの確率変数は独立している、したがって例えば、キーの全てのサブセットSに関して、期待値
Figure 0007164218000007
であることを前提とする。これらの仮定下で、またランダム入力暗号文c、即ち必ずしも有効でない暗号文に関して、decrypt(c,K,l)によって必要とされるdeaxの呼出し数を、(2)の結果としてのl>dに対してl≦dおよびL(K,l)=0の場合、再帰的に定義された確率変数
L(K,l)=Σk∈K(1+VL(A(K),l+1))
として表現することができる。関心があるのは、deax呼出しの予期される数である。
Figure 0007164218000008
祖先の数は、A=|K|=|A(K)|なので、以下の通りである。
Figure 0007164218000009
L(A(K),l+1)はキーkに関与せず、したがってL(A(K),l+1)はVとは独立しており、
Figure 0007164218000010
であることが観察される。
予期される値は、組Kのサイズのみに応じて、即ち祖先Aの一定の数のみに応じて決まり、したがってKに対する依存は略すことができる。これを念頭に置くと、次式となる。
Figure 0007164218000011
ここで、deaxの呼出しの予期される数は、再帰
Figure 0007164218000012
(l<=dの場合)
およびD=0(l>dの場合)として表現することができる。
次に、タグ・ビットが全て等しい、つまり、
τ=τ=τ=…=τ
である、特別な場合について検討する。
この場合、再帰は、解
Figure 0007164218000013
(b=2-τA≠1のとき)
およびD=A(d+1-l)(b=1の場合)を用いて、Aを掛けた等比数列として識別することができる。そのため、関数decrypt(c,K,1)を計算するのに必要なdeaxの呼出しの予期される数は、
Figure 0007164218000014
(b≠1の場合)
およびD=Ad(b=1の場合)である。
上記式は、ランダムな暗号文入力の場合における呼出しの数をモデル化している。有効な暗号文入力の場合、1つの経路にあるキーの全てが認証を行う。有効な認証はそれぞれ、(1)によるdecryptの別の呼出しとなり、結果として各l=1,2,…,dに対しておよそD deaxの呼出しが追加される。そのため、有効な暗号文入力に関する呼出しDの予期される数は、合計
Figure 0007164218000015
(b≠1の場合)
として、また
Figure 0007164218000016
(b=1のとき)
として概算することができる。
次に、deaxの呼出しの数が端末の数Tにどのように関連するかについて検討する。ツリーの深さは、次式によって端末の数に関連する。
Figure 0007164218000017
τ>logAであることによってb=2-τA<1である場合、deaxの呼出しの数は、(3)の項Ad/(b-1)に支配されるので、
D=0(logT), τ>log
である。
τ<logAであることによってb=2-τA>1である場合、呼出しの数は、(3)の項A(bd+1-b)/(b-1)によって支配されるので、
Figure 0007164218000018
τ<log
であり、式中、
Figure 0007164218000019
である。
この場合、α<1であることが観察される。最後に、b=2-τA=1である例について検討する。これは、例えば、二値ツリーA=2を使用する実際の設定では、また各タグτ=τ=…=τ=1に単一のビットが使用される場合に生じる。この場合、deaxの予想される呼出し数は、
D≒d-d=0(logT), τ=log
である。
したがって、要約するため、一実施形態では、方法は、端末キーおよびノンスを使用して生成されるメッセージ認証コード(MAC)と、nビット・ハッシュと、暗号化されたメッセージ・テキストとを少なくとも含む、端末から送信されたメッセージを受信するステップを含む。いくつかの実施形態では、ノンスは送信にも含まれてもよい。認証ブローカー(または他のエンティティ)は、端末キーを2つ以上のパーティションへとどのようにパーティション分割するかを決定し、受信メッセージを送信した端末のキーを含む探索パーティションを識別することができる。いくつかの実施形態では、ノンスは端末および認証によって決定され、伝送はされず、nビット・ハッシュは、端末、および少なくともノンスと端末キーとを入力として使用する認証ブローカーの両方に分かっている、既定のパーティション分割関数を使用して取得される。ノンスがメッセージに含まれる(例えば、擬似乱数ソースを使用して端末によって生成される場合)実施形態では、次に、端末および認証ブローカーの両方に分かっている既定のパーティション分割関数を使用して、端末キーのnビットからnビット・ハッシュが選択される。いくつかの例では、nビット端末ハッシュおよび既定のパーティション分割またはマッピング関数が使用され、それによって端末が、メッセージを伝送した端末の端末キーを含む探索パーティションを含む、2個のパーティション(もしくはグループ)にパーティション分割またはグループ化される。探索パーティションが識別されると、認証ブローカーは、MACを認証するとともに暗号化されたメッセージ・テキストを復号する端末キーに関して、決定された探索パーティション(グループ)を探索することができ、端末キーと関連付けられた端末IDと、復号されたメッセージ・テキストとを、更なる処理のためにシステム・エンティティに提供する。例えば、履歴の空間的(例えば、地理的)、時間的、もしくは空間時間的パターン、または少なくとも認証ブローカーが端末をパーティション分割するのに使用することができる他のパラメータを使用して、様々なパーティション分割方法が使用されてもよい。いくつかの実施形態では、パーティションは、ツリー構造など、ツリーの各ノードがパーティション・キーを有するパーティションの階層状の層へとグループ化する。これによって、計算の複雑性を低減し、改善された安全性を提供することができ、これはnビット・ハッシュが暗号関数(パーティション層のキーのMAC)から取得することができることによるものである。
同様に、端末によって認証済みメッセージを生成する方法を説明することができる。認証ブローカーが、システムまたは共通の既知の情報を使用して端末キーをどのようにパーティション分割するかを決定できる場合、端末が、端末キーまたは端末識別子を含まずに送信するため、メッセージを暗号化しデジタル署名する。方法は、ノンス値を生成するステップを含む。端末は、既定のパーティション分割関数を使用してnビット・ハッシュを生成する。これは、少なくともノンスおよび端末キー(また、任意に端末ID)を使用してもよく、またはビットを端末IDから選択してもよい。暗号化されたメッセージ・テキストも、端末キーおよびノンスを使用して生成することができる。メッセージ認証コード(MAC)も、ノンス値および端末キーを使用して生成することができる。最後に、端末は、少なくともMACフィールド、nビット端末ハッシュ、および暗号文を含むメッセージを衛星に送信する。いくつかの実施形態では、ノンスは、認証ブローカーによって推定できない場合に含まれる。一実施形態では、nビット・ハッシュは、ツリーの探索経路におけるパーティション・キーのMACの順序付けから形成されて、端末キーを含むパーティションにつながる。つまり、パーティション関数は更に、複数のパーティションを複数の階層状パーティション層を含むツリーへとグループ化する(また、パーティション・キーは各パーティションと関連付けられる)。nビット・ハッシュは、根ノードから端末キーを含む葉ノード・パーティションまでツリーを横断する探索経路における、各層の各パーティション・キーから生成される、各パーティション・メッセージ認証コード(pMAC)の順序付き組み合わせである。
次に、端末IDおよび端末キーを生成し、端末(およびその(ID、キー)のペア)をネットワークで登録する、方法の一実施形態について記載する。この実施形態では、端末ID 12は128ビットであり、端末キーは128または256ビットであり、これらは端末のメーカーによって作成され割り当てられる。端末のメーカーには、ネットワーク・コントローラによって、ベンダーID(例えば、32ビット値)およびベンダー・キー(例えば、256ビット値)が割り当てられる。
所与のベンダーIDは、128または256ビットの端末キーを生成することのみに使用されることがあるが、端末IDおよび端末キーは両方とも、製造時に端末にはインストールされない。これらは、(ベンダーIDに対して)固有の32ビットの端末インデックス(例えば、カウンタ)を割り当てることによって生成される。端末IDは、次のように生成される。
HMAC(Vendor Key,“Term ID”||Vendor ID,Terminal Index)
128ビットの端末キーは、次のように生成される。
HMAC(Vendor Key,“Term Key0”||Vendor ID,Terminal Index)
あるいは、256ビットの端末キーは、次のように生成される。
HMAC(Vendor Key,“Term Key1”||Vendor ID,Terminal Index)||
HMAC(Vendor Key,“Term Key2”||Vendor ID,Terminal Index)
式中、
||は連結オペレータであり、
“Term ID”、“Term Key0”、“Term Key1”、“Term Key2”はストリングであり、
HMAC(key,iv,value)はRFC4868によって定義される。
ベンダーIDおよび端末インデックスは、端末を通信ネットワークで登録することのみに使用され、秘密ではない。空中で、またはスキャンされたQRコード(登録商標)を介して登録する場合、ベンダーIDおよび端末インデックスは平文で伝送されるが、端末キーを使用してデジタル署名される。追加の“Vendor ID Mask”は、所与のベンダーIDに対して利用可能な端末インデックスの範囲を制御するのに使用されてもよい。これは、IPv4サブネット・マスクと同じ方式で働く。ベンダーIDマスクは、登録メッセージに必ずしも含まれなくてもよい。
単一の端末ID/端末キー値(例えば、0)は、デバイス登録のために取っておかれる。追加のペアの数、例えば1~2^16-1は、匿名データの、例えば温度の送信のために取っておかれてもよいが、かかる匿名データは認証することができない。
端末は、パケットを受信できるようになる前にネットワークで「登録」しなければならない(つまり、認証ブローカー40は、登録された端末からではないメッセージを拒否し破棄する)。認証のプロセスは、探索される端末ID/キーのペアの組に、端末および特に(端末ID、端末キーの)ペアを追加する。例えば、それらは認証ブローカー40によって使用されるデータベース242に追加される。
図3Cは、一実施形態による登録メッセージのフレーム構造320を示す概略図である。これは、ベンダーID 321(この場合、32ビット)と、端末インデックス322(この場合、32ビット)と、CMAC 323(この場合、128ビット)とを含む。ベンダーIDおよび端末インデックスは上述したようなものであり、CMACは、端末キーを使用してVendor ID||Terminal Indexにデジタル署名する。サーバ(または受信)側、ベンダー・キー、およびベンダーIDは、端末IDおよび端末キーを生成するのに使用される。メッセージが認証されると、端末ID/キーが端末探索空間に追加される。
登録はまた、QRコード(登録商標)を介して実施されてもよい。登録ペイロードは、QRコード(登録商標)(または他の類似の技術)として直接符号化される。登録アプリケーションは、次に、メッセージを追加のメタデータと関連付ける。
無線登録の場合、平文のVendor ID||Terminal Indexは、追加のメタデータと連結されてもよい。任意の追加のメタデータは、暗号化されたメタデータが署名されることを含めて、端末キーおよびメッセージ全体を介して暗号化されるべきである。追加情報は、顧客IDなどを含んでもよい。追加のメタデータが含まれる場合、平文のノンスも攻撃の再生を防ぐのに必要なことがある。
システムは、複数の端末と複数のアクセス・ノードとを備える衛星通信システム、特に複数の衛星アクセス・ノードを特徴づける通信システムで使用されてもよい。1つのかかる通信システムは、例えば、WO2014/043760およびWO2016/090411に記載されている、Myriotaによって開発されたグローバル・センサ・ネットワークである。このシステムは、多数の分散された一般的には低出力の端末(例えば、バッテリー式端末)に対応する、効率的な通信方法およびアーキテクチャを開発することによって、遠隔のモノのインターネットを可能にするように設計されている。本明細書に記載する方法は、かかるシステムで使用するのに特に適している。しかしながら、様々な実施形態が、衛星アクセス・ノード、空中アクセス・ノード、および地上アクセス・ノード(移動地上アクセス・ノードを含む)の様々な組み合わせによるもの、または完全に空中もしくは完全に地上のアクセス・ノードを含む3つの様々な組み合わせによるものを含む、他の通信システムで使用されてもよいことが理解されるであろう。
(メッセージの真正性および有効性を有効にする元の役割に加えて)パケットに適用されたデジタル署名を使用して送信が端末識別子を省略する、通信ネットワーク内の送信端末を固有に識別する、方法の実施形態について記載してきた。全ての端末キーの組は、2つ以上のパーティションにパーティション分割され、送信を伝送した端末の端末キーを含む探索パーティションが識別される。システム全体のキー空間のパーティション分割によって、全ての可能な端末キーを用いて受信メッセージの認証を試行することの計算コストが低減されて、探索パーティションにあるキーのみの限定された探索を実施することが可能になる。探索は、受信側には分かっているかもしくはそれによって誘導可能/推定可能なシステム情報を使用して、または送信側および受信側の両方には分かっているかもしくはそれら両方によって誘導可能/推定可能なシステム情報を使用して行われ、あるいはメッセージは、探索パーティションを識別する際に受信側を支援する情報を含んでもよい。いくつかの実施形態では、ノンス値が使用され、独立して誘導することができ(即ち、メッセージで送信されず)、端末および認証ブローカー(またはコア・ネットワーク・エンティティ)の両方によって使用され、他の実施形態では、ノンスが送信され、パーティション分割またはマッピング関数とともに使用されて、端末を識別することが可能になる。ノンスを省略することによって、より小さいヘッダを使用することが可能になり、絶対的な端末の匿名性が提供されるが、衛星軌道パラメータ(例えば、タイミング参照および最新のエフェメリス・データへのアクセス)など、ノンスを計算する何らかの方法を知っている必要がある。ノンスを含めることによってこれらの要件が排除されるが、端末IDが部分的にのみ難読化され、何らかの追加のヘッダ情報を要する。端末ハッシュおよびノンスを含めることは、パーティション識別コードとして作用する。いくつかの実施形態では、パーティションは、例えば、各ノードにパーティション・キーが割り当てられるツリー構造など、階層状にグループ化される。次に、nビット・ハッシュを、例えば連結によって、パーティション・キーMACを順序付けることによって形成することができる。これには、nビット・ハッシュが暗号学的関数(即ち、パーティション・キーのMAC)から取得されるので、安全性がより高くなるという利点がある。標準的な安全性の目的に加えて、これらの方法は、端末と基地局との間で送信する必要があるオーバーヘッドを最小限に抑えて、実際のデータのための余地をより大きく残すように設計される。メッセージの生成ならびに端末の登録に関する関連方法も提供される。
当業者であれば、情報および信号は、様々な科学技術および技術のいずれかを使用して表されてもよいことを理解するであろう。例えば、上述の説明全体を通して参照されることがあるデータ、命令、コマンド、情報、信号、ビット、記号、およびチップは、電圧、電流、電磁波、磁界もしくは磁性粒子、光学場もしくは光学粒子、またはそれらの任意の組み合わせによって表されてもよい。
当業者であれば更に、本明細書に開示する実施形態と関連して記載される様々な例証の論理ブロック、モジュール、回路、およびアルゴリズム・ステップが、電子ハードウェア、コンピュータ・ソフトウェアもしくは命令、または両方の組み合わせとして実現されてもよいことを認識するであろう。ハードウェアおよびソフトウェアのこの交換可能性を明確に例示するため、様々な例示の構成要素、ブロック、モジュール、回路、およびステップについて、概して、それらの機能性の観点で上記に記載してきた。かかる機能性がハードウェアまたはソフトウェアのどちらとして実現されるかは、システム全体に付与される特定の用途および設計上の制約に応じて決まる。当業者は、記載する機能性を、特定の用途それぞれに対して様々な形で実現してもよいが、かかる実現の決定は、本発明の範囲からの逸脱を生ずるものと解釈すべきでない。
本明細書に開示される実施形態と関連して記載される方法またはアルゴリズムのステップは、ハードウェアの形で、プロセッサによって実行されるソフトウェア・モジュールの形で、またはそれら2つの組み合わせの形で直接具体化されてもよい。ハードウェア実装の場合、処理は、1つ以上の特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理装置(DSPD)、プログラマブル論理デバイス(PLD)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、本明細書に記載する機能を実施するように設計された他の電子ユニット、またはそれらの組み合わせの中で実現されてもよい。ソフトウェア・モジュールは、コンピュータ・プログラム、コンピュータ・コード、または命令としても知られ、多数のソース・コードもしくはオブジェクト・コード・セグメントまたは命令を含んでもよく、RAMメモリ、フラッシュ・メモリ、ROMメモリ、EPROMメモリ、レジスタ、ハード・ディスク、リムーバブル・ディスク、CD-ROM、DVD-ROM、ブルーレイ・ディスク、またはコンピュータ可読媒体の他の任意の形態など、任意のコンピュータ可読媒体に常駐してもよい。いくつかの態様では、コンピュータ可読媒体は、非一時的なコンピュータ可読媒体(例えば、有形媒体)を含んでもよい。それに加えて、他の態様の場合、コンピュータ可読媒体は、一時的なコンピュータ可読媒体(例えば、信号)を含んでもよい。上述のものの組み合わせも、コンピュータ可読媒体の範囲内に含まれるべきである。別の態様では、コンピュータ可読媒体はプロセッサと一体であってもよい。プロセッサおよびコンピュータ可読媒体は、ASICまたは関連デバイスに常駐してもよい。ソフトウェア・コードはメモリ・ユニットに格納されてもよく、プロセッサはそれらを実行するように構成されてもよい。メモリ・ユニットは、プロセッサ内またはプロセッサ外に実装されてもよく、プロセッサ外の場合、当該分野で知られているような様々な手段を介してプロセッサに通信可能に連結することができる。
更に、本明細書に記載する方法および技術を実施するためのモジュールおよび/または他の適切な手段を、コンピュータデバイスによってダウンロードおよび/または別の方法で取得できることが認識されるべきである。例えば、かかるデバイスをサーバに連結して、本明細書に記載する方法を実施する手段の転送を容易にすることができる。あるいは、本明細書に記載する様々な方法を、記憶手段(例えば、RAM、ROM、コンパクトディスク(CD)もしくはフロッピーディスクなどの物理的記憶媒体など)を介して提供することができ、それにより、コンピューティング・デバイスは、記憶手段をデバイスに連結または提供する際に、様々な方法を取得することができる。更に、本明細書に記載する方法および技術を提供するための他の任意の適切な技術を利用することができる。
1つの形態では、本発明は、本明細書に提示する方法または動作を実施するコンピュータ・プログラム製品を含んでもよい。例えば、かかるコンピュータ・プログラム製品は、命令が格納(および/または符号化)されたコンピュータ(もしくはプロセッサ)可読媒体を含んでもよく、命令は、本明細書に記載する動作を実施するのに1つ以上のプロセッサによって実行可能である。
本明細書に開示する方法は、記載される方法を達成するための1つ以上のステップまたはアクションを含む。方法のステップおよび/またはアクションは、請求の範囲から逸脱することなく互いに交換されてもよい。換言すれば、ステップまたはアクションの特定の順序が指定されない限り、特定のステップおよび/またはアクションの順序および/または使用は、請求の範囲から逸脱することなく修正されてもよい。
本明細書で使用するとき、「決定する」という用語は多種多様なアクションを包含する。例えば、「決定する」は、計算、演算、処理、導出、調査、検索(例えば、テーブル、データベース、もしくは別のデータ構造の検索)、確認などを含んでもよい。また、「決定する」は、受信(例えば、情報を受信すること)、評価(例えば、メモリ内のデータを評価すること)などを含んでもよい。また、「決定する」は、解決、選択、選出、確立などを含んでもよい。
システムの態様は、1つもしくは複数のプロセッサおよびメモリと、任意に入力デバイス(例えば、キーボード、マウスなど)および出力デバイス(例えば、ディスプレイ)とを備える、コンピューティング・デバイスまたは装置を使用して実現されたコンピュータであってもよい。これらは、例えば、受信および送信装置の代わりに専門の計算を実施するため、受信および送信装置に統合されるか、または受信および送信装置と通信していてもよい。メモリは、本明細書に記載する方法の態様またはステップをプロセッサに実行させる命令を含んでもよい。プロセッサおよびメモリは、サーバ、デスクトップ・コンピュータ、ラップトップ・コンピュータもしくはタブレットなどのポータブル・コンピューティング・デバイスなど、標準的なコンピューティング・デバイスに含まれてもよく、またはカスタマイズされたデバイスもしくはシステムに含まれてもよい。コンピューティング・デバイスは、一体型のコンピューティングもしくはプログラマブル・デバイス、または有線もしくは無線接続を介して動作可能に(もしくは機能的に)接続された、いくつかの構成要素を備える分散型のデバイスであってもよい。1つまたは複数のプロセッサは、入出力インターフェースと、演算論理装置(ALU)と、入出力インターフェースを通して入出力デバイスと通信している制御装置およびプログラム・カウンタ要素とを備える、中央処理装置(CPU)を備えてもよい。入出力インターフェースは、規定の通信プロトコル(例えば、Bluetooth、Zigbee、IEEE 802.15、IEEE 802.11、TCP/IP、UDPなど)を使用して、別のデバイスにおける等価の通信モジュールと通信する、ネットワークインターフェースおよび/または通信モジュールを備えてもよい。グラフィック処理装置(GPU)も含まれてもよい。表示装置は、平面ディスプレイ(例えば、LCD、LED、プラズマ、タッチ・スクリーンなど)、プロジェクタ、CRTなどを含んでもよい。コンピューティング・デバイスは、単一のCPU(コア)もしくは複数のCPU(マルチ・コア)、または複数のプロセッサを備えてもよい。コンピューティング・デバイスは、パラレル・プロセッサ、ベクトル・プロセッサを使用するか、または分散型コンピューティング・デバイスであってもよい。メモリは、プロセッサに動作可能に連結され、RAMおよびROMコンポーネントを備えてもよく、デバイス内またはデバイス外に提供されてもよい。メモリは、オペレーティング・システムおよび追加のソフトウェア・モジュールまたは命令を格納するのに使用されてもよい。プロセッサは、メモリに格納されたソフトウェア・モジュールまたは命令をロードし実行するように構成されてもよい。
明細書および以下の請求の範囲全体を通して、文脈によって別様が求められない限り、「備える」および「含む」という単語、ならびに「備えている」および「含んでいる」などの変形例は、提示される整数または整数群を含むが、他のあらゆる整数または整数群を除外しないことを示唆するものと理解される。
本明細書における任意の従来技術の参照は、かかる従来技術が共通の一般的知識の一部を形成することを何らかの形で提案することの承認ではなく、またそのように解釈されるべきではない。
本開示は、その使用が記載する特定の1つまたは複数の適用例に制限されないことが、当業者には認識されるであろう。本開示は、本明細書に記載もしくは図示される特定の要素および/または特徴に関して、その好ましい実施形態に制限されない。本開示は、開示される1つまたは複数の実施形態に限定されず、以下の請求の範囲によって記述され定義されるような範囲から逸脱することなく、多数の再配置、修正、および置換が可能であることが認識されるであろう。

Claims (42)

  1. 通信システムにおいて端末から受信したメッセージから端末識別子を決定する方法であって、
    複数のアクセス・ノードと、該複数のアクセス・ノードに動作可能に接続された認証ブローカーと、複数の端末とを含む通信システムのアクセス・ノードによって、端末キーと固有の端末識別子を有する端末から送信されるメッセージを受信するステップでてあって、該アクセス・ノードによって受信された該メッセージが、少なくともメッセージ認証コードと、nビット・ハッシュと、暗号化されたメッセージ・テキストとを含み、少なくとも端末キーおよびノンスが該メッセージ認証コードを生成するのに使用され、該端末識別子または該端末キーのどちらも該端末から送信されたメッセージには含まれない、ステップと、
    少なくとも該受信したメッセージ認証コーおよび該nビット・ハッシュを該認証ブローカーに提供するステップであって、該認証ブローカーが、該通信システムの該複数の端末に対する全ての端末識別子と端末キーのペアの組を格納する、ステップと、
    該端末キーの組を少なくとも2つのパーティションにパーティション分割し、該nビット・ハッシュを使用して該アクセス・ノードによって受信された該メッセージを送信した該端末の該端末キーを含む探索パーティションを識別するステップと、
    メッセージ認証コードを認証する該端末キーに関して該探索パーティションを探索するステップと、
    メッセージ認証コードを認証する該端末キーを使用して該端末識別子を識別するステップと、を含む方法。
  2. 前記ノンスが前記アクセス・ノードによって受信された前記メッセージに含まれず、前記端末および前記認証ブローカーには分かっている既定のパーティション分割関数が、少なくとも前記ノンスおよび端末キーからnビット・ハッシュを生成するのに使用され、前記方法が、前記ノンスを取得するステップを更に含み、前記ノンスが、前記認証ブローカーには分かっているかもしくは前記認証ブローカーによって推定可能なシステム情報、または前記端末および前記認証ブローカーの両方には分かっているかもしくは前記端末および前記認証ブローカーの両方によって推定可能な共通情報を使用して取得される、請求項1に記載の方法。
  3. 前記端末キーの組をパーティション分割する前記ステップが、前記取得したノンスと前記端末キーとを前記既定のパーティション分割関数への入力として使用することによって、各端末に対してnビットのテスト値を生成するステップと、同じnビット・ハッシュを有する端末をグループ化するステップとを含み、前記探索パーティションを識別する前記ステップが、nビットのテスト値が前記受信したnビット・ハッシュと合致する端末を含む前記パーティションを選択するステップを含む、請求項2に記載の方法。
  4. 前記規定の関数が、
    Figure 0007164218000020

    (ノンス)であり、式中、Kは対応する端末キーである、請求項3に記載の方法。
  5. 前記ノンスが、端末の履歴の空間的、時間的、または空間時間的送信パターンを分析することによって取得される、請求項2から4のいずれか一項に記載の方法。
  6. 受信の送信元であった地理的領域を推定するステップを更に含み、前記ノンスを取得するステップが、既定の時間窓にわたって前記システムの各端末に関して最後に分かっていた位置を使用して実施され、前記探索パーティションが、最後に分かっていた位置が該推定された地理的領域内であった前記端末を含む、請求項5に記載の方法。
  7. 前記ノンスを取得する前記ステップが、前記通信システムにおける前記端末からの送信のタイミングまたは周波数パターンを使用して実施され、前記探索パーティションが、前記受信した送信の時間に基づいて識別される、請求項5に記載の方法。
  8. 前記ノンス値が、前記端末から送信された前記メッセージの送信時間に関して決定された時間におけるカウンタの現在値を決定することによって取得され、該カウンタが、予め定められた基準時間および増分ポイントに関して計数される、請求項2から4のいずれか一項に記載の方法。
  9. 前記カウンタが、受信側および送信側には分かっている衛星軌道のパラメータに基づいて、前記端末から送信された前記メッセージの送信の推定時間で計算され、前記基準時間が基準エポックであり、前記増分ポイントが予め定められた軌道基準ポイントである、請求項8に記載の方法。
  10. 前記パラメータが軌道カウントであり、衛星通信ネットワークの衛星に対するエフェメリス・データから決定される、請求項9に記載の方法。
  11. 前記複数のアクセス・ノードが複数の衛星アクセス・ノードを含み、前記カウンタの基準である前記衛星が該複数の衛星アクセス・ノードの1つである、請求項9または10に記載の方法。
  12. パーティションの数が2つであり、前記パーティション分割および探索が、
    端末に関して、前記既定のパーティション分割関数を前記端末キーおよび前記ノンスに適用することによって取得されるnビットのテスト値を計算するステップと、
    端末に関して、該nビットのテスト値が信した前記nビット・ハッシュと合致するかを決定し、該nビットのテスト値が信した前記nビット・ハッシュと合致する場合、前記端末キーおよび前記ノンスが前記メッセージ認証コードの認証に成功するかを決定するステップとによって、全ての前記端末キーの組を通して反復することによって同時に実施される、請求項2に記載の方法。
  13. 前記ノンスが前記アクセス・ノードによって受信された前記メッセージに含まれ、前記端末および前記認証ブローカーには分かっている既定のパーティション分割関数が、前記端末識別子からnビットを選択するのに前記ノンスを使用することによって、nビット・ハッシュを生成するのに使用され、前記端末キーの組をパーティション分割する前記ステップが、受信した前記ノンスおよび前記端末識別子を該既定のパーティション分割関数への入力として使用することによって、各端末に関してnビットのテスト値を生成するステップと、同じnビット・ハッシュを有する端末をグループ化するステップとを含み、前記探索パーティションを識別するステップが、nビットのテスト値が信した前記nビット・ハッシュと合致する端末を含む前記パーティションを選択するステップを含む、請求項1に記載の方法。
  14. 前記ノンスが、前記端末によって擬似乱数ソースから生成される、請求項13に記載の方法。
  15. 前記既定のパーティション分割関数が、
    前記端末識別子をm個のnビットの重なり合わない部分へとパーティション分割するステップと、
    2k≧mの要件に依存する、前記ノンスの既定のkビット部分の値jモジュロmを計算し、Lビットの端末識別子のjモジュロmのnビット部分を選択するステップとによって、nビットのテスト値を前記ノンスおよび前記端末識別子から生成する、請求項13または14に記載の方法。
  16. 前記ノンスの前記既定のkビット部分が前記ノンスの最初または最後のkビット部分である、請求項15に記載の方法。
  17. 前記パーティション分割が、端末の履歴の空間的、時間的、または空間時間的送信パターンを分析することに基づく、請求項1から16のいずれか一項に記載の方法。
  18. 前記ノンスが前記アクセス・ノードによって受信された前記メッセージに含まれ、前記端末キーの組をパーティション分割するステップが、メッセージを受信する前にm回のパーティション分割を生成するステップを含み、該m回のパーティション分割のうちj番目のパーティション分割が、
    各端末識別子のj番目のnビット部分を選択し、端末識別子の同じj番目のnビット部分を含む端末をグループ化して、各j=1,…,mに対して2n個のパーティションを形成するステップと、
    メッセージを受信する際に、2k≧mの要件に依存する、前記ノンスの既定のkビット部分の値jモジュロmを計算するステップによって取得され、前記探索パーティションを識別するステップが、該m回のパーティション分割のうち該j番目のパーティション分割において、前記端末識別子の該nビット部分が信した前記nビット・ハッシュと合致する端末キーで構成される前記パーティションを選択するステップを含む、請求項1に記載の方法。
  19. 前記少なくとも2つのパーティションがそれぞれ関連するパーティション・キーを有し、前記nビット・ハッシュが、前記探索パーティションに関するパーティション・キーから生成されるパーティション・メッセージ認証コーを含み、前記探索パーティションを識別するステップが、信した該パーティション・メッセージ認証コードを認証する該パーティション・キーに関してパーティション・キーの組を探索するステップを含む、請求項1から18のいずれか一項に記載の方法。
  20. 前記少なくとも2つのパーティションが、複数の階層状パーティション層を形成するようにツリー状にグループ化された複数のパーティションであり、各パーティションが関連するパーティション・キーを有し、前記nビット・ハッシュが、根ノードから前記探索パーティションを含む葉ノードまでツリーを横断する探索経路の各層における、各パーティション・キーから生成される各パーティション・メッセージ認証コーの順序付き組み合わせであり、前記探索パーティションを識別するステップが、該順序付き組み合わせから決定された該層と関連付けられた信した前記パーティション・メッセージ認証コードを認証する該パーティション・キーに関して、該ツリーの各層における前記パーティション・キーの組を探索することによって、該ツリーを横断するステップを含み、葉ノード層と関連付けられた信した前記パーティション・メッセージ認証コードをパーティション・キーが認証する該葉ノードが、前記探索パーティションである、請求項19に記載の方法。
  21. 前記少なくとも2つのパーティションが、複数の階層状パーティション層を形成するようにツリー状にグループ化された複数のパーティションであり、葉ノード・パーティションを除く各パーティションが関連するパーティション・キーを有し、葉ノード・パーティションがそれぞれ単一の端末キーを含み、前記nビット・ハッシュが、根ノードから葉ノードまでツリーを横断する探索経路の各層における、各パーティション・キーから生成される各パーティション・メッセージ認証コーの順序付き組み合わせであり、前記探索パーティションを識別するステップが、葉ノードの組が取得されるまで、該順序付き組み合わせから決定された該層と関連付けられた信した該パーティション・メッセージ認証コードを認証する該パーティション・キーに関して、該ツリーの各層における前記パーティション・キーの組を探索することによって、該ツリーを横断するステップを含み、前記探索パーティションが、該端末キーが前記端末の前記メッセージ認証コードを認証する該葉ノード・パーティションである、請求項19に記載の方法。
  22. 前記順序付き組み合わせが、前記根ノードから前記葉ノードまで前記ツリーを横断することによって取得される順序であり、前記nビット・ハッシュが、前記探索経路における各パーティション・メッセージ認証コードの前記探索パーティションに対する連結である、請求項20または21に記載の方法。
  23. 前記端末識別子が128ビットであり、前記端末キーが128または256ビットである、請求項1から22のいずれか一項に記載の方法。
  24. パーティションの数が100超過である、請求項1から11および13から23のいずれか一項に記載の方法。
  25. 複数の既定のパーティション分割関数が前記端末キーの組をパーティション分割するのに使用され、前記端末から送信された前記メッセージが、該複数の既定のパーティション分割関数からどの既定のパーティション分割関数が前記端末キーの組をパーティション分割するのに使用されるかを決定するのに、前記認証ブローカーによって使用される、少なくとも1ビットの標識フィールドを更に含む、請求項1から24のいずれか一項に記載の方法。
  26. 前記通信システムが衛星通信システムであり、前記複数のアクセス・ノードが複数の衛星アクセス・ノードを含む、請求項1から25のいずれか一項に記載の方法。
  27. 複数の端末と、複数のアクセス・ノードと、認証ブローカーとを含み、各端末が固有の端末識別と端末キーとを格納し、該認証ブローカーが該複数の端末それぞれに対する端末識別子と端末キーのペアの組を格納する、衛星通信システムのアクセス・ノードに送信する端末によって、認証済みメッセージを生成する方法であって、
    ノンス値を生成するステップと、
    暗号化されたメッセージ・テキストを取得するのに、該端末によって格納された端末キーおよび該ノンス値を使用して、送信のためのメッセージを暗号化するか、または送信のための暗号化されたメッセージ・テキストを取得するステップと、
    該端末によって、少なくとも該端末キーおよびノンスからnビット・ハッシュを生成するか、またはnビットを該端末識別子から選択することによってnビットのテスト値を生成する、既定のパーティション分割関数を使用して、nビット・ハッシュを生成するステップであって、あるいは該nビット・ハッシュが、該端末キーを含むパーティションと関連付けられたパーティション・キーから生成される1つまたは複数のパーティション・メッセージ認証コーを含む、ステップと、
    少なくとも該ノンスおよび該端末キーを使用して、メッセージ認証コーを生成するステップと、
    該複数のアクセス・ノードのうちのアクセス・ノードに、該端末によって、少なくとも該nビット・ハッシュと、該メッセージ認証コードと、該暗号化されたメッセージ・テキストとを含むメッセージを送信するステップと
    を含む、方法。
  28. 前記ノンス値が、前記端末および前記認証ブローカーの両方には分かっているかもしくは前記端末および前記認証ブローカーの両方によって推定可能な共通情報を使用して決定され、前記ノンスが送信されず、既定のパーティション分割関数が、前記少なくとも前記端末キーおよび前記ノンスから前記nビット・ハッシュを生成する、請求項27に記載の方法。
  29. 前記ノンス値が、前記メッセージの送信時間に関して決定された時間におけるカウンタの現在値を決定することによって取得され、該カウンタが、受信側および送信側には分かっている衛星軌道のパラメータに基づき、予め定められた基準時間および増分ポイントに関して計数される、請求項28に記載の方法。
  30. 前記カウンタが、前記メッセージの送信時における衛星に関する軌道カウントであり、前記基準時間が基準エポックであり、前記増分ポイントが予め定められた軌道基準ポイントである、請求項29に記載の方法。
  31. 前記複数のアクセス・ノードが複数の衛星アクセス・ノードを含み、前記カウンタの基準である前記衛星が該複数の衛星アクセス・ノードの1つである、請求項30に記載の方法。
  32. nビット端末ハッシュが、
    Figure 0007164218000021

    (ノンス)を使用して取得され、式中、Kは対応する端末キーである、請求項28から32のいずれか一項に記載の方法。
  33. 前記ノンスが擬似乱数ソースから生成され、前記メッセージで送信され、前記既定のパーティション分割関数が、前記端末識別子からnビットを選択することによって、前記nビット端末ハッシュを生成する、請求項32に記載の方法。
  34. 前記nビット端末ハッシュを生成するステップが、
    前記ノンスの既定のkビット部分を選択するステップと、
    2k≧mに依存する、前記端末識別子をm個のnビットの重なり合わない部分へとパーティション分割するステップと、
    前記ノンス値の該kビット部分の値jモジュロmを計算するステップと、
    前記端末識別子のj番目のnビット部分を前記nビット端末ハッシュとして選択するステップと
    を含む、請求項33に記載の方法。
  35. パーティション関数が更に、複数のパーティションを複数の階層状パーティション層を含むツリーへとグループ化し、パーティション・キーが各パーティションと関連付けられ、前記nビット・ハッシュが、根ノードから前記端末キーを含む葉ノード・パーティションまで該ツリーを横断する探索経路の各層における、各パーティション・キーから生成される各パーティション・メッセージ認証コーの順序付き組み合わせである、請求項24に記載の方法。
  36. 前記通信システムが衛星通信システムであり、前記複数のアクセス・ノードが複数の衛星アクセス・ノードを含む、請求項27から35のいずれか一項に記載の方法。
  37. プロセッサと、請求項1から26のいずれか一項に記載の方法を実現するように該プロセッサを構成する命令を含むメモリとを備える、認証ブローカー装置。
  38. アンテナと、通信ハードウェアと、プロセッサと、請求項27から35のいずれか一項に記載の方法を実現するように該プロセッサを構成する命令を含むメモリとを備える、端末装置。
  39. 請求項38に記載の複数の端末と、
    複数のアクセス・ノードと、
    請求項37に記載の認証ブローカー装置とを備える、通信システム。
  40. 前記複数のアクセス・ノードが複数の衛星アクセス・ノードを含む、請求項39に記載のシステム。
  41. 請求項1から26のいずれか一項に記載の方法をプロセッサに実施させる命令を含む、コンピュータ可読媒体。
  42. 請求項27から36のいずれか一項に記載の方法をプロセッサに実施させる命令を含む、コンピュータ可読媒体。
JP2020512004A 2017-08-28 2018-08-28 通信システムにおける端末識別情報保護方法 Active JP7164218B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
AU2017903469 2017-08-28
AU2017903469A AU2017903469A0 (en) 2017-08-28 Terminal identity protection method in a communication system
PCT/AU2018/000150 WO2019040963A1 (en) 2017-08-28 2018-08-28 METHOD FOR PROTECTING TERMINAL IDENTITY IN A COMMUNICATION SYSTEM

Publications (2)

Publication Number Publication Date
JP2020532235A JP2020532235A (ja) 2020-11-05
JP7164218B2 true JP7164218B2 (ja) 2022-11-01

Family

ID=65524566

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020512004A Active JP7164218B2 (ja) 2017-08-28 2018-08-28 通信システムにおける端末識別情報保護方法

Country Status (7)

Country Link
US (1) US11336437B2 (ja)
EP (1) EP3676989A4 (ja)
JP (1) JP7164218B2 (ja)
CN (1) CN111386674B (ja)
AU (1) AU2018322689B2 (ja)
CA (1) CA3073859A1 (ja)
WO (1) WO2019040963A1 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10862688B2 (en) * 2019-03-13 2020-12-08 Digital 14 Llc System, method, and computer program product for zero round trip secure communications based on a noisy secret with a reduced message size
US10892891B2 (en) * 2019-03-13 2021-01-12 Digital 14 Llc System, method, and computer program product for zero round trip secure communications based on two noisy secrets
US10951415B2 (en) * 2019-03-13 2021-03-16 Digital 14 Llc System, method, and computer program product for implementing zero round trip secure communications based on noisy secrets with a polynomial secret sharing scheme
US10972283B2 (en) * 2019-03-13 2021-04-06 Digital 14 Llc System, method, and computer program product for zero round trip secure communications based on noisy secrets
US11392585B2 (en) 2019-09-26 2022-07-19 Palantir Technologies Inc. Functions for path traversals from seed input to output
CN110649960B (zh) * 2019-10-12 2021-08-10 四川安迪科技实业有限公司 卫星网络报文交换方法及系统、发送与接收方法及装置
WO2021192992A1 (ja) * 2020-03-23 2021-09-30 ソニーグループ株式会社 エンティティ、ゲートウェイ装置、情報処理装置、情報処理システム、および情報処理方法
CN112102611B (zh) * 2020-08-03 2023-02-03 上海理工大学 一种基于中断概率影响模型的城市路网关键路径辨识方法
WO2022046798A1 (en) * 2020-08-24 2022-03-03 Eleven Software Inc. Key matching for eapol handshake using distributed computing
US20220158843A1 (en) * 2020-11-13 2022-05-19 Ford Global Technologies, Llc Diagnostic over ip authentication
EP4309330A1 (en) * 2021-04-14 2024-01-24 Huawei Technologies Co., Ltd. Joint data source identification and authentication
CN114466359B (zh) * 2022-01-07 2024-03-01 中国电子科技集团公司电子科学研究院 适用于低轨卫星网络的分布式用户认证系统及认证方法
CN114513311A (zh) * 2022-02-25 2022-05-17 上海芯钛信息科技有限公司 一种改进消息认证码算法的方法、装置、设备和介质
CN115225330A (zh) * 2022-06-21 2022-10-21 中国电信股份有限公司 一种数据加密方法、装置、电子设备及存储介质
CN114827212B (zh) * 2022-06-27 2022-09-16 浙江省邮电工程建设有限公司 智慧交通的车辆通信管理方法
CN116684870B (zh) * 2023-08-03 2023-10-20 中国电力科学研究院有限公司 电力5g终端的接入认证方法、装置及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006246269A (ja) 2005-03-07 2006-09-14 Kyushu Univ 他サービス環境でのidデバイスのリンク不能性を守るid管理装置と方法
US20070180247A1 (en) 2005-12-21 2007-08-02 Nortel Networks Limited System and method for providing identity hiding in a shared key authentication protocol
US20100161999A1 (en) 2008-12-19 2010-06-24 University Of Washington Scalable RFID systems: a privacy preserving protocol with constant-time identification
WO2016132011A1 (en) 2015-02-16 2016-08-25 Nokia Technologies Oy Service discovery

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020073345A1 (en) * 2000-12-11 2002-06-13 Joseph Esfahani Secure indentification method and apparatus
US20040193891A1 (en) * 2003-03-31 2004-09-30 Juha Ollila Integrity check value for WLAN pseudonym
JP4731876B2 (ja) * 2004-07-08 2011-07-27 パナソニック株式会社 通信システム、無線lan基地局制御装置および無線lan基地局装置
EP1873674B1 (en) * 2005-12-19 2019-09-04 Nippon Telegraph And Telephone Corporation Terminal identification method, authentication method, authentication system, server, terminal, radio base station, program, and recording medium
JP5293284B2 (ja) * 2009-03-09 2013-09-18 沖電気工業株式会社 通信方法、メッシュ型ネットワークシステム及び通信端末
CA3104015C (en) 2012-09-21 2023-03-07 Myriota Pty Ltd Communication system and method
CA2969344C (en) 2014-12-09 2021-07-06 University Of South Australia Multicarrier communications system
US10505907B2 (en) * 2017-05-02 2019-12-10 Disney Enterprises, Inc. Securely recognizing mobile devices
US11218462B2 (en) * 2018-11-01 2022-01-04 Cisco Technology, Inc. Access network authentication token broker (ANATB) gateway

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006246269A (ja) 2005-03-07 2006-09-14 Kyushu Univ 他サービス環境でのidデバイスのリンク不能性を守るid管理装置と方法
US20070180247A1 (en) 2005-12-21 2007-08-02 Nortel Networks Limited System and method for providing identity hiding in a shared key authentication protocol
US20100161999A1 (en) 2008-12-19 2010-06-24 University Of Washington Scalable RFID systems: a privacy preserving protocol with constant-time identification
WO2016132011A1 (en) 2015-02-16 2016-08-25 Nokia Technologies Oy Service discovery

Also Published As

Publication number Publication date
AU2018322689A1 (en) 2020-02-13
CA3073859A1 (en) 2019-03-07
WO2019040963A1 (en) 2019-03-07
CN111386674B (zh) 2023-10-20
AU2018322689B2 (en) 2023-08-17
US20200195427A1 (en) 2020-06-18
US11336437B2 (en) 2022-05-17
CN111386674A (zh) 2020-07-07
EP3676989A4 (en) 2021-05-26
EP3676989A1 (en) 2020-07-08
JP2020532235A (ja) 2020-11-05

Similar Documents

Publication Publication Date Title
JP7164218B2 (ja) 通信システムにおける端末識別情報保護方法
US11277747B2 (en) Base station location authentication
Melki et al. Lightweight multi-factor mutual authentication protocol for IoT devices
Tan et al. A PUF-based and cloud-assisted lightweight authentication for multi-hop body area network
Aman et al. Low power data integrity in IoT systems
US10149159B1 (en) Trusted beacon system and method
Grover et al. A survey of broadcast authentication schemes for wireless networks
JP5399404B2 (ja) 一方向アクセス認証の方法
US10219106B1 (en) Secure BLE broadcast system for location based service
Javali et al. I am alice, i was in wonderland: secure location proof generation and verification protocol
KR101078915B1 (ko) 키 관리
CN108323229B (zh) 用于基于位置的服务的安全ble广播系统
US20230032099A1 (en) Physical unclonable function based mutual authentication and key exchange
US20150381365A1 (en) Network device configured to derive a shared key
Ullah et al. A secure NDN framework for Internet of Things enabled healthcare
Mahmood et al. A provably secure mobile user authentication scheme for big data collection in IoT-enabled maritime intelligent transportation system
WO2018213875A1 (en) Asymmetric cryptography and authentication
Tedeschi et al. SpreadMeNot: A provably secure and privacy-preserving contact tracing protocol
JP2007189422A (ja) 無線lanにおける相互認証方法、および、相互認証を行うアクセスポイントとステーション
CN113747433B (zh) 一种雾网络中基于区块侧链结构的设备认证方法
Nakkar et al. Lightweight authentication and key agreement protocol for edge computing applications
CN113285805B (zh) 一种通信方法及装置
Singh et al. A minimal protocol for authenticated key distribution in wireless sensor networks
Sojka-Piotrowska On the applicability of short key asymmetric cryptography in low power wireless sensor networks
Sudarsono et al. An Implementation of Secure Monitoring System to Track Member in A Tour Group Using Group Signature

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210705

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220628

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220920

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221013

R150 Certificate of patent or registration of utility model

Ref document number: 7164218

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150