JP7574791B2 - Authentication key exchange system, method, and program - Google Patents
Authentication key exchange system, method, and program Download PDFInfo
- Publication number
- JP7574791B2 JP7574791B2 JP2021201659A JP2021201659A JP7574791B2 JP 7574791 B2 JP7574791 B2 JP 7574791B2 JP 2021201659 A JP2021201659 A JP 2021201659A JP 2021201659 A JP2021201659 A JP 2021201659A JP 7574791 B2 JP7574791 B2 JP 7574791B2
- Authority
- JP
- Japan
- Prior art keywords
- key
- temporary
- long
- public key
- term
- 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
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Description
本発明は、認証鍵交換システム、方法、及びプログラムに関する。
The present invention relates to an authentication key exchange system , a method , and a program.
近年、IoT(Internet of Things)機器が普及したことに伴って、IoT機器でも重要性の高い通信が行われるようになってきた。このため、通信時に互いに正しい機器・サーバであるかを確認するための認証技術がIoT機器でも必要になっている。 In recent years, as IoT (Internet of Things) devices have become more widespread, important communications are also being carried out by IoT devices. For this reason, authentication technology is also required for IoT devices to verify that the devices and servers in communication are correct.
IoT機器向けの認証技術としてはパスワードや電子証明書等が従来から知られているが、近年では、より安全性が高い認証鍵交換プロトコルの導入が求められている。認証鍵交換プロトコルとは、認証が成功した場合に互いに共通した鍵(この鍵は共有鍵とも呼ばれる。)を生成し、その共有鍵で暗号化通信が可能となるプロトコルである。このような認証鍵交換プロトコルの1つとして、IDベース暗号を用いた認証鍵交換プロトコルが知られている。 Passwords and electronic certificates have traditionally been known as authentication technologies for IoT devices, but in recent years, there has been a demand for the introduction of authentication key exchange protocols that offer greater security. An authentication key exchange protocol is a protocol in which, if authentication is successful, a mutually shared key (also called a shared key) is generated, enabling encrypted communication using the shared key. One such authentication key exchange protocol is known as an authentication key exchange protocol that uses ID-based encryption.
IDベース暗号を用いた認証鍵交換プロトコルは、一般に、有限体上の楕円曲線における双線形群を用いて実現される。このような双線形群はペアリング群とも呼ばれ、対称ペアリング群と非対称ペアリング群とに分類することができる。現在、ペアリング群を暗号で用いる場合には、効率性や安全性の観点から非対称ペアリング群が用いられることが多い。 Authenticated key exchange protocols using ID-based encryption are generally realized using bilinear groups on elliptic curves over finite fields. Such bilinear groups are also called pairing groups, and can be classified into symmetric pairing groups and asymmetric pairing groups. Currently, when pairing groups are used in encryption, asymmetric pairing groups are often used from the standpoint of efficiency and security.
一方で、IDベース暗号はKGC(Key Generation Center)と呼ばれるサーバが端末の秘密鍵を生成するため、IoT機器の管理者は外部のKGCサービスを利用するよりも自前でKGCを運用する可能性が高い。したがって、エッジコンピューティングサービスのユースケースのように、IoT機器が外部のエッジサーバと通信する場合、IoT機器側はIDベース暗号に基づく認証を行い、エッジサーバ側は電子証明書に基づく認証を行うことがある。非特許文献1には、一方の機器がIDベースのKGCドメイン下で、もう一方の機器(サーバ)がPKI(Public Key Infrastructure、公開鍵暗号基盤)の或るCA(Certificate Authority、認証局)ドメイン下であるようなクロスドメイン認証鍵交換プロトコルが記載されている。
On the other hand, in ID-based encryption, a server called a KGC (Key Generation Center) generates the private key of the terminal, so that the administrator of the IoT device is more likely to operate the KGC in-house rather than using an external KGC service. Therefore, when an IoT device communicates with an external edge server, as in the use case of an edge computing service, the IoT device side may perform authentication based on ID-based encryption, and the edge server side may perform authentication based on a digital certificate. Non-Patent
しかしながら、非特許文献1では、ペアリング演算と呼ばれる群演算を2回行う必要がある。ペアリング演算は一般に計算コストが高いため、IoT機器等の計算リソースが限られた機器が非特許文献1に記載されているプロトコルによって鍵交換を行う場合、鍵交換に時間を要することがある。例えば、動作クロック数が数百MHz程度のプロセッサで462ビットのBN(Barret-Naehrig)曲線上のペアリング演算を行った場合、1回あたり約600msec程度の計算時間を要する。
However, in
本発明の一実施形態は、上記の点に鑑みてなされたもので、IDベース暗号に基づく認証を行う機器と、電子証明書に基づく認証を行う機器との間で効率的な認証鍵交換を行うことを目的とする。 One embodiment of the present invention has been made in consideration of the above points, and aims to perform efficient authentication key exchange between a device that performs authentication based on ID-based encryption and a device that performs authentication based on electronic certificates.
上記目的を達成するため、一実施形態に係る認証鍵交換システムは、IDベース暗号のKGCとして機能するサーバと、前記IDベース暗号に基づく認証を行う第1の機器と、電子署名に基づく認証を行う第2の機器とが含まれ、前記第1の機器と前記第2の機器との間で認証鍵交換を行う認証鍵交換システムであって、前記サーバは、前記IDベース暗号で用いられる双線形群と、前記IDベース暗号のマスター秘密鍵と、前記マスター秘密鍵に対応するマスター公開鍵とを生成するように構成されているセットアップ部と、前記第1の機器の識別子を示す第1の識別子に対する第1の長期秘密鍵を生成するように構成されている長期秘密鍵生成部と、を有し、前記第1の機器は、第1の一時秘密鍵を生成すると共に、前記第1の一時秘密鍵及び前記第1の長期秘密鍵から第1の一時公開鍵を生成するように構成されている第1の一時鍵生成部と、前記第1の一時公開鍵と前記第1の識別子とを前記第2の機器に送信するように構成されている第1の一時鍵送信部と、少なくとも第2の一時公開鍵と前記第2の機器の長期公開鍵と前記第2の機器の識別子を示す第2の識別子とを前記第2の機器から受信すると、前記第1の一時公開鍵と前記第2の一時公開鍵と前記第2の機器の長期公開鍵と前記第1の一時秘密鍵と前記第1の長期秘密鍵と前記第1の識別子と前記第2の識別子からセッション鍵を生成するように構成されている第1のセッション鍵生成部と、を有し、前記第2の機器は、第2の長期秘密鍵と、前記第2の長期秘密鍵に対応する前記長期公開鍵とを生成するように構成されている長期鍵生成部と、第2の一時秘密鍵を生成すると共に、前記第2の一時秘密鍵及び前記第2の長期秘密鍵から前記第2の一時公開鍵を生成するように構成されている第2の一時鍵生成部と、少なくとも前記第2の一時公開鍵と前記長期公開鍵と前記第2の識別子とを前記第1の機器に送信するように構成されている第2の一時鍵送信部と、前記第1の一時公開鍵と前記第2の一時公開鍵と前記第2の一時秘密鍵と前記マスター公開鍵と前記第1の識別子と前記第2の識別子から前記セッション鍵を生成するように構成されている第2のセッション鍵生成部と、有する。 In order to achieve the above object, an authentication key exchange system according to one embodiment includes a server that functions as a KGC for ID-based encryption, a first device that performs authentication based on the ID-based encryption, and a second device that performs authentication based on an electronic signature, and is an authentication key exchange system that performs authentication key exchange between the first device and the second device, in which the server has a setup unit configured to generate a bilinear group used in the ID-based encryption, a master private key for the ID-based encryption, and a master public key corresponding to the master private key, and a long-term private key generation unit configured to generate a first long-term private key for a first identifier that indicates an identifier of the first device, and the first device has a first temporary key generation unit configured to generate a first temporary private key and a first temporary public key from the first temporary private key and the first long-term private key, a first temporary key transmission unit configured to transmit the first temporary public key and the first identifier to the second device, and a first temporary public key transmission unit configured to transmit at least a second temporary public key and the long-term public key of the second device and a previous and a first session key generation unit configured to generate a session key from the first temporary public key, the second temporary public key, the long-term public key of the second device, the first temporary private key, the first long-term private key, the first identifier, and the second identifier when receiving from the second device a second identifier indicating the identifier of the second device, the second device having a long-term key generation unit configured to generate a second long-term private key and the long-term public key corresponding to the second long-term private key, and a second temporary key generation unit configured to generate the second temporary public key from the second temporary private key and the second long-term private key; a second temporary key transmission unit configured to transmit at least the second temporary public key, the long-term public key, and the second identifier to the first device; and a second session key generation unit configured to generate the session key from the first temporary public key, the second temporary public key, the second temporary private key, the master public key, the first identifier, and the second identifier.
IDベース暗号に基づく認証を行う機器と、電子証明書に基づく認証を行う機器との間で効率的な認証鍵交換を行うことができる。 Efficient authentication key exchange can be performed between a device that performs authentication based on ID-based encryption and a device that performs authentication based on electronic certificates.
以下、本発明の一実施形態について説明する。本実施形態では、IDベース暗号に基づく認証を行う機器と、電子証明書に基づく認証を行う機器との間で効率的な認証鍵交換を行うことができる認証鍵交換システム1について説明する。
The following describes one embodiment of the present invention. In this embodiment, an authentication
<準備>
本実施形態で使用する記号や概念、アルゴリズム等について説明する。
<Preparation>
The symbols, concepts, algorithms, etc. used in this embodiment will be explained.
pを素数として、整数の加法群におけるpを法とする剰余類のなす加法群をZpとする。 Let p be a prime number, and let Z p be the additive group of cosets modulo p in the additive group of integers.
また、κをセキュリティパラメータとする。セキュリティパラメータκは認証鍵交換システム1の安全性強度(単位はビット)を表すものであり、例えば、κ=128やκ=256等を取り得る。
Let κ be a security parameter. The security parameter κ represents the security strength (in bits) of the authentication
・双線形群
双線形群G=(p,G1,G2,GT,g1,g2,e)は、素数pと、位数pの巡回群G1、G2、GTと、G1の生成元g1と、G2の生成元g2と、以下の双線形性及び非退化性を満たす双線形写像e:G1×G2→GTとで構成される。
Bilinear group A bilinear group G = (p, G1 , G2 , GT , g1 , g2 , e) is composed of a prime number p, cyclic groups G1 , G2 , and GT of order p, a generator g1 of G1 , a generator g2 of G2 , and a bilinear mapping e: G1 × G2 → GT that satisfies the following bilinearity and nondegeneracy.
双線形性:任意のh1∈G1、h2∈G2、a,b∈Zpに対して、e(h1 a,h2 b)=e(h1,h2)abが成り立つ。 Bilinearity: For any h 1 ∈ G 1 , h 2 ∈ G 2 , a, b ∈ Z p , e(h 1 a , h 2 b )=e(h 1 , h 2 ) ab holds.
非退化性:e(g1,g2)はGTの生成元である。 Non-degenerate: e(g 1 , g 2 ) is a generator of G T .
このような双線形群の例としては、参考文献1に記載されているOptimal-ate paring等が挙げられる。
An example of such a bilinear group is the optimal-ate paring described in
・デジタル署名
デジタル署名は以下の3つのアルゴリズム{KeyGen,Sign,Ver}で構成される。
Digital Signature The digital signature is composed of the following three algorithms {KeyGen, Sign, Ver}.
(pk,sk)←KeyGen(1κ):1κを入力として、公開鍵と秘密鍵のペア(pk,sk)を生成する。なお、1κは1のκビット列である。 (pk, sk)←KeyGen(1 κ ): Generate a public key and private key pair (pk, sk) using 1 κ as input, where 1 κ is a κ-bit string of 1s.
σ←Sign(sk,m):秘密鍵skとメッセージmを入力として、署名σを生成する。 σ←Sign(sk,m): Generate a signature σ using the private key sk and message m as input.
1/0←Ver(pk,m,σ):公開鍵pkとメッセージmと署名σを入力として、1又は0を出力する。
1/0←Ver(pk,m,σ): Given public key pk, message m, and signature σ,
更に、任意の(pk,sk)←KeyGen(1κ)に対して、1=Ver(pk,m,Sign(sk,m))を満たすものとする。デジタル署名の例としては、ECDSAやRSA-PSS等が挙げられる。 Furthermore, for any (pk, sk)←KeyGen(1 κ ), 1=Ver(pk, m, Sign(sk, m)) is satisfied. Examples of digital signatures include ECDSA and RSA-PSS.
<全体構成>
本実施形態に係る認証鍵交換システム1の全体構成例を図1に示す。図1に示すように、本実施形態に係る認証鍵交換システム1には、鍵生成装置10と、第1の通信機器20と、第2の通信機器30とが含まれる。また、鍵生成装置10、第1の通信機器20、及び第2の通信機器30は、例えば、インターネット等を含む通信ネットワーク40を介して通信可能に接続される。なお、鍵生成装置10、第1の通信機器20、及び第2の通信機器30の各々は「エンティティ」等とも呼ばれる。
<Overall composition>
An example of the overall configuration of an authentication
鍵生成装置10は、IDベース暗号のKGCとして機能するサーバであり、公開パラメータ等を生成するためのセットアップ処理を実行したり、第1の通信機器20からの要求に応じてその第1の通信機器20の長期秘密鍵を生成したりする。なお、鍵生成装置10は、例えば、「鍵発行サーバ」や「鍵生成サーバ」等と呼ばれてもよい。
The
第1の通信機器20は、IDベース暗号を用いた認証を行う機器(例えば、IoT機器等)であり、第2の通信機器30との間で暗号化通信のための認証鍵交換を行う。以下、第1の通信機器20を一意に識別する識別子をIDCとする。なお、識別子IDCとしては、例えば、製造固有番号、ユーザID、メールアドレス、電話番号、IPアドレス、MACアドレス等といったものを用いることができる。
The
第2の通信機器30は、電子証明書(以下、単に「証明書」ともいう。)を用いた認証を行う機器(例えば、サーバ等)であり、第1の通信機器20との間で暗号化通信のための認証鍵交換を行う。すなわち、第2の通信機器30は、PKIベースで認証を行う機器である。以下、第2の通信機器30を一意に識別する識別子をIDSとする。なお、識別子IDSとしては、例えば、製造固有番号、ユーザID、メールアドレス、電話番号、IPアドレス、MACアドレス等といったものを用いることができる。
The
ここで、第2の通信機器30は自身の長期公開鍵と長期秘密鍵を生成し、その長期公開鍵に対する証明書(より正確には識別子IDSと長期公開鍵に対する証明書)の発行を外部の認証局に要求するが、本実施形態では、第2の通信機器30の通信相手となる第1の通信機器20は、その認証局を信頼しているものとする。すなわち、当該第1の通信機器20は、その認証局の公開鍵とその公開鍵に対する証明書(当該認証局がルート認証局であればルート証明書、そうでなければ上位の認証局が発行した証明書)とを保持しているものとする。
Here, the
なお、図1に示す認証鍵交換システム1の構成は一例であって、これに限られるものではない。例えば、図1に示す例では、第1の通信機器20と第2の通信機器30がそれぞれ1台のみ図示されているが、第1の通信機器20が複数存在してもよいし、同様に第2の通信機器30が複数存在してもよい。また、以下では、第1の通信機器20はIoT機器、第2の通信機器30はサーバであることを想定するが、これに限られるものではない。
The configuration of the authentication
<ハードウェア構成>
本実施形態に係る認証鍵交換システム1に含まれる鍵生成装置10、第1の通信機器20、及び第2の通信機器30のハードウェア構成例について説明する。
<Hardware Configuration>
An example of the hardware configuration of the
≪鍵生成装置10≫
本実施形態に係る鍵生成装置10のハードウェア構成例を図2に示す。図2に示すように、本実施形態に係る鍵生成装置10は、入力装置11と、表示装置12と、外部I/F13と、通信I/F14と、RAM(Random Access Memory)15と、ROM(Read Only Memory)16と、補助記憶装置17と、プロセッサ18とを有する。これらの各ハードウェアは、それぞれがバス19を介して通信可能に接続される。
<
An example of a hardware configuration of the
入力装置11は、例えば、キーボード、マウス、タッチパネル、各種物理ボタン等である。表示装置12は、例えば、ディスプレイ、表示パネル等である。なお、鍵生成装置10は、例えば、入力装置11及び表示装置12のうちの少なくとも一方を有していなくてもよい。
The
外部I/F13は、記録媒体13a等の外部装置とのインタフェースである。記録媒体13aとしては、例えば、CD(Compact Disc)、DVD(Digital Versatile Disk)、SDメモリカード(Secure Digital memory card)、USB(Universal Serial Bus)メモリカード等が挙げられる。
The external I/
通信I/F14は、鍵生成装置10を通信ネットワーク40に接続するためのインタフェースである。RAM15は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。ROM16は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ(記憶装置)である。補助記憶装置17は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の不揮発性の記憶装置であり、プログラムやデータが格納される。プロセッサ18は、例えば、CPU(Central Processing Unit)等の各種演算装置である。
The communication I/
なお、図2に示すハードウェア構成は一例であって、鍵生成装置10は、他のハードウェア構成を有していてもよい。例えば、鍵生成装置10は、複数の補助記憶装置17や複数のプロセッサ18を有していてもよいし、図示したハードウェア以外の種々のハードウェアを有していてもよい。
Note that the hardware configuration shown in FIG. 2 is an example, and the
≪第1の通信機器20≫
本実施形態に係る第1の通信機器20のハードウェア構成例を図3に示す。図3に示すように、本実施形態に係る第1の通信機器20は、外部I/F21と、通信I/F22と、メモリ装置23と、プロセッサ24とを有する。これらの各ハードウェアは、それぞれがバス25を介して通信可能に接続される。
<
An example of the hardware configuration of the
外部I/F21は、記録媒体21a等の外部装置とのインタフェースである。記録媒体21aとしては、例えば、SDメモリカード、USBメモリカード等が挙げられる。
The external I/
通信I/F22は、第1の通信機器20を通信ネットワーク40に接続するためのインタフェースである。メモリ装置23は、例えば、フラッシュメモリ等の各種記憶装置である。プロセッサ24は、例えば、CPUやMPU(Micro-Processing Unit)等の各種演算装置である。
The communication I/
なお、図3に示すハードウェア構成は一例であって、第1の通信機器20は、他のハードウェア構成を有していてもよい。例えば、第1の通信機器20は、複数のメモリ装置23や複数のプロセッサ24を有していてもよいし、図示した以外の種々のハードウェアを有していてもよい。
Note that the hardware configuration shown in FIG. 3 is an example, and the
≪第2の通信機器30≫
本実施形態に係る第2の通信機器30のハードウェア構成例を図4に示す。図4に示すように、本実施形態に係る第2の通信機器30は、入力装置31と、表示装置32と、外部I/F33と、通信I/F34と、RAM35と、ROM36と、補助記憶装置37と、プロセッサ38とを有する。これらの各ハードウェアは、それぞれがバス39を介して通信可能に接続される。
<<
An example of the hardware configuration of the
入力装置31は、例えば、キーボード、マウス、タッチパネル、各種物理ボタン等である。表示装置32は、例えば、ディスプレイ、表示パネル等である。なお、第2の通信機器30は、例えば、入力装置31及び表示装置32のうちの少なくとも一方を有していなくてもよい。
The
外部I/F33は、記録媒体33a等の外部装置とのインタフェースである。記録媒体33aとしては、例えば、CD、DVD、SDメモリカード、USBメモリカード等が挙げられる。
The external I/
通信I/F34は、第2の通信機器30を通信ネットワーク40に接続するためのインタフェースである。RAM35は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。ROM36は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ(記憶装置)である。補助記憶装置37は、例えば、HDDやSSD等の不揮発性の記憶装置であり、プログラムやデータが格納される。プロセッサ38は、例えば、CPU等の各種演算装置である。
The communication I/
なお、図4に示すハードウェア構成は一例であって、第2の通信機器30は、他のハードウェア構成を有していてもよい。例えば、第2の通信機器30は、複数の補助記憶装置37や複数のプロセッサ38を有していてもよいし、図示したハードウェア以外の種々のハードウェアを有していてもよい。
The hardware configuration shown in FIG. 4 is an example, and the
<機能構成>
本実施形態に係る認証鍵交換システム1に含まれる鍵生成装置10、第1の通信機器20、及び第2の通信機器30の機能構成例について説明する。
<Functional configuration>
An example of the functional configuration of the
≪鍵生成装置10≫
本実施形態に係る鍵生成装置10の機能構成例を図5に示す。図5に示すように、本実施形態に係る鍵生成装置10は、セットアップ処理部101と、長期秘密鍵生成部102とを有する。これら各部は、例えば、鍵生成装置10にインストールされた1以上のプログラムが、プロセッサ18に実行させる処理により実現される。また、本実施形態に係る鍵生成装置10は、記憶部103を有する。記憶部103は、例えば、補助記憶装置17により実現される。
<
An example of the functional configuration of the
セットアップ処理部101は、マスター秘密鍵や公開パラメータ等を生成するためのセットアップ処理を実行する。
The
長期秘密鍵生成部102は、第1の通信機器20からの要求に応じて、その第1の通信機器20の識別子に対する長期秘密鍵を生成する。
In response to a request from a
記憶部103は、各種情報(例えば、マスター秘密鍵や公開パラメータ等)を記憶する。
The
≪第1の通信機器20≫
本実施形態に係る第1の通信機器20の機能構成例を図6に示す。図6に示すように、本実施形態に係る第1の通信機器20は、長期秘密鍵要求部201と、長期秘密鍵受信部202と、一時鍵生成部203と、一時鍵送信部204と、一時鍵受信部205と、セッション鍵生成部206とを有する。これら各部は、例えば、第1の通信機器20にインストールされた1以上のプログラムが、プロセッサ24に実行させる処理により実現される。また、本実施形態に係る第1の通信機器20は、記憶部207を有する。記憶部207は、例えば、メモリ装置23により実現される。
<
An example of the functional configuration of the
長期秘密鍵要求部201は、自身の識別子IDCに対する長期秘密鍵の生成を鍵生成装置10に要求する。以下、識別子IDCに対する長期秘密鍵をsskCとする。
The long-term private
長期秘密鍵受信部202は、鍵生成装置10から長期秘密鍵sskCを受信する。
The long-term private
一時鍵生成部203は、自身の長期秘密鍵sskCを用いて、一時秘密鍵eskCと一時公開鍵XCを生成する。
The temporary
一時鍵送信部204は、一時公開鍵XCと自身の識別子IDCを第2の通信機器30に送信する。
The temporary
一時鍵受信部205は、第2の通信機器30からその第2の通信機器30の一時公開鍵XS等を受信する。
The temporary
セッション鍵生成部206は、自身の長期秘密鍵sskCや第2の通信機器30から受信した一時公開鍵XS等を用いて鍵要素を生成した上で、これらの鍵要素からセッション鍵を生成する。なお、このセッション鍵が、第2の通信機器30との間で共有される共有鍵である。
The session
記憶部207は、各種情報(例えば、公開パラメータ、自身の長期秘密鍵sskC等)を記憶する。
The
≪第2の通信機器30≫
本実施形態に係る第2の通信機器30の機能構成例を図7に示す。図7に示すように、本実施形態に係る第2の通信機器30は、長期鍵生成部301と、証明書発行要求部302と、一時鍵受信部303と、一時鍵生成部304と、一時鍵送信部305と、セッション鍵生成部306とを有する。これら各部は、例えば、第2の通信機器30にインストールされた1以上のプログラムが、プロセッサ38に実行させる処理により実現される。また、本実施形態に係る第2の通信機器30は、記憶部307を有する。記憶部307は、例えば、補助記憶装置37により実現される。
<<
An example of the functional configuration of the
長期鍵生成部301は、長期秘密鍵と長期公開鍵を生成する。以下、第2の通信機器30の長期秘密鍵をsskS、長期公開鍵をspkSとする。
The long-term
証明書発行要求部302は、自身の識別子IDSと長期公開鍵spkSに対する証明書certSの発行を外部の認証局に要求する。
The certificate
一時鍵受信部303は、第1の通信機器20から一時公開鍵XCと識別子IDCを受信する。
The temporary
一時鍵生成部304は、自身の長期秘密鍵sskSを用いて、一時秘密鍵eskSと一時公開鍵XSを生成する。
The temporary
一時鍵送信部305は、一時公開鍵XSと自身の長期公開鍵spkSと自身の識別子IDSと証明書certS等を第1の通信機器20に送信する。
The temporary
セッション鍵生成部306は、マスター公開鍵や第1の通信機器20から受信した一時公開鍵XC等を用いて鍵要素を生成した上で、これらの鍵要素からセッション鍵を生成する。
The session
記憶部307は、各種情報(例えば、公開パラメータ、自身の長期秘密鍵sskS等)を記憶する。
The
[実施例1]
以下、本実施形態の実施例1について説明する。本実施例では、各エンティティは、システム共通のパラメータとして以下のハッシュ関数H1,H2,Hを保持しているものとする。
[Example 1]
Hereinafter, a first example of the present embodiment will be described. In this example, it is assumed that each entity holds the following hash functions H 1 , H 2 , and H as parameters common to the system.
H1:識別子を入力として、G2の元を出力するハッシュ関数
H2:κビットのビット列とG2の元を入力として、Zpの元を出力するハッシュ関数
H:可変長の長さの文字列を入力として、κビットのビット列を出力するハッシュ関数
<セットアップ処理>
実施例1におけるセットアップ処理について、図8を参照しながら説明する。
H1 : A hash function that takes an identifier as input and outputs an element of G2 . H2 : A hash function that takes a κ-bit bit string and an element of G2 as input and outputs an element of Zp . H: A hash function that takes a variable-length character string as input and outputs a κ-bit bit string. <Setup process>
The setup process in the first embodiment will be described with reference to FIG.
鍵生成装置10のセットアップ処理部101は、双線形群G=(p,G1,G2,GT,g1,g2,e)を生成する(ステップS101)。
The
次に、鍵生成装置10のセットアップ処理部101は、マスター秘密鍵w∈Zpを一様ランダムに生成する(ステップS102)。
Next, the
次に、鍵生成装置10のセットアップ処理部101は、マスター公開鍵W=g1
wを生成する(ステップS103)。
Next, the
そして、鍵生成装置10のセットアップ処理部101は、双線形群Gとマスター秘密鍵wとマスター公開鍵Wとを記憶部103に保存する(ステップS104)。ここで、公開パラメータは(G,W)であり、この公開パラメータ(G,W)は第1の通信機器20及び第2の通信機器30に公開される。以下では、第1の通信機器20及び第2の通信機器30は公開パラメータ(G,W)を保持しているものとする。
Then, the
<第1の通信機器20の長期秘密鍵生成処理>
実施例1における第1の通信機器20の長期秘密鍵生成処理について、図9を参照しながら説明する。
<Long-term private key generation process of the
The long-term private key generation process of the
第1の通信機器20の長期秘密鍵要求部201は、自身の識別子IDCに対する長期秘密鍵の生成を鍵生成装置10に要求する(ステップS201)。なお、この要求には、少なくとも識別子IDCが指定される。
The long-term private
鍵生成装置10の長期秘密鍵生成部102は、長期秘密鍵の生成要求を受信すると、長期秘密鍵sskC=H1(IDC)w∈G2を生成する(ステップS202)。
When the long-term private
次に、鍵生成装置10の長期秘密鍵生成部102は、長期秘密鍵sskCを第1の通信機器20に送信する(ステップS203)。
Next, the long-term private
そして、第1の通信機器20の長期秘密鍵受信部202は、長期秘密鍵sskCを受信し、この長期秘密鍵sskCを記憶部207に保存する(ステップS204)。なお、長期秘密鍵sskCはセキュアな通信路を介して鍵生成装置10から第1の通信機器20に送信されるものとする。
Then, the long-term private
<第2の通信機器30の長期鍵生成処理>
実施例1における第2の通信機器30の長期鍵生成処理について、図10を参照しながら説明する。
<Long-term key generation process of the
The long-term key generation process of the
第2の通信機器30の長期鍵生成部301は、長期秘密鍵sskS∈Zpを一様ランダムに生成する(ステップS301)。
The long-term
次に、第2の通信機器30の長期鍵生成部301は、長期公開鍵spkS=g1
ssk_Sを生成する(ステップS302)。なお、「ssk_S」はsskSを表す。
Next, the long-term
次に、第2の通信機器30の証明書発行要求部302は、自身の識別子IDSと長期公開鍵spkSに対する証明書certSの発行を外部の認証局に要求する(ステップS303)。これにより、当該認証局から証明書certSが返信される。
Next, the certificate
そして、第2の通信機器30の長期鍵生成部301は、長期秘密鍵sskSと長期公開鍵spkSと証明書certSとを記憶部307に保存する(ステップS304)。
Then, the long-term
<認証鍵交換処理>
実施例1における認証鍵交換処理について、図11を参照しながら説明する。なお、以下では、第1の通信機器20から第2の通信機器30に対して開始要求を行うものとする。すなわち、第1の通信機器20がイニシエータ、第2の通信機器30がレスポンダであるものとする。また、第1の通信機器20は、第2の通信機器30の通信先情報(例えば、IPアドレスやMACアドレス等)を既に取得しているものとする。
<Authentication key exchange process>
The authentication key exchange process in the first embodiment will be described with reference to Fig. 11. In the following, it is assumed that the
第1の通信機器20の一時鍵生成部203は、一時秘密鍵eskC∈{0,1}κを一様ランダムに生成した上で、xC=H2(eskC,sskC)を計算して一時公開鍵XC=g1
x_Cを生成する(ステップS401)。一時秘密鍵eskCは記憶部207に保存される。なお、「x_C」はxCを表す。
The temporary
次に、第1の通信機器20の一時鍵送信部204は、一時公開鍵XCと自身の識別子IDCを第2の通信機器30に送信する(ステップS402)。
Next, the temporary
第2の通信機器30の一時鍵生成部304は、一時公開鍵XCと識別子IDCを一時鍵受信部303が受信すると、一時秘密鍵eskS∈{0,1}κを一様ランダムに生成した上で、xS=H2(eskS,sskS)を計算して一時公開鍵XS=g1
x_Sを生成する(ステップS403)。一時秘密鍵eskSは記憶部307に保存される。なお、「x_S」はxSを表す。
When the temporary
次に、第2の通信機器30の一時鍵送信部305は、一時公開鍵XSと自身の長期公開鍵spkSと証明書certSと自身の識別子IDSとを第1の通信機器20に送信する(ステップS404)。
Next, the temporary
第1の通信機器20のセッション鍵生成部206は、一時公開鍵XSと長期公開鍵spkSと証明書certSと識別子IDSとを一時鍵受信部205が受信すると、長期公開鍵spkS及び識別子IDSが証明書certSに記載の通りであるかを検証すると共に、証明書certSが所定の認証局によって正しくされたことをその認証局の公開鍵を用いて検証する(ステップS405)。なお、いずれかの検証に失敗した場合、第1の通信機器20は、認証鍵交換処理を終了する。一方で、いずれの検証にも成功した場合、第1の通信機器20は、次のステップS406を実行する。
When the temporary
第1の通信機器20のセッション鍵生成部206は、鍵要素σ1=e(XS,sskC)、σ2=spkS
x_C、σ3=XS
x_Cを生成した上で、セッション鍵SK=H(σ1,σ2,σ3,IDC,IDS,XC,XS,spkS,certS)を生成する(ステップS406)。なお、xCは、記憶部207に保存されている長期秘密鍵sskCと一時秘密鍵eskCからxC=H2(eskC,sskC)により計算される。
The session
第2の通信機器30のセッション鍵生成部306は、鍵要素σ1=e(Wx_S,H1(IDC))、σ2=XC
ssk_S、σ3=XC
x_Sを生成した上で、セッション鍵SK=H(σ1,σ2,σ3,IDC,IDS,XC,XS,spkS,certS)を生成する(ステップS407)。なお、xSは、記憶部307に保存されている長期秘密鍵sskSと一時秘密鍵eskSからxS=H2(eskS,sskS)により計算される。また、本ステップは、上記のステップS404の終了後にすぐ実行してもよい。
The session
<まとめ>
以上のように、本実施例では、第1の通信機器20と第2の通信機器30はセッション鍵SKを共有することができる。これにより、これ以降、第1の通信機器20と第2の通信機器30は当該セッション鍵SKを用いて暗号化通信を行うことができる。
<Summary>
As described above, in this embodiment, the
このとき、本実施例では、第1の通信機器20と第2の通信機器30の各々でペアリング演算を1回のみ計算すればよい。このため、例えば、非特許文献1に記載されているプロトコルと比較してペアリング演算の回数が削減されるため、効率的な認証鍵交換を実現することができる。
In this embodiment, the
また、本実施例では、第1の通信機器20と第2の通信機器30の各々でG1上のスカラ倍算を3回のみ計算すればよい。これに対して、例えば、非特許文献1に記載されているプロトコルでは、G1上のスカラ倍算を4回(又は5回)、G2上のスカラ倍算を2回計算する必要がある。このため、例えば、非特許文献1に記載されているプロトコルと比較してスカラ倍算の回数が削減されるため、効率的な認証鍵交換を実現することができる。
In addition, in this embodiment, it is sufficient to calculate scalar multiplication on G1 only three times in each of the
なお、本実施例では、鍵要素σ1により第1の通信機器20が認証され、鍵要素σ2により第2の通信機器30が認証される。また、鍵要素σ3により認証鍵交換における必須の安全性(前方秘匿性)が保証される。
In this embodiment, the
[実施例2]
以下、本実施形態の実施例2について説明する。本実施例では、各エンティティは、システム共通のパラメータとして上記のハッシュ関数H1,H2,Hに加えて、以下のハッシュ関数H3も保持しているものとする。
[Example 2]
Hereinafter, a second embodiment of the present invention will be described. In this embodiment, each entity holds the following hash function H3 as a parameter common to the system, in addition to the above hash functions H1 , H2 , and H.
H3:κビットのビット列とデジタル署名の秘密鍵を入力として、Zpの元を出力するハッシュ関数
なお、本実施例では、実施例1との相違点について説明し、実施例1と同様の構成要素についてはその説明を省略するものとする。
H3 : A hash function that takes a κ-bit string and a private key for a digital signature as input, and outputs an element of Zp . Note that in this embodiment, differences from the first embodiment will be described, and descriptions of components similar to those in the first embodiment will be omitted.
<セットアップ処理>
実施例1と同様であるため、その説明を省略する。
<Setup process>
Since this is the same as the first embodiment, the description thereof will be omitted.
<第1の通信機器20の長期秘密鍵生成処理>
実施例1と同様であるため、その説明を省略する。
<Long-term private key generation process of the
Since this is the same as the first embodiment, the description thereof will be omitted.
<第2の通信機器30の長期鍵生成処理>
実施例2における第2の通信機器30の長期鍵生成処理について、図12を参照しながら説明する。
<Long-term key generation process of the
The long-term key generation process of the
第2の通信機器30の長期鍵生成部301は、長期公開鍵spkSと長期秘密鍵sskSの鍵ペア(spkS,sskS)←KeyGen(1κ)を生成する(ステップS501)。なお、長期公開鍵spkSはデジタル署名の公開鍵、長期秘密鍵sskSはデジタル署名の秘密鍵である。
The long-term
次に、第2の通信機器30の証明書発行要求部302は、自身の識別子IDSと長期公開鍵spkSに対する証明書certSの発行を外部の認証局に要求する(ステップS502)。これにより、当該認証局から証明書certSが返信される。
Next, the certificate
そして、第2の通信機器30の長期鍵生成部301は、長期秘密鍵sskSと長期公開鍵spkSと証明書certSとを記憶部307に保存する(ステップS503)。
Then, the long-term
<認証鍵交換処理>
実施例2における認証鍵交換処理について、図13を参照しながら説明する。なお、以下では、第1の通信機器20から第2の通信機器30に対して開始要求を行うものとする。すなわち、第1の通信機器20がイニシエータ、第2の通信機器30がレスポンダであるものとする。また、第1の通信機器20は、第2の通信機器30の通信先情報(例えば、IPアドレスやMACアドレス等)を既に取得しているものとする。
<Authentication key exchange process>
The authentication key exchange process in the second embodiment will be described with reference to Fig. 13. In the following, it is assumed that the
第1の通信機器20の一時鍵生成部203は、一時秘密鍵eskC∈{0,1}κを一様ランダムに生成した上で、xC=H2(eskC,sskC)を計算して一時公開鍵XC=g1
x_Cを生成する(ステップS601)。一時秘密鍵eskCは記憶部207に保存される。
The temporary
次に、第1の通信機器20の一時鍵送信部204は、一時公開鍵XCと自身の識別子IDCを第2の通信機器30に送信する(ステップS602)。
Next, the temporary
第2の通信機器30の一時鍵生成部304は、一時公開鍵XCと識別子IDCを一時鍵受信部303が受信すると、一時秘密鍵eskS∈{0,1}κを一様ランダムに生成した上で、xS=H3(eskS,sskS)を計算して一時公開鍵XS=g1
x_Sを生成する(ステップS603)。一時秘密鍵eskSは記憶部307に保存される。
When the temporary
次に、第2の通信機器30の一時鍵生成部304は、一時公開鍵XSと識別子IDCと識別子IDSとが含まれるメッセージmに対する署名signS←Sign(sskS,m)を生成する(ステップS604)。
Next, the temporary
次に、第2の通信機器30の一時鍵送信部305は、一時公開鍵XSと署名signSと自身の長期公開鍵spkSと証明書certSと自身の識別子IDSとを第1の通信機器20に送信する(ステップS605)。
Next, the temporary
第1の通信機器20のセッション鍵生成部206は、一時公開鍵XSと署名signSと自身の長期公開鍵spkSと証明書certSと自身の識別子IDSとを一時鍵受信部205が受信すると、長期公開鍵spkS及び識別子IDSが証明書certSに記載の通りであるかを検証すると共に、証明書certSが所定の認証局によって正しくされたことをその認証局の公開鍵を用いて検証し、更に1=Ver(spkS,m,signS)が成り立つかを検証する(ステップS606)。なお、いずれかの検証に失敗した場合、第1の通信機器20は、認証鍵交換処理を終了する。一方で、いずれの検証にも成功した場合、第1の通信機器20は、次のステップS607を実行する。
When the temporary
第1の通信機器20のセッション鍵生成部206は、鍵要素σ1=e(XS,sskC)、σ2=XS
x_Cを生成した上で、セッション鍵SK=H(σ1,σ2,IDC,IDS,XC,XS,signS,spkS,certS)を生成する(ステップS607)。なお、xCは、記憶部207に保存されている長期秘密鍵sskCと一時秘密鍵eskCからxC=H2(eskC,sskC)により計算される。
The session
第2の通信機器30のセッション鍵生成部306は、鍵要素σ1=e(Wx_S,H1(IDC))、σ2=XC
x_Sを生成した上で、セッション鍵SK=H(σ1,σ2,IDC,IDS,XC,XS,signS,spkS,certS)を生成する(ステップS608)。なお、xSは、記憶部307に保存されている長期秘密鍵sskSと一時秘密鍵eskSからxS=H3(eskS,sskS)により計算される。また、本ステップは、上記のステップS605の終了後にすぐ実行してもよい。
The session
<まとめ>
以上のように、本実施例では、第1の通信機器20と第2の通信機器30はセッション鍵SKを共有することができる。これにより、これ以降、第1の通信機器20と第2の通信機器30は当該セッション鍵SKを用いて暗号化通信を行うことができる。
<Summary>
As described above, in this embodiment, the
このとき、本実施例では、実施例1と同様に、第1の通信機器20と第2の通信機器30の各々でペアリング演算を1回のみ計算すればよい。このため、例えば、非特許文献1に記載されているプロトコルと比較してペアリング演算の回数が削減されるため、効率的な認証鍵交換を実現することができる。
At this time, in this embodiment, similar to the first embodiment, it is sufficient to calculate the pairing calculation only once in each of the
また、本実施例では、デジタル署名により第2の通信機器30を認証することで、第2の通信機器30を認証するための鍵要素が不要となり、第1の通信機器20と第2の通信機器30の各々でG1上のスカラ倍算を2回のみ計算すればよくなる。このため、実施例1と比較して、更に効率的な認証鍵交換を実現することができる。
In addition, in this embodiment, by authenticating the
なお、本実施例では、鍵要素σ1により第1の通信機器20が認証され、デジタル署名により第2の通信機器30が認証される。また、鍵要素σ2により認証鍵交換における必須の安全性(前方秘匿性)が保証される。
In this embodiment, the
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲の記載から逸脱することなく、種々の変形や変更、既知の技術との組み合わせ等が可能である。 The present invention is not limited to the specifically disclosed embodiments above, and various modifications, changes, and combinations with known technologies are possible without departing from the scope of the claims.
[参考文献]
参考文献1:Vercauteren, F.: Optimal pairings. IEEE Trans. Inf. Theory 56, 455-461 (2010)
[References]
Reference 1: Vercauteren, F.: Optimal pairings. IEEE Trans. Inf. Theory 56, 455-461 (2010)
1 認証鍵交換システム
10 鍵生成装置
11 入力装置
12 表示装置
13 外部I/F
13a 記録媒体
14 通信I/F
15 RAM
16 ROM
17 補助記憶装置
18 プロセッサ
19 バス
20 第1の通信機器
21 外部I/F
21a 記録媒体
22 通信I/F
23 メモリ装置
24 プロセッサ
25 バス
30 第2の通信機器
31 入力装置
32 表示装置
33 外部I/F
33a 記録媒体
34 通信I/F
35 RAM
36 ROM
37 補助記憶装置
38 プロセッサ
39 バス
101 セットアップ処理部
102 長期秘密鍵生成部
103 記憶部
201 長期秘密鍵要求部
202 長期秘密鍵受信部
203 一時鍵生成部
204 一時鍵送信部
205 一時鍵受信部
206 セッション鍵生成部
207 記憶部
301 長期鍵生成部
302 証明書発行要求部
303 一時鍵受信部
304 一時鍵生成部
305 一時鍵送信部
306 セッション鍵生成部
307 記憶部
REFERENCE SIGNS
13a Recording medium 14 Communication I/F
15 RAM
16 ROM
17
21a Recording medium 22 Communication I/F
23
33a Recording medium 34 Communication I/F
35 RAM
36 ROM
37
Claims (5)
前記サーバは、
前記IDベース暗号で用いられる双線形群と、前記IDベース暗号のマスター秘密鍵と、前記マスター秘密鍵に対応するマスター公開鍵とを生成するように構成されているセットアップ部と、
前記第1の機器の識別子を示す第1の識別子に対する第1の長期秘密鍵を生成するように構成されている長期秘密鍵生成部と、を有し、
前記第1の機器は、
第1の一時秘密鍵を生成すると共に、前記第1の一時秘密鍵及び前記第1の長期秘密鍵から第1の一時公開鍵を生成するように構成されている第1の一時鍵生成部と、
前記第1の一時公開鍵と前記第1の識別子とを前記第2の機器に送信するように構成されている第1の一時鍵送信部と、
少なくとも第2の一時公開鍵と前記第2の機器の長期公開鍵と前記第2の機器の識別子を示す第2の識別子とを前記第2の機器から受信すると、前記第1の一時公開鍵と前記第2の一時公開鍵と前記第2の機器の長期公開鍵と前記第1の一時秘密鍵と前記第1の長期秘密鍵と前記第1の識別子と前記第2の識別子からセッション鍵を生成するように構成されている第1のセッション鍵生成部と、を有し、
前記第2の機器は、
第2の長期秘密鍵と、前記第2の長期秘密鍵に対応する前記長期公開鍵とを生成するように構成されている長期鍵生成部と、
第2の一時秘密鍵を生成すると共に、前記第2の一時秘密鍵及び前記第2の長期秘密鍵から前記第2の一時公開鍵を生成するように構成されている第2の一時鍵生成部と、
少なくとも前記第2の一時公開鍵と前記長期公開鍵と前記第2の識別子とを前記第1の機器に送信するように構成されている第2の一時鍵送信部と、
前記第1の一時公開鍵と前記第2の一時公開鍵と前記第2の一時秘密鍵と前記マスター公開鍵と前記第1の識別子と前記第2の識別子から前記セッション鍵を生成するように構成されている第2のセッション鍵生成部と、有し、
前記第1の一時鍵生成部は、
前記双線形群におけるペアリング演算の第一引数側の定義域である巡回群の生成元を底、前記第1の一時秘密鍵と前記第1の長期秘密鍵とを入力とするハッシュ関数H 2 の出力値である第1の値をべき指数とするべき乗を前記第1の一時公開鍵として生成するように構成されており、
前記第1のセッション鍵生成部は、
前記長期公開鍵に対する証明書を更に受信すると共に、前記証明書が所定の認証局で発行されたものであるか否かを検証し、
前記検証に成功した場合、前記第2の一時公開鍵を第一引数、前記第1の長期秘密鍵を第二引数とするペアリング演算の演算結果を第1の鍵要素として計算し、
前記長期公開鍵を底、前記第1の値をべき指数とするべき乗を第2の鍵要素として計算し、
前記第2の一時公開鍵を底、前記第1の値をべき指数とするべき乗を第3の鍵要素として計算し、
前記第1の鍵要素と前記第2の鍵要素と前記第3の鍵要素と前記第1の一時公開鍵と前記第2の一時公開鍵と前記第1の識別子と前記第2の識別子と前記長期公開鍵と前記証明書とを入力とするハッシュ関数Hの出力値を前記セッション鍵として生成するように構成されており、
前記第2の一時鍵送信部は、
前記証明書を前記第1の機器に更に送信するように構成されており、
前記第2の一時鍵生成部は、
前記双線形群におけるペアリング演算の第一引数側の定義域である巡回群の生成元を底、前記第2の一時秘密鍵と前記第2の長期秘密鍵とを入力とする前記ハッシュ関数H 2 の出力値である第2の値をべき指数とするべき乗を前記第2の一時公開鍵として生成するように構成されており、
前記第2のセッション鍵生成部は、
前記マスター公開鍵を底、前記第2の値をべき指数とするべき乗を第一引数、前記第1の識別子を入力とするハッシュ関数H 1 の出力値を第二引数とするペアリング演算の演算結果を前記第1の鍵要素として計算し、
前記第1の一時公開鍵を底、前記第2の長期秘密鍵をべき指数とするべき乗を前記第2の鍵要素として計算し、
前記第1の一時公開鍵を底、前記第2の値をべき指数とするべき乗を前記第3の鍵要素として計算し、
前記第1の鍵要素と前記第2の鍵要素と前記第3の鍵要素と前記第1の一時公開鍵と前記第2の一時公開鍵と前記第1の識別子と前記第2の識別子と前記長期公開鍵と前記証明書とを入力とする前記ハッシュ関数Hの出力値を前記セッション鍵として生成するように構成されている、
認証鍵交換システム。 An authentication key exchange system including a server that functions as a KGC for ID-based encryption, a first device that performs authentication based on the ID-based encryption, and a second device that performs authentication based on a digital signature, and performing authentication key exchange between the first device and the second device,
The server,
a set-up unit configured to generate a bilinear group used in the identity-based encryption, a master private key for the identity-based encryption, and a master public key corresponding to the master private key;
a long-term private key generation unit configured to generate a first long-term private key for a first identifier indicating an identifier of the first device,
The first device includes:
a first temporary key generator configured to generate a first temporary private key and to generate a first temporary public key from the first temporary private key and the first long-term private key;
a first temporary key sending unit configured to send the first temporary public key and the first identifier to the second device;
a first session key generation unit configured to generate a session key from the first temporary public key, the second temporary public key, the long-term public key of the second device, the first temporary private key, the first long-term private key, the first identifier, and the second identifier when receiving at least a second temporary public key, a long-term public key of the second device, and a second identifier indicating an identifier of the second device from the second device,
The second device includes:
a long-term key generator configured to generate a second long-term private key and the long-term public key corresponding to the second long-term private key;
a second temporary key generator configured to generate a second temporary private key and to generate the second temporary public key from the second temporary private key and the second long-term private key;
a second temporary key sender configured to send at least the second temporary public key, the long-term public key, and the second identifier to the first device;
a second session key generator configured to generate the session key from the first temporary public key, the second temporary public key, the second temporary private key, the master public key, the first identifier, and the second identifier ;
The first temporary key generation unit
a generator of a cyclic group that is a domain of a first argument side of a pairing operation in the bilinear group is used as a base, and a first value that is an output value of a hash function H2 having the first temporary private key and the first long-term private key as input is used as an exponent, and
The first session key generation unit
Further receiving a certificate for the long-term public key, and verifying whether the certificate was issued by a predetermined certification authority;
If the verification is successful, a pairing operation is performed using the second temporary public key as a first argument and the first long-term private key as a second argument, and the result is used as a first key element;
Calculate a second key element by raising the long-term public key to a power of the first value;
Calculating a third key element by raising the second temporary public key to a power of the first value;
is configured to generate, as the session key, an output value of a hash function H having as input the first key element, the second key element, the third key element, the first temporary public key, the second temporary public key, the first identifier, the second identifier, the long-term public key, and the certificate;
The second temporary key transmission unit
further configured to transmit the certificate to the first device;
The second temporary key generation unit
a generator of a cyclic group that is a domain of a first argument side of a pairing operation in the bilinear group is used as a base, and a second value that is an output value of the hash function H2 having the second temporary private key and the second long-term private key as input is used as an exponent, and
The second session key generation unit
calculating , as the first key element, a result of a pairing operation using the master public key as a base, a power of the second value as a first argument, and an output value of a hash function H1 having the first identifier as an input as a second argument;
Calculating the second key element to a power of the first temporary public key as a base and the second long-term private key as an exponent;
Calculating the third key element by raising the first temporary public key to a power of the second value;
and generating, as the session key, an output value of the hash function H using the first key element, the second key element, the third key element, the first temporary public key, the second temporary public key, the first identifier, the second identifier, the long-term public key, and the certificate as inputs.
Authenticated Key Exchange System.
前記サーバは、
前記IDベース暗号で用いられる双線形群と、前記IDベース暗号のマスター秘密鍵と、前記マスター秘密鍵に対応するマスター公開鍵とを生成するように構成されているセットアップ部と、
前記第1の機器の識別子を示す第1の識別子に対する第1の長期秘密鍵を生成するように構成されている長期秘密鍵生成部と、を有し、
前記第1の機器は、
第1の一時秘密鍵を生成すると共に、前記第1の一時秘密鍵及び前記第1の長期秘密鍵から第1の一時公開鍵を生成するように構成されている第1の一時鍵生成部と、
前記第1の一時公開鍵と前記第1の識別子とを前記第2の機器に送信するように構成されている第1の一時鍵送信部と、
少なくとも第2の一時公開鍵と前記第2の機器の長期公開鍵と前記第2の機器の識別子を示す第2の識別子とを前記第2の機器から受信すると、前記第1の一時公開鍵と前記第2の一時公開鍵と前記第2の機器の長期公開鍵と前記第1の一時秘密鍵と前記第1の長期秘密鍵と前記第1の識別子と前記第2の識別子からセッション鍵を生成するように構成されている第1のセッション鍵生成部と、を有し、
前記第2の機器は、
第2の長期秘密鍵と、前記第2の長期秘密鍵に対応する前記長期公開鍵とを生成するように構成されている長期鍵生成部と、
第2の一時秘密鍵を生成すると共に、前記第2の一時秘密鍵及び前記第2の長期秘密鍵から前記第2の一時公開鍵を生成するように構成されている第2の一時鍵生成部と、
少なくとも前記第2の一時公開鍵と前記長期公開鍵と前記第2の識別子とを前記第1の機器に送信するように構成されている第2の一時鍵送信部と、
前記第1の一時公開鍵と前記第2の一時公開鍵と前記第2の一時秘密鍵と前記マスター公開鍵と前記第1の識別子と前記第2の識別子から前記セッション鍵を生成するように構成されている第2のセッション鍵生成部と、有し、
前記第1の一時鍵生成部は、
前記双線形群におけるペアリング演算の第一引数側の定義域である巡回群の生成元を底、前記第1の一時秘密鍵と前記第1の長期秘密鍵とを入力とするハッシュ関数H2の出力値である第1の値をべき指数とするべき乗を前記第1の一時公開鍵として生成するように構成されており、
前記第1のセッション鍵生成部は、
前記長期公開鍵に対する証明書と前記第2の機器の署名とを更に受信すると共に、前記証明書が所定の認証局で発行されたものであるか否かの検証を示す第1の検証と前記署名の検証を示す第2の検証とを行い、
前記第1の検証と前記第2の検証に成功した場合、前記第2の一時公開鍵を第一引数、前記第1の長期秘密鍵を第二引数とするペアリング演算の演算結果を第1の鍵要素として計算し、
前記第2の一時公開鍵を底、前記第1の値をべき指数とするべき乗を第2の鍵要素として計算し、
前記第1の鍵要素と前記第2の鍵要素と前記第1の一時公開鍵と前記第2の一時公開鍵と前記第1の識別子と前記第2の識別子と前記長期公開鍵と前記証明書と前記署名とを入力とするハッシュ関数Hの出力値を前記セッション鍵として生成するように構成されており、
前記第2の一時鍵送信部は、
前記証明書と前記署名を前記第1の機器に更に送信するように構成されており、
前記第2の一時鍵生成部は、
前記双線形群におけるペアリング演算の第一引数側の定義域である巡回群の生成元を底、前記第2の一時秘密鍵と前記第2の長期秘密鍵とを入力とするハッシュ関数H3の出力値である第2の値をべき指数とするべき乗を前記第2の一時公開鍵として生成するように構成されており、
前記第2のセッション鍵生成部は、
前記マスター公開鍵を底、前記第2の値をべき指数とするべき乗を第一引数、前記第1の識別子を入力とするハッシュ関数H1の出力値を第二引数とするペアリング演算の演算結果を前記第1の鍵要素として計算し、
前記第1の一時公開鍵を底、前記第2の値をべき指数とするべき乗を前記第2の鍵要素として計算し、
前記第1の鍵要素と前記第2の鍵要素と前記第1の一時公開鍵と前記第2の一時公開鍵と前記第1の識別子と前記第2の識別子と前記長期公開鍵と前記証明書と前記署名とを入力とする前記ハッシュ関数Hの出力値を前記セッション鍵として生成するように構成されている、
認証鍵交換システム。 An authentication key exchange system including a server that functions as a KGC for ID-based encryption, a first device that performs authentication based on the ID-based encryption, and a second device that performs authentication based on a digital signature, and performing authentication key exchange between the first device and the second device,
The server,
a set-up unit configured to generate a bilinear group used in the identity-based encryption, a master private key for the identity-based encryption, and a master public key corresponding to the master private key;
a long-term private key generation unit configured to generate a first long-term private key for a first identifier indicating an identifier of the first device,
The first device includes:
a first temporary key generator configured to generate a first temporary private key and to generate a first temporary public key from the first temporary private key and the first long-term private key;
a first temporary key sending unit configured to send the first temporary public key and the first identifier to the second device;
a first session key generation unit configured to generate a session key from the first temporary public key, the second temporary public key, the long-term public key of the second device, the first temporary private key, the first long-term private key, the first identifier, and the second identifier when receiving at least a second temporary public key, a long-term public key of the second device, and a second identifier indicating an identifier of the second device from the second device,
The second device includes:
a long-term key generator configured to generate a second long-term private key and the long-term public key corresponding to the second long-term private key;
a second temporary key generator configured to generate a second temporary private key and to generate the second temporary public key from the second temporary private key and the second long-term private key;
a second temporary key sender configured to send at least the second temporary public key, the long-term public key, and the second identifier to the first device;
a second session key generator configured to generate the session key from the first temporary public key, the second temporary public key, the second temporary private key, the master public key, the first identifier, and the second identifier;
The first temporary key generation unit
a generator of a cyclic group that is a domain of a first argument side of a pairing operation in the bilinear group is used as a base, and a first value that is an output value of a hash function H2 having the first temporary private key and the first long-term private key as input is used as an exponent, and
The first session key generation unit
Further receiving a certificate for the long-term public key and a signature of the second device, and performing a first verification indicating whether or not the certificate has been issued by a predetermined certificate authority and a second verification indicating verification of the signature;
If the first verification and the second verification are successful, a pairing operation is performed with the second temporary public key as a first argument and the first long-term private key as a second argument, and a result of the pairing operation is calculated as a first key element;
Calculating a second key element by raising the second temporary public key to a power of the first value;
is configured to generate, as the session key, an output value of a hash function H having as input the first key element, the second key element, the first temporary public key, the second temporary public key, the first identifier, the second identifier, the long-term public key, the certificate, and the signature;
The second temporary key transmission unit
further configured to transmit the certificate and the signature to the first device;
The second temporary key generation unit
a generator of a cyclic group that is a domain of a first argument side of a pairing operation in the bilinear group is used as a base, and a second value that is an output value of a hash function H3 having the second temporary private key and the second long-term private key as input is used as an exponent, and
The second session key generation unit
calculating, as the first key element, a result of a pairing operation using the master public key as a base, a power of the second value as a first argument, and an output value of a hash function H1 having the first identifier as an input as a second argument;
Calculating the second key element to a power of the first temporary public key and the second value as an exponent;
and configured to generate, as the session key, an output value of the hash function H using the first key element, the second key element, the first temporary public key, the second temporary public key, the first identifier, the second identifier, the long-term public key, the certificate, and the signature as inputs.
Authenticated Key Exchange System.
前記サーバが、
前記IDベース暗号で用いられる双線形群と、前記IDベース暗号のマスター秘密鍵と、前記マスター秘密鍵に対応するマスター公開鍵とを生成するセットアップ手順と、
前記第1の機器の識別子を示す第1の識別子に対する第1の長期秘密鍵を生成する長期秘密鍵生成手順と、を実行し、
前記第1の機器が、
第1の一時秘密鍵を生成すると共に、前記第1の一時秘密鍵及び前記第1の長期秘密鍵から第1の一時公開鍵を生成する第1の一時鍵生成手順と、
前記第1の一時公開鍵と前記第1の識別子とを前記第2の機器に送信する第1の一時鍵送信手順と、
少なくとも第2の一時公開鍵と前記第2の機器の長期公開鍵と前記第2の機器の識別子を示す第2の識別子とを前記第2の機器から受信すると、前記第1の一時公開鍵と前記第2の一時公開鍵と前記第2の機器の長期公開鍵と前記第1の一時秘密鍵と前記第1の長期秘密鍵と前記第1の識別子と前記第2の識別子からセッション鍵を生成する第1のセッション鍵生成手順と、を実行し、
前記第2の機器が、
第2の長期秘密鍵と、前記第2の長期秘密鍵に対応する前記長期公開鍵とを生成する長期鍵生成手順と、
第2の一時秘密鍵を生成すると共に、前記第2の一時秘密鍵及び前記第2の長期秘密鍵から前記第2の一時公開鍵を生成する第2の一時鍵生成手順と、
少なくとも前記第2の一時公開鍵と前記長期公開鍵と前記第2の識別子とを前記第1の機器に送信する第2の一時鍵送信手順と、
前記第1の一時公開鍵と前記第2の一時公開鍵と前記第2の一時秘密鍵と前記マスター公開鍵と前記第1の識別子と前記第2の識別子から前記セッション鍵を生成する第2のセッション鍵生成手順と、を実行し、
前記第1の一時鍵生成手順は、
前記双線形群におけるペアリング演算の第一引数側の定義域である巡回群の生成元を底、前記第1の一時秘密鍵と前記第1の長期秘密鍵とを入力とするハッシュ関数H 2 の出力値である第1の値をべき指数とするべき乗を前記第1の一時公開鍵として生成し、
前記第1のセッション鍵生成手順は、
前記長期公開鍵に対する証明書を更に受信すると共に、前記証明書が所定の認証局で発行されたものであるか否かを検証し、
前記検証に成功した場合、前記第2の一時公開鍵を第一引数、前記第1の長期秘密鍵を第二引数とするペアリング演算の演算結果を第1の鍵要素として計算し、
前記長期公開鍵を底、前記第1の値をべき指数とするべき乗を第2の鍵要素として計算し、
前記第2の一時公開鍵を底、前記第1の値をべき指数とするべき乗を第3の鍵要素として計算し、
前記第1の鍵要素と前記第2の鍵要素と前記第3の鍵要素と前記第1の一時公開鍵と前記第2の一時公開鍵と前記第1の識別子と前記第2の識別子と前記長期公開鍵と前記証明書とを入力とするハッシュ関数Hの出力値を前記セッション鍵として生成し、
前記第2の一時鍵送信手順は、
前記証明書を前記第1の機器に更に送信し、
前記第2の一時鍵生成手順は、
前記双線形群におけるペアリング演算の第一引数側の定義域である巡回群の生成元を底、前記第2の一時秘密鍵と前記第2の長期秘密鍵とを入力とする前記ハッシュ関数H 2 の出力値である第2の値をべき指数とするべき乗を前記第2の一時公開鍵として生成し、
前記第2のセッション鍵生成手順は、
前記マスター公開鍵を底、前記第2の値をべき指数とするべき乗を第一引数、前記第1の識別子を入力とするハッシュ関数H 1 の出力値を第二引数とするペアリング演算の演算結果を前記第1の鍵要素として計算し、
前記第1の一時公開鍵を底、前記第2の長期秘密鍵をべき指数とするべき乗を前記第2の鍵要素として計算し、
前記第1の一時公開鍵を底、前記第2の値をべき指数とするべき乗を前記第3の鍵要素として計算し、
前記第1の鍵要素と前記第2の鍵要素と前記第3の鍵要素と前記第1の一時公開鍵と前記第2の一時公開鍵と前記第1の識別子と前記第2の識別子と前記長期公開鍵と前記証明書とを入力とする前記ハッシュ関数Hの出力値を前記セッション鍵として生成する、
方法。 A method for use in an authentication key exchange system including a server functioning as a KGC for ID-based encryption, a first device that performs authentication based on the ID-based encryption, and a second device that performs authentication based on a digital signature, the system performing authentication key exchange between the first device and the second device, comprising:
The server,
a setup procedure for generating a bilinear group for use in the identity-based encryption, a master private key for the identity-based encryption, and a master public key corresponding to the master private key;
a long-term private key generation step for generating a first long-term private key for a first identifier indicating an identifier of the first device;
The first device comprises:
a first temporary key generation step of generating a first temporary private key and generating a first temporary public key from the first temporary private key and the first long-term private key;
a first temporary key transmission step of transmitting the first temporary public key and the first identifier to the second device;
receiving at least a second temporary public key, a long-term public key of the second device, and a second identifier indicating an identifier of the second device from the second device, executing a first session key generation procedure for generating a session key from the first temporary public key, the second temporary public key, the long-term public key of the second device, the first temporary private key, the first long-term private key, the first identifier, and the second identifier;
The second device comprises:
a long-term key generation step of generating a second long-term private key and the long-term public key corresponding to the second long-term private key;
a second temporary key generation step of generating a second temporary private key and generating the second temporary public key from the second temporary private key and the second long-term private key;
a second temporary key transmission procedure for transmitting at least the second temporary public key, the long-term public key, and the second identifier to the first device;
a second session key generation procedure for generating the session key from the first temporary public key, the second temporary public key, the second temporary private key, the master public key, the first identifier , and the second identifier ;
The first temporary key generation procedure includes:
generate, as the first temporary public key, a power of a first value that is an output value of a hash function H2 that has a base that is a generator of a cyclic group that is a domain of a first argument side of a pairing operation in the bilinear group and an input that is the first temporary private key and the first long-term private key ;
The first session key generation procedure includes:
Further receiving a certificate for the long-term public key, and verifying whether the certificate was issued by a predetermined certification authority;
If the verification is successful, a pairing operation is performed using the second temporary public key as a first argument and the first long-term private key as a second argument, and the result is used as a first key element;
Calculate a second key element by raising the long-term public key to a power of the first value;
Calculating a third key element by raising the second temporary public key to a power of the first value;
generating, as the session key, an output value of a hash function H having as input the first key element, the second key element, the third key element, the first temporary public key, the second temporary public key, the first identifier, the second identifier, the long-term public key, and the certificate;
The second temporary key transmission procedure includes:
further transmitting the certificate to the first device;
The second temporary key generation procedure includes:
generate, as the second temporary public key, a power of a second value that is an output value of the hash function H2 having as input the second temporary private key and the second long-term private key and a generator of a cyclic group that is a domain of a first argument side of a pairing operation in the bilinear group as a base and an exponent;
The second session key generation procedure includes:
calculating , as the first key element, a result of a pairing operation using the master public key as a base, a power of the second value as a first argument, and an output value of a hash function H1 having the first identifier as an input as a second argument;
Calculating the second key element to a power of the first temporary public key as a base and the second long-term private key as an exponent;
Calculating the third key element by raising the first temporary public key to a power of the second value;
generating, as the session key, an output value of the hash function H using as input the first key element, the second key element, the third key element, the first temporary public key, the second temporary public key, the first identifier, the second identifier, the long-term public key, and the certificate;
method.
前記サーバが、The server,
前記IDベース暗号で用いられる双線形群と、前記IDベース暗号のマスター秘密鍵と、前記マスター秘密鍵に対応するマスター公開鍵とを生成するセットアップ手順と、a setup procedure for generating a bilinear group for use in the identity-based encryption, a master private key for the identity-based encryption, and a master public key corresponding to the master private key;
前記第1の機器の識別子を示す第1の識別子に対する第1の長期秘密鍵を生成する長期秘密鍵生成手順と、を実行し、a long-term private key generation step for generating a first long-term private key for a first identifier indicating an identifier of the first device;
前記第1の機器が、The first device comprises:
第1の一時秘密鍵を生成すると共に、前記第1の一時秘密鍵及び前記第1の長期秘密鍵から第1の一時公開鍵を生成する第1の一時鍵生成手順と、a first temporary key generation step of generating a first temporary private key and generating a first temporary public key from the first temporary private key and the first long-term private key;
前記第1の一時公開鍵と前記第1の識別子とを前記第2の機器に送信する第1の一時鍵送信手順と、a first temporary key transmission step of transmitting the first temporary public key and the first identifier to the second device;
少なくとも第2の一時公開鍵と前記第2の機器の長期公開鍵と前記第2の機器の識別子を示す第2の識別子とを前記第2の機器から受信すると、前記第1の一時公開鍵と前記第2の一時公開鍵と前記第2の機器の長期公開鍵と前記第1の一時秘密鍵と前記第1の長期秘密鍵と前記第1の識別子と前記第2の識別子からセッション鍵を生成する第1のセッション鍵生成手順と、を実行し、receiving at least a second temporary public key, a long-term public key of the second device, and a second identifier indicating an identifier of the second device from the second device, executing a first session key generation procedure for generating a session key from the first temporary public key, the second temporary public key, the long-term public key of the second device, the first temporary private key, the first long-term private key, the first identifier, and the second identifier;
前記第2の機器が、The second device comprises:
第2の長期秘密鍵と、前記第2の長期秘密鍵に対応する前記長期公開鍵とを生成する長期鍵生成手順と、a long-term key generation step of generating a second long-term private key and the long-term public key corresponding to the second long-term private key;
第2の一時秘密鍵を生成すると共に、前記第2の一時秘密鍵及び前記第2の長期秘密鍵から前記第2の一時公開鍵を生成する第2の一時鍵生成手順と、a second temporary key generation step of generating a second temporary private key and generating the second temporary public key from the second temporary private key and the second long-term private key;
少なくとも前記第2の一時公開鍵と前記長期公開鍵と前記第2の識別子とを前記第1の機器に送信する第2の一時鍵送信手順と、a second temporary key transmission procedure for transmitting at least the second temporary public key, the long-term public key, and the second identifier to the first device;
前記第1の一時公開鍵と前記第2の一時公開鍵と前記第2の一時秘密鍵と前記マスター公開鍵と前記第1の識別子と前記第2の識別子から前記セッション鍵を生成する第2のセッション鍵生成手順と、を実行し、a second session key generation procedure for generating the session key from the first temporary public key, the second temporary public key, the second temporary private key, the master public key, the first identifier, and the second identifier;
前記第1の一時鍵生成手順は、The first temporary key generation procedure includes:
前記双線形群におけるペアリング演算の第一引数側の定義域である巡回群の生成元を底、前記第1の一時秘密鍵と前記第1の長期秘密鍵とを入力とするハッシュ関数HA hash function H, which has a base that is a generator of a cyclic group that is a domain of the first argument side of the pairing operation in the bilinear group, and has inputs of the first temporary private key and the first long-term private key. 22 の出力値である第1の値をべき指数とするべき乗を前記第1の一時公開鍵として生成し、Generate a power of the first value, which is an output value of
前記第1のセッション鍵生成手順は、The first session key generation procedure includes:
前記長期公開鍵に対する証明書と前記第2の機器の署名とを更に受信すると共に、前記証明書が所定の認証局で発行されたものであるか否かの検証を示す第1の検証と前記署名の検証を示す第2の検証とを行い、Further receiving a certificate for the long-term public key and a signature of the second device, and performing a first verification indicating whether or not the certificate has been issued by a predetermined certificate authority and a second verification indicating verification of the signature;
前記第1の検証と前記第2の検証に成功した場合、前記第2の一時公開鍵を第一引数、前記第1の長期秘密鍵を第二引数とするペアリング演算の演算結果を第1の鍵要素として計算し、If the first verification and the second verification are successful, a pairing operation is performed with the second temporary public key as a first argument and the first long-term private key as a second argument, and a result of the pairing operation is calculated as a first key element;
前記第2の一時公開鍵を底、前記第1の値をべき指数とするべき乗を第2の鍵要素として計算し、Calculating a second key element by raising the second temporary public key to a power of the first value;
前記第1の鍵要素と前記第2の鍵要素と前記第1の一時公開鍵と前記第2の一時公開鍵と前記第1の識別子と前記第2の識別子と前記長期公開鍵と前記証明書と前記署名とを入力とするハッシュ関数Hの出力値を前記セッション鍵として生成し、generating, as the session key, an output value of a hash function H having as input the first key element, the second key element, the first temporary public key, the second temporary public key, the first identifier, the second identifier, the long-term public key, the certificate, and the signature;
前記第2の一時鍵送信手順は、The second temporary key transmission procedure includes:
前記証明書と前記署名を前記第1の機器に更に送信し、further transmitting the certificate and the signature to the first device;
前記第2の一時鍵生成手順は、The second temporary key generation procedure includes:
前記双線形群におけるペアリング演算の第一引数側の定義域である巡回群の生成元を底、前記第2の一時秘密鍵と前記第2の長期秘密鍵とを入力とするハッシュ関数HA hash function H, which has a base that is a generator of a cyclic group that is a domain of the first argument side of the pairing operation in the bilinear group, and inputs the second temporary private key and the second long-term private key. 33 の出力値である第2の値をべき指数とするべき乗を前記第2の一時公開鍵として生成し、Generate a second temporary public key by exponentiating the second value, which is the output value of
前記第2のセッション鍵生成手順は、The second session key generation procedure includes:
前記マスター公開鍵を底、前記第2の値をべき指数とするべき乗を第一引数、前記第1の識別子を入力とするハッシュ関数HA hash function H with the master public key as a base, the second value as a power as a first argument, and the first identifier as an input. 11 の出力値を第二引数とするペアリング演算の演算結果を前記第1の鍵要素として計算し、A pairing operation result having the output value of the second argument is calculated as the first key element,
前記第1の一時公開鍵を底、前記第2の値をべき指数とするべき乗を前記第2の鍵要素として計算し、Calculating the second key element to a power of the first temporary public key and the second value as an exponent;
前記第1の鍵要素と前記第2の鍵要素と前記第1の一時公開鍵と前記第2の一時公開鍵と前記第1の識別子と前記第2の識別子と前記長期公開鍵と前記証明書と前記署名とを入力とする前記ハッシュ関数Hの出力値を前記セッション鍵として生成する、generating, as the session key, an output value of the hash function H using as input the first key element, the second key element, the first temporary public key, the second temporary public key, the first identifier, the second identifier, the long-term public key, the certificate, and the signature;
方法。method.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021201659A JP7574791B2 (en) | 2021-12-13 | 2021-12-13 | Authentication key exchange system, method, and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021201659A JP7574791B2 (en) | 2021-12-13 | 2021-12-13 | Authentication key exchange system, method, and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2023087337A JP2023087337A (en) | 2023-06-23 |
| JP7574791B2 true JP7574791B2 (en) | 2024-10-29 |
Family
ID=86851154
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2021201659A Active JP7574791B2 (en) | 2021-12-13 | 2021-12-13 | Authentication key exchange system, method, and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7574791B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2026028278A1 (en) * | 2024-07-30 | 2026-02-05 | Ntt株式会社 | Authentication device and method |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009302861A (en) | 2008-06-12 | 2009-12-24 | Ntt Data Corp | System of transferring authority for decoding encrypted text |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7685414B1 (en) * | 2004-08-27 | 2010-03-23 | Voltage Security, Inc. | Subscription management service for secure messaging system |
-
2021
- 2021-12-13 JP JP2021201659A patent/JP7574791B2/en active Active
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009302861A (en) | 2008-06-12 | 2009-12-24 | Ntt Data Corp | System of transferring authority for decoding encrypted text |
Non-Patent Citations (1)
| Title |
|---|
| Berkant Ustaoglu,Integrating identity-based and certificate-based authenticated key exchange protocols,International Journal of Information Security,2011年05月28日,Vol. 10,pp. 201-212,インターネット<URL: https://link.springer.com/article/10.1007/s10207-011-0136-3> |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2023087337A (en) | 2023-06-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN111147472B (en) | A lightweight authentication method and system for smart meters in an edge computing scenario | |
| CN108667626B (en) | Secure two-party collaboration SM2 signature method | |
| CN110268676B (en) | Private key calculation system and method for identity-based self-authentication signature scheme | |
| CN109818744B (en) | Shared secret key generation method and device, computer equipment and storage medium | |
| CN108418686B (en) | A multi-distributed SM9 decryption method and medium and key generation method and medium | |
| CN102318258B (en) | Identity-Based Authenticated Key Agreement Protocol | |
| US9313033B2 (en) | Derived certificate based on changing identity | |
| CN111953705A (en) | Internet of things identity authentication method, device and power Internet of things identity authentication system | |
| CN111835752A (en) | Lightweight authentication method and gateway based on device identity | |
| CN104270249B (en) | It is a kind of from the label decryption method without certificate environment to identity-based environment | |
| US20090307492A1 (en) | Method,system and network device for bidirectional authentication | |
| CN114268439B (en) | Identity-based authentication key negotiation method based on grid | |
| Al-Riyami | Cryptographic schemes based on elliptic curve pairings | |
| WO2017202161A1 (en) | Certificateless two-party authenticated key agreement method, device, and data storage medium | |
| CN103563288B (en) | Single round key exchange protocol based on password | |
| WO2008113279A1 (en) | A method, system and communication device for generating session cryptographic | |
| CN106341232A (en) | Anonymous entity identification method based on password | |
| CN107659395A (en) | The distributed authentication method and system of identity-based under a kind of environment of multi-server | |
| WO2023174038A9 (en) | Data transmission method and related device | |
| CN117221883B (en) | Security authentication method and related equipment for 5G mobile edge computing | |
| CN112533213B (en) | A key agreement method, device, terminal and storage medium | |
| CN111953479A (en) | Method and device for data processing | |
| US11902428B2 (en) | Key exchange system, communication apparatus, key exchange method and program | |
| JP7574791B2 (en) | Authentication key exchange system, method, and program | |
| WO2016114259A1 (en) | Key-exchange method, key-exchange system, key device, terminal device, and program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240129 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240619 |
|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20240701 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240702 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240902 |
|
| 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: 20240917 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240930 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7574791 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |