[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP6294882B2 - 鍵保管装置、鍵保管方法、及びそのプログラム - Google Patents

鍵保管装置、鍵保管方法、及びそのプログラム Download PDF

Info

Publication number
JP6294882B2
JP6294882B2 JP2015527247A JP2015527247A JP6294882B2 JP 6294882 B2 JP6294882 B2 JP 6294882B2 JP 2015527247 A JP2015527247 A JP 2015527247A JP 2015527247 A JP2015527247 A JP 2015527247A JP 6294882 B2 JP6294882 B2 JP 6294882B2
Authority
JP
Japan
Prior art keywords
key
information
storage device
key storage
arithmetic processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015527247A
Other languages
English (en)
Other versions
JPWO2015008623A1 (ja
Inventor
鉄太郎 小林
鉄太郎 小林
山本 剛
剛 山本
麗生 吉田
麗生 吉田
具英 山本
具英 山本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2015008623A1 publication Critical patent/JPWO2015008623A1/ja
Application granted granted Critical
Publication of JP6294882B2 publication Critical patent/JP6294882B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/76Proxy, i.e. using intermediary entity to perform cryptographic operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Storage Device Security (AREA)

Description

本発明は、演算処理に用いられる鍵を秘密に管理する鍵保管装置、鍵保管方法、及びそのプログラムに関する。
特許文献1が、演算処理に用いられる秘密鍵を秘密に保管する鍵保管装置の従来技術として知られている。特許文献1では、鍵保管装置が、端末装置から公開鍵暗号方式に則って暗号化された暗号文を受け取り、秘密鍵を用いて、暗号文を復号し、復号結果を端末装置に出力する。
特開2012−151756号公報
鍵保管装置は、鍵を用いた演算処理を提供している期間(以下「演算処理提供期間」という)の終了前には、鍵を秘密に保管し、外部に出力してはいけないものとする。また、鍵保管装置は、演算処理提供期間の終了に伴い鍵を、演算処理を提供される利用者に対して出力するものとする。この前提は、発明者が見出した以下の問題に対処するためのものである。例えば、特許文献1の復号システムにおいて、演算処理提供期間を終了した際に、秘密鍵を利用者に対して配布しない場合、利用者は暗号文を復号する術を失うという問題が生じ得る。この問題を解消するためには、利用者の利便性を考慮して復号処理の提供の終了に伴い、秘密鍵を利用者に対して配布する必要があると考えられる。
しかしながら、演算処理提供期間の終了に伴い秘密鍵を演算処理の利用者に対して出力すると、新たに以下の問題が生じ得る。
演算処理提供期間の終了後に、攻撃者が鍵保管装置に不正侵入し、全く同じ構成でサービスを再開する可能性がある。仮に、演算処理提供期間の終了後に、鍵保管装置から秘密鍵を消去したとしても、攻撃者は直接または間接的に(正規の利用者を介して)配布された秘密鍵を用いて全く同じ構成でサービスを再開することができる。そうすると、演算処理提供期間終了を知らない利用者やサービスが再開したと思った利用者が暗号文を攻撃者が操る鍵保管装置に対して送信し、情報が流出するという問題が生じ得る。
本発明は、演算処理提供期間中の構成と同じ構成でサービスを再開することを防止する鍵保管装置、鍵保管方法、及びそのプログラムを提供することを目的とする。
上記の課題を解決するために、本発明の第一の態様によれば、鍵保管装置は、鍵を用いた演算処理を提供している期間の終了前は鍵を秘密に管理し、その期間の終了に伴い鍵を出力するものとし、第一情報に対して一方向性関数を作用させて鍵を生成する一方向性関数部と、期間において、第一情報を秘密に保管する保管部と、期間の終了に伴い、保管部から第一情報を消去し、鍵を出力する終了判定部と、を含む。
本発明の第一の態様によれば、攻撃者が演算処理提供期間中の構成と同じ構成でサービスを再開することを防止することができる。
第一実施形態に係る鍵保管装置の機能ブロック図。 第一実施形態に係る鍵保管装置の処理フローを示す図。
以下、本発明の実施形態について説明する。なお、以下の説明に用いる図面では、同じ機能を持つ構成部や同じ処理を行うステップには同一の符号を記し、重複説明を省略する。
<第一実施形態>
図1及び図2を用いて、第一実施形態に係る鍵保管装置100を説明する。図1は第一実施形態に係る鍵保管装置100の機能ブロック図を、図2は第一実施形態に係る鍵保管装置100の処理フローを示す。
鍵保管装置100、端末装置20−1及び端末装置20−2は、通信回線30を介して互いに接続されている。
鍵保管装置100、端末装置20−1及び端末装置20−2は、ルータ装置、サーバ装置、携帯電話、ICカードなどの計算機能及び記憶機能を備えた機器や、特別なプログラムが読み込まれたCPUやRAMを備えた公知又は専用のコンピュータなどである。
鍵保管装置100は、演算処理部101、一方向性関数部103、保管部105及び終了判定部107を含む。
鍵保管装置100は、演算処理提供期間終了前は鍵sを秘密に管理し、その演算処理提供期間の終了に伴い鍵sを出力するものとする。ここで「管理」とは、保管だけではなく、生成を含む概念であり、その他、追加、変更、削除、端末装置や情報τとの対応付け等を含む概念であってもよい。
鍵保管装置100は、演算処理提供期間終了前、端末装置20−1から演算処理の対象となる情報τを受け取り、鍵sを用いて、所定の演算処理を行い、演算結果zを端末装置20−1に送信する。
保管部105は、演算処理の提供に先立ち、第一情報s’を秘密に保管しておく。
終了判定部107は、演算処理提供期間の終了に伴い、保管部105から第一情報s’を消去し、端末装置20−1に鍵sを出力する(図中、一点鎖線で表す)。
終了判定部107は、情報τを受け取ると、演算処理提供期間が終了しているか否かを判定する(s1)。演算処理提供期間が終了している場合、終了判定部107は、演算処理提供期間が終了している旨のエラーメッセージを端末装置20−1に送信する(s2)。一方、演算処理提供期間が終了していない場合、終了判定部107は、情報τを演算処理部101に出力し、一方向性関数部103に鍵sを要求する(s3)。
一方向性関数部103は、鍵sを要求されると、保管部105から第一情報s’を取り出す。一方向性関数部103は、第一情報s’に対して一方向性関数を作用させて鍵sを生成し(s4)、鍵sを演算処理部101に出力する。例えば、一方向性ハッシュ関数Hash()が存在すると仮定し、一方向性関数部103は、第一情報s’に対してこの一方向性ハッシュ関数Hash()を作用させて鍵s=Hash(s’)を生成する。
演算処理部101は、鍵sを用いて所定の演算処理を行い、演算結果zを端末装置20−1に送信する(s5)。演算処理部101は、鍵sを秘密に保管しておいてもよいし、演算処理を行った後に消去してもよい。鍵sを秘密に保管しておく場合、演算処理部101は、次回から上記s3(鍵の要求)、s4(鍵の生成)を省略することができる。一方、演算処理を行った後に演算処理部101が鍵sを消去する場合には、鍵保管装置100の内部に鍵sは存在しなくなり、より安全性が高まる。また、情報τを受け取る前に、鍵保管装置100が、事前に鍵sを生成しておき、鍵sを秘密に保管しておいてもよい。要は、鍵保管装置100が、演算処理提供期間終了前は鍵sを秘密に管理し、演算処理提供期間の終了に伴い、鍵保管装置100(より詳しくいうと保管部105)から第一情報s’を消去し、利用者に(この例では、端末装置20−1)に鍵sを出力する構成とすればよい。
演算処理としては、暗号化、復号、署名生成等が考えられる。さらに、暗号化には、共通鍵暗号方式によるものが考えられる。復号には、共通鍵暗号方式や公開鍵暗号方式によるものが考えられる。共通鍵暗号方式としてはAESやDES等が考えられ、鍵sは共通鍵である。公開鍵暗号方式としては、RSA暗号、ElGamal暗号、楕円ElGamal暗号等が考えられ、鍵sは秘密鍵である。署名生成には、RSA署名等が考えられ、鍵sは署名鍵である。以下に、演算処理を例示する。
(共通鍵暗号方式による暗号化、復号)
共通鍵暗号方式の一例について説明する。まず、鍵保管装置100は、第一情報s’を生成する。
端末装置20−1は、通信回線30を介して鍵保管装置100に対し、平文Mの暗号化を依頼する。
鍵保管装置100は、平文Mを受け取り、s1〜s4(演算処理提供期間の判定、鍵の要求、鍵生成)を行う。鍵保管装置100は、共通鍵c(=s)を用いて、平文Mを暗号化し、暗号文C=Enc(M,c)を端末装置20−1に送信する(s5)。この場合、鍵保管装置100は、所定の演算処理として暗号化を行い、演算処理の対象となる情報τとして平文Mを受け取り、演算結果zとして暗号文Cを出力する。
端末装置20−1は、暗号文Cを受け取り、これを記憶する。この例では、この暗号文Cを端末装置20−2に送信する。
端末装置20−2は、暗号文Cを受け取り、これを記憶する。端末装置20−2は、通信回線30を介して鍵保管装置100に対し、暗号文Cの復号を依頼する。
鍵保管装置100は、暗号文Cを受け取り、s1〜s4(演算処理提供期間の判定、鍵の要求、鍵生成)を行う。共通鍵cを用いて、暗号文Cを復号し、復号結果M'=Dec(C,c)を端末装置20−2に送信する(s5)。この場合、鍵保管装置100は、所定の演算処理として復号を行い、演算処理の対象となる情報τとして暗号文Cを受け取り、演算結果zとして復号結果M'を出力する。この例では、演算処理を依頼する端末装置20−1及び20−2が鍵保管装置100の利用者である。
(RSA暗号を用いた公開鍵暗号方式について)
RSA暗号を用いた公開鍵暗号方式の一例について説明する。まず、tをセキュリティパラメータとする。p,q(p≠q)をt/2ビットの素数とし、m=pqとする。eをφ(m)未満の正の整数で、φ(m)と互いに素な数とし、dをφ(m)を法としたeの逆数(de≡1(modφ(m)))とする。ここでφ(m)はmのオイラー関数で、この場合は(p-1)(q-1)に等しい。0以上m未満の整数の集合をZmで表す。Mを平文空間Zmの元とする。
RSA暗号を用いた公開鍵暗号方式では、公開鍵y=(e,m)、秘密鍵d(=s)とする。例えば、鍵保管装置100は、第一情報s’を生成し、第一情報s’に対して一方向性ハッシュ関数Hash()を作用させて秘密鍵d=Hash(s’)を生成する。さらに、鍵保管装置100は、RSA暗号を用いた公開鍵暗号方式に則って、秘密鍵dに対応する公開鍵y=(e,m)を生成する。鍵保管装置100は、秘密鍵dを秘密に保管してもよいし、削除してもよい。この例では、削除するものとする。また、鍵保管装置100は、公開鍵y=(e,m)を公開する。
端末装置20−2は、公開鍵y=(e,m)を用いて、平文Mを次式により暗号化し、暗号文Cを端末装置20−1に送信する。
C=Me mod m
ここでは、群で定義された演算を乗法的に表現する。すなわちGを群とし、α∈Gに対する「αb」は、群Gで定義された演算をαに対してb回作用させることを意味する。
端末装置20−1は、暗号文Cを受け取り、記憶し、この暗号文Cの復号を鍵保管装置100に依頼する。
鍵保管装置100は、暗号文Cを受け取り、s1〜s4(演算処理提供期間の判定、鍵の要求、鍵生成)を行う。秘密鍵dを用いて、暗号文Cを復号し、復号結果M'=Cdを端末装置20−1に送信する(s5)。この場合、鍵保管装置100は、所定の演算処理として復号を行い、演算処理の対象となる情報τとして暗号文Cを受け取り、演算結果zとして復号結果M'を出力する。
端末装置20−1は、公開鍵y=(m,e)と復号結果M'=Cdとを用いて、復号文M"=Cdmod mを求める。この例及び以下の例では、演算処理を依頼する端末装置20−1が鍵保管装置100の利用者である。
(ElGamal暗号)
ElGamalを用いた公開鍵暗号方式の一例について説明する。tをセキュリティパラメータとする。巡回群Gで、位数qが素数であり、かつqのビット数がtであるものが選ばれる。Gの生成元gが選ばれる。xが{0,…,q-1}からランダムに選ばれる。h=gxとする。平文空間はGであり、MはGの元である。暗号文空間はG2であり、(C1,C2)∈G×Gである。
ElGamal暗号を用いた公開鍵暗号方式では、公開鍵y=(G,q,g,h=gx)、秘密鍵x(=s)とする。例えば、鍵保管装置100は、第一情報s’を生成し、第一情報s’に対して一方向性ハッシュ関数Hash()を作用させて秘密鍵x=Hash(s’)を生成する。さらに、鍵保管装置100は、ElGamalを用いた公開鍵暗号方式に則って、秘密鍵xに対応する公開鍵y=(G,q,g,h=gx)を生成する。鍵保管装置100は、秘密鍵xを秘密に保管してもよいし、削除してもよい。この例では、削除するものとする。また、鍵保管装置100は、公開鍵y=(G,q,g,h=gx)を公開する。
端末装置20−2は、公開鍵y=(G,q,g,h=gx)を用いて、情報Mを次式により暗号化する。
C=(C1,C2)
C1=gr
C2=Mhr
ただし、rは端末装置20−2によって生成される乱数であり、0<r<qからランダムに選ばれる整数である。ここでは、群で定義された演算を乗法的に表現する。
端末装置20−2は、暗号文Cを端末装置20−1に送信する。
端末装置20−1は、暗号文Cを受け取り、記憶し、この暗号文Cの復号を鍵保管装置100に依頼する。
鍵保管装置100は、暗号文Cを受け取り、s1〜s4(演算処理提供期間の判定、鍵の要求、鍵生成)を行う。鍵保管装置100は、秘密鍵xを用いて、暗号文Cを復号し、復号結果M'=C2/C1 xを端末装置20−1に送信する(s5)。
なお、端末装置20−1は、暗号文Cの一部C1を鍵保管装置100に送信してもよい。この場合、鍵保管装置100は、s1〜s4を行い、暗号文Cの一部C1と秘密鍵xとを用いて、復号結果C1 xを求め、端末装置20−1に送信する。さらに、端末装置20−1は、暗号文の他の部分C2と復号結果C1 xとを用いて次式により復号結果M'を求める。
M'=C2/C1 x
(楕円ElGamal暗号)
Eを楕円曲線パラメータ、J及びHを楕円曲線E上の点、qを楕円曲線E上の点Jの位数とする。楕円ElGamal暗号を用いた公開鍵暗号方式では、公開鍵y=(E,q,J,H=xJ)、秘密鍵x(=s)とする。例えば、鍵保管装置100は、第一情報s’を生成し、第一情報s’に対して一方向性ハッシュ関数Hash()を作用させて秘密鍵x=Hash(s’)を生成する。さらに、鍵保管装置100は、ElGamalを用いた公開鍵暗号方式に則って、秘密鍵xに対応する公開鍵y=(E,q,J,H=xJ)を生成する。鍵保管装置100は、秘密鍵xを秘密に保管してもよいし、削除してもよい。この例では、削除するものとする。また、鍵保管装置100は、公開鍵y=(E,q,J,H=xJ)を公開する。
端末装置20−2は、公開鍵y=(E,q,J,H=xJ)を用いて、情報Mを次式により暗号化する。
C=(C1,C2)
C1=rJ
C2=M+rH
ただし、rは情報記憶装置11によって生成される乱数であり、0<r<qからランダムに選ばれる整数である。ここでは、群で定義された演算を加法的に表現する。
端末装置20−2は、暗号文Cを端末装置20−1に送信する。
端末装置20−1は、暗号文Cを受け取り、記憶し、この暗号文Cの復号を鍵保管装置100に依頼する。
鍵保管装置100は、暗号文Cを受け取り、s1〜s4(演算処理提供期間の判定、鍵の要求、鍵生成)を行う。秘密鍵xを用いて、暗号文Cを復号し、復号結果M'=C2-xC1を端末装置20−1に送信する(s5)。
なお、端末装置20−1は、暗号文Cの一部C1を鍵保管装置100に送信してもよい。この場合、鍵保管装置100は、s1〜s4を行い、暗号文Cの一部C1と秘密鍵xとを用いて、復号結果xC1を求め、端末装置20−1に送信する。さらに、端末装置20−1は、暗号文の他の部分C2と復号結果xC1とを用いて次式により復号結果M'を求める。
M'=C2-xC1
(RSA署名)
RSA暗号を用いた署名方式の一例について説明する。
RSA暗号を用いた公開鍵暗号方式では、公開鍵y=(e,m)、署名鍵v(=s)とする。例えば、鍵保管装置100は、第一情報s’を生成し、第一情報s’に対して一方向性ハッシュ関数Hash()を作用させて署名鍵v=Hash(s’)を生成する。さらに、鍵保管装置100は、RSA暗号を用いた公開鍵暗号方式に則って、署名鍵vに対応する公開鍵y=(e,m)を生成する。鍵保管装置100は、署名鍵vを秘密に保管してもよいし、削除してもよい。この例では、削除するものとする。また、鍵保管装置100は、公開鍵y=(e,m)を公開する。
端末装置20−1は、平文Mに対する署名の生成を鍵保管装置100に依頼する。
鍵保管装置100は、平文Mを受け取り、s1〜s4を行う。鍵保管装置100は、署名鍵vを用いて、平文Mに対する署名σ=Mvを生成し、署名σを端末装置20−1に送信する(s5)。この場合、鍵保管装置100は、所定の演算処理として署名生成を行い、演算処理の対象となる情報τとして平文Mを受け取り、演算結果として署名σを出力する。
端末装置20−1は、署名σを受け取り、記憶し、端末装置20−2に平文Mとその署名σをに送信する。
端末装置20−2は、鍵保管装置100から公開鍵y=(m,e)を受け取り、平文Mと電子署名σと公開鍵y=(m,e)とを用いて、次式が成り立つか否か検証し、成り立つ場合には電子署名σが真正であると判断する。
M=σe mod m
<効果>
一方向性関数を用いて、第一情報s'から鍵sを求めることはできるが、鍵sから第一情報s'を求めることは一方向性関数の逆演算を行うことを意味し、不可能である。そのため、演算処理提供期間終了後に、第一情報s'を消去すると、仮に鍵sを持っていたとしても、攻撃者が演算処理提供期間中の構成と同じ構成でサービスを再開することはできない。
<変形例>
本実施形態では、鍵保管装置100が演算処理部101を備えているが、演算処理部101を別装置として構成してもよい。その場合には、演算処理装置から鍵保管装置100に対して秘密鍵が要求される。
本実施形態の暗号化処理、復号処理では、ある端末装置が暗号文を他の端末装置に送信しているが、ある端末装置が暗号文を送信せずに、記憶しておき、その端末装置自身が暗号文の復号を鍵保管装置100に依頼してもよい。例えば、端末装置20−1内部の情報を暗号化し、端末装置20−1自身でも復号できない構成とすることで、端末装置20−1の盗難や紛失の際にも、情報の流出を防ぐことができる。
<第二実施形態>
第一実施形態と異なる部分を中心に説明する。第二実施形態では、クラウド鍵管理型暗号方式(特許文献1参照)を利用して、対象となる情報の復号を依頼する。
第一実施形態では、鍵保管装置100の管理者が、暗号文Cの復号結果を知ることができる。したがって、鍵保管装置100の管理者が端末装置20−1の使用者と異なる場合、端末装置20−1の使用者のみが知るべき情報が、鍵保管装置100の管理者に知られる可能性がある。これに対して第二実施形態では、鍵保管装置100がランダム帰着可能な暗号文(かく乱情報)の復号を行う点が第一実施形態と相違する。ランダム帰着可能な暗号化方式は、ランダム化アルゴリズムと復元アルゴリズムとからなる。ランダム化アルゴリズムは、暗号文と乱数とを用いて別の暗号文を出力する確率アルゴリズムで、出力は入力によらずランダムに選ばれた暗号文と識別できない確率分布に従う。復元アルゴリズムは、ランダム化アルゴリズムの出力である別の暗号文を復号した結果とランダム化アルゴリズムで用いられた乱数を入力として、もとの暗号文を復号した平文を出力するアルゴリズムである。このような暗号方式は、例えばElGamal暗号、楕円ElGamal 暗号、RSA暗号、Pailler暗号などの準同型暗号方式を用いて構成できる。第二実施形態は、準同型暗号方式を用いてランダム自己帰着可能な暗号方式を構成した例を示しながら記述する。
第二実施形態では演算処理が、鍵sを用いて、乱数rによって元の情報との関係をかく乱させたかく乱情報に対して行われる。
例えば、演算処理として公開鍵暗号方式による復号を行う場合、以下のように処理が行われる。
端末装置20−1は、乱数rを生成し、乱数rによって暗号文Cとの関係をかく乱させたかく乱情報τ(演算処理の対象となる情報)を生成する。乱数rは、図示しない記憶部に記憶しておく。言い換えると、端末装置20−1は、暗号方式のランダム自己帰着性から定義されるランダム化アルゴリズムに則り、暗号文Cと乱数rとに対応するかく乱情報τを生成する。例えば暗号文Cが準同型暗号方式の暗号文である場合、それと同じ準同型暗号方式に則って公開鍵yで乱数rを暗号化して得られる暗号文(乱数暗号文)をEnc(y,r)とし、端末装置20−1は、Enc(y,r)とCとの乗法によってかく乱情報τ=Enc(y,r)・Cを生成する。
端末装置20−1は、鍵保管装置100にかく乱情報τを送信し、その復号を依頼する。
鍵保管装置100は、かく乱情報τを受け取り、s1〜s4を行う。
鍵保管装置100の演算処理部101は、秘密鍵d(=s)を用いて、前述の準同型暗号化方式に則って、かく乱情報τを復号し、復号結果z=Dec(τ,d)を端末装置20−1に送信する(s5)。端末装置20−1は、復号結果zを受け取る。
端末装置20−1は、図示しない記憶部から乱数rを取り出し、暗号方式のランダム自己帰着性から定義される復元アルゴリズムに則り、かく乱情報τの復号結果zと乱数rとを用いて暗号文Cの復号結果M'を求める。例えば前述したかく乱情報τ=Enc(y,r)・Cである例の場合、端末装置20−1は、乱数rの逆元r−1を用い、zと元r−1との乗法M’=(r-1)・zによって暗号文Cの復号結果M’を得ることができる。これは準同型暗号方式の暗号化関数および復号関数が準同型性を持つことに基づく。
<効果>
このような構成により、第一実施形態と同様の効果を得ることができる。さらに本実施形態では、鍵保管装置100で復号されるのは暗号文Cと乱数rとに対応するかく乱情報τであり、暗号文Cそのものではない。鍵保管装置100はかく乱情報τの復号結果zを得ることができても、鍵保管装置100は乱数rを知らないため復号結果zから暗号文Cの復号結果M'を復元することはできない。これにより、鍵保管装置100の管理者に暗号文Cの復号結果M'が知られることを防止できる。なお、第二実施形態の構成と、他の公開鍵暗号方式(例えば、ElGamal暗号、楕円ElGamal暗号等)による復号や、共通鍵暗号方式による暗号化及び復号、RSA署名等とを組み合わせてもよい。
<その他の変形例>
本発明は上記の実施形態及び変形例に限定されるものではない。例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
<プログラム及び記録媒体>
また、上記の実施形態及び変形例で説明した各装置における各種の処理機能をコンピュータによって実現してもよい。その場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させてもよい。
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶部に格納する。そして、処理の実行時、このコンピュータは、自己の記憶部に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実施形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよい。さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、プログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
また、コンピュータ上で所定のプログラムを実行させることにより、各装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
20−1,20−2 端末装置
100 鍵保管装置
101 演算処理部
103 一方向性関数部
105 保管部
107 終了判定部

Claims (5)

  1. 鍵を保管する鍵保管装置であって、
    当該鍵保管装置の演算処理部が鍵を用いた演算処理サービスを提供し、当該鍵保管装置は前記鍵を用いた演算処理サービスを提供している期間の終了前は前記鍵を秘密に管理し、かつ、当該期間中に入力された情報に対して前記演算処理部に当該情報と鍵を入力することにより前記演算処理サービスを行わせ、前記期間の終了に伴い前記鍵を利用者の端末装置に対して出力するものとし、
    第一情報に対して一方向性関数を作用させて前記鍵を生成する一方向性関数部と、
    前記期間において、前記第一情報を秘密に保管する保管部と、
    前記期間の終了に伴い、前記保管部から前記第一情報を消去し、前記鍵を前記演算処理サービスが提供される利用者の端末装置に対して出力し、かつ、前記期間の終了の後に入力された情報に対してエラーメッセージを出力する終了判定部と、を含む、
    鍵保管装置。
  2. 請求項1記載の鍵保管装置であって、
    前記演算処理サービスが、前記鍵を用いて、乱数rによって元の情報との関係をかく乱させたかく乱情報に対して行われるものである、
    鍵保管装置。
  3. 鍵を保管する鍵保管装置を用いた鍵保管方法であって、
    当該鍵保管装置の演算処理部が鍵を用いた演算処理サービスを提供し、当該鍵保管装置は前記鍵を用いた演算処理サービスを提供している期間の終了前は前記鍵を秘密に管理し、かつ、当該期間中に入力された情報に対して前記演算処理部に当該情報と鍵を入力することにより前記演算処理サービスを行わせ、前記期間の終了に伴い前記鍵を利用者の端末装置に対して出力するものとし、
    一方向性関数部が、第一情報に対して一方向性関数を作用させて前記鍵を生成する一方向性関数ステップと、
    保管部が、前記期間において、前記第一情報を秘密に保管する保管ステップと、
    終了判定部が、前記期間の終了に伴い、前記第一情報を消去し、前記鍵を前記演算処理サービスが提供される利用者の端末装置に対して出力し、かつ、前記期間の終了の後に入力された情報に対してエラーメッセージを出力する終了判定ステップと、を含む、
    鍵保管方法。
  4. 請求項3記載の鍵保管方法であって、
    前記演算処理サービスが、前記鍵を用いて、乱数rによって元の情報との関係をかく乱させたかく乱情報に対して行われるものである、
    鍵保管方法。
  5. 請求項1または請求項2記載の鍵保管装置として、コンピュータを機能させるためのプログラム。
JP2015527247A 2013-07-18 2014-07-02 鍵保管装置、鍵保管方法、及びそのプログラム Active JP6294882B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013149153 2013-07-18
JP2013149153 2013-07-18
PCT/JP2014/067639 WO2015008623A1 (ja) 2013-07-18 2014-07-02 鍵保管装置、鍵保管方法、及びそのプログラム

Publications (2)

Publication Number Publication Date
JPWO2015008623A1 JPWO2015008623A1 (ja) 2017-03-02
JP6294882B2 true JP6294882B2 (ja) 2018-03-14

Family

ID=52346092

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015527247A Active JP6294882B2 (ja) 2013-07-18 2014-07-02 鍵保管装置、鍵保管方法、及びそのプログラム

Country Status (5)

Country Link
US (1) US20160148002A1 (ja)
EP (1) EP3010173B1 (ja)
JP (1) JP6294882B2 (ja)
CN (1) CN105409159B (ja)
WO (1) WO2015008623A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10700870B2 (en) * 2015-09-22 2020-06-30 Veridify Security Inc. Signature generation and verification system
US10523440B2 (en) 2015-09-22 2019-12-31 Securerf Corporation Signature generation and verification system
JP6556955B2 (ja) * 2016-07-19 2019-08-07 日本電信電話株式会社 通信端末、サーバ装置、プログラム
JP6719339B2 (ja) * 2016-08-30 2020-07-08 三菱電機株式会社 暗号システム、暗号方法及び暗号プログラム

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10301491A (ja) * 1997-04-28 1998-11-13 Ibm Japan Ltd 暗号通信方法とシステム
JPH11122240A (ja) * 1997-10-17 1999-04-30 Fuji Xerox Co Ltd 復号装置および方法ならびにアクセス資格認証装置および方法
JP2001237817A (ja) * 2000-02-24 2001-08-31 Nippon Telegr & Teleph Corp <Ntt> 鍵寄託方法及びシステム及び鍵寄託プログラムを格納した記憶媒体
JP2002208216A (ja) * 2001-01-12 2002-07-26 Victor Co Of Japan Ltd コンテンツ記録再生装置
JP2003069547A (ja) * 2001-08-29 2003-03-07 Fujitsu Ltd マルチキャスト通信システム
KR20050026478A (ko) * 2002-07-12 2005-03-15 인그리안 네트웍스, 인코퍼레이티드 암호화된 네트워크
JP2004186814A (ja) * 2002-11-29 2004-07-02 Fujitsu Ltd 共通鍵暗号化通信システム
JP3927151B2 (ja) * 2003-05-30 2007-06-06 株式会社東芝 記憶装置
JP2005122359A (ja) * 2003-10-15 2005-05-12 Sanyo Electric Co Ltd コンテンツ処理装置
US20050157872A1 (en) * 2003-11-12 2005-07-21 Takatoshi Ono RSA public key generation apparatus, RSA decryption apparatus, and RSA signature apparatus
JP2006246359A (ja) * 2005-03-07 2006-09-14 Nec Corp 一時的なvpnサービスの提供方法、vpnシステム、vpn装置、及び、プログラム
JP4566060B2 (ja) * 2005-05-02 2010-10-20 株式会社日立製作所 映像記録システム
JP2006318291A (ja) * 2005-05-13 2006-11-24 Fujitsu Ltd 無線タグ管理プログラム
JP4522327B2 (ja) * 2005-06-14 2010-08-11 三洋電機株式会社 家庭内コンテンツ共同利用システム、ホームサーバ、ホーム機器および家庭内コンテンツ共同利用方法
JP2008103988A (ja) * 2006-10-19 2008-05-01 Fujitsu Ltd 暗号通信システム、装置、方法及びプログラム
TWI375447B (en) * 2008-06-27 2012-10-21 Ind Tech Res Inst Multi-layer encryption and decryption system and method thereof
KR101584987B1 (ko) * 2009-06-08 2016-01-13 삼성전자주식회사 데이터 송수신 장치 및 방법
KR101046992B1 (ko) * 2009-10-29 2011-07-06 한국인터넷진흥원 센서데이터 보안유지 방법, 시스템 및 기록매체
JP5489775B2 (ja) * 2010-02-23 2014-05-14 株式会社インテック 秘密鍵共有システム、方法、データ処理装置、管理サーバ、及びプログラム
CN102918796B (zh) * 2010-06-04 2015-05-20 富士通株式会社 处理装置、处理方法以及处理程序
US20120017095A1 (en) * 2010-07-19 2012-01-19 Coreguard Software Service for Encrypting and Decrypting Data
JP5506704B2 (ja) 2011-01-20 2014-05-28 日本電信電話株式会社 復号システム、鍵装置、復号方法、及びプログラム
US8631460B2 (en) * 2011-03-23 2014-01-14 CipherPoint Software, Inc. Systems and methods for implementing transparent encryption
US20120311317A1 (en) * 2011-06-02 2012-12-06 David Elrod Access-controlled customer data offloading to blind public utility-managed device
US10237060B2 (en) * 2011-06-23 2019-03-19 Microsoft Technology Licensing, Llc Media agnostic, distributed, and defendable data retention
US8862889B2 (en) * 2011-07-02 2014-10-14 Eastcliff LLC Protocol for controlling access to encryption keys
JP5973224B2 (ja) * 2012-05-10 2016-08-23 株式会社東海理化電機製作所 電子キー登録方法

Also Published As

Publication number Publication date
EP3010173B1 (en) 2019-01-16
CN105409159B (zh) 2019-09-06
JPWO2015008623A1 (ja) 2017-03-02
US20160148002A1 (en) 2016-05-26
EP3010173A1 (en) 2016-04-20
EP3010173A4 (en) 2017-03-08
WO2015008623A1 (ja) 2015-01-22
CN105409159A (zh) 2016-03-16

Similar Documents

Publication Publication Date Title
US10785019B2 (en) Data transmission method and apparatus
US8429408B2 (en) Masking the output of random number generators in key generation protocols
US10361841B2 (en) Proxy computing system, computing apparatus, capability providing apparatus, proxy computing method, capability providing method, program, and recording medium
CN109728906B (zh) 基于非对称密钥池的抗量子计算非对称加密方法和系统
JP6363032B2 (ja) 鍵付替え方向制御システムおよび鍵付替え方向制御方法
KR101866935B1 (ko) 연관된 개인 키 부분을 사용하는 보다 빠른 공개 키 암호화를 위한 시스템들 및 방법들
US10826694B2 (en) Method for leakage-resilient distributed function evaluation with CPU-enclaves
KR20150122513A (ko) 암호화 장치, 암호화 방법 및 컴퓨터 판독가능 기록매체
US20120323981A1 (en) Proxy calculation system, proxy calculation method, proxy calculation requesting apparatus, and proxy calculation program and recording medium therefor
CN109936456B (zh) 基于私钥池的抗量子计算数字签名方法和系统
CN113411345A (zh) 一种安全会话的方法和装置
CN111404952B (zh) 变电站数据加密传输方法、装置、计算机设备和存储介质
CN109921905B (zh) 基于私钥池的抗量子计算密钥协商方法和系统
JP6059347B2 (ja) 復号装置、復号能力提供装置、それらの方法、およびプログラム
CN109905229B (zh) 基于群组非对称密钥池的抗量子计算Elgamal加解密方法和系统
JP6294882B2 (ja) 鍵保管装置、鍵保管方法、及びそのプログラム
CA2742530C (en) Masking the output of random number generators in key generation protocols
CN109361506B (zh) 信息处理方法
JP7125857B2 (ja) 暗号化システム、暗号化装置、復号装置、暗号化方法、復号方法、及びプログラム
JP5850888B2 (ja) 情報記憶システム、情報記憶装置、その方法、及びプログラム
JP5752751B2 (ja) 復号システム、端末装置、署名システム、その方法、及びプログラム
CN110249334B (zh) 设备间高效安全通信的系统和方法
JP5860420B2 (ja) 安全性評価装置、およびプログラム
CN117040819A (zh) 一种基于移动云的高效外包解密访问控制方法
CN110572256A (zh) 基于非对称密钥池和隐式证书的抗量子计算非对称密钥管理方法和系统

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170216

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170829

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171117

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20171130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180129

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180216

R150 Certificate of patent or registration of utility model

Ref document number: 6294882

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150