JPWO2007007836A1 - 認証システム、認証方法、証明装置、検証装置、それらのプログラム及び記録媒体 - Google Patents
認証システム、認証方法、証明装置、検証装置、それらのプログラム及び記録媒体 Download PDFInfo
- Publication number
- JPWO2007007836A1 JPWO2007007836A1 JP2007507586A JP2007507586A JPWO2007007836A1 JP WO2007007836 A1 JPWO2007007836 A1 JP WO2007007836A1 JP 2007507586 A JP2007507586 A JP 2007507586A JP 2007507586 A JP2007507586 A JP 2007507586A JP WO2007007836 A1 JPWO2007007836 A1 JP WO2007007836A1
- Authority
- JP
- Japan
- Prior art keywords
- information
- verification
- authentication
- authentication information
- power
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3218—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
- H04L9/3221—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs interactive zero-knowledge proofs
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
Description
従来におけるメッセージ認証技術の概要を説明する。証明装置と検証装置は予め秘密鍵kを共有しておく。次に証明装置はその保持する情報sに対して一定の長さを有するメッセージ認証子M(s,k)を計算し、検証装置に送付する。検証装置は情報sのコピーを保持していて、証明装置から送付されたメッセージ認証子M(s,k)の正当性を検証する。
Tetsu Iwata, Kaoru Kurosawa, "OMAC: One-Key CBC MAC", LNCS 2887(2003),pp129-153,Springer-Verlag.
そのために、まず、検証装置は、対比情報の内容に依存する内容を有し、対比情報の情報量に依存しない情報量を有する検証情報と、任意の情報である第1任意情報と、を第1記憶部に記憶させる。また、検証装置は、証明装置に認証情報を生成させるための認証情報生成因子を、第1記憶部に記憶された第1任意情報を用いて生成し、生成した認証情報生成因子を証明装置に送信する。
検証装置は、証明装置が送信した認証情報を受信し、検証装置の判定部が、その認証情報と、第1記憶部に記憶された検証情報及び第1任意情報との間に、所定の関係が成立するか否かを判定する。これにより、検証装置は、証明装置に格納された保持情報が、対比情報と同一であることを検証する。
また、本発明において好ましくは、検証情報は、可換な半群をなす演算が定義された有限集合の元を底とし、対比情報を冪数として、当該半群で定義された冪乗を行った演算結果であり、認証情報生成因子は、当該有限集合の元を底とし、第1任意情報を冪数として、半群で定義された冪乗を行った演算結果であり、認証情報は、認証情報生成因子を底とし、保持情報を冪数として、半群で定義された冪乗を行った演算結果である。そして、判定部は、検証情報を底とし、第1任意情報を冪数として、半群で定義された冪乗を行った演算結果と、認証情報と、が等しいか否かを判定する。
また、より好ましくは、上記の半群として、当該半群で定義された有限集合の位数の算出が困難なものを用いる。攻撃者が上記の半群で定義された有限集合の位数を算出できた場合、この攻撃者は、算出した位数を、検証に合格する認証情報を不正に作成するための情報として利用することができるからである。すなわち、認証情報生成因子を底とし、保持情報を冪数として、半群で定義された冪乗を行った演算結果と、認証情報生成因子を底とし、当該保持情報+任意の整数×位数を冪数として、当該半群で定義された冪乗を行った演算結果とは等しい(衝突:collision)。これは、位数を知った攻撃者は、保持情報自体を見つけなくても、保持情報+任意の整数×位数の何れかを見つけることにより、検証装置での検証に合格する認証情報を生成できること、を知ることを意味する。この情報は、攻撃者が検証に合格する認証情報を効率的に探索するための情報となる。よって、上記位数が攻撃者に知られることにより、本発明の安全性は低下する。そのため、上記の半群は、位数の算出が困難なものであることが望ましい。
また、本発明において定数Nが、3つ以上の素数の積からなる合成数であってもよい。この場合、たとえ攻撃者が定数Nを素因数分解できたとしても、この攻撃者は、当該定数Nを法とした剰余環の乗法に関しての位数を容易に算出できないからである。なお、演算効率の面からは、素数であることが判定可能な数を除く自然数であって、素因数分解困難な数をN(但し、Nが合成数の場合、N=p・qであり、p,qは十分大きな素数)とすることが望ましい。
この場合、認証情報は、証明装置に記憶された保持情報を複数に分割した第2分割情報を全て用いて生成される。よって、保持情報そのものを用いて認証情報を生成する場合に比べ、多様な演算方法を採ることが可能となる。そのため、採用する演算方法によっては、認証情報の生成を高速で行うことができる。
また、本発明において好ましくは、認証情報は、各上記第2分割情報の保持情報内のビット位置に対応する事前準備困難な情報と、第2分割情報の全てとを用いて算出した値であって保持情報よりも情報量が少ないものを冪数とし、認証情報生成因子を底として、半群で定義された冪乗を行った演算結果である。
また、本発明において、好ましくは、検証情報は、定数Nを法とし、N未満の値gを底とし、第1分割情報si’を冪数とした冪乗剰余演算結果Ci(s’)であり、認証情報生成因子は、Nを法とし、値gを底とし、第1任意情報rを冪数とした冪乗剰余演算結果Rであり、認証情報は、第2分割情報siに対応するi及び検証装置から送信される何らかの情報に値が依存する情報Hと、第2分割情報siと、の積を全てのiについて合計した値を冪数とし、認証情報生成因子Rを底とし、Nを法とした冪乗剰余演算結果R(s)である。そして、判定部は、全てのiに対応する各検証情報Ci(s’)をそれらにそれぞれ対応する情報Hによって冪乗した各値の積を底とし、第1任意情報rを冪数とし、Nを法とした冪乗剰余演算結果と、認証情報R(s)と、が等しいか否かを判定する。なお、iは、第1分割情報si’の対比情報内におけるビット位置、及び、第2分割情報siの保持情報内におけるビット位置を示すインデックスである。
ここで、より好ましくは、情報Hは、第2分割情報siに対応するiと検証装置から送信される何らかの情報とに値が依存する一方向性関数値である。
さらに、本発明では、認証情報生成因子が、検証装置に記憶された第1任意情報を用いて正当に生成されたことを、検証装置が証明装置に、対話証明によって証明してもよい。この場合、検証装置は、証明装置が受信した認証情報生成因子が検証装置に記憶された第1任意情報を用いて生成されたことを、証明装置との対話証明によって証明装置に証明し、証明装置は、認証情報生成因子が、検証装置に記憶された第1任意情報を用いて生成されたことを、検証装置との対話証明によって検証する。そして、証明装置は、認証情報生成因子が、検証装置に記憶された第1任意情報を用いて生成されたことを確認できた場合に、認証情報を検証装置に送信する。
さらにまた、この構成では、対比情報ではなく、第1任意情報を対話証明の対象としているので、検証対象の保持情報のデータ量が大きく、対比情報のデータ量が大きな場合であっても、対話証明に必要な演算コストや通信データ量を低く抑えることができる。
また、この対話証明を含む処理は、好ましくは、以下のように行う。
まず、証明装置が、可換な半群をなす演算が定義された有限集合の元gを底とし、任意の情報である第2任意情報aを冪数として、半群で定義された冪乗を行った演算値Aを生成し、演算値Aを検証装置に送信する。検証装置は、この演算値Aを受信し、有限集合の元gを底とし、第1任意情報rを冪数として、半群で定義された冪乗を行って認証情報生成因子Rを生成する。さらに、検証装置は、演算値Aを底とし、第1任意情報rを冪数として、半群で定義された冪乗を行って演算値Bを生成し、認証情報生成因子Rと演算値Bとを証明装置に送信する。証明装置は、認証情報生成因子Rと演算値Bとを受信し、第2受信部が受信した認証情報生成因子Rを底とし、第2任意情報aを冪数として、半群で定義された冪乗を行った演算結果と、演算値Bと、が等しいか否かを判定し、これらが等しかった場合に、認証情報を、検証装置に送信する。
また、このような構成では、正規の検証装置が不正な第1任意情報を生成し、偽りの検証処理のログを生成することをも防止できる。
さらにまた、この構成では、対比情報ではなく、第1任意情報を対話証明の対象としているので、検証対象の保持情報のデータ量が大きく、対比情報のデータ量が大きな場合であっても、対話証明に必要な演算コストや通信データ量を低く抑えることができる。
このような処理を追加することにより、保持情報sは知らないが、Aを決定でき、上記半群においてC(s)=gLAmとなるL,mを知っている攻撃者による不正を防止できる。すなわち、このような処理が実行されない場合、保持情報sも対比情報s’も知らないが、Aを決定でき、C(s’)=gLAm(上記半群で定義された演算)となるL,mを知っている攻撃者の装置は、検証装置から認証情報生成因子Rと演算値Bとを受け取り、RLBm(上記半群で定義された演算)を計算し、これを認証情報であると偽って検証装置に送信することが可能である。ここで、RLBm=grLArm=(gLAm)r=C(s’)を満たすため、このような攻撃者の装置は、自らが保持情報sを保持していると検証装置を誤認させることができる。一方、このような攻撃者は、A=ga(上記半群で定義された演算)となる第2任意情報aを知らない。もし、このような攻撃者が当該第2任意情報aを知っているならば、その攻撃者は、C(s)=gLAm=gL+a・m=gs’を算出できることになり、その攻撃者が保持情報sも対比情報s’も知らないことと矛盾するからである。よって、上述のように、検証装置が受け取った第2任意情報aを用い、A=ga(上記半群で定義された演算)を満たすか否かを判定する処理を追加することによって、このような攻撃者の不正を防止できる。
また、本発明において好ましくは、上記演算値Aは、定数Nを法とし、N未満の値gを底とし、任意の情報である第2任意情報aを冪数とした冪乗剰余演算結果であり、認証情報生成因子Rは、Nを法とし、値gを底とし、第1任意情報rを冪数とした冪乗剰余演算結果であり、演算値Bは、Nを法とし、演算値Aを底とし、第1任意情報rを冪数とした冪乗剰余演算結果である。また、上述した、第2受信部が受信した認証情報生成因子Rを底とし、第2任意情報aを冪数として、半群で定義された冪乗を行った演算結果は、Nを法とし、認証情報生成因子Rを底とし、第2任意情報aを冪数とした冪乗剰余演算結果である。なお、定数Nは、素数であることが判定可能な数を除く自然数であって、素因数分解困難な数であることが望ましい。また、定数Nは、3つ以上の素数の積からなる合成数であってもよい。
また、さらに好ましくは、第2任意情報aは、νを所定の自然数とした場合における、0≦a≦N・2ν−1の範囲から任意に選択される値である。このように第2任意情報aが選択される場合、Nを法とし、値gを底とし、第2任意情報aを冪数とした冪乗剰余演算結果が、Nを法とした剰余環の乗法についての巡回群から任意に選択した値〔∈(Z/NZ)*〕と識別不能な分布を持つことが証明できる。これは、Nを法とし、値gを底とし、第2任意情報aを冪数とした冪乗剰余演算結果から、第2任意情報aを求める困難性と、Nを法とした剰余環の乗法についての巡回群から任意に選択した値の離散対数問題を解く困難性と、が同等であることを示している。すなわち、第2任意情報aが0≦a≦N・2ν−1の範囲から任意に選択される値である限り、上記冪乗剰余演算結果から第2任意情報aを特定することは十分困難である。そして、これよりも上限を広げた範囲から第2任意情報aを選択する構成としても、安全性は向上せず、冪乗演算の演算コストが上昇するだけである。
2 検証装置
3 第三者装置
141 認証情報生成部
142 c^生成部
143 乱数生成部
145 認証判定部
148 A生成部
160 第1判定部
241 検証情報生成部
242 乱数生成部
243 認証情報生成因子生成部
244 判定部
247 W生成部
248 z生成部
249 B生成部
250 対話判定部
260 第2判定部
340 N生成部
341 g生成部
342 検証情報生成部
発明を実施するための最良の形態を、図面を参照しつつ説明する。
[証明装置]
第1実施形態における証明装置について説明する。
図1は、第1実施形態に係わる証明装置(1)のハードウェア構成を例示した構成ブロック図である。
図1に例示するように、証明装置(1)は、キーボードやマウスなどの入力装置が接続可能な入力部(11)、液晶ディスプレイなどの出力装置が接続可能な出力部(12)、証明装置(1)外部に通信可能な通信装置(例えば、通信ケーブル、LANカード、ハブ、ルータ、モデムなど)が接続可能な通信部(13)、CPU(Central Processing Unit)(14)〔キャッシュメモリなどを備えていてもよい。〕、メモリであるRAM(15)、ROM(16)、ハードディスクや光ディスクや半導体メモリなどである外部記憶装置(17)並びにこれらの入力部(11)、出力部(12)、通信部(13)、CPU(14)、RAM(15)、ROM(16)、外部記憶装置(17)間のデータのやり取りが可能なように接続するバス(18)を有している。また必要に応じて、証明装置(1)に、CD−ROM(Compact Disc Read Only Memory)、DVD(Digital Versatile Disc)などの記憶媒体を読み書きできる装置(ドライブ)などを設けるとしてもよい。
より具体的には、証明装置(1)の外部記憶装置(17)〔あるいはROMなど〕には、認証情報を生成するためのプログラムおよびこれらのプログラムの処理において必要となるデータ(情報sなど)などが保存されている。その他、これらのプログラムに基づく処理を制御するための制御プログラムも外部記憶装置(17)等に保存しておく。
証明装置(1)では、外部記憶装置(17)〔あるいはROMなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータがRAM(15)に読み込まれる。CPU(14)は、これらの各プログラムを実行して、各データを処理する。その結果、CPU(14)が所定の機能(認証情報生成部、制御部)を実現する。
第1実施形態における検証装置について説明する。
図2は、第1実施形態に係わる検証装置(2)のハードウェア構成を例示した構成ブロック図である。
図2に例示するように、検証装置(2)は、キーボードやマウスなどの入力装置が接続可能な入力部(21)、液晶ディスプレイなどの出力装置が接続可能な出力部(22)、検証装置(2)外部に通信可能な通信装置(例えば通信ケーブル、LANカード、ハブ、ルータ、モデムなど)が接続可能な通信部(23)、CPU(Central Processing Unit)(24)〔キャッシュメモリなどを備えていてもよい。〕、メモリであるRAM(25)、ROM(26)、ハードディスクや光ディスクや半導体メモリなどである外部記憶装置(27)並びにこれらの入力部(21)、出力部(22)、通信部(23)、CPU(24)、RAM(25)、ROM(26)、外部記憶装置(27)間のデータのやり取りが可能なように接続するバス(28)を有している。また必要に応じて、検証装置(2)に、CD−ROM、DVDなどの記憶媒体を読み書きできる装置(ドライブ)などを設けるとしてもよい。
より具体的には、検証装置(2)の外部記憶装置(27)〔あるいはROMなど〕には、検証情報を生成するためのプログラム、認証情報生成因子を生成するためのプログラム、乱数を生成するためのプログラム、証明装置から受信した情報と検証装置に保持される情報との一致を判定するためのプログラム、およびこれらのプログラムの処理において必要となるデータなどが保存されている。その他、これらのプログラムに基づく処理を制御するための制御プログラムも外部記憶装置(27)等に保存しておく。
第1実施形態の認証システムのネットワーク構成について説明する。
図3は、第1実施形態の認証システムのネットワーク構成を示す図である。
図3に示すように、第1実施形態では、1つの証明装置(1)と、1つの検証装置(2)とが、ネットワーク(5)を介して相互に通信可能に接続されている。もちろん、ネットワーク(5)を介して相互に通信可能に接続される証明装置(1)および検証装置(2)はそれぞれ1つずつに限定されるものではない。複数の証明装置(1)と複数の検証装置(2)とが、ネットワーク(5)を介して相互に通信可能に接続されるとしてもよい。ただ、検証装置(2)は1つであるのが一般的である(つまり、検証装置(2)は1つで十分な場合が多い。)。なお、ネットワーク(5)の構成には特に制限はなく、インターネット、LAN(Local Area Network)、Peer-to-Peer ネットワーク等どのようなものであってもよい。
[認証]
本発明の認証システム・方法の第1実施形態は、基本的な実施形態を示しており、本発明の趣旨を逸脱するものでないならば、種々の実施の形態に拡張可能である。以下、図4〜図7を参照しながら説明する。なお、各装置の機能ブロック図を示す図では、同じ符号が与えられた機能部が示されているが、各別のものを示すものではなく、説明の便宜から各別に示しているに過ぎない。このことは各実施形態における図でも同様である。
さらに、第1実施形態における認証システムにおいて共通のパラメータとして、十分大きい数Nと、N未満の数g(好ましくは、2以上N未満の数g)が、予め、証明装置(1)の外部記憶装置(17)および検証装置(2)の外部記憶装置(27)に保存されているとする。なお、前述の通り、Nを法とした剰余環の乗法についての位数が第三者に知られた場合、当該認証システムの安全性は低下する。そして、前述のように、Nが素数であることが明らかである場合、Nを法とした剰余環の乗法についての位数を求めることは容易である。また、Nが合成数である場合、Nを法とした剰余環の乗法についての位数を求めることは、当該Nを素因数分解することよりも困難である(Nが2つの素数の積からなる合成数である場合、これらの困難性は同等)。よって、安全性の見地から、Nは、素数であることが判定可能な数を除く自然数であって、素因数分解が困難な数であることが望ましい。このようなNとしては、例えば、素因数分解困難な合成数であるRSAモジュラス〔N=p・q(p,qは素数)であって、(p-1)/2,(q-1)/2もまた素数となっているN〕や、素数であるか否かが判定できない自然数などを例示できる。また、2のべき乗に近い数、例えば2m−1の形で表せる数(メルセンヌ数)をNとしてもよい。このようなNによる剰余計算は、例えば2mを1に置換することで計算ができ、このような演算は通常のCPUにおいてシフト演算またはビットの並び替えで実現することができる。従って高速な剰余演算を実現することができる。そのようなNを確率的アルゴリズムによって効率的に生成することもできるし、素因数分解が困難な数の表は公知であるから、そのような表から2のべき乗に近いNを選択するようにしてもよい。
また、予め定められた自然数ν(セキュリティパラメータ)が、検証装置(2)の外部記憶装置(27)に保存されているとする。
まず、検証装置(2)の制御部(290)は、外部記憶装置(27)からN、g、ν、情報sを読み込み、それぞれをRAM(25)の所定の格納領域に格納しておく〔図4参照〕。以後、「RAMから○○を読み込む」旨の説明をした場合は、「RAMにおいて○○が格納されている所定の格納領域から○○を読み込む」ことを意味するとする。
次に、検証装置(2)の乱数生成部(242)は、RAM(25)からνを読み込み、高々22ν程度の大きさの乱数r〔第1任意情報〕を生成し、乱数rをRAM(25)の所定の格納領域に格納する(ステップS3)〔図4参照〕。なお、乱数生成部(242)が、0≦r≦N・2ν−1の範囲から乱数rを生成してもよい。前述のように、このような範囲から乱数rが選択される構成が、安全性と演算コストの両立という観点から望ましいからである。また、必ずしもrは乱数である必要はなく、値が任意に選択されるものであればよい。また、第1実施形態では乱数生成部(242)が、第1任意情報である乱数rを生成するとしたが、予め所定の値を第1任意情報として外部記憶装置(27)に保存しておき、この値を外部記憶装置(27)から読み込むとしてもよい。この場合には、安全性の見地から、当該所定の値を、検証装置(2)の外部に対して秘匿しておかなければならない。
なお、ステップS1、S3、S4で得られた検証情報C(s)、乱数r、認証情報生成因子Rは、検証装置(2)の制御部(290)の制御によって、外部記憶装置(27)に保存される。
次に、証明装置(1)の制御部(190)の制御に従い、通信部(13)が、ステップS5において送信された認証情報生成因子Rを受信し、制御部(190)が、この認証情報生成因子Rを外部記憶装置(17)に保存する(ステップS6)〔図5参照〕。
次に、証明装置(1)の認証情報生成部(141)は、RAM(15)からN、情報s、認証情報生成因子Rを読み込み、式(3)に従った演算を行い、この演算結果R(s)〔認証情報〕をRAM(15)の所定の格納領域に格納する(ステップS7)〔図5参照〕。
次に、検証装置(2)の制御部(290)の制御に従い、通信部(23)が、ステップS8において送信された認証情報R(s)を受信し、制御部(290)が、この認証情報R(s)を外部記憶装置(27)に保存する(ステップS9)〔図6参照〕。
次に、検証装置(2)の制御部(290)は、外部記憶装置(27)からN、乱数r、認証情報R(s)、検証情報C(s)を読み込み、それぞれをRAM(25)の所定の格納領域に格納する〔図6参照〕。
以上のとおり、検証装置(2)は、情報sを保持していなくても、証明装置(1)が情報sを保持していることの認証を行うことができる。
次に、本発明の第2実施形態について、図8から図14を参照しながら説明する。
第1実施形態では、素数であることが判定可能な数を除く自然数であって、素因数分解が困難な大きな数Nが、予め証明装置(1)の外部記憶装置(17)および検証装置(2)の外部記憶装置(27)に保存されているとした。
第2実施形態では、この明細書に記載する実施形態に示す認証システム・方法において頑強な安全性が保証されるNを生成する。なお、Nは一義的な方法で生成されるものではなく、種々の方法で生成可能である。第2実施形態では、第三者装置(3)によってNを生成するものとする。この第三者装置(3)は必ずしも物理的に独立している必要はなく、証明装置(1)や検証装置(2)の内部に存在するモジュールとして実現してもよい。
なお、第2実施形態では、第1実施形態と同一の機能・処理については同一の符号を与えるなどして説明を省略する。
第2実施形態における証明装置(1)は、第1実施形態で説明した証明装置と同様であるから説明を略する。
第2実施形態における検証装置(2)の外部記憶装置(27)〔あるいはROMなど〕には、第1実施形態と異なり、検証情報を生成するためのプログラムが不要である。
検証装置(2)では、外部記憶装置(27)〔あるいはROMなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが、必要に応じてRAM(25)に読み込まれる。CPU(24)は、これらの各プログラムを実行して、各データを処理する。その結果、CPU(24)が所定の機能(認証情報生成因子生成部、乱数生成部、判定部、制御部)を実現する。
第2実施形態における第三者装置について説明する。
図8は、第2実施形態の第三者装置(3)のハードウェア構成を例示した構成ブロック図である。
図8に例示するように、第三者装置(3)は、キーボードやマウスなどの入力装置が接続可能な入力部(31)、液晶ディスプレイなどの出力装置が接続可能な出力部(32)、第三者装置(3)外部に通信可能な通信装置(例えば通信ケーブル、LANカード、ハブ、ルータ、モデムなど)が接続可能な通信部(33)、CPU(Central Processing Unit)(34)〔キャッシュメモリなどを備えていてもよい。〕、メモリであるRAM(35)、ROM(36)、ハードディスクや光ディスクや半導体メモリなどである外部記憶装置(37)並びにこれらの入力部(31)、出力部(32)、通信部(33)、CPU(34)、RAM(35)、ROM(36)、外部記憶装置(37)間のデータのやり取りが可能なように接続するバス(38)を有している。また必要に応じて、第三者装置(3)に、CD−ROMやDVDなどの記憶媒体を読み書きできる装置(ドライブ)などを設けるとしてもよい。
第三者装置(3)では、外部記憶装置(37)〔あるいはROMなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが、必要に応じてRAM(35)に読み込まれる。CPU(34)は、これらの各プログラムを実行して、各データを処理する。その結果、CPU(34)が所定の機能(N生成部、g生成部、検証情報生成部、制御部)を実現する。
第2実施形態の認証システムのネットワーク構成について説明する。
図9は、第2実施形態の認証システムのネットワーク構成を示す図である。
図9に示すように、第2実施形態では、1つの証明装置(1)と、1つの検証装置(2)と、1つの第三者装置(3)とが、ネットワーク(5)を介して相互に通信可能に接続されている。第三者装置(3)は1つに限定されるものではない。しかし、複数の証明装置がある場合に、各証明装置が保持する情報(保持情報)と同一の情報(対比情報)を第三者装置に保存しておけば、各証明装置に対応する検証情報を生成可能であるから、一般的には、1つの第三者装置で十分である。
第三者装置(3)の外部記憶装置(37)には、情報s〔対比情報〕が保存されているとする。また、予め定められた自然数νが、検証装置(2)の外部記憶装置(27)に保存されているとする。
まず、第三者装置(3)の制御部(390)は、外部記憶装置(37)から情報sを読み込み、これをRAM(35)の所定の格納領域に格納しておく〔図10参照〕。
第三者装置(3)のN生成部(340)は、素数であることが判定可能な数を除く自然数であって、素因数分解が困難な数Nを生成し、このNをRAM(35)の所定の格納領域に格納する(ステップS0t)〔図10参照〕。なお、前述のRSAモジュラスをNとする場合、Nは例えば以下のように生成される。即ち、素数の組p、qで、(p−1)/2,(q−1)/2もまた素数になるものを求め、N=p・qを演算する。このようなp、qは無限に存在して、Nは確率的アルゴリズムによって効率的に計算可能である。
(参考文献1)
J.Algesheimer, J.Camenish and V.Shoup, "Efficient Computation Modulo a Shared Secret with Application to the Generation of Shared Safe-Prime Products", CRYPTO 2002, LNCS 2442, pp.417-432, 2002, Springer-Verlag.
また、素因数分解が困難なNとして、前述の2のべき乗に近い数、例えば2m−1の形で表せるN(メルセンヌ数)を生成するようにしてもよい。そのようなNは確率的アルゴリズムによって効率的に生成することもできるし、素因数分解が困難な数の表は公知であるから、そのような表から2のべき乗に近いNを選択するようにしてもよい。
次に、第三者装置(3)の検証情報生成部(342)は、RAM(35)からg、N、情報sを読み込み、上記の式(1)に従った演算を行い、この演算結果C(s)〔検証情報〕をRAM(35)の所定の格納領域に格納する(ステップS2t)〔図10参照〕。
次に、第三者装置(3)の制御部(390)の制御に従い、通信部(33)が、RAM(35)から読み込んだ(ステップS0t、S1t、S2tで得られた)N、g、検証情報C(s)を検証装置(2)に対して送信する(ステップS3t)〔図10参照〕。
検証装置(2)の制御部(290)の制御に従い、通信部(23)が、ステップS3tにおいて送信されたN、g、検証情報C(s)を受信し、これらN、g、検証情報C(s)を外部記憶装置(27)に保存する(ステップS3v)。
ステップS3vに続くステップS3およびS4は、第1実施形態における処理と同じであるから説明を略する。
第1実施形態におけるステップS6の処理では、証明装置(1)は、認証情報生成因子Rを検証装置(2)から受信したが、第2実施形態では、認証情報生成因子Rに加え、N、gも検証装置(2)から受信する(ステップS6’)〔図12参照〕。
ステップS6’に続くステップS7〜S12は、第1実施形態における処理と同じであるから説明を略する。
次に、本発明の第3実施形態について、図15〜図20を参照しながら説明する。
第3実施形態では、第1実施形態ないし第2実施形態における計算効率の向上を図るための技術を説明する。この計算効率向上のための技術は、第1実施形態及び第2実施形態の何れにも適用可能である。しかし、第3実施形態では、説明の便宜から、一例として、第2実施形態にこの計算効率向上のための技術を適用する場合を説明する。
計算効率の向上のために、情報sを複数の情報に分割する。第3実施形態ではその一例を示すことにする。ビット列で表される情報sを、k個の分割情報s0、s1、…、sk−1に分割し、情報sは、k個の分割情報s0、s1、…、sk−1のビット列の結合として表されるとする。即ち、s=s0‖s1‖…‖sk−1とする。第3実施形態では、分割数kの値とi=0,1,2,…,k−1についてsiのビット長は、予め、証明装置(1)、検証装置(2)、第三者装置(3)の外部記憶装置それぞれに保存されているものとする。勿論、例えば第三者装置(3)において任意にこれらを決定し、検証装置(2)、証明装置(1)へ送信するようにしてもよく、適宜に設計変更可能である。
また、効率のために、分割数kを予め定めた固定値としたり、siのビット長がsのビット長を均等割したものとする旨のプロトコルを定めておいたりしてもよい。
第3実施形態では、第2実施形態と同一の機能・処理については同一の符号を与えるなどして説明を省略する。また、以下では、単に情報sと云えば、k個の分割情報s0、s1、…、sk−1の総称を意味するものとする。
第3実施形態における証明装置(1)は、第1実施形態で説明した証明装置と同様であるから説明を略する。
[検証装置]
第3実施形態における検証装置(2)は、第2実施形態で説明した検証装置と同様であるから説明を略する。
[第三者装置]
第3実施形態における第三者装置(3)は、第2実施形態で説明した第三者装置と同様であるから説明を略する。
[準備]
νを予め定められた自然数とする。νは、検証装置(2)の外部記憶装置(27)に保存されているとする。また、H(i,u,R)を予め定められた関数とする。例として、H(i,u,R)=uiとおくこともできるし、H(i,u,R)=uimod E(Eは、2νよりも大きな素数が好ましい)とおくこともできるし、その他にSHA−1などのハッシュ関数を用いることができる。また、u,Rの少なくとも一方を変数としたi毎に相違する関数をH(i,u,R)としてもよい(例えば、i=1のときにはH(i,u,R)=uとし、i=2のときにはH(i,u,R)=ui+Rとするなど)。その他、u,Rの少なくとも一方とiとに依存して関数値が定まる関数であれば、どのような関数をH(i,u,R)としてもよい。
(1)j=0とする。
(2)ランダムにXを選んで、i=0,1,...,k−1について、ai+1,j+1=H(i,X)とする。
(3)j=j+1として、j>k−1でなければ(2)に戻る。
(4)j>k−1となったとき、行列(ai+1,j+1)(i=0,1,...,k−1、j=0,1,...,k−1)が、高い確率で非退化(nondegenerate)である。
ハッシュ関数や上述のH(i,u,R)=ui mod Eは、この条件を満たす関数である(例えば、「H. Anton and C. Rorres. Elementary Linear Algebra with Applications. 9th ed., John Wiley & Sons, 2005」など参照)。よって、安全性の観点からは、ハッシュ関数や上述のH(i,u,R)=uimod Eを用いることが望ましい。
また、前述のように、H(i,u,R)を一方向性関数とした場合には、関数値の衝突(collision)を防止できるため、検証の信頼性と安全性が向上する。
第三者装置(3)の外部記憶装置(37)には、情報s〔対比情報〕が保存されているとする。
ステップS0tおよびS1tは、第2実施形態における処理と同じであるから説明を略する。
ステップS4tは、第2実施形態における処理と同じであるから説明を略する。
検証装置(2)の制御部(290)の制御に従い、通信部(23)が、ステップS3aにおいて送信されたN、g、検証情報Ci(s)={Ci(s)}i=0,1,2,…,k−1を受信し、これらN、g、検証情報Ci(s)を外部記憶装置(27)に保存する(ステップS3va)〔図16参照〕。
ステップS4に続き、検証装置(2)の乱数生成部(242)は、RAM(25)からνを読み込み(予め外部記憶装置(27)から読み込まれているとする。)、高々νビット程度の大きさの乱数uを生成し、乱数uをRAM(25)の所定の格納領域に格納する(ステップS4a)〔図16参照〕。なお、所定の値を乱数uに相当する値として外部記憶装置(27)に保存しておき、この値を外部記憶装置(27)から読み込むとしてもよい。この場合には、安全性の見地から、乱数uに相当する所定の値を検証装置(2)の外部に対して秘匿しておかなければならない。
第2実施形態におけるステップS6’の処理では、証明装置(1)は、認証情報生成因子R、N、gを検証装置(2)から受信したが、第3実施形態では、認証情報生成因子R、N、gに加え、乱数uも検証装置(2)から受信する(ステップS6a)〔図17参照〕。
ステップS7aに続くステップS8、S9は、第1実施形態(第2実施形態)における処理と同じであるから説明を略する。
次に、本発明の第4実施形態について、図21から図29を参照しながら説明する。
第4実施形態は、第1実施形態、第2実施形態、第3実施形態における安全性の向上を図るための技術を説明する。この安全性向上のための技術は、第1実施形態、第2実施形態及び第3実施形態の何れにも適用可能である。しかし、第4実施形態では、説明の便宜から、一例として、第3実施形態にこの安全性向上のための技術を適用する場合を説明する。
第4実施形態では、第3実施形態と同一の機能・処理については同一の符号を与えるなどして説明を省略する。
[証明装置]
第4実施形態における証明装置(1)の外部記憶装置(17)〔あるいはROMなど〕には、認証情報を生成するためのプログラム、後述するc^を生成するためのプログラム、認証情報生成因子が検証装置において正当に生成されたことを対話証明によって認証するためのプログラムおよびこれらのプログラムの処理において必要となるデータ(情報sなど)などが保存されている。その他、これらのプログラムに基づく処理を制御するための制御プログラムも外部記憶装置(17)等に保存しておく。
[検証装置]
第4実施形態における検証装置(2)の外部記憶装置(27)〔あるいはROMなど〕には、認証情報生成因子を生成するためのプログラム、乱数を生成するためのプログラム、後述するW、zを生成するためのプログラム、認証情報生成因子が検証装置において正当に生成されたことを対話証明によって証明するためのプログラム、証明装置から受信した情報と検証装置に保持される情報との一致を判定するためのプログラム、およびこれらのプログラムの処理において必要となるデータなどが保存されている。その他、これらのプログラムに基づく処理を制御するための制御プログラムも外部記憶装置(27)等に保存しておく。
検証装置(2)では、外部記憶装置(27)〔あるいはROMなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが、必要に応じてRAM(25)に読み込まれる。CPU(24)は、これらの各プログラムを実行して、各データを処理する。その結果、CPU(24)が所定の機能(認証情報生成因子生成部、乱数生成部、W生成部、z生成部、対話判定部、判定部、制御部)を実現する。
第4実施形態における第三者装置(3)は、第2実施形態で説明した第三者装置と同様であるから説明を略する。
[準備]
tを予め定められた自然数(但し、Nよりも小さいとする。)とする。tは、証明装置(1)の外部記憶装置(17)および検証装置(2)の外部記憶装置(27)に保存されているとする。また、第3実施形態と同様な関数H(i,u,R)を予め定めておく。例として、H(i,u,R)=uiとおくこともできるし、その他にSHA−1などのハッシュ関数を用いることができる。
第4実施形態における対話証明の処理は、第3実施形態で説明したステップS6aの処理とステップS7aの処理との間に行われる。
そこで、ステップS0t〜ステップS6a、ステップS7a〜ステップS12の説明を略し、この対話証明の処理について説明を加えることにする。
まず、ステップS6aの処理の後、証明装置(1)の制御部(190)は、外部記憶装置(17)からg、t、Nを読み込み、これをRAM(15)の所定の格納領域に格納しておく。
次に、証明装置(1)のc^生成部(142)は、RAM(15)からN、g、t、乱数c、乱数ξを読み込み、式(8)に従った演算を行い、この演算結果c^をRAM(15)の所定の格納領域に格納する(ステップS612)〔図21参照〕。
なお、ステップS611で得られた乱数c、乱数ξは、証明装置(1)の制御部(190)の制御によって、外部記憶装置(17)に保存される。
次に、検証装置(2)の制御部(290)の制御に従い、通信部(23)が、ステップS613において送信されたc^を受信し、このc^を外部記憶装置(27)に記憶する(ステップS614)〔図22参照〕。
次に、検証装置(2)の乱数生成部(242)は、RAM(25)からNを読み込み、0以上N未満の乱数wを生成し、この乱数wをRAM(25)の所定の格納領域に格納する(ステップS615)〔図22参照〕。なお、0以上N・23t−1以下の乱数wが生成される構成であってもよい。後述のように、検証装置(2)は、証明装置(1)にz=c・r+wを送信する(ステップS623)。0以上N・23t−1以下の乱数wが選択される場合、どのような方法でc,rが与えられても、z=c・r+wの分布と、このような範囲で生成される乱数w’の分布とが識別不能となることが証明できる。つまり、このような範囲でwが選択される場合、攻撃者がz=c・r+wからrを推測することが十分困難であることがいえ、プロトコルの安全性が確保できる。
なお、ステップS615で得られた乱数wは、検証装置(2)の制御部(290)の制御によって、外部記憶装置(27)に保存される。
次に、証明装置(1)の制御部(190)の制御に従い、通信部(13)が、ステップS617において送信されたWを受信し、このWを外部記憶装置(17)に保存する(ステップS618)〔図23参照〕。
次に、検証装置(2)の制御部(290)の制御に従い、通信部(23)が、ステップS619において送信された乱数cおよび乱数ξを受信し、この乱数cおよび乱数ξを外部記憶装置(27)に保存する(ステップS620)〔図24参照〕。
次に、検証装置(2)の対話判定部(250)は、RAM(25)からg、c、t、N、乱数ξ、c^を読み込み、式(8)に示す関係が成立するか否かの判定を行う(ステップS621)〔図24参照〕。この判定結果が関係不成立の場合には、検証装置(2)の制御部(290)の制御の下、以下の処理を実行せずに終了する(ステップS622)。この判定結果が関係成立の場合には、検証装置(2)の制御部(290)の制御の下、続くステップS623が実行される。
次に、証明装置(1)の制御部(190)の制御に従い、通信部(13)が、ステップS624において送信されたzを受信し、このzを外部記憶装置(17)に保存する(ステップS625)〔図25参照〕。
次に、証明装置(1)の制御部(190)は、外部記憶装置(17)から、g、N、認証情報生成因子R、z、乱数c、乱数u、情報s、Wを読み込み、それぞれをRAM(15)の所定の格納領域に格納する〔図25参照〕。
次に、本発明の第5実施形態について、図30〜図37を参照しながら説明する。
第5実施形態は、第1実施形態ないし第2実施形態の安全性向上のために、本発明独自の対話証明手法を適用したものである。ここでは説明の便宜から、第2実施形態に本発明独自の対話証明手法を適用した形態を説明する。
第5実施形態では、第2実施形態および第4実施形態と同一の機能・処理については同一の符号を与えるなどして説明を省略する。
第5実施形態における証明装置(1)の外部記憶装置(17)〔あるいはROMなど〕には、認証情報を生成するためのプログラム、後述するAを生成するためのプログラム、乱数を生成するためのプログラム、検証装置が第1任意情報を正しく用いて認証情報生成因子を生成したかを判定するためのプログラムおよびこれらのプログラムの処理において必要となるデータ(情報sなど)などが保存されている。その他、これらのプログラムに基づく処理を制御するための制御プログラムも外部記憶装置(17)等に保存しておく。
証明装置(1)では、外部記憶装置(17)〔あるいはROMなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが、必要に応じてRAM(15)に読み込まれる。CPU(14)は、これらの各プログラムを実行して、各データを処理する。その結果、CPU(14)が所定の機能(A生成部、乱数生成部、第1判定部、認証情報生成部、制御部)を実現する。
第5実施形態における検証装置(2)の外部記憶装置(27)〔あるいはROMなど〕には、認証情報生成因子を生成するためのプログラム、乱数を生成するためのプログラム、後述するBを生成するためのプログラム、証明装置が正しく前記のAを生成したかを判定するためのプログラム、証明装置から受信した情報と検証装置に保持される情報との一致を判定するためのプログラムおよびこれらのプログラムの処理において必要となるデータなどが保存されている。その他、これらのプログラムに基づく処理を制御するための制御プログラムも外部記憶装置(27)等に保存しておく。
第5実施形態における第三者装置(3)は、第2実施形態で説明した第三者装置と同様であるから説明を略する。
[準備]
νを予め定められた自然数とする。νは、証明装置(1)の外部記憶装置(17)および検証装置(2)の外部記憶装置(27)に保存されているとする。
[認証]
ステップS0tからステップS3vまでの処理は、第2実施形態における処理と同じであるから説明を略する。
ステップS3vに続いて、次のような処理が順次行われる。
次に、証明装置(1)の制御部(190)の制御に従い、通信部(13)が、ステップS700において送信されたNおよびgを受信し、このNおよびgを外部記憶装置(17)に保存する(ステップS701)〔図31参照〕。
次に、証明装置(1)の乱数生成部(143)は、RAM(15)からνを読み込み、高々22ν程度の大きさの乱数aを生成し、この乱数aをRAM(15)の所定の格納領域に格納する(ステップS702)〔図31参照〕。なお、乱数生成部(143)が、0≦a≦N・2ν−1の範囲から乱数aを生成してもよい。前述のように、このような範囲から乱数aが選択される構成が、安全性と演算コストの両立という観点から望ましいからである。また、必ずしもaは乱数である必要はなく、値が任意に選択されるものであればよい。
なお、ステップS703、S704で得られた乱数a、Aは、証明装置(1)の制御部(190)の制御によって、外部記憶装置(17)に保存される。
次に、検証装置(2)の制御部(290)の制御に従い、通信部(23)が、ステップS704において送信されたAを受信し、このAを外部記憶装置(27)に保存する(ステップS705)〔図32参照〕。
次に、検証装置(2)の乱数生成部(242)は、RAM(25)からνを読み込み、高々22ν程度の大きさの乱数rを生成し、この乱数rをRAM(25)の所定の格納領域に格納する(ステップS706)〔図32参照〕。なお、乱数生成部(242)が、0≦r≦N・2ν−1の範囲から乱数rを生成してもよい。前述のように、このような範囲から乱数rが選択される構成が、安全性と演算コストの両立という観点から望ましいからである。また、必ずしもrは乱数である必要はなく、値が任意に選択されるものであればよい。
次に、検証装置(2)のB生成部(249)は、RAM(25)からN、乱数r、Aを読み込み、式(13)に従った演算を行い、この演算結果BをRAM(25)の所定の格納領域に格納する(ステップS708)〔図32参照〕。
なお、ステップS706、S707、S708で得られた乱数r、認証情報生成因子R、Bは、検証装置(2)の制御部(290)の制御によって、外部記憶装置(27)に保存される。
次に、証明装置(1)の制御部(190)の制御に従い、通信部(13)が、ステップS709において送信された認証情報生成因子R、Bを受信し、この認証情報生成因子R、Bを外部記憶装置(17)に保存する(ステップS710)〔図33参照〕。
次に、証明装置(1)の第1判定部(160)は、RAM(15)からB、認証情報生成因子R、乱数a、Nを読み込み、式(14)に示す関係が成立するか否かの判定を行う(ステップS711)〔図33参照〕。この判定結果が関係不成立の場合には、証明装置(1)の制御部(190)の制御の下、以下の処理を実行せずに終了する(ステップS712)。この判定結果が関係成立の場合には、証明装置(1)の制御部(190)の制御の下、続くステップS713が実行される。
次に、証明装置(1)の制御部(190)の制御に従い、通信部(13)が、RAM(15)から読み込んだステップS713で得られた認証情報R(s)およびステップS702で得られた乱数aを検証装置(2)に対して送信する(ステップS714)〔図33参照〕。
次に、検証装置(2)の制御部(290)は、外部記憶装置(27)からN、乱数r、認証情報R(s)、検証情報C(s)、A、乱数a、gを読み込み、それぞれをRAM(25)の所定の格納領域に格納する〔図34参照〕。
次に、本発明の第6実施形態について、図38から図44を参照しながら説明する。
第6実施形態は、第5実施形態における計算効率の向上を図る形態である。計算効率の向上を図るための手法は、第3実施形態と同様である。ここでは説明の便宜から、第2実施形態に第5実施形態で説明した本発明独自の対話証明手法を適用し、さらに、第3実施形態で説明した計算効率の向上を図るための手法を適用する構成を説明する。
第6実施形態では、第3実施形態および第5実施形態と同一の機能・処理については同一の符号を与えるなどして説明を省略する。また、以下では、単に情報sと云えば、k個の分割情報s0、s1、…、sk−1の総称を意味するものとする。
第6実施形態における証明装置(1)は、第5実施形態で説明した証明装置と同様であるから説明を略する。
[検証装置]
第6実施形態における検証装置(2)は、第5実施形態で説明した検証装置と同様であるから説明を略する。
[第三者装置]
第6実施形態における第三者装置(3)は、第2実施形態で説明した第三者装置と同様であるから説明を略する。
νを予め定められた自然数とする。νは、証明装置(1)の外部記憶装置(17)および検証装置(2)の外部記憶装置(27)に保存されているとする。
[認証]
ステップS0tからステップS3vaまでの処理は、第3実施形態における処理と同じであるから説明を略する。
ステップS3vaに続いて、次のような処理が順次行われる。
次に、検証装置(2)の乱数生成部(242)は、RAM(25)からνを読み込み、高々νビット程度の大きさの乱数uを生成し、この乱数uをRAM(25)の所定の格納領域に格納する(ステップS800)〔図38参照〕。
次に、検証装置(2)の制御部(290)の制御に従い、通信部(23)が、RAM(25)から読み込んだ乱数u、N、gを証明装置(1)に対して送信する(ステップS801)〔図38参照〕。
次に、証明装置(1)の制御部(190)の制御に従い、通信部(13)が、ステップS801において送信された乱数u、N、gを受信し、この乱数u、N、gを外部記憶装置(17)に保存する(ステップS802)〔図39参照〕。
ステップS802に続いてステップS702からS712が処理されるが、第5実施形態において説明したとおりであるから、説明を略する。
ステップS716に続いて(つまり、ステップS717の終了処理をしない場合である。)、次のステップS804が処理される。即ち、検証装置(2)の判定部(244)は、RAM(25)からN、乱数r、乱数u、認証情報生成因子R、認証情報R(s)、検証情報C(s)、A、Bを読み込み(予め外部記憶装置(27)から読み込まれているとする。)、式(17)に示す関係が成立するか否かの判定を行う(ステップS804)〔図41参照〕。
本発明である認証システム・方法は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
例えば、各実施形態では、「可換な半群」として、定数Nを法とした剰余環の乗法についての巡回群を用いた。しかし、本発明で用いることが可能な「可換な半群」はこれに限定されない。例えば、多項式を法とした剰余環の乗法についての巡回群を「可換な半群」として用いてもよい。
また、各実施形態では、Nは、素数であることが判定可能な数を除く自然数であって、素因数分解が困難な数であることが望ましいと説明した。しかし、これ以外のNを用いてもよい。例えば、3つ以上の素数の積からなる合成数をNとしてもよい。また、例えば、攻撃者の存在を無視できる用途に本発明を適用するのであれば、安全性の観点からは、Nはどのような値であってもかまわない。すなわち、このような用途に本発明を適用するのであれば、「可換な半群」は、必ずしも、その半群で定義された有限集合の位数の算出が困難なものである必要はない。
各実施形態で用いた乱数の代わりにその他の任意の数を用いてもよい。また、各実施形態で、外部記憶装置に格納されると説明したデータが、RAMに格納されてもよいし、RAMに格納されると説明したデータが、外部記憶装置に格納されてもよい。
その他、認証情報の生成方法や判定の方法は適宜に変更可能である。また、上記認証システム・方法において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)等を、光磁気記録媒体として、MO(Magneto-Optical disc)等を、半導体メモリとしてEEP−ROM(Electronically Erasable and Programmable-Read Only Memory)等を用いることができる。
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、プロセッサが、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
Claims (35)
- 認証システムであって、
保持情報が格納された証明装置と、
上記証明装置に通信可能に接続され、上記保持情報が対比情報と同一であることを検証する検証装置と、を含み、
上記検証装置は、
上記対比情報の内容に依存する内容を有し、上記対比情報の情報量に依存しない情報量を有する検証情報と、任意の情報である第1任意情報と、を記憶する第1記憶部と、
上記証明装置に認証情報を生成させるための認証情報生成因子を、上記第1記憶部に記憶された上記第1任意情報を用いて生成する認証情報生成因子生成部と、
上記認証情報生成因子生成部が生成した上記認証情報生成因子を上記証明装置に送信する第1送信部と、
上記証明装置が送信した上記認証情報を受信する第1受信部と、
上記第1受信部が受信した上記認証情報と、上記第1記憶部に記憶された上記検証情報及び上記第1任意情報との間に、所定の関係が成立するか否かを判定する判定部と、を含み、
上記証明装置は、
上記保持情報を記憶する第2記憶部と、
上記第1送信部が送信した上記認証情報生成因子を受信する第2受信部と、
上記第2受信部が受信した上記認証情報生成因子と、上記第2記憶部に記憶された上記保持情報とを用い、上記認証情報生成因子と上記保持情報との内容に依存する内容を有し、上記保持情報の情報量に依存しない情報量を有する上記認証情報を生成する認証情報生成部と、
上記認証情報生成部によって生成された上記認証情報を上記検証装置に送信する第2送信部と、を含む。 - 請求項1に記載の認証システムであって、
上記検証情報は、
可換な半群をなす演算が定義された有限集合の元を底とし、上記対比情報を冪数として、当該半群で定義された冪乗を行った演算結果であり、
上記認証情報生成因子は、
上記有限集合の元を底とし、上記第1任意情報を冪数として、上記半群で定義された冪乗を行った演算結果であり、
上記認証情報は、
上記認証情報生成因子を底とし、上記保持情報を冪数として、上記半群で定義された冪乗を行った演算結果であり、
上記判定部は、
上記検証情報を底とし、上記第1任意情報を冪数として、上記半群で定義された冪乗を行った演算結果と、上記認証情報と、が等しいか否かを判定する。 - 請求項2に記載の認証システムであって、
上記半群は、
上記有限集合の位数の算出が困難なものである。 - 請求項2に記載の認証システムであって、
上記検証情報は、
定数Nを法とし、N未満の値gを底とし、上記対比情報s’を冪数とした冪乗剰余演算結果C(s’)であり、
上記認証情報生成因子は、
上記Nを法とし、上記値gを底とし、上記第1任意情報rを冪数とした冪乗剰余演算結果Rであり、
上記認証情報は、
上記Nを法とし、上記認証情報生成因子Rを底とし、上記保持情報sを冪数とした冪乗剰余演算結果R(s)であり、
上記判定部は、
上記Nを法とし、上記検証情報C(s’)を底とし、上記第1任意情報rを冪数とした冪乗剰余演算結果と、上記認証情報R(s)と、が等しいか否かを判定する。 - 請求項4に記載の認証システムであって、
上記定数Nは、
素数であることが判定可能な数を除く自然数であって、素因数分解困難な数である。 - 請求項4に記載の認証システムであって、
上記定数Nは、
3つ以上の素数の積からなる合成数である。 - 請求項5に記載の認証システムであって、
上記第1任意情報rは、
νを所定の自然数とした場合における、0≦r≦N・2ν−1の範囲から任意に選択される値である。 - 請求項1に記載の認証システムであって、
上記検証情報は、
上記対比情報を複数に分割した第1分割情報ごとに、それぞれの当該第1分割情報を用いて生成される情報であり、
上記認証情報生成部は、
上記第2受信部が受信した上記認証情報生成因子と、上記第2記憶部に記憶された上記保持情報を複数に分割した第2分割情報の全てと、を用いて、上記認証情報を生成する。 - 請求項8に記載の認証システムであって、
上記検証情報は、
可換な半群をなす演算が定義された有限集合の元を底とし、上記第1分割情報を冪数として、当該半群で定義された冪乗を行った演算結果であり、
上記認証情報生成因子は、
上記有限集合の元を底とし、上記第1任意情報を冪数として、上記半群で定義された冪乗を行った演算結果であり、
上記認証情報は、
上記認証情報生成因子を底とし、上記第2分割情報の全てを用いて算出した値であって上記保持情報よりも情報量が少ないものを冪数として、上記半群で定義された冪乗を行った演算結果であり、
上記判定部は、
上記検証情報の全てを用いて算出した値を底とし、上記第1任意情報を冪数として、上記半群で定義された冪乗を行った演算結果と、上記認証情報と、が等しいか否かを判定する。 - 請求項9に記載の認証システムであって、
上記認証情報は、
各上記第2分割情報の上記保持情報内のビット位置に対応する事前準備困難な情報と、上記第2分割情報の全てとを用いて算出した値であって上記保持情報よりも情報量が少ないものを冪数とし、上記認証情報生成因子を底として、上記半群で定義された冪乗を行った演算結果である。 - 請求項9に記載の認証システムであって、
上記半群は、
上記有限集合の位数の算出が困難な半群である。 - 請求項9に記載の認証システムであって、
上記検証情報は、
定数Nを法とし、N未満の値gを底とし、上記第1分割情報si’を冪数とした冪乗剰余演算結果Ci(s’)であり、
上記認証情報生成因子は、
上記Nを法とし、上記値gを底とし、上記第1任意情報rを冪数とした冪乗剰余演算結果Rであり、
上記認証情報は、
上記第2分割情報siに対応するi及び上記検証装置から送信される何らかの情報に値が依存する情報Hと、上記第2分割情報siと、の積を全てのiについて合計した値を冪数とし、上記認証情報生成因子Rを底とし、上記Nを法とした冪乗剰余演算結果R(s)であり、
上記判定部は、
全てのiに対応する各上記検証情報Ci(s’)をそれらにそれぞれ対応する上記情報Hによって冪乗した各値の積を底とし、上記第1任意情報rを冪数とし、上記Nを法とした冪乗剰余演算結果と、上記認証情報R(s)と、が等しいか否かを判定する。 - 請求項12に記載の認証システムであって、
上記定数Nは、素数であることが判定可能な数を除く自然数であって、素因数分解困難な数である。 - 請求項12に記載の認証システムであって、
上記情報Hは、
上記第2分割情報siに対応するiと上記検証装置から送信される何らかの情報とに値が依存する一方向性関数値である。 - 請求項1に記載の認証システムであって、
上記検証装置は、
上記証明装置の上記第2受信部が受信した上記認証情報生成因子が、上記第1記憶部に記憶された上記第1任意情報を用いて生成されたことを、上記証明装置との対話証明によって、上記証明装置に証明する対話証明部を含み、
上記証明装置は、
上記第2受信部が受信した上記認証情報生成因子が、上記検証装置の上記第1記憶部に記憶された上記第1任意情報を用いて生成されたことを、上記検証装置との対話証明によって検証する対話検証部を含み、
上記証明装置の第2送信部は、
上記第2受信部が受信した上記認証情報生成因子が、上記検証装置の上記第1記憶部に記憶された上記第1任意情報を用いて生成されたことを、上記対話検証部が確認できた場合に、上記認証情報生成部によって生成された上記認証情報を、その検証装置に送信する。 - 請求項1に記載の認証システムであって、
上記証明装置は、
可換な半群をなす演算が定義された有限集合の元gを底とし、任意の情報である第2任意情報aを冪数として、上記半群で定義された冪乗を行った演算値Aを生成するA生成部を含み、
上記証明装置の第2送信部は、
上記演算値Aを上記検証装置に送信し、
上記検証装置の第1受信部は、
上記証明装置が送信した上記演算値Aを受信し、
上記検証装置の上記認証情報生成因子生成部は、
上記有限集合の元gを底とし、上記第1任意情報rを冪数として、上記半群で定義された冪乗を行って上記認証情報生成因子Rを生成し、
上記検証装置は、
上記演算値Aを底とし、上記第1任意情報rを冪数として、上記半群で定義された冪乗を行って演算値Bを生成するB生成部を含み、
上記検証装置の第1送信部は、
上記認証情報生成因子Rと上記演算値Bとを上記証明装置に送信し、
上記証明装置の上記第2受信部は、
上記検証装置から送信された上記認証情報生成因子Rと上記演算値Bとを受信し、
上記証明装置は、
上記第2受信部が受信した上記認証情報生成因子Rを底とし、上記第2任意情報aを冪数として、上記半群で定義された冪乗を行った演算結果と、上記演算値Bと、が等しいか否かを判定する第1判定部を含み、
上記証明装置の第2送信部は、
上記第2受信部が受信した上記認証情報生成因子Rを底とし、上記第2任意情報aを冪数として、上記半群で定義された冪乗を行った演算結果と、上記演算値Bと、が等しいことを、上記第1判定部が確認できた場合に、上記認証情報生成部によって生成された上記認証情報を、上記検証装置に送信する。 - 請求項16に記載の認証システムであって、
上記証明装置の第2送信部は、
上記第2受信部が受信した上記認証情報生成因子Rを底とし、上記第2任意情報aを冪数として、上記半群で定義された冪乗を行った演算結果と、上記演算値Bと、が等しいことを、上記第1判定部が確認できた場合に、さらに、上記第2任意情報aを、上記検証装置に送信し、
上記検証装置の第1受信部は、
上記証明装置から送信された上記第2任意情報aを受信し、
上記検証装置は、
上記有限集合の元gを底とし、上記第2任意情報aを冪数として、上記半群で定義された冪乗を行った演算結果と、上記演算値Aと、が等しいか否かを判定する第2判定部を含む。 - 請求項16に記載の認証システムであって、
上記半群は、
上記有限集合の位数の算出が困難な半群である。 - 請求項16に記載の認証システムであって、
上記演算値Aは、
定数Nを法とし、N未満の値gを底とし、任意の情報である第2任意情報aを冪数とした冪乗剰余演算結果であり、
上記認証情報生成因子Rは、
上記Nを法とし、上記値gを底とし、上記第1任意情報rを冪数とした冪乗剰余演算結果であり、
上記演算値Bは、
上記Nを法とし、上記演算値Aを底とし、上記第1任意情報rを冪数とした冪乗剰余演算結果であり、
上記第2受信部が受信した上記認証情報生成因子Rを底とし、上記第2任意情報aを冪数として、上記半群で定義された冪乗を行った演算結果は、
上記Nを法とし、上記認証情報生成因子Rを底とし、上記第2任意情報aを冪数とした冪乗剰余演算結果である。 - 請求項19に記載の認証システムであって、
上記有限集合の元gを底とし、上記第2任意情報aを冪数として、上記半群で定義された冪乗を行った演算結果は、
上記Nを法とし、上記有限集合の元gを底とし、上記第2任意情報aを冪数とした冪乗剰余演算結果である。 - 請求項19に記載の認証システムであって、
上記定数Nは、
素数であることが判定可能な数を除く自然数であって、素因数分解困難な数である。 - 請求項19に記載の認証システムであって、
上記第2任意情報aは、
νを所定の自然数とした場合における、0≦a≦N・2ν−1の範囲から任意に選択される値である。 - 格納している保持情報が対比情報と同一であることを検証装置に証明する証明装置であって、
上記保持情報を記憶する記憶部と、
上記検証装置が送信した認証情報生成因子を受信する受信部と、
上記受信部が受信した上記認証情報生成因子と、上記記憶部に記憶された上記保持情報と、を用い、上記認証情報生成因子及び上記保持情報の内容に依存する内容を有し、上記保持情報の情報量に依存しない情報量を有する上記認証情報を生成する認証情報生成部と、
上記認証情報生成部によって生成された上記認証情報を上記検証装置に送信する送信部と、を含む。 - 証明装置に格納された保持情報が対比情報と同一であることを検証する検証装置であって、
上記対比情報の内容に依存する内容を有し、上記対比情報の情報量に依存しない情報量を有する検証情報と、任意の情報である任意情報と、を記憶する記憶部と、
上記証明装置に認証情報を生成させるための認証情報生成因子を、上記記憶部に記憶された上記任意情報を用いて生成する認証情報生成因子生成部と、
上記認証情報生成因子生成部が生成した上記認証情報生成因子を上記証明装置に送信する送信部と、
上記証明装置が送信した上記認証情報を受信する受信部と、
上記受信部が受信した上記認証情報と、上記記憶部に記憶された上記検証情報及び上記任意情報との間に、所定の関係が成立するか否かを判定する判定部と、を含む。 - 証明装置の記憶部に格納された保持情報が対比情報と同一であることを検証装置が検証する認証方法であって、
上記対比情報の内容に依存する内容を有し、上記対比情報の情報量に依存しない情報量を有する検証情報を、上記検証装置の記憶部に記憶する過程と、
任意の情報である任意情報を、上記検証装置の記憶部に記憶する過程と、
上記検証装置の認証情報生成因子生成部が、上記証明装置に認証情報を生成させるための認証情報生成因子を、上記検証装置の記憶部に記憶された上記任意情報を用いて生成する過程と、
上記検証装置の送信部が、上記認証情報生成因子を上記証明装置に送信する過程と、
上記証明装置の受信部が、上記認証情報生成因子を受信する過程と、
上記証明装置の認証情報生成部が、上記認証情報生成因子と、上記証明装置の記憶部に記憶された上記保持情報とを用い、上記認証情報生成因子と上記保持情報との内容に依存する内容を有し、上記保持情報の情報量に依存しない情報量を有する上記認証情報を生成する過程と、
上記証明装置の送信部が、上記認証情報を上記検証装置に送信する過程と、
上記検証装置の受信部が、上記認証情報を受信する過程と、
上記検証装置の判定部が、上記認証情報と、上記検証装置の記憶部に記憶された上記検証情報及び上記任意情報との間に、所定の関係が成立するか否かを判定する過程と、を含む。 - 請求項25に記載の認証方法であって、
上記検証情報は、
上記対比情報を複数に分割した第1分割情報ごとに、それぞれの当該第1分割情報を用いて生成される情報であり、
上記認証情報は、
上記証明装置の受信部が受信した上記認証情報生成因子と、上記証明装置の記憶部に記憶された上記保持情報を複数に分割した第2分割情報の全てと、を用いて生成される。 - 請求項25に記載の認証方法であって、
上記任意情報を上記検証装置の記憶部に記憶する過程から、上記認証情報を上記検証装置に送信する過程までの間に行われる、
(a)上記証明装置の受信部が受信した上記認証情報生成因子が上記検証装置の記憶部に記憶された上記任意情報を用いて生成されたことを、上記検証装置の対話証明部が、上記証明装置との対話証明によって上記証明装置に証明する過程と、
(b)上記証明装置の受信部が受信した上記認証情報生成因子が、上記検証装置の記憶部に記憶された上記任意情報を用いて生成されたことを、上記証明装置の対話検証部が、上記検証装置との対話証明によって検証する過程と、を含み、
上記証明装置の受信部が受信した上記認証情報生成因子が、上記検証装置の記憶部に記憶された上記任意情報を用いて生成されたことを、上記証明装置の対話検証部が確認できた場合に行われる、
(c)上記証明装置の送信部が、上記認証情報生成部によって生成された上記認証情報を、上記検証装置に送信する過程、を含む。 - 少なくとも、
保持情報を記憶部に記憶させる過程と、
検証装置の送信部から送信された認証情報生成因子を受信部に受信させる過程と、
上記認証情報生成因子及び上記保持情報の内容に依存する内容を有し、上記保持情報の情報量に依存しない情報量を有する上記認証情報を生成する過程と、
送信部によって、上記認証情報を上記検証装置に送信させる過程と、
をプロセッサに実行させるための証明装置用プログラム。 - 請求項28記載の証明装置用プログラムであって、
上記保持情報が複数に分割された分割情報の全てを上記記憶部に記憶させる過程を、さらに、プロセッサに実行させるためのものであり、
上記認証情報を生成する過程は、
上記受信部が受信した上記認証情報生成因子と、上記記憶部に記憶された上記分割情報の全てと、を用いて、上記認証情報を生成する過程である。 - 請求項28記載の証明装置用プログラムであって、
上記受信部が受信した上記認証情報生成因子が、検証装置の記憶部に記憶された任意情報を用いて生成されたことを、上記検証装置との対話証明によって検証する過程と、
上記受信部が受信した上記認証情報生成因子が上記検証装置の上記記憶部に記憶された上記任意情報を用いて生成されたことが確認された場合に、上記認証情報を、上記送信部によって、上記検証装置に送信させる過程とを、
さらに、プロセッサに実行させるためのものである。 - 少なくとも、
対比情報の内容に依存する内容を有し、当該対比情報の情報量に依存しない情報量を有する検証情報と、任意の情報である任意情報と、を記憶部に記憶させる過程と、
証明装置に認証情報を生成させるための認証情報生成因子を、上記記憶部に記憶された上記任意情報を用いて生成する過程と、
送信部によって、上記認証情報生成因子を上記証明装置に送信させる過程と、
上記証明装置が送信した上記認証情報を受信部に受信させる過程と、
上記受信部が受信した上記認証情報と、上記記憶部に記憶された上記検証情報及び上記任意情報との間に、所定の関係が成立するか否かを判定する過程と、
をプロセッサに実行させるための検証装置用プログラム。 - 請求項31記載の検証装置用プログラムであって、
上記検証情報は、
上記対比情報を複数に分割した分割情報ごとに、それぞれの当該分割情報を用いて生成される情報である。 - 請求項31記載の検証装置用プログラムであって、
上記証明装置の受信部が受信した上記認証情報生成因子が、上記記憶部に記憶された上記任意情報を用いて生成されたことを、上記証明装置との対話証明によって、上記証明装置に証明する過程を、
さらに、プロセッサに実行させるためのものである。 - 請求項28記載の証明装置用プログラムを格納したコンピュータ読み取り可能な記録媒体。
- 請求項31記載の検証装置用プログラムを格納したコンピュータ読み取り可能な記録媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005204954 | 2005-07-13 | ||
JP2005204954 | 2005-07-13 | ||
PCT/JP2006/313970 WO2007007836A1 (ja) | 2005-07-13 | 2006-07-13 | 認証システム、認証方法、証明装置、検証装置、それらのプログラム及び記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2007007836A1 true JPWO2007007836A1 (ja) | 2009-01-29 |
JP4555859B2 JP4555859B2 (ja) | 2010-10-06 |
Family
ID=37637216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007507586A Active JP4555859B2 (ja) | 2005-07-13 | 2006-07-13 | 認証システム、認証方法、証明装置、検証装置、それらのプログラム及び記録媒体 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8001384B2 (ja) |
EP (1) | EP1903713B1 (ja) |
JP (1) | JP4555859B2 (ja) |
CN (1) | CN101080897B (ja) |
DE (1) | DE602006013138D1 (ja) |
WO (1) | WO2007007836A1 (ja) |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9198084B2 (en) | 2006-05-26 | 2015-11-24 | Qualcomm Incorporated | Wireless architecture for a traditional wire-based protocol |
JP4901499B2 (ja) * | 2007-01-22 | 2012-03-21 | 日本電信電話株式会社 | データ検証システム、その方法、識別子生成装置、データ検証装置、それらプログラム及び記録媒体 |
US8667144B2 (en) | 2007-07-25 | 2014-03-04 | Qualcomm Incorporated | Wireless architecture for traditional wire based protocol |
US8811294B2 (en) | 2008-04-04 | 2014-08-19 | Qualcomm Incorporated | Apparatus and methods for establishing client-host associations within a wireless network |
US8281131B2 (en) | 2008-08-28 | 2012-10-02 | International Business Machines Corporation | Attributes in cryptographic credentials |
CN101739400B (zh) * | 2008-11-11 | 2014-08-13 | 日电(中国)有限公司 | 生成索引的方法和装置以及检索方法和装置 |
US9398089B2 (en) | 2008-12-11 | 2016-07-19 | Qualcomm Incorporated | Dynamic resource sharing among multiple wireless devices |
EP2378706A4 (en) * | 2008-12-11 | 2017-06-28 | NEC Corporation | Zero-knowledge proof system, zero-knowledge proof device, zero-knowledge verification device, zero-knowledge proof method and program therefor |
US9264248B2 (en) | 2009-07-02 | 2016-02-16 | Qualcomm Incorporated | System and method for avoiding and resolving conflicts in a wireless mobile display digital interface multicast environment |
US9582238B2 (en) | 2009-12-14 | 2017-02-28 | Qualcomm Incorporated | Decomposed multi-stream (DMS) techniques for video display systems |
US9065876B2 (en) | 2011-01-21 | 2015-06-23 | Qualcomm Incorporated | User input back channel from a wireless sink device to a wireless source device for multi-touch gesture wireless displays |
US9413803B2 (en) | 2011-01-21 | 2016-08-09 | Qualcomm Incorporated | User input back channel for wireless displays |
US9787725B2 (en) | 2011-01-21 | 2017-10-10 | Qualcomm Incorporated | User input back channel for wireless displays |
US9582239B2 (en) | 2011-01-21 | 2017-02-28 | Qualcomm Incorporated | User input back channel for wireless displays |
US8964783B2 (en) | 2011-01-21 | 2015-02-24 | Qualcomm Incorporated | User input back channel for wireless displays |
US10135900B2 (en) | 2011-01-21 | 2018-11-20 | Qualcomm Incorporated | User input back channel for wireless displays |
US10108386B2 (en) | 2011-02-04 | 2018-10-23 | Qualcomm Incorporated | Content provisioning for wireless back channel |
US8674957B2 (en) | 2011-02-04 | 2014-03-18 | Qualcomm Incorporated | User input device for wireless back channel |
US9503771B2 (en) | 2011-02-04 | 2016-11-22 | Qualcomm Incorporated | Low latency wireless display for graphics |
US9525998B2 (en) | 2012-01-06 | 2016-12-20 | Qualcomm Incorporated | Wireless display with multiscreen service |
GB201309702D0 (en) * | 2013-05-30 | 2013-07-17 | Certivox Ltd | Security |
EP2860905A1 (en) * | 2013-10-09 | 2015-04-15 | Thomson Licensing | Method for ciphering a message via a keyed homomorphic encryption function, corresponding electronic device and computer program product |
US9946858B2 (en) | 2014-05-05 | 2018-04-17 | Analog Devices, Inc. | Authentication system and device including physical unclonable function and threshold cryptography |
US10432409B2 (en) | 2014-05-05 | 2019-10-01 | Analog Devices, Inc. | Authentication system and device including physical unclonable function and threshold cryptography |
US9672342B2 (en) | 2014-05-05 | 2017-06-06 | Analog Devices, Inc. | System and device binding metadata with hardware intrinsic properties |
US9715590B2 (en) | 2014-05-05 | 2017-07-25 | Analog Devices, Inc. | System and device for verifying the integrity of a system from its subcomponents |
US9292692B2 (en) * | 2014-05-05 | 2016-03-22 | Sypris Electronics, Llc | System and device for verifying the integrity of a system from its subcomponents |
JP6973385B2 (ja) * | 2016-05-13 | 2021-11-24 | 日本電気株式会社 | 認証システム、認証方法およびプログラム |
US10425235B2 (en) | 2017-06-02 | 2019-09-24 | Analog Devices, Inc. | Device and system with global tamper resistance |
US10958452B2 (en) | 2017-06-06 | 2021-03-23 | Analog Devices, Inc. | System and device including reconfigurable physical unclonable functions and threshold cryptography |
CN111090842B (zh) * | 2019-12-23 | 2022-04-26 | 上海源庐加佳信息科技有限公司 | 一种基于零知识证明的供应链金融客户贷款信息保护方法 |
CN117640090B (zh) * | 2024-01-25 | 2024-04-12 | 蓝象智联(杭州)科技有限公司 | 一种身份验证方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06188874A (ja) * | 1992-12-18 | 1994-07-08 | Hitachi Ltd | 署名および認証方式 |
JPH07281595A (ja) * | 1994-04-06 | 1995-10-27 | Hitachi Ltd | 認証方式 |
JPH11252070A (ja) * | 1998-03-02 | 1999-09-17 | Kdd Corp | 利用者認証方式 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5497423A (en) * | 1993-06-18 | 1996-03-05 | Matsushita Electric Industrial Co., Ltd. | Method of implementing elliptic curve cryptosystems in digital signatures or verification and privacy communication |
US6076163A (en) * | 1997-10-20 | 2000-06-13 | Rsa Security Inc. | Secure user identification based on constrained polynomials |
DE69840959D1 (de) * | 1997-12-17 | 2009-08-20 | Nippon Telegraph & Telephone | Verschlüsselungs- und Entschlüsselungsvorrichtungen für Kryptosysteme mit öffentlichem Schlüssel und Aufzeichnungsmedium mit darauf gespeicherten zugehörigen Verarbeitungsprogrammen. |
JP3812123B2 (ja) * | 1998-02-12 | 2006-08-23 | 富士ゼロックス株式会社 | 認証方法および装置 |
JP3926532B2 (ja) * | 2000-03-16 | 2007-06-06 | 株式会社日立製作所 | 情報処理装置、情報処理方法、及びカード部材 |
DE10111756A1 (de) * | 2001-03-12 | 2002-11-14 | Infineon Technologies Ag | Verfahren zur Authentikation |
JP4457651B2 (ja) * | 2003-11-27 | 2010-04-28 | 日本電気株式会社 | 証明装置及び証明方法並びにプログラム |
-
2006
- 2006-07-13 CN CN2006800013876A patent/CN101080897B/zh not_active Expired - Fee Related
- 2006-07-13 JP JP2007507586A patent/JP4555859B2/ja active Active
- 2006-07-13 WO PCT/JP2006/313970 patent/WO2007007836A1/ja active Application Filing
- 2006-07-13 US US11/792,305 patent/US8001384B2/en active Active
- 2006-07-13 DE DE602006013138T patent/DE602006013138D1/de active Active
- 2006-07-13 EP EP06768184A patent/EP1903713B1/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06188874A (ja) * | 1992-12-18 | 1994-07-08 | Hitachi Ltd | 署名および認証方式 |
JPH07281595A (ja) * | 1994-04-06 | 1995-10-27 | Hitachi Ltd | 認証方式 |
JPH11252070A (ja) * | 1998-03-02 | 1999-09-17 | Kdd Corp | 利用者認証方式 |
Non-Patent Citations (2)
Title |
---|
CSNG200000141004, 黒沢 馨 Kaoru KUROSAWA, "2move零知識証明 2 move ZKIP", 電子情報通信学会技術研究報告 Vol.90 No.125 IEICE Technical Report, 第90巻, JP, 社団法人電子情報通信学会 The Institute of Electro * |
JPN6010037650, 黒沢 馨 Kaoru KUROSAWA, "2move零知識証明 2 move ZKIP", 電子情報通信学会技術研究報告 Vol.90 No.125 IEICE Technical Report, 第90巻, JP, 社団法人電子情報通信学会 The Institute of Electro * |
Also Published As
Publication number | Publication date |
---|---|
JP4555859B2 (ja) | 2010-10-06 |
US20080133912A1 (en) | 2008-06-05 |
WO2007007836A1 (ja) | 2007-01-18 |
EP1903713B1 (en) | 2010-03-24 |
CN101080897B (zh) | 2012-09-19 |
CN101080897A (zh) | 2007-11-28 |
DE602006013138D1 (de) | 2010-05-06 |
EP1903713A4 (en) | 2009-06-17 |
EP1903713A1 (en) | 2008-03-26 |
US8001384B2 (en) | 2011-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4555859B2 (ja) | 認証システム、認証方法、証明装置、検証装置、それらのプログラム及び記録媒体 | |
US11895231B2 (en) | Adaptive attack resistant distributed symmetric encryption | |
KR101311057B1 (ko) | 컴퓨터 구현 방법, 컴퓨터 판독가능 매체, 및 컴퓨팅 장치 | |
JP6058237B1 (ja) | 暗号文変換装置、暗号文変換プログラム及び暗号文変換方法 | |
CN100583755C (zh) | 使用同源来设计密码系统 | |
US7688973B2 (en) | Encryption apparatus, decryption apparatus, key generation apparatus, program, and method | |
CA2792267C (en) | Verifying implicit certificates and digital signatures | |
US20060251247A1 (en) | Encryption apparatus, decryption apparatus, key generation apparatus, program and method therefor | |
US8139765B2 (en) | Elliptical polynomial-based message authentication code | |
TW201320700A (zh) | 署名驗證裝置、署名驗證方法、程式及記錄媒體 | |
US8250367B2 (en) | Cryptographic applications of efficiently evaluating large degree isogenies | |
JP6041864B2 (ja) | データの暗号化のための方法、コンピュータ・プログラム、および装置 | |
CN112865973A (zh) | 基于格的加密密钥和数字签名的生成方法 | |
WO2014030706A1 (ja) | 暗号化データベースシステム、クライアント装置およびサーバ、暗号化データ加算方法およびプログラム | |
JP5972181B2 (ja) | 改ざん検知装置、改ざん検知方法、およびプログラム | |
Lizama-Pérez et al. | Public hash signature for mobile network devices | |
KR102443255B1 (ko) | 래티스를 기반으로 하는 암호키 생성 방법 및 전자서명 방법 | |
US8594329B2 (en) | Non-interactive verifiable, delegated computation | |
US9735963B2 (en) | Decryption service providing device, processing device, safety evaluation device, program, and recording medium | |
WO2013153628A1 (ja) | 演算処理システムおよび演算結果認証方法 | |
US20210226791A1 (en) | Encryption system, encryption apparatus, decryption apparatus, encryption method, decryption method, and program | |
CN115883212A (zh) | 信息处理方法、装置、电子设备和存储介质 | |
KR20100003093A (ko) | 암호문 크기를 줄이기 위한 공개키 기반의 검색가능암호문생성 방법과, 그에 따른 공개키 기반의 데이터 검색 방법 | |
Youn et al. | Design of additive homomorphic encryption with multiple message spaces for secure and practical storage services over encrypted data | |
WO2021248227A1 (en) | Methods and systems for encryption, decryption, signing and verification of digital messages |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20100706 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100716 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130723 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4555859 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |