JP2021072593A - 暗号処理システム及び暗号処理方法 - Google Patents

暗号処理システム及び暗号処理方法 Download PDF

Info

Publication number
JP2021072593A
JP2021072593A JP2019199804A JP2019199804A JP2021072593A JP 2021072593 A JP2021072593 A JP 2021072593A JP 2019199804 A JP2019199804 A JP 2019199804A JP 2019199804 A JP2019199804 A JP 2019199804A JP 2021072593 A JP2021072593 A JP 2021072593A
Authority
JP
Japan
Prior art keywords
fragment
key
decryption key
decryption
public
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
Application number
JP2019199804A
Other languages
English (en)
Other versions
JP7318490B2 (ja
Inventor
俊也 清水
Toshiya Shimizu
俊也 清水
武司 下山
Takeshi Shimoyama
武司 下山
花岡 悟一郎
Goichiro Hanaoka
悟一郎 花岡
祐介 坂井
Yusuke Sakai
祐介 坂井
星漢 辛
Seonghan Shin
星漢 辛
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2019199804A priority Critical patent/JP7318490B2/ja
Priority to EP20201995.6A priority patent/EP3817323B1/en
Priority to CN202011138212.8A priority patent/CN112784284B/zh
Priority to US17/081,491 priority patent/US11431489B2/en
Publication of JP2021072593A publication Critical patent/JP2021072593A/ja
Application granted granted Critical
Publication of JP7318490B2 publication Critical patent/JP7318490B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic 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 involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/76Proxy, i.e. using intermediary entity to perform cryptographic operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Power Engineering (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】秘密情報を分散して管理する場合に、共通鍵を生成する信頼性の高い機関を不要とすること。【解決手段】暗号データ生成装置2は、合成鍵を生成し、公開鍵と合成鍵を用いて秘密情報暗号文を生成し、秘密情報暗号文に関する署名と秘密情報暗号文を含む暗号データを公開する。各パーティ装置3は、秘密情報暗号文に関する署名を用いて暗号データの正当性を検証すると、秘密鍵を用いて復号鍵断片を生成し、復号鍵断片と復号鍵断片に関する署名とを含む断片データを公開する。断片結合装置4は、復号鍵断片に関する署名を用いて復号鍵断片の正当性を検証すると、復号鍵断片を結合して復号鍵を生成し、生成した復号鍵を用いて中間復号文を生成する。そして、断片結合装置4は、中間復号文を公開する。復号権限を有するパーティ装置3は、自装置の秘密鍵を用いて中間復号文を復号して秘密情報を復元する。【選択図】図2

Description

本発明は、暗号処理システム及び暗号処理方法に関する。
秘密情報を管理する技術として秘密情報を分散して管理する秘密分散技術がある。秘密分散技術において、例えば分散して管理するデータの量を減らしたい場合、カプセル化が行われる。図9は、カプセル化を説明するための図である。図9に示すように、カプセル化では、秘密情報は共通鍵により暗号化され、共通鍵が断片に分割されて管理される。復号時には、断片が収集されて共通鍵が復元され、元の秘密情報が復号される。
なお、従来技術として、記憶されている秘密情報の漏洩及び送信される秘密情報の漏洩によるリスクを低減する技術がある。この技術では、個人情報サービスサーバが、秘密情報を複数の割符データに分割し、ストレージサーバに記憶させ、利用者アプリサーバからの要求を受け付けると、ストレージサーバから複数の割符データを取得して、秘密情報を復元する。そして、個人情報サービスサーバは、復元された秘密情報を暗号化し、通信経路の数に応じた複数の割符データに分割し、分割された複数の割符データを複数の通信経路でそれぞれ送信する。
また、データ記憶部に記憶されている第1暗号化データを相互認証した他の装置に送信する際に、第1暗号化データを復号し、復号されたデータを送信先に対応した第2暗号化データに暗号化して送信することで、機密性の高いデータ送受信を可能にする技術がある。
特開2016−151797号公報 特開2004−48336号公報
図9に示したカプセル化には、共通鍵が不正に取得されると秘密情報が復元されるため、共通鍵を生成する信頼性の高い機関が必要であるという問題がある。
本発明は、1つの側面では、鍵を分散して管理する場合に、共通鍵を生成する信頼性の高い機関を不要とすることを目的とする。
1つの態様では、暗号処理システムは、秘密情報を暗号化する暗号データ生成装置と、公開鍵と秘密鍵の鍵ペアを有する第1の数のパーティ装置と、前記第1の数のパーティ装置に分散された断片情報を収集して結合する断片結合装置とを有する。前記暗号データ生成装置は、第1の生成部と、第2の生成部と、第1の公開部とを有する。前記第1の生成部は、前記第1の数の公開鍵から鍵復元に必要な第2の数の公開鍵を選択して合成鍵を生成する処理を、前記第1の数の公開鍵から前記第2の数の公開鍵を選択する組合せの数である第3の数の回数行うことで前記第3の数の合成鍵を生成する。前記第2の生成部は、前記第1の数のパーティ装置の中で前記秘密情報の復号権限を有する第4の数のパーティ装置の公開鍵を用いて前記秘密情報をそれぞれ暗号化して生成した該第4の数の秘密文から中間文を生成する。そして、前記第2の生成部は、前記中間文をさらに各合成鍵を用いて暗号化して第3の数の秘密情報暗号文を生成する。前記第1の公開部は、前記第3の数の秘密情報暗号文に関する第1の署名及び前記第3の数の秘密情報暗号文を含む暗号データを公開する。各パーティ装置は、第1の検証部と、第3の生成部と、第2の公開部とを有する。前記第1の検証部は、前記第1の署名を用いて前記暗号データの正当性を検証する。前記第3の生成部は、前記正当性が検証された場合に、自装置が有する秘密鍵を用いて、前記第1の数から1を引いた数のパーティ装置から前記第2の数から1を引いた数のパーティ装置を選択する組合せの数である第5の数の復号鍵断片を生成する。そして、前記第3の生成部は、前記第5の数の復号鍵断片にそれぞれ対応する該第5の数の第2の署名を生成する。前記第2の公開部は、前記第5の数の復号鍵断片及び対応する第2の署名を公開する。前記暗号データ生成装置、前記第2の署名を生成したパーティ装置以外のパーティ装置、前記断片結合装置、又は、その他の装置は、前記第5の数の復号鍵断片及び対応する前記第2の署名を用いて前記第5の数の復号鍵断片の正当性を検証する第2の検証部を有する。前記断片結合装置は、第4の生成部と、第3の公開部とを有する。前記第4の生成部は、前記第1の数のパーティ装置がそれぞれ公開した前記第5の数の復号鍵断片のうち、前記第3の数の秘密情報暗号文のいずれかに対応する前記第2の数の復号鍵断片を結合して復号鍵を生成する。そして、前記第4の生成部は、生成した復号鍵に対応する秘密情報暗号文を該生成した復号鍵で復号して前記中間文を生成する。第3の公開部は、前記第4の生成部により生成された前記中間文を公開する。各パーティ装置は、自装置が前記復号権限を有する場合に、前記第3の公開部により公開された前記中間文を自装置が有する秘密鍵を用いて復号し、前記秘密情報を復元する復号部をさらに有する。
1つの側面では、本発明は、鍵を分散して管理する場合に、共通鍵を生成する信頼性の高い機関を不要とすることができる。
図1は、実施例1に係る暗号処理システムによる暗号化及び復号化を説明するための図である。 図2は、実施例1に係る暗号処理システムの構成を示す図である。 図3は、暗号データ生成装置による処理のフローを示すフローチャートである。 図4は、パーティ装置による処理のフローを示すフローチャートである。 図5は、断片結合装置による処理のフローを示すフローチャートである。 図6は、実施例2に係るパーティ装置による処理のフローを示すフローチャートである。 図7は、実施例2に係る断片結合装置による処理のフローを示すフローチャートである。 図8は、実施例1及び2に係る暗号データ生成プログラムを実行するコンピュータのハードウェア構成を示す図である。 図9は、カプセル化を説明するための図である。
以下に、本願の開示する暗号処理システム及び暗号処理方法の実施例を図面に基づいて詳細に説明する。なお、実施例は開示の技術を限定するものではない。
まず、実施例1に係る暗号処理システムによる暗号化及び復号化について説明する。図1は、実施例1に係る暗号処理システムによる暗号化及び復号化を説明するための図である。図1において、暗号データ生成装置は、秘密情報を暗号化する。n(nは正整数)台のパーティ装置は、それぞれ公開鍵と秘密鍵の鍵ペアを有する。n台のパーティ装置のうちu(1≦u≦n)台のパーティ装置が秘密情報を復元する権限を有する。
例えば、暗号データ生成装置は、遺言書を作成する作成者が使用する装置であり、パーティ装置は、作成者以外の遺言書に関係するパーティが使用する装置である。n−1台のパーティ装置が相続人により使用され、1台のパーティ装置が弁護士により使用される。断片結合装置は、パーティ装置に分散された断片情報を収集して結合する。
また、暗号データ生成装置、各パーティ装置及び断片結合装置は、ブロックチェーンのように、情報を公開し共有できるネットワーク(以下公開ネットワーク)に接続される。また、各パーティ装置が所有する公開鍵は公開ネットワークを通じて公開される。
図1に示すように、暗号データ生成装置は、パーティ装置1、パーティ装置2、・・・、パーティ装置nがそれぞれ有する公開鍵1、公開鍵2、・・・、公開鍵nを公開ネットワークを通じて取得し、取得した公開鍵を乗算して合成鍵を生成する(1)。そして、暗号データ生成装置は、秘密情報を復元する権限を有するu台のパーティ装置の各公開鍵で秘密情報を暗号化してu個の中間文を生成する(2)。そして、暗号データ生成装置は、u個の中間文を例えば連結して、合成鍵で暗号化して秘密情報暗号文を生成し、秘密情報暗号文を公開ネットワークを通じて公開する(3)。
また、パーティ装置i(i=1、2、・・・、n)は、秘密鍵iから復号鍵断片を生成し、公開ネットワークを通じて公開する(4)。そして、断片結合装置は、n個の復号鍵断片を取得し、取得したn個の復号鍵断片を乗算して復号鍵を生成し、生成した復号鍵を用いて、秘密鍵があれば復号可能な中間復号文を生成し、公開ネットワークを通じて公開する(5)。そして、秘密情報を復元する権限を有するパーティ装置iは、秘密鍵iを用いて中間復号文を復号し、秘密情報を復元する(6)。
このように、暗号データ生成装置が、公開鍵を乗算して合成鍵を生成する。そして、暗号データ生成装置は、秘密情報を復号する権限のあるパーティ装置の公開鍵でそれぞれ暗号化した後、合成鍵で暗号化して秘密情報暗号文を生成し、秘密情報暗号文を公開する。そして、各パーティ装置が、秘密鍵を用いて復号鍵断片を生成して公開する。そして、断片結合装置が、復号鍵断片を乗算して復号鍵を生成し、復号鍵を用いて中間復号文を生成して公開する。そして、復号権限を有するパーティ装置が秘密鍵を用いて中間復号文を復号し、秘密情報を復元する。したがって、実施例1に係る暗号処理システムは、共通鍵を生成する信頼性の高い機関を不要とすることができる。
次に、実施例1に係る暗号処理システムの構成について説明する。図2は、実施例1に係る暗号処理システムの構成を示す図である。図2に示すように、暗号処理システム1は、暗号データ生成装置2と、n台のパーティ装置3と、断片結合装置4とを有する。暗号データ生成装置2、n台のパーティ装置3及び断片結合装置4は、公開ネットワーク5に接続される。
暗号データ生成装置2は、暗号データ生成者が秘密情報の暗号化に用いる装置である。暗号データ生成装置2は、公開ネットワーク通信部21と、暗号データ生成部22とを有する。公開ネットワーク通信部21は、公開ネットワーク5を通じて公開された情報を取得する。また、公開ネットワーク通信部21は、公開ネットワーク5を通じて情報を公開する。公開ネットワーク通信部21は、暗号データ送信部21aを有する。
暗号データ送信部21aは、第1の公開部の一例であり、公開ネットワーク5を通じて公開された公開鍵を取得し、取得した公開鍵を暗号データ生成依頼とともに暗号データ生成部22に渡す。また、暗号データ送信部21aは、暗号データ生成部22から暗号データを受け取り、公開ネットワーク5を通じて公開する。
暗号データ生成部22は、秘密情報の暗号化に用いる合成鍵を公開鍵を用いて生成し、復号権限を有するパーティ装置3の公開鍵と合成鍵とを用いて秘密情報を暗号化して秘密情報暗号文を生成する。そして、暗号データ生成部22は、秘密情報暗号文を含む暗号データを生成して暗号データ送信部21aに渡す。暗号データ生成部22は、合成鍵生成部22aと、暗号化部22bとを有する。
合成鍵生成部22aは、第1の生成部の一例であり、全てのパーティ装置3の公開鍵を乗算する。また、合成鍵生成部22aは、乱数を生成する。そして、合成鍵生成部22aは、公開鍵の乗算結果を、生成した乱数でべき乗することで1つの合成鍵を生成する。乱数でべき乗する理由は、公開鍵から生成される合成鍵が常に同じになることを防ぐためである。なお、合成鍵生成部22aは、生成した合成鍵をハッシュ関数を用いて固定長の合成鍵に変換してもよい。
暗号化部22bは、第2の生成部の一例であり、秘密情報の復号権限を有するu台のパーティ装置3が有する公開鍵をそれぞれ用いて秘密情報を暗号化して中間文をu個生成する。そして、暗号化部22bは、u個の中間文を連結して合成鍵により暗号化し、秘密情報暗号文を生成する。なお、暗号化部22bは、u個の中間文を連結することなく合成鍵によりそれぞれ暗号化し、u個の秘密情報暗号文を生成してもよい。
また、暗号化部22bは、公開鍵を用いて正しく暗号化が行われたか否かを検証するための暗号文署名を生成する。そして、暗号化部22bは、秘密情報暗号文、暗号文署名、乱数情報を含む暗号データを生成し、暗号データ送信部21aに渡す。
例えば、鍵ペアの生成について、巡回群Gとその生成元gが固定されており、Gとgを用いて鍵ペアが、秘密鍵sk∈Gと公開鍵pk=gskのように生成されるとする。この枠組みは楕円曲線暗号等で用いられる一般的な枠組みである。また、各パーティ装置iが所有している鍵ペアを(pki,ski)とし、pp(public parameter)=(G,g)とする。
例えば、楕円曲線暗号を用いる場合には、pp=p||a||b||gx||gyである。ここで、p、a、bは、楕円曲線y2=x3+ax+b(mod p)を定める素数p及び整数a、bである。また、gx及びgyは、楕円曲線の点のなす巡回群の生成元gのx座標及びy座標である。また、||は連結(concatenation)を表す。
また、異なる3つの暗号学的ハッシュ関数H1、H2、H3も公開ネットワークを通じて共有されるとする。これらのハッシュ関数は、例えばハッシュ関数の1つであるSHA256等を用いて、Hj(m)=SHA256(j||m)等であってよい。
また、共通鍵暗号プロトコルも公開ネットワークを通じて1つ共有されているとし、鍵KによるメッセージMの暗号化及び暗号文Cの復号を、それぞれE(K,M)、D(K,C)と表す。共通鍵暗号プロトコルは、例えば共通鍵暗号の1つであるAES(Advanced Encryption Standard)と、その暗号利用モードであるCBC(Cipher Block Chaining)モードである。
このとき、暗号化部22bは、以下のc1〜c3、c、σを生成し、c1〜c3、c、σを含む暗号データを生成し、暗号データ送信部21aに渡す。
Figure 2021072593
ここで、t∈Gは、合成鍵生成部22aにより合成鍵を生成するために生成された乱数である。tではなくc1を公開する理由は、tを特定できないようにするためである。ρ∈Gは、暗号化部22bにより暗号文署名を生成するために生成された乱数である。また、u=2、すなわち復号権限を有するパーティ装置3の数を2とし、秘密情報がpk1、pk2でそれぞれ暗号化された2つの中間文が連結されたものがmである。c3は、秘密情報暗号文であり、c1及びc2は乱数情報であり、c4及びc5は、暗号文署名に関する情報である。
なお、暗号化部22bは、例えば、ファイルから秘密情報を読み込んで暗号化する。また、読み込むファイル、復号権限を有するパーティ装置3は、例えば、暗号データ生成者によりキーボード、マウス等を使って入力される。
パーティ装置3は、秘密情報に関係するパーティが使用する装置である。パーティ装置3は、公開ネットワーク通信部31と、暗号データ検証部32と、復号鍵断片生成部33と、秘密鍵記憶部34と、復号部35とを有する。
公開ネットワーク通信部31は、公開ネットワーク5を通じて公開された情報を取得する。また、公開ネットワーク通信部31は、公開ネットワーク5を通じて情報を公開する。公開ネットワーク通信部31は、暗号データ取得部31aと、復号鍵断片送信部31bと、中間復号取得部31cとを有する。
暗号データ取得部31aは、公開ネットワーク5を通じて公開された暗号データを取得し、暗号データ検証部32に渡して暗号データの検証を依頼する。
復号鍵断片送信部31bは、第2の公開部の一例であり、暗号データ検証部32から暗号データの検証結果を受け取り、暗号データの正当性が検証された場合に、復号鍵断片の生成を復号鍵断片生成部33に要求する。そして、復号鍵断片送信部31bは、復号鍵断片生成部33が生成した断片データを受け取り、公開ネットワーク5を通じて公開する。
中間復号取得部31cは、公開ネットワーク5を通じて公開された中間復号文を取得し、取得した中間復号文を復号要求とともに復号部35に渡す。
暗号データ検証部32は、第1の検証部の一例であり、暗号データに含まれる暗号文署名に関する情報及び乱数情報を用いて暗号データの検証を行う。例えば、暗号データ検証部32は、式(4)のcについて、以下の式(6)が成立するか否かによって、暗号データの検証を行う。
Figure 2021072593
式(6)において、
Figure 2021072593
であるので、式(6)は、公開されたc1〜c3、c、σからcを計算し、計算したcが公開されたcと等しいか否かを判定することを表す。
復号鍵断片生成部33は、第3の生成部の一例であり、自装置の秘密鍵と、暗号データに含まれる乱数情報を用いて復号鍵断片を生成する。また、復号鍵断片生成部33は、生成した復号鍵断片が、パーティ装置3により正しく生成されたものであるか否かを検証するための断片署名を乱数を用いて生成する。そして、復号鍵断片生成部33は、復号鍵断片と断片署名に関する情報を含む断片データを生成して復号鍵断片送信部31bに渡す。
例えば、復号鍵断片生成部33は、断片署名に使用する乱数r∈Gを生成した後、以下のKi、di、siを生成して、断片データとして復号鍵断片送信部31bに渡す。Kiはパーティ装置iによって生成された復号鍵断片であり、di及びsiは断片署名に関する情報である。
Figure 2021072593
秘密鍵記憶部34は、秘密鍵を記憶する。秘密鍵記憶部34は、例えばディスク装置上のファイルであり、復号鍵断片生成部33は、ファイルから秘密鍵を読み出して復号鍵断片を生成する。
復号部35は、中間復号取得部31cから受け取った中間復号文を自装置の秘密鍵を用いて復号し、元の秘密情報を復元する。ただし、復号権限を有するパーティ装置3の復号部35だけが中間復号文を復号する。
断片結合装置4は、復号鍵断片を収集して復号鍵を生成し、秘密情報暗号文を復号鍵を用いて復号して中間復号文を生成する。そして、断片結合装置4は、中間復号文を公開する。断片結合装置4は、公開ネットワーク通信部41と、復号鍵断片検証部42と、中間復号文生成部43とを有する。
公開ネットワーク通信部41は、公開ネットワーク5を通じて公開された情報を取得する。また、公開ネットワーク通信部41は、公開ネットワーク5を通じて情報を公開する。公開ネットワーク通信部41は、復号鍵断片取得部41aと、検証結果送信部41bと、中間復号文送信部41cとを有する。
復号鍵断片取得部41aは、公開ネットワーク5を通じて公開された断片データを取得し、復号鍵断片検証部42に渡して復号鍵断片の検証を依頼する。
検証結果送信部41bは、復号鍵断片検証部42から復号鍵断片の検証結果を受け取り、検証の結果が正しくない復号鍵断片について情報を公開ネットワーク5を通じて公開する。
中間復号文送信部41cは、第3の公開部の一例であり、中間復号文生成部43により生成された中間復号文を受け取って、公開ネットワーク5を通じて公開する。
復号鍵断片検証部42は、第2の検証部の一例であり、パーティ装置3の復号鍵断片が当該パーティ装置3の秘密鍵によって生成されたものであるか否かを断片データに含まれる断片署名を用いて全ての復号鍵断片について検証する。例えば、復号鍵断片検証部42は、式(10)のdiについて、以下の式(12)が成立するか否かによって、復号鍵断片の検証を行う。
Figure 2021072593
式(12)において、
Figure 2021072593
であるので、式(12)は、公開されたc1〜c3、c、σ、Ki、di、siからdiを計算し、計算したdiが公開されたdiと等しいか否かを判定することを表す。
そして、復号鍵断片検証部42は、検証結果を検証結果送信部41bに渡す。また、全ての復号鍵断片が正しいことが検証すると、復号鍵断片検証部42は、中間復号文の生成を中間復号文生成部43に依頼する。なお、復号鍵断片検証部42は、暗号データ生成装置2及び断片署名を生成したパーティ装置3以外のパーティ装置3を含めて断片結合装置4以外の装置が備えてもよい。
中間復号文生成部43は、第4の生成部の一例であり、全ての復号鍵断片を乗算することにより復号鍵を生成し、生成した復号鍵を用いて秘密情報暗号文を復号して中間復号文を生成する。そして、中間復号文生成部43は、生成した中間復号文を中間復号文送信部41cに渡す。例えば、中間復号文生成部43は、Kiとc3を用いて式(15)の計算を行うことで中間復号文を生成する。
Figure 2021072593
次に、暗号データ生成装置2による処理のフローについて説明する。図3は、暗号データ生成装置2による処理のフローを示すフローチャートである。図3に示すように、暗号データ生成装置2は、パーティ装置3が公開した公開鍵を全て取得する(ステップS1)。そして、暗号データ生成装置2は、暗号化用乱数及び署名用乱数を生成する(ステップS2)。ここで、暗号化用乱数は、合成鍵の生成に用いられる乱数であり、署名用乱数は、公開鍵を用いて秘密情報が正しく暗号化されたことを検証するための暗号文署名に用いられる乱数である。
そして、暗号データ生成装置2は、公開鍵と暗号化用乱数を用いて合成鍵を生成し、復号権限のあるパーティ装置3の公開鍵と合成鍵を用いて秘密情報暗号文を生成する(ステップS3)。そして、暗号データ生成装置2は、署名用乱数を用いて暗号文署名を生成し、秘密情報暗号文、暗号文署名、乱数情報を含む暗号データを生成する(ステップS4)。そして、暗号データ生成装置2は、暗号データを公開ネットワーク5を通じて公開する(ステップS5)。
このように、暗号データ生成装置2が公開ネットワーク5を通じて暗号データを公開するので、断片結合装置4は、暗号データを用いて中間復号文を生成することができる。
次に、パーティ装置3による処理のフローについて説明する。図4は、パーティ装置3による処理のフローを示すフローチャートである。図4に示すように、パーティ装置3は、暗号データの公開まで待機し(ステップS11)、暗号データが公開されると、暗号データを取得する(ステップS12)。
そして、パーティ装置3は、暗号データ検証部32により、暗号データを検証し(ステップS13)、取得した暗号データは正しい暗号データか否かを判定する(ステップS14)。そして、取得した暗号データが正しい暗号データである場合には、パーティ装置3は、復号鍵断片生成部33により、断片データを生成し(ステップS15)、断片データを公開ネットワーク5を通じて公開する(ステップS16)。
そして、パーティ装置3は、中間復号文の公開まで待機し(ステップS17)、中間復号文が公開されると、中間復号文を取得し(ステップS18)、復号権限がある場合には、復号部35により、中間復号文から秘密情報を復号する(ステップS19)。
一方、ステップS14において、取得した暗号データが正しい暗号データでない場合には、パーティ装置3は、検証結果を公開ネットワーク5を通じて公開する(ステップS20)。
このように、パーティ装置3が断片データを公開ネットワーク5を通じて公開するので、断片結合装置4は、断片データを用いて中間復号文を生成することができる。
次に、断片結合装置4による処理のフローについて説明する。図5は、断片結合装置4による処理のフローを示すフローチャートである。図5に示すように、断片結合装置4は、断片データの公開まで待機し(ステップS31)、断片データが公開されると、断片データを取得する(ステップS32)。
そして、断片結合装置4は、復号鍵断片検証部42により、復号鍵断片を検証し(ステップS33)、取得した断片データは正しい断片データか否かを判定する(ステップS34)。そして、取得した断片データが正しい断片データである場合には、断片結合装置4は、n個の断片データが揃ったか否かを判定し(ステップS35)、揃っていない場合には、ステップS31に戻る。
一方、n個の断片データが揃った場合には、断片結合装置4は、中間復号文生成部43により、n個の復号鍵断片を用いて復号鍵を生成し、復号鍵と秘密情報暗号文を用いて中間復号文を生成する(ステップS36)。そして、断片結合装置4は、中間復号文を公開ネットワーク5を通じて公開する(ステップS37)。
一方、ステップS34において、取得した断片データが正しい断片データでない場合には、断片結合装置4は、検証結果を公開ネットワーク5を通じて公開する(ステップS38)。
このように、断片結合装置4が中間復号文を公開ネットワーク5を通じて公開するので、復号権限を有するパーティ装置3は、中間復号文を復号して秘密情報を復元することができる。
上述してきたように、実施例1では、暗号データ生成装置2は、n台のパーティ装置3の公開鍵を用いて合成鍵を生成し、復号権限を有するu台のパーティ装置3の公開鍵と合成鍵を用いて秘密情報暗号文を生成する。そして、暗号データ生成装置2は、暗号文署名を生成し、秘密情報暗号文及び暗号文署名を含む暗号データを公開する。各パーティ装置3は、暗号文署名を用いて暗号データの正当性を検証し、暗号データの正当性を検証すると、秘密鍵を用いて復号鍵断片を生成し、復号鍵断片に関する断片署名を生成する。そして、パーティ装置3は、復号鍵断片と断片署名とを含む断片データを公開する。断片結合装置4は、断片署名を用いて復号鍵断片の正当性を検証し、復号鍵断片の正当性を検証すると、復号鍵断片を結合して復号鍵を生成し、生成した復号鍵を用いて中間復号文を生成する。そして、断片結合装置4は、中間復号文を公開する。復号権限を有するパーティ装置3は、自装置の秘密鍵を用いて中間復号文を復号して秘密情報を復元する。
したがって、暗号処理システム1は、共通鍵を生成する信頼性の高い機関を不要とすることができる。また、復号権限を有するパーティ装置3だけが秘密情報を復元することができるので、暗号処理システム1は、秘密情報に対するアクセス制御を行うことができる。また、暗号処理システム1は、公開鍵と秘密鍵の鍵ペアを用いるので、パーティ装置3は秘密鍵だけを管理すればよく、パーティ装置3が管理する秘密データの量を減らすことができる。
また、実施例1では、暗号データ生成装置2は、n台のパーティ装置3の公開鍵を乗算し、乗算結果を第1の乱数でべき乗して合成鍵を生成する。また、暗号データ生成装置2は、第2の乱数を用いて暗号文署名を生成し、暗号データに2つの乱数に関する情報を含めて公開する。したがって、暗号データ生成装置2は、合成鍵及び暗号文署名をランダムなものとすることができる。
また、実施例1では、パーティ装置3は、第3の乱数を用いて断片署名を生成し、断片署名に第3の乱数の情報を含めて公開するので、断片署名をランダムなものとすることができる。
また、実施例1では、断片結合装置4は、復号鍵断片を乗算することで復号鍵を生成するので、復号鍵を簡単に生成することができる。
ところで、上記実施例1では、n台のパーティ装置3の全ての復号鍵断片を用いて復号鍵を生成する場合について説明したが、暗号処理システム1は、k(1≦k<n)台のパーティ装置3の復号鍵断片を用いて復号鍵を生成してもよい。すなわち、暗号処理システム1は、(k,n)閾値法に基づいて復号鍵を生成してもよい。そこで、実施例2では、k台のパーティ装置3の復号鍵断片を用いて復号鍵を生成する暗号処理システム1について説明する。なお、ここでは説明の便宜上、n=3、k=2、u=2の場合について説明する。また、実施例1と同じ機能部については説明を省略する。
暗号データ生成装置2の合成鍵生成部22aは、tの代わりに乱数t12、t23、t13∈Gを生成する。また、暗号化部22bは、ρの代わりにρ12、ρ23、ρ13∈Gを生成する。ここで、添え字のp、qは、それぞれ復号鍵断片を収集すべきパーティ装置3の番号を示す。例えば、t12は、パーティ装置1とパーティ装置2から復号鍵断片を収集する場合に合成鍵の生成に用いられる乱数である。
暗号データ生成装置2の暗号化部22bは、以下のc1〜c3、c、σを生成する。
Figure 2021072593
そして、暗号化部22bは、上記の添え字の12を23と13に変更してc1〜c3、c、σを含む暗号データを3セット生成する。なお、添え字が23の場合には、c3及びcの計算に用いられる公開鍵はpk2及びpk3であり、添え字が1,3の場合には、c3及びcの計算に用いられる公開鍵はpk1及びpk3である。また、暗号データには添え字が付加される。また、一般的に、n台のパーティ装置3のうち、k台のパーティ装置3の復号鍵断片を用いて復号鍵を生成する場合には、nkの数の暗号データが暗号化部22bにより生成される。
パーティ装置3の暗号データ検証部32は、自装置の番号が添え字に含まれる暗号データを検証する。なお、暗号データ検証部32は、添え字に関係なく暗号データを検証してもよい。例えば、pk1及びpk2が用いられた暗号データをパーティ装置3が検証してもよい。
パーティ装置3の復号鍵断片生成部33は、断片署名に使用する乱数rpq∈Gを生成した後、以下のKi、di、siを含む断片データを生成する。
Figure 2021072593
ただし、復号鍵断片生成部33は、自装置の番号が添え字に含まれる暗号データに対してのみ断片データを生成する。すなわち、各パーティ装置3は、それぞれ2つの断片データを生成する。例えば、パーティ装置1の復号鍵断片生成部33は、添え字12と13の暗号データに対してそれぞれ断片データを生成する。一般的に、自装置の番号以外の番号の数はn−1であり添え字における自装置の番号以外の桁数はk−1であるので、自装置の番号が添え字に含まれる暗号データの数は、n-1k-1である。
断片結合装置4の中間復号文生成部43は、3つのパーティ装置3が公開した復号鍵断片のうち2つのみを用いることによって、中間復号文を生成する。例えば、パーティ装置2及びパーティ装置3が生成した復号鍵断片から中間復号文を生成する場合には、中間復号文生成部43は、パーティ装置2及びパーティ装置3が生成した2つの断片データのうち、添え字が23の断片データを用いて中間復号文を生成する。
次に、実施例2に係るパーティ装置3による処理のフローについて説明する。図6は、実施例2に係るパーティ装置3による処理のフローを示すフローチャートである。図6に示すように、実施例2に係るパーティ装置3は、暗号データの公開まで待機し(ステップS41)、暗号データが公開されると、暗号データを取得する(ステップS42)。
そして、実施例2に係るパーティ装置3は、暗号データ検証部32により、暗号データを検証し(ステップS43)、取得した暗号データは正しい暗号データか否かを判定する(ステップS44)。そして、取得した暗号データが正しい暗号データである場合には、実施例2に係るパーティ装置3は、暗号データの添え字に自身の番号が含まれているか否かを判定する(ステップS45)。
そして、暗号データの添え字に自身の番号が含まれていない場合には、実施例2に係るパーティ装置3は、処理を終了する。一方、暗号データの添え字に自身の番号が含まれている場合には、実施例2に係るパーティ装置3は、復号鍵断片生成部33により、断片データを生成し(ステップS46)、断片データを公開ネットワーク5を通じて公開する(ステップS47)。
そして、実施例2に係るパーティ装置3は、中間復号文の公開まで待機し(ステップS48)、中間復号文が公開されると、中間復号文を取得する(ステップS49)。そして、実施例2に係るパーティ装置3は、復号権限がある場合には、復号部35により、中間復号文から秘密情報を復号する(ステップS50)。
一方、ステップS44において、取得した暗号データが正しい暗号データでない場合には、実施例2に係るパーティ装置3は、検証結果を公開ネットワーク5を通じて公開する(ステップS51)。
このように、実施例2に係るパーティ装置3が暗号データの添え字に自身の番号が含まれている場合に断片データを生成するので、断片結合装置4は、断片データを用いて中間復号文を生成することができる。
次に、実施例2に係る断片結合装置4による処理のフローについて説明する。図7は、実施例2に係る断片結合装置4による処理のフローを示すフローチャートである。図7に示すように、実施例2に係る断片結合装置4は、断片データの公開まで待機し(ステップS61)、断片データが公開されると、断片データを取得する(ステップS62)。
そして、実施例2に係る断片結合装置4は、復号鍵断片検証部42により、復号鍵断片を検証し(ステップS63)、取得した断片データは正しい断片データか否かを判定する(ステップS64)。そして、取得した断片データが正しい断片データである場合には、断片結合装置4は、添え字に対応したパーティ装置3の断片データが揃ったか否かを判定し(ステップS65)、揃っていない場合には、ステップS61に戻る。
一方、添え字に対応したパーティ装置3の断片データが揃った場合には、実施例2に係る断片結合装置4は、中間復号文生成部43により、揃った復号鍵断片を用いて復号鍵を生成し、復号鍵と秘密情報暗号文を用いて中間復号文を生成する(ステップS66)。そして、実施例2に係る断片結合装置4は、中間復号文を公開ネットワーク5を通じて公開する(ステップS67)。
一方、ステップS64において、取得した断片データが正しい断片データでない場合には、実施例2に係る断片結合装置4は、検証結果を公開ネットワーク5を通じて公開する(ステップS68)。
このように、実施例2に係る断片結合装置4が添え字に対応したパーティ装置3の断片データが揃うと中間復号文を生成するので、復号権限を有するパーティ装置3は、中間復号文を復号して秘密情報を復元することができる。
上述してきたように、実施例2では、合成鍵生成部22aはk台のパーティ装置3の公開鍵を用いてnkの数の合成鍵を生成し、暗号化部22bはnkの数の合成鍵を用いてnkの数の暗号データをk台のパーティ装置3を表す添え字を付加して生成する。そして、復号鍵断片生成部33は、自装置の秘密鍵を用いてN-1k-1の数の断片データを添え字を付加して生成する。そして、中間復号文生成部43は、1つの添え字に対応するk個の断片データから復号鍵を生成し、生成した復号鍵を用いて中間復号文を生成する。したがって、暗号処理システム1は、k個の復号鍵断片を用いて秘密情報を復元することができる。
なお、実施例1及び2では、暗号データ生成装置2、パーティ装置3及び断片結合装置4について説明したが、暗号データ生成装置2、パーティ装置3及び断片結合装置4が有する構成をソフトウェアによって実現することで、同様の機能を有する暗号データ生成プログラム、パーティプログラム及び断片結合プログラムをそれぞれ得ることができる。そこで、暗号データ生成プログラムを実行するコンピュータについて説明する。パーティプログラム及び断片結合プログラムは、同様のコンピュータにより実行される。
図8は、実施例1及び2に係る暗号データ生成プログラムを実行するコンピュータのハードウェア構成を示す図である。図8に示すように、コンピュータ50は、メインメモリ51と、CPU(Central Processing Unit)52と、LAN(Local Area Network)インタフェース53と、HDD(Hard Disk Drive)54とを有する。また、コンピュータ50は、スーパーIO(Input Output)55と、DVI(Digital Visual Interface)56と、ODD(Optical Disk Drive)57とを有する。
メインメモリ51は、プログラムやプログラムの実行途中結果などを記憶するメモリである。CPU52は、メインメモリ51からプログラムを読み出して実行する中央処理装置である。CPU52は、メモリコントローラを有するチップセットを含む。
LANインタフェース53は、コンピュータ50をLAN経由で他のコンピュータに接続するためのインタフェースである。HDD54は、プログラムやデータを格納するディスク装置であり、スーパーIO55は、マウスやキーボードなどの入力装置を接続するためのインタフェースである。DVI56は、液晶表示装置を接続するインタフェースであり、ODD57は、DVDの読み書きを行う装置である。
LANインタフェース53は、PCIエクスプレス(PCIe)によりCPU52に接続され、HDD54及びODD57は、SATA(Serial Advanced Technology Attachment)によりCPU52に接続される。スーパーIO55は、LPC(Low Pin Count)によりCPU52に接続される。
そして、コンピュータ50において実行される暗号データ生成プログラムは、コンピュータ50により読み出し可能な記録媒体の一例であるDVDに記憶され、ODD57によってDVDから読み出されてコンピュータ50にインストールされる。あるいは、暗号データ生成プログラムは、LANインタフェース53を介して接続された他のコンピュータシステムのデータベースなどに記憶され、これらのデータベースから読み出されてコンピュータ50にインストールされる。そして、インストールされた暗号データ生成プログラムは、HDD54に記憶され、メインメモリ51に読み出されてCPU52によって実行される。
1 暗号処理システム
2 暗号データ生成装置
3 パーティ装置
4 断片結合装置
5 公開ネットワーク
21 公開ネットワーク通信部
21a 暗号データ送信部
22 暗号データ生成部
22a 合成鍵生成部
22b 暗号化部
31 公開ネットワーク通信部
31a 暗号データ取得部
31b 復号鍵断片送信部
31c 中間復号取得部
32 暗号データ検証部
33 復号鍵断片生成部
34 秘密鍵記憶部
35 復号部
41 公開ネットワーク通信部
41a 復号鍵断片取得部
41b 検証結果送信部
41c 中間復号文送信部
42 復号鍵断片検証部
43 中間復号文生成部
50 コンピュータ
51 メインメモリ
52 CPU
53 LANインタフェース
54 HDD
55 スーパーIO
56 DVI
57 ODD

Claims (5)

  1. 秘密情報を暗号化する暗号データ生成装置と、
    公開鍵と秘密鍵の鍵ペアを有する第1の数のパーティ装置と、
    前記第1の数のパーティ装置に分散された断片情報を収集して結合する断片結合装置と
    を有し、
    前記暗号データ生成装置は、
    前記第1の数の公開鍵から鍵復元に必要な第2の数の公開鍵を選択して合成鍵を生成する処理を、前記第1の数の公開鍵から前記第2の数の公開鍵を選択する組合せの数である第3の数の回数行うことで前記第3の数の合成鍵を生成する第1の生成部と、
    前記第1の数のパーティ装置の中で前記秘密情報の復号権限を有する第4の数のパーティ装置の公開鍵を用いて前記秘密情報をそれぞれ暗号化して生成した該第4の数の秘密文から中間文を生成し、該中間文をさらに各合成鍵を用いて暗号化して第3の数の秘密情報暗号文を生成する第2の生成部と、
    前記第3の数の秘密情報暗号文に関する第1の署名及び前記第3の数の秘密情報暗号文を含む暗号データを公開する第1の公開部と
    を備え、
    各パーティ装置は、
    前記第1の署名を用いて前記暗号データの正当性を検証する第1の検証部と、
    前記正当性が検証された場合に、自装置が有する秘密鍵を用いて、前記第1の数から1を引いた数のパーティ装置から前記第2の数から1を引いた数のパーティ装置を選択する組合せの数である第5の数の復号鍵断片を生成し、該第5の数の復号鍵断片にそれぞれ対応する該第5の数の第2の署名を生成する第3の生成部と、
    前記第5の数の復号鍵断片及び対応する第2の署名を公開する第2の公開部と
    を備え、
    前記暗号データ生成装置、前記第2の署名を生成したパーティ装置以外のパーティ装置、前記断片結合装置、又は、その他の装置は、
    前記第5の数の復号鍵断片及び対応する前記第2の署名を用いて前記第5の数の復号鍵断片の正当性を検証する第2の検証部
    を備え、
    前記断片結合装置は、
    前記第1の数のパーティ装置がそれぞれ公開した前記第5の数の復号鍵断片のうち、前記第3の数の秘密情報暗号文のいずれかに対応する前記第2の数の復号鍵断片を結合して復号鍵を生成し、該生成した復号鍵に対応する秘密情報暗号文を該生成した復号鍵で復号して前記中間文を生成する第4の生成部と、
    前記第4の生成部により生成された前記中間文を公開する第3の公開部と
    を備え、
    各パーティ装置は、
    自装置が前記復号権限を有する場合に、前記第3の公開部により公開された前記中間文を自装置が有する秘密鍵を用いて復号し、前記秘密情報を復元する復号部
    をさらに備えることを特徴とする暗号処理システム。
  2. 前記第1の数と第2の数は同じであり、前記第3の数及び第5の数は1であることを特徴とする請求項1に記載の暗号処理システム。
  3. 前記第1の生成部は、前記第2の数の公開鍵を乗算し、乗算結果を第1乱数でべき乗することで前記合成鍵を生成し、
    前記第2の生成部は、第2乱数を用いて前記第1の署名を生成し、
    前記第1の公開部は、前記第1乱数の情報及び前記第2乱数の情報をさらに含めて前記暗号データを公開し、
    前記第1の検証部は、前記第1乱数の情報及び前記第2乱数の情報をさらに用いて前記暗号データの正当性を検証し、
    前記第4の生成部は、前記第2の数の復号鍵断片を乗算することによって前記復号鍵を生成することを特徴とする請求項1又は2に記載の暗号処理システム。
  4. 前記第3の生成部は、第3乱数を用いて前記第2の署名を生成し、
    前記第2の公開部は、前記第2の署名に前記第3乱数の情報を含めて公開し、
    前記第2の検証部は、前記第3乱数の情報をさらに用いて前記第5の数の復号鍵断片の正当性を検証することを特徴とする請求項1、2又は3に記載の暗号処理システム。
  5. 秘密情報を暗号化する暗号データ生成装置と、
    公開鍵と秘密鍵の鍵ペアを有する第1の数のパーティ装置と、
    前記第1の数のパーティ装置に分散された断片情報を収集して結合する断片結合装置とを有する暗号処理システムによる暗号処理方法において、
    前記暗号データ生成装置が、
    前記第1の数の公開鍵から鍵復元に必要な第2の数の公開鍵を選択して合成鍵を生成する処理を、前記第1の数の公開鍵から前記第2の数の公開鍵を選択する組合せの数である第3の数の回数行うことで前記第3の数の合成鍵を生成し、
    前記第1の数のパーティ装置の中で前記秘密情報の復号権限を有する第4の数のパーティ装置の公開鍵を用いて前記秘密情報をそれぞれ暗号化して生成した該第4の数の秘密文から中間文を生成し、該中間文をさらに各合成鍵を用いて暗号化して第3の数の秘密情報暗号文を生成し、
    前記第3の数の秘密情報暗号文に関する第1の署名及び前記第3の数の秘密情報暗号文を含む暗号データを公開し、
    各パーティ装置が、
    前記第1の署名を用いて前記暗号データの正当性を検証し、
    前記正当性が検証された場合に、自装置が有する秘密鍵を用いて、前記第1の数から1を引いた数のパーティ装置から前記第2の数から1を引いた数のパーティ装置を選択する組合せの数である第5の数の復号鍵断片を生成し、該第5の数の復号鍵断片にそれぞれ対応する該第5の数の第2の署名を生成し、
    前記第5の数の復号鍵断片及び対応する第2の署名を公開し、
    前記暗号データ生成装置、前記第2の署名を生成したパーティ装置以外のパーティ装置、前記断片結合装置、又は、その他の装置が、
    前記第5の数の復号鍵断片及び対応する前記第2の署名を用いて前記第5の数の復号鍵断片の正当性を検証し、
    前記断片結合装置が、
    前記第1の数のパーティ装置がそれぞれ公開した前記第5の数の復号鍵断片のうち、前記第3の数の秘密情報暗号文のいずれかに対応する前記第2の数の復号鍵断片を結合して復号鍵を生成し、該生成した復号鍵に対応する秘密情報暗号文を該生成した復号鍵で復号して前記中間文を生成し、
    生成した前記中間文を公開し、
    各パーティ装置が、
    自装置が前記復号権限を有する場合に、公開された前記中間文を自装置が有する秘密鍵を用いて復号し、前記秘密情報を復元する
    ことを特徴とする暗号処理方法。
JP2019199804A 2019-11-01 2019-11-01 暗号処理システム及び暗号処理方法 Active JP7318490B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019199804A JP7318490B2 (ja) 2019-11-01 2019-11-01 暗号処理システム及び暗号処理方法
EP20201995.6A EP3817323B1 (en) 2019-11-01 2020-10-15 Encryption processing system, encryption processing method, and program
CN202011138212.8A CN112784284B (zh) 2019-11-01 2020-10-22 加密处理系统、加密处理方法以及记录介质
US17/081,491 US11431489B2 (en) 2019-11-01 2020-10-27 Encryption processing system and encryption processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019199804A JP7318490B2 (ja) 2019-11-01 2019-11-01 暗号処理システム及び暗号処理方法

Publications (2)

Publication Number Publication Date
JP2021072593A true JP2021072593A (ja) 2021-05-06
JP7318490B2 JP7318490B2 (ja) 2023-08-01

Family

ID=72915778

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019199804A Active JP7318490B2 (ja) 2019-11-01 2019-11-01 暗号処理システム及び暗号処理方法

Country Status (4)

Country Link
US (1) US11431489B2 (ja)
EP (1) EP3817323B1 (ja)
JP (1) JP7318490B2 (ja)
CN (1) CN112784284B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA3226534A1 (en) * 2021-07-22 2023-01-26 Howard University Hybrid public-key and private-key cryptographic systems based on iso-rsa encryption scheme
CN115118488A (zh) * 2022-06-23 2022-09-27 网易(杭州)网络有限公司 凭证的加密处理方法、装置和电子设备
CN116011007B (zh) * 2022-12-21 2023-11-14 广州辰创科技发展有限公司 数据库存储加密方法、解密方法、系统及设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006227411A (ja) * 2005-02-18 2006-08-31 Ntt Docomo Inc 通信システム、暗号化装置、鍵生成装置、鍵生成方法、復元装置、通信方法、暗号化方法、暗号復元方法
JP2008135869A (ja) * 2006-11-27 2008-06-12 Ntt Docomo Inc 署名検証装置、暗号化装置、署名検証方法及び暗号化方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6026163A (en) * 1995-12-13 2000-02-15 Micali; Silvio Distributed split-key cryptosystem and applications
JP2004048336A (ja) 2002-07-11 2004-02-12 Renesas Technology Corp データの暗号化,復号機能有する入出力装置、記憶装置及びこれらを含むデータ管理システム
US8170216B2 (en) * 2008-06-18 2012-05-01 Apple Inc. Techniques for validating and sharing secrets
US9311487B2 (en) * 2011-03-15 2016-04-12 Panasonic Corporation Tampering monitoring system, management device, protection control module, and detection module
US8538029B2 (en) * 2011-03-24 2013-09-17 Hewlett-Packard Development Company, L.P. Encryption key fragment distribution
US9049011B1 (en) * 2012-08-15 2015-06-02 Washington State University Secure key storage and distribution
JP6075785B2 (ja) * 2013-12-26 2017-02-08 日本電信電話株式会社 暗号通信システム、暗号通信方法、プログラム
JP2016151797A (ja) 2015-02-16 2016-08-22 キヤノンマーケティングジャパン株式会社 情報処理システム、その制御方法、及びプログラム
GB2538052B (en) * 2015-04-27 2019-07-03 Gurulogic Microsystems Oy Encoder, decoder, encryption system, encryption key wallet and method
US20170222805A1 (en) * 2016-02-03 2017-08-03 Cocoon Data Holdings Pty Limited Escrow key fragmentation system
WO2017163109A1 (en) * 2016-03-23 2017-09-28 Telefonaktiebolaget Lm Ericsson (Publ) Cyber-physical context-dependent cryptography
US10374794B1 (en) * 2017-06-30 2019-08-06 Salesforce.Com, Inc. Secure transmission of tokens using private key fragments
US20210049600A1 (en) * 2018-05-18 2021-02-18 Qredo Ltd. Digital Asset Delivery Network
US11188672B2 (en) * 2018-09-11 2021-11-30 Koninklijke Philips N.V. Location tracking enabling privacy protection

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006227411A (ja) * 2005-02-18 2006-08-31 Ntt Docomo Inc 通信システム、暗号化装置、鍵生成装置、鍵生成方法、復元装置、通信方法、暗号化方法、暗号復元方法
JP2008135869A (ja) * 2006-11-27 2008-06-12 Ntt Docomo Inc 署名検証装置、暗号化装置、署名検証方法及び暗号化方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KILTZ, E.: "Chosen-Ciphertext Secure Key-Encapsulation Based on Gap Hashed Diffie-Hellman", LECTURE NOTES IN COMPUTER SCIENCE, vol. 4450, JPN6023025187, 2007, pages 282 - 297, XP047029613, ISSN: 0005086508, DOI: 10.1007/978-3-540-71677-8_19 *

Also Published As

Publication number Publication date
CN112784284B (zh) 2023-07-18
CN112784284A (zh) 2021-05-11
EP3817323B1 (en) 2023-06-14
US11431489B2 (en) 2022-08-30
JP7318490B2 (ja) 2023-08-01
EP3817323A1 (en) 2021-05-05
US20210135851A1 (en) 2021-05-06

Similar Documents

Publication Publication Date Title
TWI725124B (zh) 決定用於資訊的安全交換的共同私密,及階層化的決定性加密金鑰
US20130028419A1 (en) System and a method for use in a symmetric key cryptographic communications
Roy et al. A survey on digital signatures and its applications
CN112784284B (zh) 加密处理系统、加密处理方法以及记录介质
JP4869824B2 (ja) 受信者装置及び送信者装置及び暗号通信システム及びプログラム
US20240097894A1 (en) Threshold key exchange
US20230128879A1 (en) Knowledge proof method, storage medium, and information processing device
JP5324813B2 (ja) 鍵生成装置、証明書生成装置、サービス提供システム、鍵生成方法、証明書生成方法、サービス提供方法およびプログラム
TW202318833A (zh) 臨界簽章方案
Zhang et al. Data security in cloud storage
CN111314059B (zh) 账户权限代理的处理方法、装置、设备及可读存储介质
JP2011040932A (ja) 認証付き暗号化装置、認証付き暗号化方法、検証付き復号装置、検証付き復号方法、暗号システム、プログラム、記録媒体
Adebayo et al. Data Privacy System Using Steganography and Cryptography
WO2021009860A1 (ja) 暗号システム、関数値計算方法及びプログラム
CN113141249B (zh) 一种门限解密方法、系统及可读存储介质
JP4098510B2 (ja) 匿名通信方法、その装置処理方法、そのプログラムおよびその記録媒体
Singh et al. Security of Data with 3DES & Watermarking Algorithm
JP2000134195A (ja) 暗号化装置、復号化装置、方法及びその記録媒体
JPH1155244A (ja) 鍵回復方法および装置
JP2000041035A (ja) 認証システム、認証方法、及び記録媒体
KR20240045226A (ko) 디지털 서명들의 생성
KR20240046201A (ko) 디지털 서명들의 생성
Suriadi et al. Conditional privacy using re-encryption
CN116415265A (zh) 加密、加密签名处理、解密方法及相关设备
JP2004347885A (ja) 暗号化装置処理方法、暗号復号装置処理方法、これらの装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220708

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230613

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230703

R150 Certificate of patent or registration of utility model

Ref document number: 7318490

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150