JP2021524944A - マルチパーティ計算(mpc)による物のインターネット・セキュリティ - Google Patents

マルチパーティ計算(mpc)による物のインターネット・セキュリティ Download PDF

Info

Publication number
JP2021524944A
JP2021524944A JP2021514484A JP2021514484A JP2021524944A JP 2021524944 A JP2021524944 A JP 2021524944A JP 2021514484 A JP2021514484 A JP 2021514484A JP 2021514484 A JP2021514484 A JP 2021514484A JP 2021524944 A JP2021524944 A JP 2021524944A
Authority
JP
Japan
Prior art keywords
devices
sas
key
communication channel
communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021514484A
Other languages
English (en)
Inventor
マイア ソアレス デ レゼンデ,ジョアン ミゲル
マイア ソアレス デ レゼンデ,ジョアン ミゲル
シルバ マーティンズ,ローランド ダ
シルバ マーティンズ,ローランド ダ
コエーリョ アントゥネス,ルイス フィリペ
コエーリョ アントゥネス,ルイス フィリペ
ヴィエラ ソウザ,パトリシア ラケル
ヴィエラ ソウザ,パトリシア ラケル
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inesc Tec Instituto de Engenharia de Sistemas e Computadores Tecnologia e Ciencia
Original Assignee
Inesc Tec Instituto de Engenharia de Sistemas e Computadores Tecnologia e Ciencia
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inesc Tec Instituto de Engenharia de Sistemas e Computadores Tecnologia e Ciencia filed Critical Inesc Tec Instituto de Engenharia de Sistemas e Computadores Tecnologia e Ciencia
Publication of JP2021524944A publication Critical patent/JP2021524944A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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/0841Key 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 Diffie-Hellman or related key agreement protocols
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y30/00IoT infrastructure
    • G16Y30/10Security thereof
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/50Secure pairing of devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • 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/46Secure multiparty computation, e.g. millionaire problem
    • 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/84Vehicles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)

Abstract

第1のデバイス(200A)と第2のデバイス(200B)との間の通信チャネルを介した通信を確立するための方法およびデバイスが開示される。方法は、第1のデバイス(200A)と第2のデバイス(200B)とを相互に発見することと、データ・メッセージの交換によって第1のデバイス(200A)と第2のデバイス(200B)との間の通信チャネルの正当性確認をすること(F5、F6、F7)と、第1のデバイス(200A)と第2のデバイス(200B)との間で秘密を交換し、次に通信チャネルを介して暗号化メッセージを交換することとを含む。

Description

関連出願の相互参照
本出願は、2018年5月16日に出願されたポルトガル特許出願第20181000034529号および2018年5月25日に出願されたヨーロッパ特許出願第18174412.9号の優先権および利益を主張する。
物のインターネット(IoT)は、テクノロジが今後どのように人々と関わり合うかという概念である。これは、「スマート」デバイスが人間と対話するだけでなく、相互にも対話する、プライベート・インターネットおよび/またはパブリック・インターネットなどのネットワークに接続された「物」またはデバイスの集合である。ガートナーの研究機関によって公表されたデータは、2020年までには、インターネットに接続されたそのようなスマートデバイスが250億になるだろうと予測している。これらの物理的および仮想的な「物」は、識別属性と、物理属性と、仮想人格とを有し、現実/物理世界における事象に対して実質的に自律的に反応して人間の直接介入なしにプロセスによってそれらの事象に作用する。
この分野における指数関数的成長に伴い、いくつかのプライバシーおよびセキュリティ上の課題が存在する。具体的には、IoTデバイスの特定の特性に合わせてセキュリティ解決策を適応化する必要がある。IoTデバイスには、従来型デバイスにはないリソースの限界がある[参照文献1]。そのような限界には、IoTデバイスにおける限られたバッテリ寿命と記憶空間が含まれる。IoTデバイスに必要なセキュリティおよびプライバシー要件のセットには、ユーザおよびデバイス識別情報管理、認証、IoTデバイスのうちの異なるIoTデバイス間の通信で交換されるデータの機密性、IoTデバイスのうちの許可されたもののみがIoTネットワークにアクセスすることができるようにするネットワーク・アクセス制御、およびリソースおよびシステムの可用性が含まれるが、これらには限らない[参照文献2]。
現在、ほとんどの研究IoTプラットフォームおよび既存IoTプラットフォームが、デバイス管理に焦点を合わせ、認証およびセキュリティのために信頼できる集中型解決策を採用している。これらの集中型解決策は、公開鍵インフラストラクチャ(PKI)に基づく。PKIを使用する明白な利点にもかかわらず、PKIに基づく解決策は、複雑で、費用がかかり、管理が容易ではない傾向がある[参照文献4]。さらに、PKI方式のネットワークに接続されたデバイスには前述のリソースの限界がある。
IoTデバイスのメモリに記憶されているどのような鍵でも、物理的に奪われたIoTデバイスから読み取られる可能性があり、IoTデバイスが組み込まれているIoTネットワークに攻撃を仕掛けるために敵対者によって使用される可能性があるため、IoTデバイスの物理的セキュリティも問題であることがわかっている[参照文献3]。
PKIは、ネットワーク(上述のIoTネットワークなど)内のセキュリティ証明書の正当性確認についてもっぱら証明機関(CA)のみに依存している。CAは、ネットワークのインフラストラクチャ内の単一障害点に相当する。障害点は様々なプロトコルに存在することがわかっているが、ネットワークがネットワークに対するいかなる攻撃に対してもより耐性を備えるようになることを可能にするためには、これらの障害点は(CAにおけるように)単一ではないかまたは集中化されていないことがきわめて望ましい。PKIは、CAの公開鍵が露出された場合、完全かつ不可逆的に侵害される。公開鍵を入手した攻撃者は、新たな証明書を容易に発行することができ、したがって、侵害されたネットワークにおいてなりすましをして、いわゆる中間者(Man−in−the−Middle(MitM))攻撃を行うことができる。MitM攻撃は、攻撃者が、実際に互いに直接通信をしているものと思っているネットワークにおける2者間の通信を秘密裏に中継し、場合によっては変更を加える場合である。例えば、サーバ証明書の単純な露見の場合、攻撃者がその期間にネットワークを侵害することができるいわゆる「攻撃ウィンドウ」が開かれる。この攻撃窓は開いたままとなり、その露見したサーバ証明書は無効にされるが、これは、例えば攻撃がしばらく通知されない場合、ただちには行われない可能性がある。
PKIにおいて発生することがわかっているもう一つの問題は、よく管理されていないCAが、特定のドメインの所有権を正しく検証せずに、そのドメインのための証明書に署名する場合である。
前述の限界を考えると、PKIにおいて基礎にある前提は、必ずしもIoTネットワークおよびIoTデバイスにとって最適ではない。
ディフィー・ヘルマン(DH)鍵交換は、ネットワークにおいてパブリック・チャネルを介して暗号鍵をセキュリティ保護された状態で交換する方法であり、ネットワークを介して通信したい2者間の共有秘密の確立に基づいている。DH鍵交換は、2者(典型的にはアリスとボブと呼ばれる)がそれぞれ、2者に秘密に保たれる秘密パラメータと、非秘密に保たれ、2者間で合意される開始パラメータとを設定する。開始パラメータは、両者の側で秘密パラメータと混合され、次に、公開鍵として交換される。公開鍵の交換後、公開鍵は自分の秘密パラメータと混合され、その後両者は通信の暗号化のために使用可能な同一の値を持つ。残念ながら、DH鍵交換は通信するパーティの認証を与えないため、DH鍵交換もMitM攻撃に対して脆弱である。したがって、攻撃者は、ボブとアリスの両方、すなわち通信パーティになりすますことができる。
2者が互いに直接通信して、ショート認証文字列(Short Authentication String(SAS))を渡して確認することによってその身元を確認することができるいくつかのプロトコルが知られている。これらのプロトコルには、Zリアルタイム・トランスポート・プロトコル(Z Real−time Transport Protocol(ZRTP))[参照文献.9]およびジャグリングによるパスワード認証鍵交換(Password Authenticated Key Exchange by Juggling(J−PAKE))[参照文献.5および7]があり、人間の対話と手動プロビジョニングという前提に基づく。しかし、このような知られているプロトコルは、IoTデバイスのペアの間では実際的ではない人間の対話に基づくため、IoTデバイスとの通信には適さない。
提供されているその他の解決策としては、PAKE(パスワード認証鍵合意(Password−Authenticated Key Agreement)プロトコルがある。現在、最も高度なアルゴリズムは、公開鍵暗号化に基づく鍵交換を行わず、低エントロピー・パスワードの使用を可能にする。参照文献6では、3つの最新PAKEプロトコルについて説明されている。同論文では、OpenSSL環境でデフォルトとして採用された、J−PAKEプロトコルよりも効率的な2つのプロトコルも開示されている。
J−PAKEプロトコル[参照文献5および7]は、2者間でセキュリティ保護された通信を確立するためにPKIまたは第三者を必要としない共有パスワードの概念に基づく。J−PAKEは、鍵合意のための楕円曲線DHと、シュノア非対話型ゼロ知識(Shnorr Non−Interactive Zero−Knowledge(NIZK))署名[参照文献8]証明機構を使用して、2者を認証し、パスフレーズに基づき2者間の共有秘密を確立する。Pale Moonウェブ・ブラウザ、Bouncycastle(バージョン1.48以降)における軽量API、およびThread(IoT無線ネットワーク・プロトコル)など、依然としてJ−PAKEを使用している一部のサービスもある。このプロトコルは、FireFox Sync、OpenSSH、およびOpenSSLによっても以前にサポートされていたが、2014年以後は削除されている。
Mohsen Toorani[参照文献12]によってすでに公開されているいくつかの知られているJ−PAKEの問題がある。参照文献12は、FireFox Syncによって使用されていたJ−PAKEの分析を示しており、J−PAKEにおける脆弱点を特定している。例えば、J−PAKEは、パスワード侵害なりすまし攻撃に対して脆弱であり、再生および未知の鍵共有(Unknown Key−Share(UKS))攻撃に関するその他の短所がある。J−PAKEは、OpenSSLおよびOpenSSHにも組み込まれているが、実装時に問題が報告されている[参照文献25]。
ショート認証文字列を使用したデバイス・ペアリング[参照文献22]は、SASを使用した秘密の真正性の合意および検査に基づく2デバイス・ペアリング機構である。このプロトコルは、発見、合意および認証の3段階を含む。ペアリング・サービスが開始すると、サーバが選択されたインスタンス名の公開を開始する。クライアントが、その名前と、対応する接続パラメータとを発見する[参照文献22]。サーバが発見された後、クライアントとサーバは、クライアントとサーバがSASを生成する暗号化プロトコルを使用して共有秘密について合意することができるようにする、トランスポート層セキュリティ(TLS)セッションを使用する。この段階の完了後、SASによるペアリングの正当性を確認するために使用される認証段階がある。この認証段階では、手動検証、すなわちユーザが、通信を行いたい両方のデバイス(サーバとクライアント)が同じ文字列を表示することを検証する必要がある検証により、SASの比較が行われる。この代わりにサーバとクライアントがクイック・レスポンス(QR)コード(登録商標)をサポートしている場合は、サーバが、SASの符号化を備えたQRコード(登録商標)を表示し、クライアントがSASの値をスキャンすることができ、スキャンされた値をローカルで計算された値と比較することができる。
ZRTP[参照文献9]は、セキュア・リアルタイム・トランスポート・プロトコル(SRTP)セッションを確立するための鍵交換およびパラメータについて合意するために使用されるセッション設定段階を含む、2点間マルチメディア通信プロトコルである。このZRTPプロトコルは、デジタル証明書には基づかず、各セッションで生成された(前述の)DH鍵に基づく。これらのDH鍵は、SRTPセッションのためのセッション鍵およびパラメータの生成に寄与する。ZRTPプロトコルは、最初に、セッション開始プロトコル(SIP)などのシグナリング・プロトコルを使用する必要があるが、鍵ネゴシエーションはZRTP実装のみによって行われる。しかし、DHアルゴリズムだけでは、MitM攻撃に対する十分な保護を提供しない。ZRTPプロトコルでの鍵交換において両方のピアを認証するために、両方の電話に配信されるSASが使用され、両端によって口頭で比較される。SASが同じ場合、ユーザの両方が、その鍵を受け入れるためにボタンを押す必要がある。
米国特許第7,730,309号は、セキュア電話プロトコルのための方法およびシステムを教示している。セキュア電話プロトコルは、キャッシュされて、その後、別個のセキュア通話のために使用される一連の長いセッション鍵を認証するために再使用される、共有秘密値を含むことができる。これは、ユーザによる音声認証の必要なしに、暗号化鍵の連続性を可能にする。当該特許のシステムは、通話設定時にDH鍵交換を使用し、したがって上述の限界という欠点がある。
上記のように、既存の解決策は、IoTネットワークにおけるIoTデバイス間の、データを含むメッセージの交換のための十分な認証および暗号化方法を提供しない。
ショート認証文字列(SAS)の正当性確認および通信チャネルのセキュリティのためにユーザによる人間の対話を必要としないSASの交換による、自律的相互ペアリングのための新しい手法が必要である。
本開示は、2つのデバイス間のマルチパーティ計算を使用した自律的検証による、いわゆる鍵交換のためのシステムおよび方法を提供する。鍵交換は、IoTデバイス、ボイス・オーバIP(VoIP)プロトコルを実装するデバイス、またはネットワーク内のその他のユニットなどの、任意の2者間にセキュリティ保護された通信を確立するために使用される。このシステムおよび方法は、例えばディフィー・ヘルマン(DH)鍵交換に基づく。しかし、本明細書に記載のシステムおよび方法は、PKI、または証明機関などの信頼できる第三者の存在を必要としない。
マルチパーティ計算(multi−party computation(MPC))は、非集中型プライバシー保護計算フレームワークを構築するための基本ビルディング・ブロックを提供するための適切な選択肢となる。MPCの目標は、パーティが自分のプライベート入力の何らかの結合関数を計算することができるようにすることである[参照文献13]。このプロトコルはいくつかのセキュリティ特性を保持する必要がある。すなわち、パーティのうちの一部が積極的または受動的な悪意ある敵対者によって侵害された場合でも[参照文献14]、すなわち、関数自体の出力以上の情報を明らかにすることなく、出力の正確さと入力のプライバシーを保持する必要がある。
本開示の方法は、第1のデバイスと第2のデバイスとの間の通信チャネルを介した通信の確立のために以下のように実装される。第1のデバイスと第2のデバイスとはローカル・デバイスであり、例えば、複数のそのようなデバイスを含むIoTネットワーク、またはVoIPネットワークの構成要素であり得る。VoIPネットワーク内のデバイスは、音声方式のメッセージの送信のためのデバイスである。
この方法は、例えば、第1のデバイスと第2のデバイスとの間で開始メッセージおよび肯定応答メッセージを交換することによる、第1のデバイスと第2のデバイスの相互発見を含む。この相互発見は、第1のデバイスと第2のデバイスとの間の直接通信としてのメッセージの自動交換によって実施され得る。例えば前述のVoIPネットワークにおいて使用される1つの選択肢は、第1のデバイスと第2のデバイスとの間の通信チャネルを認証することができるSIPサーバと呼ばれる集中型サーバの使用である。次に、第1のデバイスと第2のデバイスの間で秘密セッション鍵が確立される。
その後、第1のデバイスにおいて第1のSASを、第2のデバイスにおいて第2のSASを計算し、次に、第1のSASを第1のデバイスにおける第1のMPCモジュールに、第2のDASを第2のデバイスにおける第2のMPCモジュールに挿入することによって、第1のデバイスと第2のデバイスの間の通信チャネルがその後正当性確認される。マルチパーティ通信(MPC)モジュールが、第2のMPCモジュールにおいて第1のSAS、および第1のMPCモジュールにおいて第2のMASとを評価することによって、通信チャネルのセキュリティを確認する。その後、マルチパーティ計算を使用して第1のデバイスと第2のデバイスとの間で共有秘密が確立され、暗号化されたメッセージを通信チャネルを介して交換することができる。
本開示の一態様では、開始メッセージと肯定応答メッセージの交換による認証は、第1のデバイスと第2のデバイスとのうちの少なくとも一方の乱数識別子を生成することを含む。したがって、デバイスは、通信の交換のための通信セッションごとに異なる識別子を受信する。前述のように、VoIPネットワークでは、VoIPプロトコルを使用することができるデバイスの識別子を知っている、いわゆるSIPサーバ(SIP=セッション開始プロトコル)によって相互発見が行われることになる。VoIPネットワークにおけるその後のデータ転送は、ピア・ツー・ピア方式で行われる。
この方法は、マルチパーティ比較による比較の成功後に、第1のデバイスから第2のデバイスに確認メッセージを送信し、この第2のデバイスから第1のデバイスに確認メッセージを送信することをさらに含む。
SASは、この方法の一実装形態では、第1のデバイスと第2のデバイスの両方で同一であり、通信チャネルの正当性確認を実装するマルチパーティ通信モジュールが、第1のデバイスから受信したSASが第2のデバイスにおいて生成されたものと等しいことを調べるようになされることに留意されたい。
本開示の一態様では、第1の秘密鍵は前の第1の秘密鍵から生成され、第2の秘密鍵は前の第2の秘密鍵から生成され、本発明の他の態様では、通信チャネルを介したすべてのメッセージの交換前に通信チャネルの正当性確認が行われる。さらなる一態様では、通信チャネルの正当性確認は、通信チャネルを介した複数のメッセージの交換後にのみ実施される。
本開示は、ネットワークにおけるローカル・デバイス間のセキュリティ保護された通信を可能にするためにこの方法を採用するネットワークも教示する。デバイスは、通信チャネルを介して複数のデバイスのうちの他のデバイスのうちの1つまたは複数のデバイスにメッセージを送信するための送信器と、複数のデバイスのうちの他のデバイスのうちの1つまたは複数のデバイスから通信チャネルよりメッセージを受信するための受信器と、生成されたSASを受信したSASと比較することによって通信チャネルと複数のデバイスのうちの別の1つのデバイスとを認証し、セッション鍵を生成するためのマルチパーティ計算モジュールと、生成されたセッション鍵を使用してメッセージを暗号化するための通信モジュールとを含む。
デバイスは、複数のセッション鍵を記憶するためのストレージもさらに含むことができ、デバイスを識別する擬似乱数を生成するための擬似乱数生成器もさらに含み得る。
2者間の第1の通信方式を示す図である。
2者間の第2の通信方式を示す図である。
2つのデバイスを備えるネットワークの概要を示す図である。
Raspberry Piプロセッサである2つのデバイスの接続を示す図である。
以下、本発明について図面を基に説明する。本明細書に記載の本発明の実施形態および態様は例に過ぎず、特許請求の保護範囲をいかなる点でも限定しないことを理解されたい。本発明は、特許請求の範囲およびその均等物によって定義される。本発明の一態様または一実施形態の特徴は、本発明の異なる一態様もしくは、態様および/または特徴と組み合わせることができることを理解されたい。
本明細書に記載の製作物は、ネットワーク、より具体的にはIoTネットワークおよびVoIPネットワークにおける2つの(ローカル)デバイス間のセキュリティ保護されたピア・ツー・ピア・データ交換のためのシステムおよび方法の設計および実装に関係する。このシステムおよび方法は、2つのデバイス間の通信の認証のための非集中型解決策であり、従来技術のPKIとは異なり集中型解決策ではなく、本明細書のシステムおよび方法は単一障害点を有しない。ピア・ツーピア・データ交換での使用は、1つまたは複数の中央サーバが存在し、ローカル・デバイスと通信することもできるネットワークにおけるこのシステムおよび方法の使用を排除しない。
このシステムおよび方法は、軽量アーキテクチャを有し、したがって、追加オーバーヘッドなしに、IoTネットワークにおける複数の個別IoTデバイスおよびその他のユニットを備えたIoT環境のための解決策を提供する。このシステムおよび方法は、異なる要件に合わせて適応化可能である。後述するように、IoTネットワークのユーザは速度を優先させるか、または、実行時オーバーヘッドを増加させることになる追加的セキュリティ検査を導入することができる。
このシステムおよび方法は、人間の介入に依存せず、したがってセキュア・ボイス・オーバIP(VoIP)通信のために使用することができる。この方法は、ZRTP VoIP用途に適応化可能であり、それによって人間の介入の必要をなくすことができ、または、後述するように通信チャネルの正当性確認のために適応化可能である。
このシステムおよび方法は、マルチパーティ計算(MPC)の概念を利用する。これは、1982年にセキュア2パーティ計算の一形態として正式に紹介され、1986年にAndrew Yaoの文献によって一般化された、暗号化のサブ分野である[参照文献13、30および31]。MPCの背景にある考え方は、計算を秘密裏に行うことである。この場合、パーティiが入力tを担当する、Nパーティが関数
EQ f(t\s\do5(1)\,...\,t\s\do5(N))=S (式1)
を計算したいとする。
目標は、パーティのいずれも、ペア(t;S)、すなわち入力tおよびS、関数ffの結果以外の情報を取得することができないことである。パーティiからのいかなる入力tも他のパーティのいずれにも明らかにされ得ず、各パーティはその出力のみを受信する。この関数の非限定的な一例は、MPCモジュールにおいて実装される等価関数である。2パーティ、すなわち2つのIoTデバイスがそれぞれ入力tおよびtを有するとする。MPCモジュールは、2つのIoTデバイスのそれぞれから個別に対応する値tおよびtを受信する。MPCモジュールは、tとtの値が等しい場合に値S=1を返し、値tとtが等しくない場合に値S=0を返す。後者の場合(すなわちS=0)、これは、中間者攻撃が存在し、2つのIoTデバイス間の通信がセキュリティ保護された状態であると信頼することができないことを意味する。この概念は、VoIPプロトコルを実装するデバイスなど他のパーティに合わせて適応化することもできる。
MPCプロトコルが保護された状態であるためには、MPCプロトコルに存在する必要があるいくつかの特性がある。MPCプロトコルは、プライバシーを保証する必要があり、これはパーティiの入力tを(パーティ自身の他には)誰にもわからないように、すなわち、各パーティiが、要求された問題の答えである式1に示す関数の出力Sのみを知るように保証することを意味する。一例として、明らかにされる唯一の入札価格が最高値入札者の入札価格であるオークションを挙げる。他のすべての入札価格が落札価格よりも低かったということを導き出すことは明らかに可能である。しかし、これは失敗した入札に関して明らかにされる唯一の情報でなければならない。MPCプロトコルが持っている必要があるもう一つの特性は、それによって各パーティiが正しい出力Sを受信することが保証されなければならない正しさである。オークションの例では、これは、最高入札価格のパーティiが落札することを保証され、競売人を含めてどのパーティもこの結果を変更することができないことを意味する[参照文献32の記載を参照]。
本明細書のシステムおよび方法は、PKIシステムの複雑さまたは信頼できる第三者の使用を克服するために、DH鍵交換に基づく。導入部で述べたように、DHのみでは認証を保証することはできず、DHにはMitM問題がある[詳細については参照文献10を参照]。
Zimmermann P.等[参照文献34]は、「ダブル・チェック」を使用することによるこのMitM問題の解決策を提案している。このダブル・チェックは、ボイス・オーバー・インターネット・プロトコル(VoIP)通信(または、実際に音声チャネルを介した音声通信を可能にする任意のその他のプロトコルによる通信)において電話でSASを声に出して読み、パーティがSASを口頭で比較することができるようにするために、PKIシステムにおけるユーザのそれぞれのためにSASを表示することにより、MitM攻撃のいずれの検出も可能にする。ユーザは、SASが等しいことを確定するために、例えばタッチスクリーン上の「ok」ボタンまたはキーボードのリターン・キーを能動的に押す必要がある。しかし、この解決策(ZRTPプロトコルと称する)は、このプロトコルを音声チャネルなしに、したがっていかなる聴覚または口頭の通信も可能ではない状態で、純粋なデータ交換用に適応化する可能性を欠いている。言い換えると、音声による比較というZimmermannの考え方を使用したデータの交換のためのプロトコルは、ユーザからの介入なしにSASをセキュリティ保護された状態で自動的に交換することができる確立された音声チャネルまたはセキュア・チャネルがないため、使用することができない。ZRTPプロトコルの1つのさらなる問題は、「無精な」または「無責任な」ユーザが、SASが等しいことを実際に検証せずにSASを単純に確定する可能性があることである。
本明細書のシステムおよび方法は、暗号化のMPCサブ分野に基づいて追加的セキュリティ層を追加することによってこの認証問題を解決する。この追加的セキュリティ層は、2者(またはそれ以上の)のパーティを含み、それらのパーティのうちの各パーティがそれぞれの入力を有する。ここで、パーティの両方が、データへの自分の入力をパーティのうちの他のパーティに、またはネットワーク全体に明らかにすることなく、1つのデータに関する何らかの計算を行いたいとする。SASは人間の介入なしに自動的に秘密裏に比較する必要がある。さらに、きわめて機密性の高い通信の場合、このダブル・チェックがきわめて重要であるため、SASの正当性が常時、保証される。SASの自動比較は、無精または無責任なユーザが実際にその正当性を調べることなくSASを確定するリスクもなくす。
図1Aに、本明細書のシステムおよび方法を使用する図2に示すIoTネットワークにおける2つのデバイス(200Aと200B)間の通信方式を示す。図1Bに、2つのデバイス200Aと200Bがボイス・オーバIPプロトコルを使用して通信するためのデバイスである場合の通信方式の適応化形態を示す。このような場合、2つのデバイス200Aおよび200Bはスマートフォン、タブレット、またはコンピュータであり得るが、これは本発明を限定するものではないことを理解されたい。
図2に、互いに通信することができ、メッセージの形態でデータを互いに交換することができるデバイス200Aおよび200Bを示す。メッセージは、純粋にデータ・メッセージであってよく、またはVoIPプロトコルを使用したボイス・データを有するパケットであってもよい。2つのデバイス200Aおよび200Bは、その機能については後述するマルチパーティ計算モジュール210と、セッション鍵を記憶し、キャッシュするための識別子ファイル220とを含む。2つのデバイス200Aおよび200Bは、送信器240および受信器250と、電源260も含む。2つのデバイス200Aおよび200Bは、例えば利用可能な記憶容量と電力とが限られているセンサである。
2つのデバイス200Aと200Bの間の図1Aの通信方式は、ステップF1からF4でデバイス200Aおよび200Bの両方が、送信器240と受信器250とを使用して自動的にHELLOおよびHELLOack(HELLOメッセージの受信の肯定応答)メッセージを交換することで開始する。このメッセージの交換は、ユーザからの介入なしに行われ、図中で段階1として示されている。これらのHELLOメッセージおよびHELLOackメッセージでは、2つのデバイス200Aおよび200Bの両方の識別情報が互いに対して明らかにされる。識別情報は、疑似乱数生成器(PRNG)を使用して生成され、この識別情報は段階1で正当性確認される。段階1におけるこのメッセージの交換後、段階2の鍵合意交換が、ステップF5のデバイス200Bからデバイス200Aへのコミット・メッセージで開始することができる。図1Aに示す方式は、デバイス200Bが開始側であることを想定している。デバイス200Bとデバイス200Aとの間で鍵について合意するために、ここで実施可能な手法は2つある。
第1の手法では、デバイス200Aとデバイス200BとがDH交換により新しい共有秘密を交換する。これはステップF6およびF7に示されている。第2の手法では、デバイス200Aと200Bとの間で前に交換された共有秘密がすでに存在するため、デバイス200Aとデバイス200Bは新たな共有秘密を交換する必要がない。その結果、この第2の手法ではデバイス200Aおよび200BによりDH計算が省かれる。しかし、デバイス200Aおよび200Bに記憶されているいくつかの共有鍵のうちのどの1つの共有鍵を使用すべきかを判断するために、ステップF6およびF7におけるいわゆるDHPart1メッセージとDHPart2メッセージが、やはりデバイス200Aと200Bとの間で交換される。DHPart1メッセージおよびDHPart2メッセージは、ZRTPプロトコルで定義されており、公開DH値である。DH値(hviおよびpvr)の代わりに、デバイス200Aと200Bは、保持されている秘密鍵とともにノンスを使用して鍵マテリアルを導出する[参照文献26]。これは、RFC文書6189 ZRTP:Internet Engineering Task ForceのMedia Path Key Agreement for Unicast Secure RTP(ユニキャスト・セキュアRTPのためのメディアパス鍵合意)(ISSN 2070−1721)に詳細に記載されている(4.41.1節参照)(https://tools.ietf.org/html/rfc6189#section−4.4.1.1からダウンロード可能)。
図1Bの通信方式は、図1Aのものと類似しているが、段階1におけるHelloメッセージの送信とHelloACK応答の受信とによるデバイス200Aと200Bとの間の通信チャネルの発見が行われない点が異なる。2つのデバイス200Aおよび200Bは両方とも(中央サーバである)SIPサーバに知られており、したがって段階1は、SIPサーバから(ローカル・デバイスである)2つのデバイス200Aおよび200Bのうちの他方のデバイスへの2つのデバイス200Aおよび200Bの識別情報の交換を含む。中央SIPサーバを使用した2つの(ローカル)デバイス200Aおよび200Bの識別情報の交換後、2つの(ローカル)デバイス200Aと200Bとの間で直接データを交換することができる。
これらのステップF6の完了後、段階3で、デバイス200Aおよび200Bのそれぞれにおけるマルチパーティ計算(MPC)モジュール210を使用して、上述のように比較によってSASの自動正当性確認が行われる。SASは、2つのデバイス200Aおよび200Bのセッション鍵から生成される一連の文字と数字である。SAS値の生成については、ZRTP RFC(https://tools.ietf.org/html/rfc6189#section−4.5.2)に記載されており、KDFがHMACを使用する(https://tools.ietf.org/html/rfc6189#section−4.5)。デバイス200Aと200Bとの間で前にネゴシエートされたセッション鍵に相違があれば、2つのデバイス200Aと200BとにおいてSASの異なる値が生成されることになる。
上述の非限定的な場合では、MPCモジュール210は、デバイスで生成されたSASが他のデバイスから受信したSASと等しいか否かを検査する等価関数を実装し、MPCモジュール210は、この等価性が検証された場合、すなわち2つのデバイス200Aおよび200Bで生成されたSASが同じである場合に値S=1を返し、したがって2つのデバイス200Aと200Bとの間に通信が確立される。次に、2つのデバイス200Aおよび200BはステップF8からF10で、他方のデバイスがそのSASを受け入れ、検証したことを示す確認メッセージを2つのデバイス200Aおよび200Bのうちの他方に送信することができる(段階4)。最後に、通信プロトコルは、このセキュリティ保護されたセッションでデータの送信を開始する準備が整う。値S=0の場合、正当性確認が失敗したことを示し、中間者攻撃の可能性があり、デバイス200Aと200Bとの間には通信が確立されない。
この方法およびシステムは、将来の機密通信を保証するために、何らかの追加的セキュリティおよびプライバシー特性を前方秘匿性として利用する。例えば、2つのデバイス200Aおよび200Bが異なる時点で互いに複数の接続を行う場合、この方法およびシステムは、同じ鍵が後続のセッションで使用されないように、それぞれのセッション間で鍵をローテーションさせる。このようにすることで、複数の接続にわたって異なる通信に使用される鍵は異なる。
デバイス200Aおよび200Bのそれぞれにおける識別子ファイル220は、秘密セッション鍵を計算するために使用される対称鍵をキャッシュし、これらの秘密セッション鍵はセッションごとに変わる。前方秘匿性と呼ばれる特性である、将来および現在のセッション鍵の導出のために使用され、また使用されることになるローカル・シードに、攻撃者がアクセスするとする。攻撃者は、この前方秘匿性の特性のために、2つのデバイス200Aと200Bとの間の通信におけるデータの以前の交換のいずれも再現または再生することができないことになる。攻撃者は、アクセスされたローカル・シードから以前のセッションのための秘密セッション鍵を再計算することができない。言い換えると、単一の通信が侵害された場合、その単一の通信(メッセージの交換)のみが侵害されるが、異なる通信またはセッションにおけるメッセージの他の交換は侵害されないことになる。これは、その単一通信セッションのためのセッション鍵が何らかの形で「漏洩」し、その後、セッション鍵のこの漏洩が現在の通信より前のすべての以前の通信の機密性を侵害しない場合に起こり得る。
このようにして、このシステムおよび方法は、デバイス200Aおよび200Bが通信の前にSASを交換する手間をかけない場合であっても、以下の段落で説明するような鍵連続性の一形態に基づいてMitM攻撃に対抗する一定の適切な認証があるため、通信における追加的保護を与えることができる。
鍵連続性という考え方は、セッション鍵がそのセッション中の通信の交換のために1回しか使用されないが、そのセッション鍵自体が、通信の交換による後続セッションのためのセッション鍵を生成するためのシードとして使用されることである。後続のセッションのためのこのセッション鍵は、その後、さらなる(後続)セッション鍵の生成のためのシードとして使用されるというように、以降同様に使用される。言い換えると、古いセッション鍵が新しいセッション鍵を生成するために使用され、その結果、使用のたびにセッション鍵の複雑さが増し、セッション鍵はより堅牢になる。
デバイス200Aと200Bとの間のセッション鍵のネゴシエーションは、SASとして文字と数字のシーケンスを生成することによって行われる。SASのサイズは定義することができる。上述のように、SASはデバイス200Aと200Bの両方で等しくなければならない。ZRTPの場合、SASとして使用されている音声を捕捉し、復号しようと試みると、文字と数字のシーケンスを異ならせることになる。シーケンスは、デバイス200Aと200Bとの間で明らかにネゴシエートされたセッション鍵に相違があればSASの異なる値が生成されることになるように、両方のデバイス200Aおよび200Bの初期鍵から導出される数学関数である。
IoTネットワークにおけるIoTデバイスの数がますます増加しており、デバイス200A、200Bのそれぞれに事前にセッション鍵を個別に提供する必要がないようにセッション鍵の自動的な提供が必要であるため、この鍵連続性解決策はIoTネットワークの環境に適している。また、この解決策により、PKIを使用せずにエンド・ツー・エンドのプライバシーが得られる。
このシステムおよび方法は、表1に示すようなこのシステムの3つの異なる可能なモードを有する。ユーザは、これら3つのモードのうちのいずれの1つのモードが、対象とする実施に最適であるかを選択することができる。
この第1の使用モードは、「鍵連続性なしモード」と称する。この第1のモードは、いずれのデバイスにもキャッシュがない実装形態が示唆されているZRTP草案の4.9.1節[参照文献9]に示されているZRTPの既存の機構を利用する。この特徴により、(ZRTP DHモード[参照文献9]にも基づいてこのシステムおよび方法は常にDHモードで実行されることができる。この第1のモードでは、セッションを確認するためにMPCを使用してデバイスの間でSASを比較することが必須である。
この第1のモードは、いくつかのセキュリティ上の課題が解決された安全な状態である。セキュリティ上の課題の1つは、敵対者がローカル共有秘密を得ることが不可能であることである。この第1のモードでは、デバイス200Aと200Bとの間の接続は、デバイス200Aと200Bが2つのデバイス200Aと200Bの間の通信のためのセッション鍵について事前に合意したことがない、常に新しい接続とみなされる。したがって、この新しい接続は、前の接続から「導出」されず、新たな鍵を作成するために鍵連続特性を使用することはできない。この第1のモードは、デバイス200Aまたは200Bのいずれにおいてもメモリ内に、新たな鍵の導出元となる、前に使用された鍵を記憶するためのいかなる追加の記憶域も必要としない。しかし、この第1のモードは新たな接続ごとにMPCを行う必要があるため、2つのデバイス200Aと200Bとを接続するネットワークにオーバーヘッドを加える。この追加のオーバーヘッドを考慮に入れる必要があり、デバイス200Aおよび200Bにおける追加の記憶域を備えるという他方の要件との兼ね合いを図る必要がある。
第2のモードは、通常モードであり、ZRTP RFCの4.4.2節[参照文献9]に示されている、事前共有モードとして示されるZRTPの既存の機構に基づいている。
この第2の、通常モードでは、MPCを使用してすべての反復回でSASを常に比較する必要がないように、鍵連続性の特徴が使用される。しかし、この比較は、2つのデバイス200Aと200Bとの間でN回の接続が行われた後ごとに行われることになる。Nの値はユーザが定義することができる。非限定的な一態様では、Nのデフォルト値は10である。言い換えると、通信の10回の交換後ごとに、プロトコルが期待通りに実行されていることが検証される。
この第2のモードでは、前方秘匿性と鍵連続特性とが保持される。
第3のモードは、反復回ごとに、すなわち、2つのデバイス200Aと200Bとの間の通信の別個の確立ごとに、2つのデバイス200Aと200Bとの間の通信のセキュリティを検証する必要がある場合の「厳重警戒」モードである。鍵の導出または新たな鍵の導出元となる鍵の記憶は行われない。この厳重警戒モードは、例えば、匿名データまたは機密データの問題がある場合に使用されることになる。この厳重警戒モードは、追加の安全検査を確実にするために、より複雑さを有することになる。また、追加のセキュリティ検査がない修正版「安全」モードもあるが、これは反復回がわずかな場合のSASを生成し、その後の鍵連続性を信頼する。
この第3の「厳重警戒」モードでは、第2の通常モードのように鍵連続性も使用される。しかし、この第3のモードは、デバイス200Aと200Bの両方におけるSASが等しいことと誤りがなかったこととを保証するために、SASの比較による追加の検証を必要とするため、「厳重警戒」である。この第3のモードでは、SASを比較するためにすべての反復回ですべての接続についてMPCが使用される。
この第3のモードは、追加の安全検査を保証するために、ネットワークとデバイス200Aおよびデバイス200Bにおいてより多くのオーバーヘッドを要することが理解されよう。この第3のモードは、すべての接続において、プロトコルが正常に実行されることと、SASが2つの接続デバイスにおいて等しいこととを保証するため、より機密性の高いデータの場合に望ましい。
この第3のモードでは、鍵連続性の概念のみが使用される。
上述のように、本明細書のシステムおよび方法は、図2に示すようなIoTネットワークで使用される。IoTネットワークにおけるデバイス200Aおよび200Bはリソースがわずかしかなく、数種類のシステムがあり、様々な種類のオペレーティング・システムがあり、様々な種類の用途に適応し得ることが想定され得る。これらの想定に基づいて、このシステムおよび方法は以下の特徴を提供する。
使いやすさ。上述のように、従来技術におけるいくつかのセキュリティ保護の提案が存在するが、これらの従来技術のセキュア・プロトコルを適用するためには、多くの手続きが必要であり、従来技術のセキュア・プロトコルの多くは前の鍵の変化を必要とする。セキュリティ保護されていない手段(例えばオープン・インターネットを介した暗号化されていない電子メール)によるセッション鍵の交換は、デバイス間の通信の交換のためのプロセスのセキュリティのすべてを侵害する可能性があることを想起されたい。
本明細書の方法およびシステムは使いやすい。これは、例えばFirefox Syncで実装されているようなJ−PAKEの場合と比較することができる。J−PAKEは、2つのデバイスのプロビジョニングのためにSASを書き込む必要があるため、より使いにくい。本明細書のシステムおよび方法では、SASのプロビジョニングが自動的かつセキュリティ保護されたプロセスであり、このプロセスは(SASを比較するMPCとの組み合わせにより)ユーザには透過である。上述のように、図2に示すIoTにおけるデバイス200Aおよび200Bは、人間が2つのデバイス200Aと200Bのペアリングを行うことができるようにSASに関する情報を表示することができる画面を備えていないことが多いか、または、少なくともユーザはこの画面と容易に対話することができず、したがってキーボードまたは別のデバイスを備える必要があることがある。
軽量。IoTネットワークにおけるデバイス200Aおよび200Bに存在する限界、すなわち低電力および低処理はよく知られている。これは、IoTネットワークにおけるPKIの使用を困難にする。本明細書の方法およびシステムは、それぞれ固有の複雑さを伴うPKI、鍵証明書、信頼モデル、証明機関などを必要とせず、低リソース・デバイスにより適しているため、この問題に対処している。
非集中型。この方法およびシステムは、システムが非集中型であり、もっぱら単一のCAのみに依存せず、複数の信頼性のある独立要素を包含するため、PKIとは異なる。
この方法およびシステムの実装は、2つのライブラリに基づく。すなわち、ZRTPプロトコルのC++実装、つまりGNU ZRTP C++であるZRTPCPP[参照文献15]と、計算共有、ブール共有、およびYaoのガーブル回路に基づくセキュリティ保護された計算方式を効率的に組み合わせ、セキュリティ保護された2パーティ計算における最良実施解決策[参照文献29]を利用可能にする、ABY[参照文献17]フレームワークである。
ZRTPCPP。ライブラリZRTPCPPが使用される。
ZRTPCPPライブラリにいくつかの改変が加えられ、いくつかの特徴が追加された。MitM攻撃を生じさせる可能性のあるSASの衝突を防止するために、発明人等は暗号鍵サイズ(高度暗号化標準(Advanced Encryption Standard(AES))鍵)を大きくし、それによってより大きなサイズのSASの新バージョンを作成した。SASの衝突は、偶然同じSASを生成するMitM攻撃が発生した場合、またはMitM攻撃が検出される前に可能なSASの組み合わせを試すことができる場合に起こり得る。SASのサイズを大きくすることにより、通信暗号に関する追加のセキュリティ度が加えられ、また、攻撃者にとってSASの衝突をより困難にする。意図的でない衝突を生じさせるのが困難であるほど、アルゴリズムの質がよいことが理解されよう。
事前共有モードをサポートするために、ZRTPCPPライブラリは、デバイス200A、200Bのいずれかの間のSAS比較に以前に成功したこと、したがって通信チャネルが正当性確認されたこととを示すSAS検証済みフラグをサポートするようにも改変された。通常、標準ZRTPでは、検証済みSASは若干の複雑さを要し、検証済みSASを受け入れる追加のインターフェースを加えるための追加の記憶域が必要であるため、検証済みSASの概念は定義されていない。本明細書の方法およびシステムは、このユーザ・インターフェースの複雑さをなくすMPCの事前追加層を有する。上述のように、ユーザによる手動介入の必要なしに自動的にSASを比較するためにMPCが使用される[参照文献9]。
この方法およびシステムの両方の用途、すなわちVoIPまたはIoTにおいて、このレベルで同じ変更が加えられる。しかし、IoT用途の場合、SASを受け入れるためにインターフェースを維持する必要はなく、一方、VoIP用途の場合は、(SASが等しいことと、通信チャネルを介した通話がセキュリティ保護されていることとを確認にするために)MPCが第1または第2の要素認証として使用され、したがって、SASを受け入れるための追加のインターフェースが維持される。
ABY。ライブラリABYは、計算共有と、ブール共有と、Yaoのガーブル回路という3つの異なる秘密共有方式を提供するセキュア計算方式を組み合わせる。これらの秘密共有方式は、例えばデバイス200Aと200Bとの間の2パーティ計算をセキュリティ保護された状態にすることができる。ABYライブラリは、ほとんどすべての暗号演算の事前計算も可能にし、事前計算された紛失通信拡張に基づくセキュア計算方式間の新規な高効率の変換を提供する[参照文献17]。
このABYライブラリは、半正直(受動)敵対者のみを考慮する。ABYライブラリは、プロトコル実行時に2つのデバイス200Aと200Bの間の通信中に交換されるメッセージから追加情報を知ろうと試みる計算的に制限された敵対者を想定している。この敵対者はプロトコルから逸脱することができず、したがってABYは管理者または政府機関による、またはパーティが積極的に不正を行わないと信頼できる場合の、受動的な内部関係者の攻撃に対して保護される。
ABYライブラリにおけるこの実装形態は、百万長者問題、セキュア計算AES、ユークリッド距離、およびGitHubソース・コードに見られるいくつかのその他の用途など、いくつかのサンプル用途がある[参照文献17]。百万長者問題は、コンピュータ上のローカル・ファイルから得られた入力のための改変を加えて使用した。百万長者問題は、等価性問題に合わせて改変された。
この改変のために、本発明人は、ブール回路クラスにおける以上(greater than equal)関数
$out=bc−>PutGTGate(s_alice, s_bob):$
のコールの代わりに、
以下の関数により、いわゆる等価問題回路を作成した。
$out=bc−>PutEQGate(s_alice, s_bob);$
ZRTPの$showSAS$関数内で、この関数にSASをパラメータによって渡すために関数$test_equality_prob_circuit$に新たなパラメータを追加した。このシステムでは、MPCはSASを比較し、プロトコルによって交換されるSASが正しいことを保証する機能のみを有する。
ZRTPCPPとABYの両方のための実装と設定に関しては、公開されているプロトコルにいくつかの必要な変更を加える必要がある。ZRTPプロトコルとMPCプロトコルは両方ともピア・ツー・ピア・シナリオを使用することが知られている。したがって、デバイス200Aまたは200Bのうちのいずれがプロセスを開始するか(すなわち送信側であるか)、およびいずれが受信側であるかを定義する必要があった。したがって、ライブラリ間の組み合わせは、ZRTPCPPの受信側であるデバイス200Aまたは200BがMPCのパーティ0となり、他方のデバイス200Aまたは200B、すなわち送信側がパーティ1であった。これは、単に設計上の問題に過ぎず、本発明を限定するものではない。
ZRTPCPPライブラリとABYライブラリの統合は、cmakeプラットフォームを使用して行われた。ZRTPプロトコルが画面上にSASディスプレイを作成したとする場合(これは当然ながら本明細書に記載の実装形態では可能ではない)の実行に関しては、このSASの検証の新たな層が追加された。一方、ABYフレームワークがSASの等価性の検証を行うこととなった。
この実施形態では、2つの方式がある。第1の方式は、2つのデバイス200Aと200Bの間で交換されたSASが等しい場合である。この第1の場合、上述のように2つのデバイス200Aと200Bの間でデータをセキュリティ保護された状態で秘密裏に交換することができる。第2の場合、比較により、交換されたSASが異なることがわかる。この方法およびシステムは、2つのデバイス200Aと200Bの間のデータまたは情報のいかなる交換もなしに、この試行された通信を中止する。この第2の場合、SASが異なる場合は通信においておそらくMitM攻撃があることが想定されることになる。
以下の各段落では、このシステムのセキュリティを分析し、いくつかの知られている攻撃について説明するとともに、これらの攻撃に対するシステムの成功を評価する。この分析は、すべて仮定上の攻撃者の視点から、必要かつ十分なシナリオについて説明する脅威モデルに関して行う。
脅威モデル。ZRTPは、秘密セッション鍵の値を計算するために使用される対称鍵をキャッシュし、上述のように、これらの計算された値はセッションごとに変化する[参照文献9]。デバイス200Aまたは200Bのうちの一方のデバイスのメモリからZRTP共有秘密キャッシュを誰かが盗んだ場合、次のセッションのためのセッション鍵を生成することができるため、攻撃者はまさにその次のセッション中にMitM攻撃を開始する唯一の機会を得る。これは、この方法およびシステムにおいて有り得る。上述の「鍵連続性のない」モードは、セッション鍵が新たに生成されるため、この問題を解決することに留意されたい。ZRTP共有秘密キャッシュは、新たな各セッションの開始時に常にメモリから削除され、このシステムおよび方法を前述のように常に(ZRTPディフィー・ヘルマン・モード[参照文献9]に基づく)DHモードで実行する。それにもかかわらず、MPCによるSASの比較の必要性は常に存在する。
上述のように、SASの衝突が起こる可能性があり、それによってMitMが可能になり、すなわち正直なユーザが1つのSAS鍵を有することができ、攻撃者は同じ鍵を入手または特定することができ、したがってMitMにより通話を傍受することができる[参照文献35を参照]。しかし、この方法において実施され、上述したように、この攻撃は攻撃者が同じSAS鍵を生成する機会を低減するようにSASのサイズを大きくすることによって防止することができる。これは、ZRTPのRFC[参照文献9]に示されているように、暗号鍵サイズ(AES鍵)を大きくし、したがってより大きなサイズの新たなSASを作成することによって行われる。SASのサイズを大きくすることにより、通信暗号に関してより大きなセキュリティを加え、攻撃者にとってSASの衝突をより困難にもする。
デバイス200Aおよび200Bに記憶されているMPCライブラリでは、認証がまったくないため、敵対者がMitM攻撃を仕掛けることができる。この方法の実行中に交換されたとわかったメッセージから追加情報を知ろうと試みる、計算的に制限された敵対者を想定し、ABYは半正直(受動)敵対者モデルを使用する。より強力な悪意ある(積極的)敵対者とは異なり、半正直敵対者はプロトコルから逸脱することができない[参照文献29]。敵対者は悪意ある(積極的)敵対者モデルを調べることができる。積極的攻撃とは、攻撃者がプロトコルの正常な実行を妨害し、変更を加える。攻撃者はネットワークで起こることを「受動的」に単に観察するだけではない。
攻撃シナリオ。本節では、提案の解決策のセキュリティを測定し、攻撃の異なるシナリオに対するこの方法のセキュリティを判定した。このようにして、発明人等は、本明細書で概説されている方法およびシステムのセキュリティを分類することができた。このセキュリティは、認証プロトコルが堅牢であることを実証するためにAfifi等[参照文献38]によって使用されたものを改変する1組の定理に基づいていた。評価を完全なものにするために、発明人等は2つの新たな定理も追加した。
想定1。この方法は、非同期化攻撃に対して堅牢である。この証明は以下のことに基づく。固有識別子を使用してデータベース内の当該デバイス200Aまたは200Bに関する情報が識別子ファイル220に記憶される、非同期化攻撃を回避する方式が図1に示されている。デバイス200Aまたは200Bの一方がメッセージを送信するF7と、デバイス200Aまたは200Bのメモリのローカル・キャッシュに更新が加えられ、次にメモリ内で秘密鍵がローテーションされる。例えば、メモリが情報を破損させた場合、または別の種類の問題が発生した場合、デバイス200Aと200Bが両方とも事前共有モードでセッション鍵をネゴシエートすることができなくなる。デバイス200Aと200Bの両方が第1の段階に戻って、ステップF6およびステップF7における新たなDH鍵変更が行われることになる。
想定2。本明細書で概説されている方法およびシステムは、PRNGの秘密鍵とローカルに記憶されている秘密鍵との組み合わせによってもたらされるセキュリティに基づき、タグなりすまし攻撃に対して堅牢である。
証明。図1のステップF1およびF3に示すように、デバイス200Aおよびデバイス200Bのそれぞれが固有識別子を持っており、これはPRNGによって生成されるものである。固有識別子は、任意の他のデバイスとの通信のために使用される。攻撃者がデバイス200Aの識別子を入手し、次に攻撃者がデバイス200Aになりすましてデバイス200Aの識別子をデバイス200Bに送信しようと試みるとする。前述のように、通信セッションのためのセッション鍵を計算するために使用される対称鍵マテリアルをキャッシュするローカル・キャッシュに識別子ファイル220があるため、攻撃者はこれを行うことができない。セッション鍵の値はローテーションされ、したがって通信セッションごとに変わることは上述した。したがって、攻撃者がデバイス200Aになりすまそうとしても、攻撃者が攻撃の被害者すなわち他方のデバイス200Bとの次の通信セッションのための新たな鍵の生成を試みると、秘密鍵は攻撃者(デバイス200Aのなりすまし)のものとは同じではないため、攻撃者がデバイス200Bに発見されないことは不可能であり、したがってデバイス200Bは通信をやめる。最初の反復回で、攻撃者は通信セッションのための認証済みチャネルを有することになるが、通信セッションの正当性確認が失敗するため、攻撃者は攻撃を遂行することができない。
想定3。この方法およびシステムは、再生攻撃に対しても堅牢である。再生攻撃とは、2つのデバイス200Aと200Bとの間の1回の通信から情報を入手し、デバイス200Aと200Bとの間の次のセッションまたは通信の反復回でその情報を設定しようと試みる攻撃である。例えば、デバイス200Aがデバイス200Bとファイルを交換する場合、攻撃者は、その前に交換されたファイルの一部を送信してその通信のためのプロトコルを破損することを試みることができる。この問題を解決するために、この方法および装置は、鍵連続性と前方秘匿性の特性を使用して新たなセッション鍵を生成し、前に交換されたデータおよび暗号化された情報のパケットを陳腐化(すなわち復号不能に)する。これにより、攻撃者がこの種の再生攻撃を行う場合、デバイス200Aおよび200Bは送信されたその情報を無視し、進行中の転送を継続するため、この方法は再生攻撃に対して堅牢である。
提案のプロトコルは、後方および前方トレーサビリティ攻撃に対して堅牢である。トレーサビリティは、受動攻撃に分類され得る。このシナリオでは、攻撃者によって行われる唯一の攻撃は、デバイス200Aと200Bとの間で交換される情報を盗聴し、その情報の漏洩につながるパターンを把握しようと試みることである。
トレーサビリティ攻撃を克服するようになされた手法は、ローカル情報がデバイス200Aまたは200Bに記憶されない前述の厳重警戒モードを使用することである。通信セッションの任意の反復回において、攻撃されたセッションにおける通信方式を再現することを不可能にするPRNGを使用してすべてのデバイス200Aおよび200Bの新たな識別子が生成される。これにより、この方法はトレーサビリティ攻撃に対して堅牢になる。
この方法およびシステムは、単一障害点に対しても抵抗性がある。前述のように、PKI実装形態の場合、証明書の正当性を検査する第三者(証明機関(CA))が存在する。CAは人または組織の公開鍵と識別情報との間にリンクを設定する。したがって、このPKI実装形態における顧客は第三者に依存する必要がある。いったんCAが侵害されるとネットワーク内のすべてのピアも侵害されるため、証明機関は単一障害点に相当する。例えば、Let’s Encrypt CAは、フィッシングに使用されたサイトに対して15,270通の「PayPal」証明書を発行した[参照文献28]。この種のシステムの障害は、いくつかの実体を侵害する。
本明細書の方法およびシステムは、攻撃に直面しているときでも、デバイス200Aおよび200Bの両方ではなく、たかだかデバイス200Aまたは200Bの一方を侵害し得るに過ぎない。
MitMはSASに対する攻撃を利用する。Martin Petraschek等は、DHのみに対するMitM攻撃について記載しており、ZRTPでは、最初の接続について必須でありそれ以外は任意である(前方秘匿性を保証するため)音声認識によりSASを比較することによって認証を行うことができると言っている。しかし、攻撃者はパーティのうちの1人の音声を模倣を試み、それによって他方のパーティをだます可能性がある。この場合、MitM攻撃者は、2つのデバイス200Aと200Bとの間でRTPパケットを単純に転送し、会話を盗聴することができる。最近の研究[参照文献24]は、この種の攻撃が可能であることを示している。例えば、Lyrebirdは、1分間の音声を盗聴するだけで人の音声をクローンする1組のアルゴリズムを有しており、このクローン化はSASを生成するために使用される可能性がある。
本明細書の手法は、MPCによるセキュリティの追加の層によってこの問題に対処する。このセキュリティの追加の層は、パーティの入力を秘密裏に保ちながら、パーティの入力にわたる関数を連帯して計算する、パーティすなわちデバイス200Aおよび200Bのための方法を作成するという目標を有する。このようにして、他のパーティに何も明らかにせずにSASの比較を計算することができる。
しかし、識別情報がない場合にMPCでは[参照文献39から知られるように]MitM攻撃を防止することができない。この方法では、利用可能な異なる手法がある。攻撃者がMPC通信を傍受し、同時に、他方のピアのものと等しい交換情報(SAS)を生成することができる確率はきわめて低いため、デバイス200Aおよび200Bの識別情報は正当なものである必要はない。
これは、本例によって実証することができる。αを、サイズ26(ラテンアルファベットの文字)のアルファベットα={a,b,c,...,z}とし、βを、サイズ10の数字β={0,1,...,9}であるものとする。γ=α∪β。
一方のデバイス200Bによって他方のデバイス200Aの同じSASが生成される確率は、式nによる反復を有する置換によって計算される。SASのデフォルト長が4であり、合計文字数(γ=36)とすると、n=γおよびr=4となり、したがってγ個の可能なケースがある。
この確率を計算すると、攻撃者が他方のデバイスの同じSASを生成する可能なケースは1つしかない。言い換えると、同じSASが生成される確率はほぼゼロである。
Figure 2021524944
以下、本明細書で概説されている方法およびシステムとJ−PAKEおよびZRTPの相違について説明する。それぞれの手法によって使用されるデータの種類(音声かデータか)と、セキュリティ特性である前方秘匿性およびキー連続性も分析することから始めることとする。この方法およびシステムの焦点は、図2に示すIoTネットワークにあるため、これらの手法がこの種の技術に対応しているか、および、自動プロビジョニングとして使用することが可能であるかの確認について述べる。最後に、本明細書のシステムおよび方法はユーザのニーズに応じてセキュリティまたは速度のために適応化された動作モードを有するため、他のプロトコルに複数の動作モードがあるか否かの分析も行う。
自動プロビジョニングは、通信セキュリティをユーザに依存した状態にしておかないため、自動プロビジョニングはIoTネットワークの環境における特徴である。さらに、IoTネットワークにおけるIoTデバイスの多くはキーボードまたは画面を持たない。1つのエラー源は、人間が、画面に現れるものは何でもプロビジョニングしやすくしがちであることである。人間のユーザは、SASが実際に両方のデバイスで一致しているか否か実際に疑問を持たずにSASを確定する可能性がある。J−PAKEもZRTPシステムもこのような人間のエラーに対する予防措置を提供しない。
J−PAKEシステムは、デバイスのそれぞれについて、プロビジョニングを行うために画面上に表示される鍵を入力する必要があるため、最低限2つの画面と、キーボードを必要とする。Syncサービスの一部としてJ−PAKEを使い続けているPale Moonウェブ・ブラウザを使用して検査を行った。ZRTP法では、SASを比較し、正当性確認するために音声認識が必要であるため、人間による対話も必要とし、これにはディスプレイと2つのボタンが最低限、必要である。
J−PAKEプロトコルとZRTPプロトコルは両方とも人間の介入を必要とし、上述のようにIoTネットワークには人間の介在は適切ではないため、両プロトコルは部分的にのみIoT対応である。
本明細書の以下のセクションでは、ネットワーク・レイテンシに関する提案システムの結果を示す。上述のすべての実装モード、すなわち鍵連続性なし、通常モード、そして最後に厳重警戒モードで実験を行った。鍵連続性があればMPCはすべての反復回で必要でないため、これらのモードは使用法と複雑さの点で異なる。一方、場合によっては、任意の2つのデバイス200Aと200Bとの間の通信が確実に常にセキュリティ保護されているようにするために、通信セッションのすべての反復回でSASを正当性確認することが重要である場合がある。
このシステムおよび方法とOpenSSL PKIシステムの実行時間も検査した。PKIシステムでは、上述のように公開鍵証明書に基づいて信頼が築かれる。
システムにおいてネットワークを介したレイテンシを測定した。クロックまたはクロノタイマーを使用して、特定のアクションが完了するのに要する時間を測定する。この場合は、サーバ(受信側)であるデバイスとクライアント(送信側)であるデバイスとの間の通信である。クライアントがサーバにデータを送って応答を待つ場合、全体的な継続期間を測定することができ、これによりクライアントとサーバの間の往復遅延時間(RTD)が概算されることになる。目標は、PKI方式のシステムと比較した本明細書のシステムおよび方法のプロビジョニング時間を測定することであった。MPCによる追加遅延とレイテンシ全体に対するその寄与の実際の大きさの程度を算定するために、MPCを使用した場合としない場合のこのシステムおよび方法の実行時間も測定した。
この実験セクションは3つの部分に分かれる。第1の部分は、実験のためのシステム、すなわち実験に使用されるデバイスの設定および構成とデバイス用のオペレーティング・システムからなる。次に、実装された異なるモードの結果と、結果についての考察を示す。最後に、本明細書のシステムおよび方法の結果とPKI方式のシステムの結果との比較を開示する。
現実的な環境(低リソース・デバイス)における本システムの使用の結果を測定するために、実験は、IoT向けの専用オペレーティング・システムであるカノニカル社のUbuntuコアを稼働させる2つの一般的な既製のRaspberry Pi3モデルBを使用して行った。
IoTネットワークは、複数のデバイスの相互接続から生じる。図2に示すような環境を作成した。2つのRaspberry Pi Bは、ネットワーク202(すなわちインターネット)を介して接続されたデバイス200Aおよび200Bである。Raspberry Piの一方200Aは、無線ルータ(ASUS RT−AC3200)205を介して無線リンク204を使用してインターネットに接続され、Raspberry Piの他方200Bは、無線Ethernetリンク203を使用してインターネット202に接続されている。現実的なシナリオにおけるネットワーク・レイテンシのある実行時間を測定するために、インターネット202を介してトラフィックをルーティングすることとした。
本明細書の方法を評価するために、3つのモードすべてにおけるプロビジョニング時間を測定した。図3に、プロビジョニング段階を表す評価対象のシナリオを示す。
これらの測定を行うために、図2に示す設定を使用してgettimeofday()システム・コールを行った。結果を以下の表に示す。表IIIに示す各モードおよび1から10までの対応する反復回について、これらの値は、10回の反復後の平均値および、平均の対応する標準偏差である。
Figure 2021524944
「鍵連続性なし」モードは、前に交換された鍵を記憶する必要がないため、デバイス200Aおよび200Bにおける識別子ファイル200に追加の記憶域を必要としない。この「鍵連続性なし」モードは、すべての反復回において約9843ms±50.49の平均時間を要することが判定された。この「鍵連続性なし」モードは、前に交換された鍵にまったく依存せず、鍵連続性を有していないためセキュリティに関するいくつかの利点を有し、必要記憶域も削減する。しかし、実行時間は3種類のモードのうちで最も高い。
「通常」モードは、前記の「鍵連続性なし」モードとは異なり、上述のような鍵連続性の概念を使用する。したがって、通常モードは、デバイス200Aおよび200Bにおいて鍵のための追加の記憶域を必要とする。しかし、上記のようにMPCモジュール210が(例えば)反復回10回おきにしか使用されない。この場合、実行時間は、最初の反復回後で283ms±46.92である。最初の反復回において、MPCのオーバーヘッドを考えると、レイテンシは9745ms±50.49である。MPCを反復回10回おきに使用するため、この結果としてレイテンシ・スパイクが生じる。
「厳重警戒」モードも鍵連続性を利用するため、「厳重警戒」モードは「通常」モードと類似している。しかし、このモードは、反復回のすべてにおいてMPCモジュール210によってSASを常に検証するほどに「厳重警戒」であり、したがって鍵連続性に依存しない。
レイテンシに関しては、「鍵連続性なし」モードと厳重警戒モードとには差がない。通常モードのみが、他の2つのモードと比較した場合に有意に低いレイテンシを有する。この通常モードは反復回10回おきにMPCモジュール210を実行する。他の反復回はすべて類似した挙動を有する。良い点としては、残りの反復回の平均実行時間が283±46.92msである。
この通常モードにおける主要な欠点は、デバイス200Aおよび200Bにおいて追加の記憶域が必要であることである。記憶域とレイテンシとの暗黙的なトレードオフがある。
要するに、動作モードの選択は、使用されるデバイス200Aおよび200Bの種類と、デバイス200Aと200Bとの間の通信リンクと、最終的に、IoTネットワークのユーザの機能要件とに依存する。
認証済みのチャネルを想定しているため、それに付随するオーバーヘッドを表すために実行時間に時間因子δを加えた。しかし、この時間因子δは実行時間の20%を超える時間に相当すると想定している。
図3に、評価するPKIシナリオを示す。この図3では、ローカルRaspberry Piで表されるローカル・クライアントと、DigiCert証明書がプロビジョニングされたリモートRaspberry Pi(図2に示す)においてホストされているサーバ・マシンとが示されている。リモート証明書は、CAと通信するデバイスの複雑さをなくすOCSPステープリングをサポートする。TLSサーバは定期的にOCSP応答者に自身の証明書の正当性を問い、応答をキャッシュする。OCSP応答者は、証明書を発行したCAによって(直接または間接的に)署名されているOSCP応答を返す。TLSクライアントは、このステープリングされたOCSP応答を同じように扱うことができ、すなわち、証明書は、有効なタイムスタンプと署名とを有する場合にのみ使用されなければならない。
TLSハンドシェイク時に、クライアントがサーバに対してOCSPステープリングのサポートを通知する。それに対して、サーバが証明書状態フラグのサポートを有する場合は、証明書状態フラグを起動する。このプロセスを図3のステップ1に示す。ステップ2において、デバイスAとBの間にSSL接続が確立される。目標は、SSL接続ハンドシェイクによって追加されるレイテンシに加えて証明書のOCSP(状態)検査レイテンシを測定することである。
このシナリオのレイテンシを測定するために、OpenSSLライブラリのs_clientおよびs_serverバイナリを使用した。s_serverサービスはサーバ・マシン上で実行され、s_clientはローカル・マシン上で実行された。OCSP情報とサーバ/クライアント・ハンドシェイク結果の両方を得ることができた。10回の反復にわたって380ms±11.60の平均実行時間があることがわかった。
したがって、「通常」モードで稼働する本明細書の方法およびシステムは、PKI方式のシステムを使用した結果と比較して26%のレイテンシ削減を達成する。
本明細書では、音声チャネルがMPC(KEAV)を介したデータ・ネゴシエーションに置き換えられた修正版セキュア鍵交換プロトコルを利用するIoTネットワークにおけるIoTデバイスのプロビジョニングとIoTデバイス間の軽量通信のための新規な解決策について説明している。セキュリティ検査のレベルおよびオーバーヘッドが次第に高くなる3つの明確に異なる動作モードが定義されている。このIoTネットワークは、複数の固定したセンサに使用可能であるが、自律駆動のためのネットワークにおいても使用可能である。
IoT市場において対処しなければならないスケーラビリティと設置面積の小さいデバイスという難しい問題は、「通常」モードをこの環境の解決策として考慮すべきである。この機構は単独で、CPUまたはバッテリ消費に大きな影響を与えずに小型IoTデバイスにおけるセキュリティ特性の認証および証明を行うことができる。記憶されるローカル情報を再設計することができ、それによって例えば、これらのモードを最も頻繁に使用される通信方式で使用することができるようにし、他のモードを散発的通信の必要がある場合のために使用することができる。これにより、例えば、古いデバイスを置き換えることになるIoTネットワークを介した新しいシステムの検出を可能にする。
このシステムおよび方法の別の用途では、デバイスはVoIPデバイスとすることができる。
Patricia R.Sousa、 Joao S.ResendeおよびRolando Martinsの研究は、ポルトガルFundacao para a Ciencia e Tecnologia (FCT)からの奨学金による支援を受けた(奨学金番号SFRH/BD/135696/2018、PD/BD/128149/2016、SFRH/BPD/115408/2016)。
Luis Antunesのこの研究は、ポルトガル2020年パートナーシップ契約に基づき、欧州地域開発基金(ERDF)により、North Portugal Regional Operational Programme(NORTE 2020)による資金提供を受けたプロジェクト“NanoSTIMA:Macro−to−Nano Human Sensing:Towards Integrated Multimodal Health Monitoring and Analytics/NORTE−01−0145−FEDER−000016”による支援を受けた。
参照文献
1. Yang, Yuchen, et al.“A Survey on Security and Privacy Issues in Internet−of−Things.”IEEE Internet of Things Journal (2017).
2. H. Sundmaeker, P. Guillemin, P. Friess and S. Woelffle, “Vision and Challenges for Realising the Internet of Things,”Cluster of European Research Projects on the Internet of Things, 2010.
3. Aman, Muhammad, Kee Chaing Chua, and Biplab Sikdar. “Mutual Authentication in IoT Systems using Physical Unclonable Functions.” IEEE Internet of Things Journal(2017).
4. Umar,Amjad. Information Security and Auditing in the Digital Age. nge solutions, inc, 2003.
5. Hao, Feng, and Peter YA Ryan. “Password authenticated key exchange by juggling.” International Workshop on Security Protocols. Springer Berlin Heidelberg, 2008.
6. Lancrenon, Jean, Marjan Å krobot, and Qiang Tang. “Two More Efficient Variants of the J−PAKE Protocol.” International Conference on Applied Cryptography and Network Security. Springer International Publishing, 2016.
7. Hao, Feng. “J−pake:Password authenticated key exchange by juggling.”(2016).
8. Hao, Feng., Ed. “Schnorr NIZK Proof:Non−interactive Zero Knowledge Proof for Discrete Logarithm”(2013).
9. Zimmermann, Phil, Alan Johnston, and Jon Callas. ZRTP:Media path key agreement for unicast secure RTP. No.RFC6189.2011.
10. Seo, Dong Hwi, and P.Sweeney. “Simple authenticated key agreement algorithm.” Electronics Letters 35.13(1999):1073−1074.
11. Goldreich, Oded. “Secure multi−party computation.” Manuscript. Preliminary version(1998):86−97.
12. Toorani, Mohsen. “Security analysis of J−PAKE.” Computers and Communication (ISCC), 2014 IEEE Symposium on. IEEE, 2014.
13. Yao, Andrew C. “Protocols for secure computations.” Foundations of Computer Science, 1982. SFCS’08. 23rd Annual Symposium on. IEEE, 1982.
14. Hirt, Martin, Ueli Maurer, and Bartosz Przydatek. “Efficient secure multi−party computation.” International Conference on the Theory and Application of Cryptology and Information Security. Springer Berlin Heidelberg, 2000.
15. C++ Implementation of ZRTP protocol − GNU ZRTP C++ − https://github.com/wernerd/ZRTPCPP [オンライン、2017年3月30日アクセス].
16. Petraschek, Martin, et al. “Security and Usability Aspects of Man−in−the−Middle Attacks on ZRTP.” J.UCS 14.5(2008):673−692.
17. ABY − A Framework for Efficient Mixed−protocol Secure Two−party Computation https://github.com/encryptogroup/ABY [オンライン、2017年9月15日アクセス].
18. Keller, Marcel, Emmanuela Orsini, and Peter Scholl. “MASCOT:faster malicious arithmetic secure computation with oblivious transfer.” Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security. ACM, 2016.
19. Huang, Yan, Jonathan Katz, and David Evans. “Quid−pro−quo−tocols: Strengthening semi−honest protocols with dual execution.” Security and Privacy(SP), 2012 IEEE Symposium on. IEEE, 2012.
20. Sakarindr, Pitipatana, and Nirwan Ansari. “Security services in group communications over wireless infrastructure, mobile ad hoc, and wireless sensor networks. ”IEEE Wireless Communications 14.5 (2007).
21. Laud, Peeter, and Liina Kamm, eds. Applications of Secure Multiparty Computation. Vol.13. IOS Press, 2015.
22. Device Pairing Using Short Authentication Strings (2016) https://tools.ietf.org/id/draft−ietf−dnssd−pairing−01.html [オンライン、2017年4月21日アクセス]
23.TLS Handshaking With Certificates and Keys(2017) https://mcuoneclipse.files.wordpress.com/2017/04/tls−handshaking−with−certificates−and−keys.png [オンライン、2017年4月25日アクセス]
24. Lyrebird claims it can recreate any voice using just one minute of sample audio. (2017) http://www.theverge.com/2017/4/24/15406882/ai−voice−synthesis−copy−human−speech−lyrebird [オンライン、2017年4月25日アクセス]
25. Martini, S.: Session Key Retrieval in J−PAKE Implementations of OpenSSL and OpenSSH. (2010) http://seb.dbzteam.org/crypto/jpake−session−key−retrieval.pdf [オンライン、2017年4月3日アクセス]
26. Thermos, Peter, and Ari Takanen. Securing VoIP Networks。 Pearson Education, 2007.
27.Canetti, Ran.“Obtaining universally composable security:Towards the bare bones of trust.” International Conference on the Theory and Application of Cryptology and Information Security. Springer Berlin Heidelberg, 2007.
28.Let’s Encrypt issues certs to ’PayPal’ phishing sites:how to protect yourself (2017) http://bit.ly/2i7Z4bT [オンライン、2017年5月19日アクセス]
29. Demmler, Daniel, Thomas Schneider, and Michael Zohner.“ABY−A Framework for Efficient Mixed−Protocol Secure Two−Party Computation.” NDSS.2015.
30. Yao, Andrew Chi−Chih. “How to generate and exchange secrets.” Foundations of Computer Science, 1986., 27th Annual Symposium on. IEEE, 1986.
31. Yao, Andrew C. “Theory and application of trapdoor functions.” Foundations of Computer Science, 1982. SFCS’08. 23rd Annual Symposium on. IEEE, 1982.
32. Lindell, Yehuda, and Benny Pinkas. “Secure Multiparty computation for privacy−preserving data mining.” Journal of Privacy and Confidentiality 1.1 (2009):5.APA
33. McGrew, D., et al.“RFC 3711:The secure real−time transport protocol(SRTP).” Cisco Systems, Inc and Ericsson Research, Tech. Rep(2004).
34. Zimmermann, P., J. Callas, and A. Johnston. “ZRTP: Media Path Key Agreement for Unicast Secure RTP(RFC6189).”(2011):2070−1721.
35. Sisalem, Dorgham, et al. SIP security. John Wiley & Sons, 2009.
36. Hlavacs, Helmut, et al. “Enhancing ZRTP by using Computational Puzzles.” J.UCS 14.5(2008):693−716.
37. Petraschek, Martin, et al.“Security and Usability Aspects of Man−in−the−Middle Attacks on ZRTP.” J.UCS 14.5(2008):673−692.
38. Afifi, M.H., et al.“Dynamic Authentication Protocol Using Self−Powered Timers for Passive Internet of Things.”IEEE Internet of Things Journal(2017).
39. Pass, Rafael.“Bounded−concurrent secure multi−party computation with a dishonest majority.” Proceedings of the thirty−sixth annual ACM symposium on Theory of computing. ACM, 2004.

Claims (18)

  1. 第1のデバイス(200A)と第2のデバイス(200B)との間の通信チャネルを介して暗号化メッセージを使用する通信を確立する方法であって、
    前記第1のデバイス(200A)と前記第2のデバイス(200B)とを相互に発見することと、
    前記第1のデバイス(200A)と前記第2のデバイス(200B)との間の前記通信チャネルのための秘密セッション鍵を確立することによって前記通信チャネルの正当性確認をすることと(F5、F6、F7)、
    前記第1のデバイス(200A)における第1の認証文字列(SAS)と前記第2のデバイス(200B)における第2の認証文字列(SA)とを計算することと、
    計算された前記第1のSASを前記第1のデバイス(200A)の第1のMPCモジュール(210A)に、計算された前記第2のSASを前記第2のデバイス(200B)の第2のMPCモジュール(201B)に挿入し、前記第2のデバイス(200B)の前記第2のMPCモジュール(210B)における前記第1のSASと、前記第1のデバイス(200A)の前記第1のMPCモジュール(201A)における第2のSASとを評価することによって前記通信チャネルのセキュリティを確認することと、
    前記通信チャネルの前記セキュリティの前記確認がなされた場合に、交換された前記秘密セッション鍵を使用して前記第1のデバイス(200A)と前記第2のデバイス(200B)との間に共有秘密を確立することと、
    前記通信チャネルを介して前記暗号化されたメッセージを交換することとを含む、方法。
  2. 前記相互の発見は、前記第1のデバイス(200A)と前記第2のデバイス(200B)との間の識別子を提供することを含む、請求項1に記載の方法。
  3. 前記第1のデバイス(200A)と前記第2のデバイス(200B)との間の識別子を提供することは、前記第1のデバイス(200A)と前記第2のデバイス(200B)との間で開始メッセージおよび肯定応答メッセージを交換すること(F1、F2、F3、F4)を含み、前記開始メッセージおよび前記肯定応答メッセージは前記識別子を含む、請求項2に記載の方法。
  4. 前記識別子は、前記第1のデバイス(200A)と前記第2のデバイス(200B)とのうちの少なくとも一方の乱数識別情報を生成することによって提供される、請求項2または3に記載の方法。
  5. 前記識別子の提供は、サーバから前記第1のデバイス(200A)と前記第2のデバイス(200B)の識別子を受信することを含む、請求項2に記載の方法。
  6. 前記正当性確認(F5、F6、F7)は、前記第1のデバイス(200A)から前記第2のデバイス(200B)への第1の鍵交換と、前記第2のデバイス(200B)から前記第1のデバイス(200A)への第2の鍵交換とを含む、請求項1から5のいずれか一項に記載の方法。
  7. 交換された前記メッセージの比較の成功後に、前記第1のデバイス(200A)から前記第2のデバイス(200B)に確認メッセージを送信し、前記第2のデバイス(200B)から前記第1のデバイス(200A)に確認メッセージを送信することをさらに含む、請求項1から6のいずれか一項に記載の方法。
  8. 前記第1の鍵交換における第1の秘密鍵が前の第1の秘密鍵から生成され、前記第2の鍵交換における第2の秘密鍵が前の第2の秘密鍵から生成される、請求項7に記載の方法。
  9. 前記通信チャネルの前記正当性確認は、前記通信チャネルを介したすべてのメッセージの交換前に実施される、請求項1から8のいずれか一項に記載の方法。
  10. 前記通信チャネルの前記正当性確認は、前記通信チャネルを介したいくつかのメッセージの交換後にのみ実施される、請求項1から9のいずれか一項に記載の方法。
  11. 前記第1のデバイス(200A)と前記第2のデバイス(200B)との前記相互発見は、直接通信またはサーバの使用のうちの一方により前記第1のデバイス(200A)と前記第2のデバイス(200B)との間のメッセージの自動交換によって実施される、請求項1から10のいずれか一項に記載の方法。
  12. 移動車両上のIoTデバイスを含む複数のIoTデバイス、または複数のVoIPデバイスを含む、ネットワークにおける、請求項1から11のうちのいずれか一項に記載の方法の使用。
  13. 複数のデバイス(200A、200B)を含むネットワークであって、前記複数のデバイス(200A、200B)は、
    通信チャネル(202、203、204)を介して前記複数のデバイス(200A、200B)のうちの他のデバイスのうちの1つまたは複数のデバイスにメッセージを送信するための送信器(240)と、
    前記複数のデバイス(200A、200B)のうちの他のデバイスのうちの1つまたは複数のデバイスから前記通信チャネル(202、203、204)よりメッセージを受信するための受信器(230)と、
    セッション鍵を記憶するための識別子ファイル(220)と、
    前記複数のデバイス(200A、200B)のうちの1つのデバイスから通信チャネル(202、203、24)を介して認証文字列(SAS)を受信し、前記通信チャネル(202、203、204)のセキュリティを確認するマルチパーティ計算モジュール(210)と、
    前記セッション鍵を使用して前記通信チャネル(202、203、204)との間でのメッセージを暗号化および復号するための通信モジュール(220)とを含む、ネットワーク。
  14. 前記マルチパーティ計算モジュール(210)は、第1の認証文字列を有し、前記複数のデバイス(200A、200B)のうちの他のデバイスのうちの1つから第2の認証文字列を受信し、それによって前記通信チャネル(202、203、204)の前記セキュリティを確認するように適合されている、請求項13に記載のネットワーク。
  15. 前記デバイス(200A、200B)は、複数のセッション鍵を記憶するためのストレージをさらに含む、請求項13または14に記載のネットワーク。
  16. 前記デバイス(200A、200B)は、前記デバイス(200A、200B)を識別する識別子を生成するための擬似乱数生成器をさらに含む、請求項13から15のうちのいずれか一項に記載のネットワーク。
  17. 前記デバイス(200A、200B)に前記デバイス(200A、200B)のうちの他の1つのデバイスの識別子を提供するためのサーバをさらに含む、請求項13から16のうちのいずれか一項に記載のネットワーク。
  18. 前記複数のデバイス(200A、200B)は、IoTネットワーク、自律的車両ネットワークにおけるデバイス、またはVoIデバイスである、請求項13から17のうちのいずれか一項に記載のネットワーク。
JP2021514484A 2018-05-16 2019-05-16 マルチパーティ計算(mpc)による物のインターネット・セキュリティ Pending JP2021524944A (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
PT11074118 2018-05-16
PT20181000034529 2018-05-16
EP18174412.9 2018-05-25
EP18174412.9A EP3570575A1 (en) 2018-05-16 2018-05-25 Internet of things security with multi-party computation (mpc)
PCT/EP2019/062713 WO2019219862A1 (en) 2018-05-16 2019-05-16 Internet of things security with multi-party computation (mpc)

Publications (1)

Publication Number Publication Date
JP2021524944A true JP2021524944A (ja) 2021-09-16

Family

ID=62620623

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021514484A Pending JP2021524944A (ja) 2018-05-16 2019-05-16 マルチパーティ計算(mpc)による物のインターネット・セキュリティ

Country Status (5)

Country Link
US (2) US20210203492A1 (ja)
EP (2) EP3570575A1 (ja)
JP (1) JP2021524944A (ja)
CN (1) CN112425136B (ja)
WO (1) WO2019219862A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10601823B2 (en) * 2015-04-07 2020-03-24 Tyco Fire & Security Gmbh Machine to-machine and machine to cloud end-to-end authentication and security
CN109255247B (zh) * 2018-08-14 2020-08-14 阿里巴巴集团控股有限公司 多方安全计算方法及装置、电子设备
CN114124423B (zh) * 2020-08-31 2023-04-07 Oppo广东移动通信有限公司 一种认证方法、客户端、服务端及存储介质
US20220078184A1 (en) * 2020-09-09 2022-03-10 University Of Florida Research Foundation, Incorporated Method, apparatus, and computer program product for secure two-factor authentication
CN112989368B (zh) * 2021-02-07 2022-05-17 支付宝(杭州)信息技术有限公司 多方联合进行隐私数据处理的方法及装置
CN112800479B (zh) * 2021-04-07 2021-07-06 支付宝(杭州)信息技术有限公司 利用可信第三方的多方联合数据处理方法及装置
CN113177212B (zh) * 2021-04-25 2022-07-19 支付宝(杭州)信息技术有限公司 联合预测方法和装置
CN113612821A (zh) * 2021-07-14 2021-11-05 支付宝(杭州)信息技术有限公司 多方安全计算中的数据交互方法和装置
CN114553397B (zh) * 2022-02-14 2024-04-12 山东大学 一种国密sm4分组密码算法的加密优化方法及装置
CN114697113A (zh) * 2022-03-30 2022-07-01 医渡云(北京)技术有限公司 一种基于硬件加速卡的多方隐私计算方法、装置及系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000354031A (ja) * 1999-04-06 2000-12-19 Mitsubishi Electric Corp 共通鍵共有方法
JP2004529595A (ja) * 2001-06-08 2004-09-24 ノキア コーポレイション データ伝送のセキュリティを確保する方法、通信システム及び通信装置
JP2005099980A (ja) * 2003-09-24 2005-04-14 Nippon Telegr & Teleph Corp <Ntt> サービス提供方法、サービス提供プログラム、ホスト装置、および、サービス提供装置
JP2005354556A (ja) * 2004-06-14 2005-12-22 Matsushita Electric Ind Co Ltd 鍵交換装置、鍵交換システム、鍵交換方法、および暗号通信システム
JP2006332903A (ja) * 2005-05-24 2006-12-07 Ntt Docomo Inc 鍵取得機器、鍵提供機器、鍵交換システム及び鍵交換方法
US20070157026A1 (en) * 2005-07-27 2007-07-05 Zimmermann Philip R Method and system for key management in voice over internet protocol
US20090158039A1 (en) * 2007-11-09 2009-06-18 Ramnath Prasad Device pairing using "human-comparable" synchronized audible and/or visual patterns

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2384403B (en) * 2002-01-17 2004-04-28 Toshiba Res Europ Ltd Data transmission links
US7646872B2 (en) * 2004-04-02 2010-01-12 Research In Motion Limited Systems and methods to securely generate shared keys
US9350708B2 (en) * 2010-06-01 2016-05-24 Good Technology Corporation System and method for providing secured access to services
US9467425B2 (en) * 2013-03-18 2016-10-11 Intel Corporation Key refresh between trusted units
US9112840B2 (en) * 2013-07-17 2015-08-18 Avaya Inc. Verifying privacy of web real-time communications (WebRTC) media channels via corresponding WebRTC data channels, and related methods, systems, and computer-readable media
US20150288667A1 (en) * 2014-04-08 2015-10-08 Samsung Electronics Co., Ltd. Apparatus for sharing a session key between devices and method thereof
US9621547B2 (en) * 2014-12-22 2017-04-11 Mcafee, Inc. Trust establishment between a trusted execution environment and peripheral devices
US20170230383A1 (en) * 2016-02-10 2017-08-10 Silent Circle, SA Inter-communication unit message routing and verification of connections

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000354031A (ja) * 1999-04-06 2000-12-19 Mitsubishi Electric Corp 共通鍵共有方法
JP2004529595A (ja) * 2001-06-08 2004-09-24 ノキア コーポレイション データ伝送のセキュリティを確保する方法、通信システム及び通信装置
JP2005099980A (ja) * 2003-09-24 2005-04-14 Nippon Telegr & Teleph Corp <Ntt> サービス提供方法、サービス提供プログラム、ホスト装置、および、サービス提供装置
JP2005354556A (ja) * 2004-06-14 2005-12-22 Matsushita Electric Ind Co Ltd 鍵交換装置、鍵交換システム、鍵交換方法、および暗号通信システム
JP2006332903A (ja) * 2005-05-24 2006-12-07 Ntt Docomo Inc 鍵取得機器、鍵提供機器、鍵交換システム及び鍵交換方法
US20070157026A1 (en) * 2005-07-27 2007-07-05 Zimmermann Philip R Method and system for key management in voice over internet protocol
US20090158039A1 (en) * 2007-11-09 2009-06-18 Ramnath Prasad Device pairing using "human-comparable" synchronized audible and/or visual patterns

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
BRESCIANI, R.: "The ZRTP Protocol Analysis on the Diffie-Hellman Mode", COMPUTER SCIENCE DEPARTMENT TECHNICAL REPORT, vol. TCD-CS-2009-13, JPN6023022729, 12 June 2009 (2009-06-12), pages 1 - 21, ISSN: 0005077361 *
HOEPMAN, JAAP-HENK, THE EPHEMERAL PAIRING PROBLEM, vol. arXiv:0802.0834v1, JPN6023022730, 6 February 2008 (2008-02-06), pages 1 - 15, ISSN: 0005077360 *
PASINI, S. AND VAUDENAY, S.: "SAS-Based Authenticated Key Agreement", PUBLIC KEY CRYPTOGRAPHY - PKC 2006, vol. 3958, JPN6023022727, 2006, pages 395 - 409, XP047030188, ISSN: 0005077363, DOI: 10.1007/11745853_26 *
ZIMMERMANN, P.: "ZRTP: Media Path Key Agreement for Unicast Secure RTP", REQUEST FOR COMMENTS: 6189, JPN6023022728, April 2011 (2011-04-01), pages 1 - 115, XP015075963, ISSN: 0005077362 *
齋藤 恒和: "認証鍵交換プロトコルZRTPの盗聴確率の評価", 2016 SYMPOSIUM ON CRYPTOGRAPHY AND INFORMATION SEURITY, JPN6023022726, 19 January 2016 (2016-01-19), JP, pages 1 - 7, ISSN: 0005077364 *

Also Published As

Publication number Publication date
US20210203492A1 (en) 2021-07-01
CN112425136B (zh) 2023-10-10
EP3570575A1 (en) 2019-11-20
CN112425136A (zh) 2021-02-26
EP3794856A1 (en) 2021-03-24
WO2019219862A1 (en) 2019-11-21
US20230155816A1 (en) 2023-05-18

Similar Documents

Publication Publication Date Title
CN112425136B (zh) 采用多方计算(mpc)的物联网安全性
CN108599925B (zh) 一种基于量子通信网络的改进型aka身份认证系统和方法
KR101343248B1 (ko) 교환 세션의 총체적 보안
CN102164033B (zh) 防止服务被攻击的方法、设备及系统
Chattaraj et al. A new two-server authentication and key agreement protocol for accessing secure cloud services
US20140164768A1 (en) Detecting matched cloud infrastructure connections for secure off-channel secret generation
Gaba et al. Robust and lightweight mutual authentication scheme in distributed smart environments
US8683194B2 (en) Method and devices for secure communications in a telecommunications network
US9787651B2 (en) Method and device for establishing session keys
CN110635901B (zh) 用于物联网设备的本地蓝牙动态认证方法和系统
Nikooghadam et al. A secure and robust elliptic curve cryptography‐based mutual authentication scheme for session initiation protocol
CN110493367B (zh) 无地址的IPv6非公开服务器、客户机与通信方法
CN108599926B (zh) 一种基于对称密钥池的HTTP-Digest改进型AKA身份认证系统和方法
Sureshkumar et al. A robust mutual authentication scheme for session initiation protocol with key establishment
Kfoury et al. Secure End-to-End VoIP System Based on Ethereum Blockchain.
Peeters et al. SMS OTP security (SOS) hardening SMS-based two factor authentication
Jander et al. Practical Defense-in-depth Solution for Microservice Systems.
Aiash A formal analysis of authentication protocols for mobile devices in next generation networks
KR20210126319A (ko) 키 관리 장치 및 방법
Jurcut et al. Design requirements to counter parallel session attacks in security protocols
Krasnowski et al. Introducing a Verified Authenticated Key Exchange Protocol over Voice Channels for Secure Voice Communication.
Shehada et al. Performance evaluation of a lightweight iot authentication protocol
Hsu et al. SGD 2: Secure Group-based Device-to-Device Communications with Fine-grained Access Control for IoT in 5G
Gurbani et al. A secure and lightweight scheme for media keying in the session initiation protocol (SIP) work in progress
Alshahrani et al. Anonymous IoT mutual inter-device authentication scheme based on incremental counter (AIMIA-IC)

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210728

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220407

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230606

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20230905

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20231106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231206

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20240306