JPWO2017163434A1 - 情報処理システム - Google Patents

情報処理システム Download PDF

Info

Publication number
JPWO2017163434A1
JPWO2017163434A1 JP2017511363A JP2017511363A JPWO2017163434A1 JP WO2017163434 A1 JPWO2017163434 A1 JP WO2017163434A1 JP 2017511363 A JP2017511363 A JP 2017511363A JP 2017511363 A JP2017511363 A JP 2017511363A JP WO2017163434 A1 JPWO2017163434 A1 JP WO2017163434A1
Authority
JP
Japan
Prior art keywords
information
key
transmission information
transmission
intermediate key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017511363A
Other languages
English (en)
Inventor
達哉 芳野
達哉 芳野
政行 板井
政行 板井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chugoku Electric Power Co Inc
Original Assignee
Chugoku Electric Power Co Inc
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 Chugoku Electric Power Co Inc filed Critical Chugoku Electric Power Co Inc
Publication of JPWO2017163434A1 publication Critical patent/JPWO2017163434A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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
    • H04L9/16Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

情報処理方法は、楕円曲線上の座標を示すマスター公開鍵の設定工程、非公開情報である受信者秘密鍵とマスター公開鍵との積を示す受信者公開鍵を生成する工程、非公開情報である暗号化対象情報とマスター公開鍵との積を示す中間鍵を生成する工程、非公開情報である乱数とマスター公開鍵との積を示す第1送信情報を生成する工程、乱数と受信者公開鍵との積と、中間鍵との加算を示す第2送信情報を生成する工程、少なくとも暗号化対象情報及び中間鍵が示す情報を用いた演算によって導出される第3送信情報を生成する工程、受信者秘密鍵と第1送信情報との積である第1復号用情報を生成する工程、第2送信情報から第1復号用情報を減じて中間鍵を得る工程、及び、中間鍵と第3送信情報に基づいて暗号化対象情報を得る工程を有する。

Description

本発明は、情報処理方法及び情報処理システムに関する。
コンピュータの利用者間で伝送されるデータの機密性を高める目的で、データを暗号化して送信し、受信者が復号化する方法が知られている(例えば、特許文献1)。
特開2005−242993号公報
暗号化されたデータの復号化には、暗号化に用いられたパスワード等、鍵として機能するデータが必要になる。パスワードを用いる方法は簡便であるが、パスワードを受信者に知らせる必要があり、パスワードの漏えいが問題になることがある。
本発明では、より高い機密性を確保することができる情報処理方法及び情報処理システムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、非公開情報である暗号化対象情報を取り扱う情報処理装置による情報処理方法であって、楕円曲線上の座標を示す公開情報であるマスター公開鍵の設定工程と、非公開情報である受信者秘密鍵と前記マスター公開鍵との積を示す公開情報である受信者公開鍵を生成する工程と、非公開情報である暗号化対象情報と前記マスター公開鍵との積を示す非公開情報である中間鍵を生成する工程と、非公開情報である乱数と前記マスター公開鍵との積を示す第1送信情報を生成する工程と、前記乱数と前記受信者公開鍵との積と、前記中間鍵との加算を示す第2送信情報を生成する工程と、少なくとも暗号化対象情報及び前記中間鍵が示す情報を用いた演算によって導出される第3送信情報を生成する工程と、前記受信者秘密鍵と前記第1送信情報との積である第1復号用情報を生成する工程と、前記第2送信情報から前記第1復号用情報を減じて前記中間鍵を得る工程と、前記中間鍵と前記第3送信情報に基づいて前記暗号化対象情報を得る工程とを有する。
本発明の望ましい態様として、前記第3送信情報は、前記中間鍵が示すx座標と前記暗号化対象情報との加算である。
本発明の望ましい態様として、前記第3送信情報は、前記第1送信情報が示すx座標と前記中間鍵が示すx座標との積と、前記第1送信情報が示すy座標と前記中間鍵が示すy座標との積とが前記暗号化対象情報に付加された情報である。
本発明の望ましい態様として、前記中間鍵が示すx座標をPxとし、前記中間鍵が示すy座標をPyとし、前記第1送信情報が示すx座標をC1xとし、前記第1送信情報が示すy座標をC1yとし、前記第2送信情報が示すx座標をC2xとし、前記第2送信情報が示すy座標をC2yとし、前記第3送信情報をc3とし、前記暗号化対象情報をpとすると、式(1)が成立する。
c3=(C1xPx mod C2x)+(C1yPy mod C2y)+p…(1)
また、上述した課題を解決し、目的を達成するために、本発明は、情報の送信者及び情報の受信者が操作する1つ以上の端末と、前記端末と通信可能に接続されたサーバとを有し、前記送信者から前記受信者宛てに送信される非公開情報である暗号化対象情報を暗号化する情報処理システムであって、前記サーバは、楕円曲線上の座標を示す公開情報であるマスター公開鍵及び非公開情報である受信者秘密鍵と前記マスター公開鍵との積を示す公開情報である受信者公開鍵を記憶する第1記憶部を備え、前記端末又は前記サーバは、前記暗号化対象情報と前記マスター公開鍵との積を示す非公開情報である中間鍵を生成する中間鍵生成部と、非公開情報である乱数と前記マスター公開鍵との積を示す第1送信情報、前記乱数と前記受信者公開鍵との積と前記中間鍵との加算を示す第2送信情報、少なくとも暗号化対象情報及び前記中間鍵が示す情報を用いた演算によって導出される第3送信情報を生成する暗号化部と、前記受信者秘密鍵と前記第1送信情報との積である第1復号用情報を算出し、前記第2送信情報から前記第1復号用情報を減じて前記中間鍵を導出し、導出された前記中間鍵と前記第3送信情報に基づいて前記暗号化対象情報を得る復号化部とを備える。
本発明の望ましい態様として、前記送信者の端末は、前記中間鍵生成部及び前記暗号化部を備え、前記受信者の端末は、前記復号化部と、前記受信者秘密鍵を記憶する第2記憶部とを備え、前記送信者の端末は、前記第1送信情報、前記第2送信情報及び前記第3送信情報を前記サーバに送信し、前記サーバは、前記第1送信情報、前記第2送信情報及び前記第3送信情報を前記受信者の端末に送信する。
本発明によれば、より高い機密性を確保することができる。
図1は、本発明の一実施形態に係る情報処理システムの主要構成を示すブロック図である。 図2は、暗号化及び復号化に係る各種のデータの関係を模式的に示す図である。 図3は、暗号化対象情報を暗号化して電子メールで送信する場合の例を模式的に示す図である。 図4は、図2に示す各種のデータが取り得る具体的な形式の一例及び楕円曲線の方程式の一例を示す図である。 図5は、楕円曲線の一例を示す図である。 図6は、受信者による準備処理の流れの一例を示すフローチャートである。 図7は、送信者による暗号化処理及びデータの送信に係る処理の流れの一例を示すフローチャートである。 図8は、受信者による復号化処理の流れの一例を示すフローチャートである。
次に、本発明の実施形態を、図面を参照して詳細に説明する。図1は、本発明の一実施形態に係る情報処理システムの主要構成を示すブロック図である。図2は、暗号化及び復号化に係る各種のデータの関係を模式的に示す図である。図3は、暗号化対象情報を暗号化して電子メールで送信する場合の例を模式的に示す図である。図4は、図2に示す各種のデータが取り得る具体的な形式の一例及び楕円曲線の方程式の一例を示す図である。情報処理システムは、情報の送信者(以下、単に送信者)及び情報の受信者(以下、単に受信者)が操作する1つ以上の端末20と、端末20と通信可能に接続されたサーバ10とを有し、送信者から受信者宛てに送信される非公開情報である暗号化対象情報54(p)を暗号化する情報処理システムである。なお、公開情報とは、送信者及び受信者以外の第三者が取得することができ、その情報の内容を把握可能な情報をさす。非公開情報とは、送信者及び受信者以外の第三者による情報の取得及び情報の内容の把握がなされるべきでない情報をさす。
サーバ10は、演算部11、記憶部12、通信部13等を備える。演算部11は、CPU(Central Processing Unit)等の演算装置を有し、記憶部12に記憶されているソフトウェア・プログラム及び係るソフトウェア・プログラムが参照するデータ(以下、プログラム等)を読み出して実行処理し、情報処理システムの動作に係る各種の処理を行う。記憶部12は、例えば半導体メモリ、ハードディスクドライブ等、各種の記憶装置を有し、図示しないプログラム等を記憶する。通信部13は、ネットワークインタフェースコントローラ(NIC:Network Interface Controller)、通信回線Nに接続するためのインタフェース等を有し、通信回線Nを介して接続された端末20との間で行われる通信に係る各種の処理を行う。
端末20は、演算部21、記憶部22、通信部23、入力部24、表示部25等を備える。端末20の演算部21、記憶部22及び通信部23の機能的な特徴は、サーバ10の演算部11、記憶部12及び通信部13と同様である。入力部24は、例えばキーボード、マウス等を有し、端末20を操作する利用者からの入力操作を受け付ける。表示部25は、例えば液晶ディスプレイ等の表示装置、ビデオカード等を有し、端末20の演算部21による処理に応じた表示出力を行う。
本実施形態の情報処理システムは、送信者に用いられる端末20である端末20aと受信者に用いられる端末20である端末20bとが別個の端末である。演算部21、記憶部22、通信部23、入力部24、表示部25の符号は、送信者の端末20aの演算部21a、記憶部22a、通信部23a、入力部24a、表示部25aと、受信者の端末20bの演算部21b、記憶部22b、通信部23b、入力部24b、表示部25bとを区別しない場合の符号である。情報処理システムは、暗号化対象情報54(p)の暗号化(以下、単に暗号化)又は暗号化後に送信される情報の復号化(以下、単に復号化)に係るデータを保持している。具体的には、例えば、サーバ10の記憶部12は、暗号化に用いられるマスター公開鍵51(G)及び受信者公開鍵53(s・G)を記憶している。送信者の端末20aは、暗号化対象情報54(p)の取り扱いに際して暗号化対象情報54(p)の暗号化に係る各種の処理を演算部21aに実行させるためのプログラム等である暗号化プログラム31を記憶している。受信者の端末20bは、暗号化対象情報54(p)の取り扱いに際して、暗号化プログラム31を用いて暗号化された暗号化対象情報54(p)の復号化に係る各種の処理を演算部21bに実行させるためのプログラム等である復号化プログラム32と、受信者公開鍵53(s・G)の作成及び復号化に用いられる受信者秘密鍵52(s)を記憶している。
なお、端末20は、1台であってもよい。その場合、情報処理システムは、例えば利用者毎の認証処理等、端末20を操作する者が送信者であるか受信者を識別する仕組みを有している。この他、図示しないが、サーバ10は、送信者と受信者との間での情報の送受信を仲介するサービス(例えば、電子メールの送受信サービス)を実行している。
次に、暗号化及び復号化について説明する。マスター公開鍵51(G)は、楕円曲線上の座標(Gx,Gy)を示すデータである。楕円曲線を示す方程式は、例えば図4に示すものと同様、以下の式(2)のように表すことができる。式(2)におけるa、b、mは、それぞれ、xの係数、定数項、法である。
=x+a・x+b mod m…(2)
図5は、楕円曲線L1の一例を示す図である。楕円曲線L1上の特定の座標(例えば、座標P1)を基準とすると、当該座標を通る楕円曲線L1の接線と楕円曲線L1との交点の座標(例えば、座標Pt1)をy軸方向について反転した座標(例えば、座標P2)は、基準となる座標の2倍算を示す。すなわち、図5における座標P2は、座標P1の2倍算を示す。なお、2倍算は、同一座標同士の加算を示す。例えば、座標P2は、座標P1と座標P1との加算である。また、楕円曲線L1上の特定の2つの座標(例えば、座標P1,P2)を加算した座標は、当該2つの座標を結ぶ直線と楕円曲線L1との交点の座標(例えば、座標Pt2)をy軸方向について反転した座標(例えば、座標P3)である。すなわち、図5における座標P3は、座標P1と座標P2との加算を示す。ここで、座標P2は、座標P1の2倍算であるので、座標P1と座標P2との加算である座標P3は、座標P1の3倍算を示す。このように、楕円曲線L1上の座標における加算は、単に座標の数値を加算するものとは異なり、楕円曲線L1上の座標における乗算は、単に座標の数値を乗算するものとは異なることから、複雑になる。ただし、楕円曲線暗号を採用した場合の暗号化及び復号化に伴う係る複雑な演算は、コンピュータ上でバイナリ法等を用いることで効率的に行うことができる。
座標P1,P2,P3を用いて座標P1の4倍算を求める方法は2つある。1つは、座標P1の2倍算である座標P2の2倍算を求める方法である。もう1つは、座標P1と、座標P1の3倍算である座標P3との加算を求める方法である。ここで、座標P2を通る楕円曲線L1の接線と楕円曲線L1との交点の座標(座標Pt3)をy軸方向について反転した座標(座標P4)と、座標P1と座標P3とを結ぶ直線と楕円曲線L1との交点の座標(座標Pt3)をy軸方向について反転した座標(例えば、座標P4)とは一致する。これは、座標P4のようなN倍算を効率的に求める方法が複数あり、より効率的な方法でN倍算を行うことができることを示唆する。
図5を参照して説明した楕円曲線L1の性質は、楕円曲線L1上の座標P1のスカラー(例えば、スカラーD)倍算であるD×P1(例えば、D=4である場合、D×P1=P4)を求めることが容易であることを示す。一方、座標P1と、座標P1のスカラー倍算である座標(例えば、座標P4)からスカラー(D)を求めることは、楕円曲線L1上の離散対数問題の観点から困難である。この容易さと困難さの非対称性は、楕円曲線暗号の安全性、すなわち暗号化された情報の秘匿性(暗号強度)の高さを示している。
また、楕円曲線暗号は、RSA暗号と比較した場合、同レベルの安全性をより短い鍵で実現できる。例えば、RSA暗号において1024ビットの暗号鍵を用いた場合と、楕円曲線暗号で160ビットの暗号鍵を用いた場合の暗号強度はほぼ等しいとされている。これは、楕円曲線暗号は、RSA暗号に比して処理負荷がより小さく、同レベルの安全性を確保する目的であれば処理速度がより早くなることを示している。
上記で説明した理由により、本発明は、楕円曲線暗号を採用しており、マスター公開鍵51(G)として、楕円曲線L1上の座標(Gx,Gy)を示すデータを用いている。係る座標(Gx,Gy)は、二次元の情報を示すデータであると捉えることができる。マスター公開鍵51(G)は、サーバ10によって公開状態で保持されており、マスター公開鍵51(G)が示す座標を端末20から把握可能になっている。
受信者秘密鍵52(s)は、スカラー形式のデータである。スカラー形式のデータは、一次元の情報を示すデータであると捉えることができ、数値に置換可能である。受信者公開鍵53(s・G)は、マスター公開鍵51(G)が示す座標(Gx,Gy)に受信者秘密鍵52(s)を乗じたスカラー倍算である。受信者秘密鍵52(s)は、例えば受信者の端末20bに非公開状態で設定、保持されている。すなわち、受信者秘密鍵52(s)は、受信者のみが知りうるデータである。受信者は、予め任意の受信者秘密鍵52(s)を設定することができる。受信者公開鍵53(s・G)は、設定された受信者秘密鍵52(s)とサーバ10で公開されているマスター公開鍵51(G)とを用いて演算により生成され、サーバ10に公開状態で保持される。受信者は、手動で受信者公開鍵53(s・G)を生成してサーバ10に公開することができる。上記で説明した楕円曲線暗号の安全性に基づき、マスター公開鍵51(G)が示す座標(Gx,Gy)に受信者秘密鍵52(s)を乗じたスカラー倍算の算出は容易である一方、マスター公開鍵51(G)と受信者公開鍵53(s・G)から受信者秘密鍵52(s)を特定することは困難である。
受信者秘密鍵52(s)は、情報処理システムによって自動的に設定されてもよい。具体的には、例えば、受信者の端末20bの記憶部22bに記憶されている復号化プログラム32を実行処理した演算部21bによる機能の1つとして、受信者秘密鍵52(s)を自動的に設定する機能を設けてもよい。同様に、受信者公開鍵53(s・G)は、情報処理システムによって自動的に設定されてもよい。
暗号化対象情報54(p)は、送信者から受信者宛てに送信される非公開情報である。暗号化対象情報54(p)とするデータは任意であるが、例えば送信者から受信者に伝達したいパスワード等の文字列である。暗号化対象情報54(p)は、暗号化して送信したいドキュメントデータ、画像データ、音声データ等であってもよいし、これらのデータのいずれか又は複数を圧縮した圧縮データであってもよい。どのようなデータであっても、デジタルデータは所定のルールに基づいてスカラーに置換可能であるので、暗号化対象情報54(p)とすることができる。図4では、送信者の端末20aで暗号化される前の暗号化対象情報54(p)に符号54aを付し、受信者の端末20bで復号化された第3復号化情報である暗号化対象情報54(p)に符号54bを付している。暗号化対象情報54a,54bは同一のデータである。以下、符号54a,54bを用いて暗号化前の暗号化対象情報(p)と復号化後の暗号化対象情報(p)とを区別することがある。
乱数56(r)は、予め設定される所定のスカラー(例えば、数値)である。乱数56(r)は、例えば送信者の端末20aで演算部21aが暗号化プログラム31を実行処理することで自動的に設定される値であるが、これは乱数56(r)の設定方法の一例であって適宜変更可能である。例えば、送信者が任意の乱数56(r)を手動で設定してもよい。
中間鍵55(P)は、マスター公開鍵51(G)が示す座標(Gx,Gy)に暗号化対象情報54a(p)を乗じたスカラー倍算(p・G)である。中間鍵55(P)が示す座標(Px,Py)は、座標((p・G)x,(p・G)y)である。暗号化対象情報54a(p)、乱数56(r)及び中間鍵55(P)は、送信者の端末20aに非公開状態で取り扱われる。すなわち、送信者の端末20aで取り扱われている暗号化対象情報54a(p)、乱数56(r)及び中間鍵55(P)は、送信者のみが知りうるデータである。ただし、中間鍵55(P)は、暗号化対象情報54(p)の復号化に係る処理において受信者の端末20bで復号化される。図4では、送信者の端末20aで取り扱われる中間鍵55(P)に符号55aを付し、受信者の端末20bで復号化された第2復号化情報である中間鍵55(P)に符号55bを付している。以下、符号55a,55bを用いて中間鍵55(P)を区別することがある。中間鍵55a,55bは同一のデータである。
第1送信情報57(C1)は、マスター公開鍵51(G)が示す座標(Gx,Gy)に乱数56(r)を乗じたスカラー倍算(r・G)である。第1送信情報57(C1)が示す座標(C1x,C1y)は、座標((r・G)x,(r・G)y)である。第2送信情報58(C2)は、中間鍵55a(P)と、受信者公開鍵53(s・G)に乱数56(r)を乗じたスカラー倍算(r・(s・G))とを加算したデータ(P+r・(s・G))である。第2送信情報58(C2)が示す座標(C2x,C2y)は、座標((P+r・(s・G))x,(P+r・(s・G))y)である。第3送信情報59(c3)は、暗号化対象情報54a(p)と、中間鍵55a(P)のx座標(Px)とを加算したデータ(p+Px)である。ここで、中間鍵55a(P)の座標(Px,Py)は二次元の座標を示すが、x座標(Px)は一次元の情報であるので、第3送信情報59(c3)は、一次元のデータである。
第3送信情報59(c3)は、暗号化対象情報54a(p)を暗号化した情報として機能する。第1送信情報57(C1)及び第2送信情報58(C2)は、第3送信情報59(c3)から暗号化対象情報54(p)を復号化するための情報として機能する。第1送信情報57(C1)、第2送信情報58(C2)及び第3送信情報59(c3)は、送信者から受信者に送信される。すなわち、第1送信情報57(C1)、第2送信情報58(C2)及び第3送信情報59(c3)は、通信回線Nを経由して送信者の端末20aの外部に伝送(公開)される。このため、通信回線N等に対して第三者が介入することで第1送信情報57(C1)、第2送信情報58(C2)及び第3送信情報59(c3)が第三者に取得される可能性はゼロでない。しかしながら、暗号化対象情報54(p)が第3送信情報59(c3)として暗号化されているため、第三者は、暗号化対象情報54(p)の内容を把握することができない。
第1復号用情報60(s・C1)は、第1送信情報57(C1)が示す座標(C1x,C1y)に受信者秘密鍵52(s)を乗じたスカラー倍算(s・(r・G))である。第1送信情報57(C1)が示す座標(s・C1x,s・C1y)は、座標((s・(r・G))x,(s・(r・G))y)である。ここで、s・(r・G)とr・(s・G)は、双方ともマスター公開鍵51(G)にスカラー(r)及びスカラー(s)を乗じたスカラー倍算であり、同値である。第1復号用情報60(s・C1)と第2送信情報58(C2)とに基づいて、中間鍵55b(P)を得ることができる。具体的には、以下の式(3)によって中間鍵55b(P)を導出することができる。すなわち、第2送信情報58(C2)で中間鍵55a(P)に加算されているスカラー倍算(乱数56(r)と受信者公開鍵53(s・G)との乗算であるr・(s・G))と、第1復号用情報60(s・C1)であるスカラー倍算(s・(r・G))とは同値であることから、第2送信情報58(C2)から第1復号用情報60(s・C1)を差し引くことで、中間鍵55b(P)を復号することができることになる。復号された中間鍵55b(P)から、座標(Px,Py)を特定することができる。
P=C2−s・C1
=(P+r・(s・G))−s・(r・G)
=P+r・(s・G)−r・(s・G)…(3)
中間鍵55b(P)の座標(Px)と第3送信情報59(c3)とに基づいて、暗号化対象情報54b(p)を得ることができる。具体的には、以下の式(4)によって暗号化対象情報54b(p)を導出することができる。すなわち、第1復号用情報60(s・C1)と第2送信情報58(C2)とに基づいて復号化された中間鍵55b(P)と第3送信情報59(c3)から暗号化対象情報54b(p)を復号することができることになる。第1復号用情報60(s・C1)は第1送信情報57(C1)と受信者秘密鍵52(s)から得られているので、第1送信情報57(C1)、第2送信情報58(C2)及び第3送信情報59(c3)並びに受信者秘密鍵52(s)から暗号化対象情報54b(p)を復号することができる。第1送信情報57(C1)、第2送信情報58(C2)及び第3送信情報59(c3)は、送信者から受信者に送信されている。受信者秘密鍵52(s)は、受信者側で保持されている情報である。従って、受信者は、送信者から送信された第1送信情報57(C1)、第2送信情報58(C2)及び第3送信情報59(c3)と、既知の受信者秘密鍵52(s)とに基づいて、暗号化対象情報54b(p)を復号することができる。
p=c3−Px
=(p+Px)−Px…(4)
図6〜図8のフローチャートを参照して、情報処理システムによる暗号化及び復号化に係る処理の流れの一例を説明する。図6は、受信者による準備処理の流れの一例を示すフローチャートである。受信者の端末20bの演算部21bは、記憶部22bから復号化プログラム32を読み出して実行処理し、受信者公開鍵53(s・G)の公開に係る各種の処理を行う。具体的には、演算部21bは、通信部23bを介して、サーバ10からマスター公開鍵51(G)を取得する(ステップS1)。また、演算部21bは、受信者秘密鍵52(s)を設定する(ステップS2)。ステップS1の処理とステップS2の処理は、順不同である。演算部21bは、受信者秘密鍵52(s)とマスター公開鍵51(G)から受信者公開鍵53(s・G)を生成する(ステップS3)。演算部21bは、通信部23bを介して、受信者公開鍵53(s・G)をサーバ10に送信して公開する(ステップS4)。これらの処理に係る機能は、例えば、復号化プログラム32の一機能として実装されていてもよいし、専用のプログラムとして設けられていてもよい。また、これらの処理は、受信者による手動の入力操作に応じて行われてもよい。
図7は、送信者による暗号化処理及びデータの送信に係る処理の流れの一例を示すフローチャートである。送信者の端末20aの演算部21aは、記憶部22aから暗号化プログラム31を読み出して実行処理し、暗号化対象情報54a(p)の暗号化及び暗号化後のデータの送信に係る各種の処理を行う。具体的には、演算部21aは、例えば、サーバ10からマスター公開鍵51(G)及び受信者公開鍵53(s・G)を取得する(ステップS11)。演算部21aは、暗号化対象情報54a(p)を設定する(ステップS12)。演算部21aは、暗号化対象情報54a(p)とマスター公開鍵51(G)から中間鍵55a(P)を生成する(ステップS13)。演算部21aは、乱数56(r)を設定する(ステップS14)。演算部21aは、乱数56(r)とマスター公開鍵51(G)から第1送信情報57(C1)を生成する(ステップS15)。演算部21aは、中間鍵55a(P)と乱数56(r)と受信者公開鍵53(s・G)から第2送信情報58(C2)を生成する(ステップS16)。演算部21aは、暗号化対象情報54a(p)と中間鍵55a(P)から第3送信情報59(c3)を生成する(ステップS17)。演算部21aは、なお、ステップS12の処理は、例えば、受信者の端末20bにおいて受信者が手動で暗号化対象情報54a(p)とするデータを選択決定又は生成することで行われる。ステップS11の処理、ステップS12の処理、ステップS14の処理は、順不同である。ステップS13の処理、ステップS14の処理は、順不同である。ステップS15の処理、ステップS16の処理、ステップS17の処理は、順不同である。
送信者の端末20aの演算部21aは、通信部23aを介して、第1送信情報57(C1)、第2送信情報58(C2)及び第3送信情報59(c3)を受信者に送信するためのデータの送信を行う(ステップS18)。本実施形態では、演算部21aは、例えば電子メールの添付ファイルとして第1送信情報57(C1)、第2送信情報58(C2)及び第3送信情報59(c3)をサーバ10に送信する。係る電子メールの宛先となるメールアドレスは、受信者のメールアドレスである。サーバ10は、送信者の端末20aから送信された第1送信情報57(C1)、第2送信情報58(C2)及び第3送信情報59(c3)を受信者の端末20bに送信する。
図8は、受信者による復号化処理の流れの一例を示すフローチャートである。受信者の端末20bの演算部21bは、記憶部22bから復号化プログラム32及び受信者秘密鍵52(s)を読み出して実行処理し、第3送信情報59(c3)からの暗号化対象情報54b(p)の復号化に係る各種の処理を行う。具体的には、演算部21bは、通信部23bを介して、第1送信情報57(C1)、第2送信情報58(C2)及び第3送信情報59(c3)を受信する(ステップS21)。演算部21bは、第1送信情報57(C1)と受信者秘密鍵52(s)から第1復号用情報60(s・C1)を生成する(ステップS22)。演算部21bは、第2送信情報58(C2)と第1復号用情報60(s・C1)から中間鍵55b(P)を復号する(ステップS23)。演算部21bは、復号された中間鍵55b(P)と第3送信情報59(c3)から暗号化対象情報54b(p)を復号する(ステップS24)。
このように、本実施形態では、非公開情報である暗号化対象情報54(p)の取り扱いに際して、楕円曲線上の座標を示す公開情報であるマスター公開鍵51(G)の設定工程と、非公開情報である受信者秘密鍵52(s)とマスター公開鍵51(G)との積を示す公開情報である受信者公開鍵53(s・G)を生成する工程と、非公開情報である暗号化対象情報54a(p)とマスター公開鍵51(G)との積を示す非公開情報である中間鍵55a(P=p・G)を生成する工程と、非公開情報である乱数56(r)とマスター公開鍵51(G)との積を示す第1送信情報57(C1=r・G)を生成する工程と、乱数56(r)と受信者公開鍵53(s・G)との積と、中間鍵55a(P)との加算を示す第2送信情報58(C2=P+r・(s・G))を生成する工程と、少なくとも暗号化対象情報54a(p)及び中間鍵55a(P)が示す情報を用いた演算によって導出される第3送信情報59(c3=p+Px)を生成する工程と、受信者秘密鍵52(s)と第1送信情報57(C1)との積である第1復号用情報60(s・C1=s・(r・G)=r(s・G))を生成する工程と、第2送信情報58(C2)から第1復号用情報60(s・C1)を減じて中間鍵55b(P)を得る工程(P=C2−s・C1=P+r・(s・G)−r・(s・G))と、中間鍵55b(P)と第3送信情報59(c3)に基づいて暗号化対象情報54b(p)を得る工程(p=c3−Px=p+Px−Px)と、を有する情報処理方法が実施されている。
また、本実施形態の情報処理システムは、情報の送信者及び情報の受信者が操作する1つ以上の端末20と、端末20と通信可能に接続されたサーバ10とを有し、送信者から受信者宛てに送信される非公開情報である暗号化対象情報54を暗号化する情報処理システムであって、サーバ10は、楕円曲線上の座標を示す公開情報であるマスター公開鍵51及び非公開情報である受信者秘密鍵52とマスター公開鍵51との積を示す公開情報である受信者公開鍵53を記憶する第1記憶部(記憶部12)を備え、端末20又はサーバ10は、暗号化対象情報54aとマスター公開鍵51との積を示す非公開情報である中間鍵55aを生成する中間鍵生成部と、非公開情報である乱数56とマスター公開鍵51との積を示す第1送信情報57、乱数56と受信者公開鍵53との積と中間鍵55aとの加算を示す第2送信情報58、少なくとも暗号化対象情報54a及び中間鍵55aが示す情報を用いた演算によって導出される第3送信情報59を生成する暗号化部と、受信者秘密鍵52と第1送信情報57との積である第1復号用情報60を算出し、第2送信情報58から第1復号用情報を減じて中間鍵55bを導出し、導出された中間鍵55bと第3送信情報59に基づいて暗号化対象情報54bを得る復号化部と、を備える情報処理システムである。
具体的には、送信者の端末20aの演算部21aは、暗号化プログラム31を実行することで、暗号化対象情報54aとマスター公開鍵51との積を示す非公開情報である中間鍵55aを生成する中間鍵生成部として機能する。また、送信者の端末20aの演算部21aは、暗号化プログラム31を実行することで、非公開情報である乱数56とマスター公開鍵51との積を示す第1送信情報57、乱数56と受信者公開鍵53との積と中間鍵55aとの加算を示す第2送信情報58、少なくとも暗号化対象情報54a及び中間鍵55aが示す情報を用いた演算によって導出される第3送信情報59を生成する暗号化部として機能する。また、受信者の端末20bの演算部21bは、復号化プログラム32を実行することで、受信者秘密鍵52と第1送信情報57との積である第1復号用情報60を算出し、第2送信情報58から第1復号用情報60を減じて中間鍵55bを導出し、導出された中間鍵55bと第3送信情報59に基づいて暗号化対象情報54bを得る復号化部として機能する。
また、本実施形態の情報処理システムにおいて、送信者の端末20aは、中間鍵生成部及び暗号化部を備え、受信者の端末20bは、復号化部と、受信者秘密鍵52を記憶する第2記憶部(記憶部22)とを備え、送信者の端末20aは、第1送信情報57、第2送信情報58及び第3送信情報59をサーバ10に送信し、サーバ10は、第1送信情報57、第2送信情報58及び第3送信情報59を受信者の端末20bに送信する。
以上、本実施形態によれば、中間鍵55a(P:p・G)を生成し、中間鍵55a(P)が示す情報を用いた演算によって導出される第2送信情報58(C2:P+r・(s・G))及び第3送信情報59(c3:p+Px)を生成するので、暗号化対象情報54(p)を得るための具体的な処理内容の特定をより困難にすることができる。よって、より高い機密性を確保することができる。
また、第3送信情報59は、中間鍵55a(P)が示すx座標と暗号化対象情報54a(p)との加算(c3:p+Px)であるので、簡単な演算で暗号化対象情報54a(p)を暗号化することができ、より低い処理負荷でより高い機密性を確保することができる。
また、端末20が暗号化及び復号化に係る処理を行うので、暗号化対象情報54(p)の取り扱いにおけるサーバ10の負荷を最小限にすることができる。
特に、暗号化対象情報を共通鍵方式で用いられるパスワードにすることで、共通鍵方式を利用した暗号化を伴うデータの伝送に際して受信者に伝えられるパスワードの機密性を確保することができる。このように、送信者が任意に設定するパスワード等の伝達に係る第三者の介入の可能性を効果的に抑制する仕組みを高い利便性で提供することができる。また、パーソナルコンピュータ(PC)等の情報処理装置に搭載されているTPM(Trusted Platform Module)等のセキュリティチップで取り扱われる公開鍵を本発明の公開鍵とすることで、公開鍵を自動的に生成及び公開することができるようになる。よって、受信者の立場になりうるユーザは、受信者秘密鍵52(s)を設定するだけで受信者公開鍵53(s・G)を公開することができるようになる。よって、より簡便に、送信者から暗号化対象情報54(p)として送られる1次元の情報(例えば、パスワード等)を暗号化された状態で受信し、受信者のみが復号することができるようになり、利便性が飛躍的に向上する。
(変形例)
なお、第3送信情報59(c3)は上記の実施形態で例示した情報(p+Px)に限られず、適宜変更可能である。例えば、中間鍵55a(P)が示すx座標(Px)に代えて、中間鍵55a(P)が示すy座標(Py)を暗号化対象情報54a(p)に加算した情報を第3送信情報(c3)としてもよい。
また、第3送信情報(c3)は、第1送信情報57(C1)が示すx座標(C1x)と中間鍵55a(P)が示すx座標(Px)との積と、第1送信情報57(C1)が示すy座標(C1y)と中間鍵55a(P)が示すy座標(Py)との積とが暗号化対象情報54(p)に付加された情報であってもよい。すなわち、以下の式(5)が成立するようにしてもよい。この場合、第1送信情報57(C1)から、第1送信情報57(C1)が示すx座標(C1x)及びy座標(C1y)が得られる。また、第2送信情報58(C2)から第1復号用情報60(s・C1)を減じて得た中間鍵55b(P)から、中間鍵55b(P)が示すx座標(Px)及びy座標(Py)が得られる。よって、このようにして得られた第1送信情報57(C1)が示すx座標(C1x)と中間鍵55b(P)が示すx座標(Px)の乗算(C1x×Px)と、第1送信情報57(C1)が示すy座標(C1y)と中間鍵55b(P)が示すy座標(Py)の乗算(C1y×Py)とを第3送信情報(c3)から減ずることで、暗号化対象情報54b(p)を復号することができる。
c3=p+(C1x×Px)+(C1y×Py)…(5)
また、中間鍵55a(P)が示すx座標(Px)、中間鍵55a(P)が示すy座標(Py)、第1送信情報57(C1)が示すx座標(C1x)、第1送信情報57(C1)が示すy座標(C1y)、第2送信情報58(C2)が示すx座標(C2x)、第2送信情報58(C2)が示すy座標(C2y)、第3送信情報(c3)に基づいて、式(1)が成立するようにしてもよい。この場合、第1送信情報57(C1)から、第1送信情報57(C1)が示すx座標(C1x)及びy座標(C1y)が得られる。また、第2送信情報58(C2)から第1復号用情報60(s・C1)を減じて得た中間鍵55b(P)から、中間鍵55b(P)が示すx座標(Px)及びy座標(Py)が得られる。よって、これらを用いて、第1送信情報57(C1)が示すx座標(C1x)を底として中間鍵55b(P)が示すx座標(Px)を冪指数とする第1冪演算値(C1xPx)及び第1送信情報57(C1)が示すy座標(C1y)を底として中間鍵55b(P)が示すy座標(Py)を冪指数とする第2冪演算値(C1yPy)が得られる。また、第2送信情報58(C2)から、第2送信情報58(C2)が示すx座標(C2x)及びy座標(C2y)が得られる。よって、これらを用いて、第1冪演算値(C1xPx)を第2送信情報58(C2)が示すx座標(C2x)で割った剰余(C1xPx mod C2x)と第2冪演算値(C1yPy)を第2送信情報58(C2)が示すy座標(C2y)で割った剰余(C1yPy mod C2y)を求め、第3送信情報(c3)から減ずることで、暗号化対象情報54b(p)を復号することができる。
c3=(C1xPx mod C2x)+(C1yPy mod C2y)+p…(1)
このように第3送信情報(c3)を適宜変更することで、第3送信情報(c3)から暗号化対象情報54を得るための具体的な処理内容の特定をより困難にすることができる。よって、より高い機密性を確保することができる。
上記の実施形態及び変形例はあくまで一例であり、本発明の技術的特徴を逸脱しない範囲内において適宜変更可能である。例えば、暗号化プログラム31及び復号化プログラム32が提供している機能の一部又は全部をサーバ10で実行処理する所謂サーバクライアントモデルで暗号化及び復号化を行うようにしてもよい。
10 サーバ
11 演算部
12 記憶部
13 通信部
20,20a,20b 端末
21,21a,21b 演算部
22,22a,22b 記憶部
23,23a,23b 通信部
24,24a,24b 入力部
25,25a,25b 表示部
31 暗号化プログラム
32 復号化プログラム
51 マスター公開鍵
52 受信者秘密鍵
53 受信者公開鍵
54,54a,54b 暗号化対象情報
55,55a,55b 中間鍵
56 乱数
57 第1送信情報
58 第2送信情報
59 第3送信情報
60 第1復号用情報
N 通信回線

Claims (6)

  1. 非公開情報である暗号化対象情報を取り扱う情報処理装置による情報処理方法であって、
    楕円曲線上の座標を示す公開情報であるマスター公開鍵の設定工程と、
    非公開情報である受信者秘密鍵と前記マスター公開鍵との積を示す公開情報である受信者公開鍵を生成する工程と、
    非公開情報である暗号化対象情報と前記マスター公開鍵との積を示す非公開情報である中間鍵を生成する工程と、
    非公開情報である乱数と前記マスター公開鍵との積を示す第1送信情報を生成する工程と、
    前記乱数と前記受信者公開鍵との積と、前記中間鍵との加算を示す第2送信情報を生成する工程と、
    少なくとも暗号化対象情報及び前記中間鍵が示す情報を用いた演算によって導出される第3送信情報を生成する工程と、
    前記受信者秘密鍵と前記第1送信情報との積である第1復号用情報を生成する工程と、
    前記第2送信情報から前記第1復号用情報を減じて前記中間鍵を得る工程と、
    前記中間鍵と前記第3送信情報に基づいて前記暗号化対象情報を得る工程と
    を有する情報処理方法。
  2. 前記第3送信情報は、前記中間鍵が示すx座標と前記暗号化対象情報との加算である
    請求項1に記載の情報処理方法。
  3. 前記第3送信情報は、前記第1送信情報が示すx座標と前記中間鍵が示すx座標との積と、前記第1送信情報が示すy座標と前記中間鍵が示すy座標との積とが前記暗号化対象情報に付加された情報である
    請求項1に記載の情報処理方法。
  4. 前記中間鍵が示すx座標をPxとし、前記中間鍵が示すy座標をPyとし、前記第1送信情報が示すx座標をC1xとし、前記第1送信情報が示すy座標をC1yとし、前記第2送信情報が示すx座標をC2xとし、前記第2送信情報が示すy座標をC2yとし、前記第3送信情報をc3とし、前記暗号化対象情報をpとすると、式(1)が成立する
    請求項1に記載の情報処理方法。
    c3=(C1xPx mod C2x)+(C1yPy mod C2y)+p…(1)
  5. 情報の送信者及び情報の受信者が操作する1つ以上の端末と、前記端末と通信可能に接続されたサーバとを有し、前記送信者から前記受信者宛てに送信される非公開情報である暗号化対象情報を暗号化する情報処理システムであって、
    前記サーバは、
    楕円曲線上の座標を示す公開情報であるマスター公開鍵及び非公開情報である受信者秘密鍵と前記マスター公開鍵との積を示す公開情報である受信者公開鍵を記憶する第1記憶部を備え、
    前記端末又は前記サーバは、
    前記暗号化対象情報と前記マスター公開鍵との積を示す非公開情報である中間鍵を生成する中間鍵生成部と、
    非公開情報である乱数と前記マスター公開鍵との積を示す第1送信情報、前記乱数と前記受信者公開鍵との積と前記中間鍵との加算を示す第2送信情報、少なくとも暗号化対象情報及び前記中間鍵が示す情報を用いた演算によって導出される第3送信情報を生成する暗号化部と、
    前記受信者秘密鍵と前記第1送信情報との積である第1復号用情報を算出し、前記第2送信情報から前記第1復号用情報を減じて前記中間鍵を導出し、導出された前記中間鍵と前記第3送信情報に基づいて前記暗号化対象情報を得る復号化部と
    を備える情報処理システム。
  6. 前記送信者の端末は、前記中間鍵生成部及び前記暗号化部を備え、
    前記受信者の端末は、
    前記復号化部と、
    前記受信者秘密鍵を記憶する第2記憶部とを備え、
    前記送信者の端末は、前記第1送信情報、前記第2送信情報及び前記第3送信情報を前記サーバに送信し、
    前記サーバは、前記第1送信情報、前記第2送信情報及び前記第3送信情報を前記受信者の端末に送信する
    請求項5に記載の情報処理システム。

JP2017511363A 2016-03-25 2016-03-25 情報処理システム Pending JPWO2017163434A1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/059771 WO2017163434A1 (ja) 2016-03-25 2016-03-25 情報処理方法及び情報処理システム

Publications (1)

Publication Number Publication Date
JPWO2017163434A1 true JPWO2017163434A1 (ja) 2018-04-12

Family

ID=59901074

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017511363A Pending JPWO2017163434A1 (ja) 2016-03-25 2016-03-25 情報処理システム

Country Status (2)

Country Link
JP (1) JPWO2017163434A1 (ja)
WO (1) WO2017163434A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110365482B (zh) * 2019-08-01 2023-05-16 恒宝股份有限公司 一种数据通信方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1127256A (ja) * 1997-07-07 1999-01-29 Toyo Commun Equip Co Ltd 楕円ストリーム暗号システム
JP2001268072A (ja) * 2000-03-16 2001-09-28 Hitachi Ltd 情報処理装置、情報処理方法、及びカード部材

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1127256A (ja) * 1997-07-07 1999-01-29 Toyo Commun Equip Co Ltd 楕円ストリーム暗号システム
JP2001268072A (ja) * 2000-03-16 2001-09-28 Hitachi Ltd 情報処理装置、情報処理方法、及びカード部材

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
岡本 龍明 ほか, シリーズ/情報科学の数学 現代暗号, vol. 初版第2刷, JPN6016021390, 30 June 1998 (1998-06-30), JP, pages p.118−122、202 *

Also Published As

Publication number Publication date
WO2017163434A1 (ja) 2017-09-28

Similar Documents

Publication Publication Date Title
CN108768607B (zh) 一种基于区块链的投票方法、装置、设备及介质
Ganesan Data security in cloud architecture based on Diffie Hellman and elliptical curve cryptography
JP6328333B2 (ja) 公開鍵暗号化システム
JP6697506B2 (ja) 関連付けられた秘密鍵部分を用いた高速公開鍵暗号化のためのシステムおよび方法
US9614681B2 (en) Private electronic signature service for electronic documents
JPWO2012067214A1 (ja) 情報処理装置、情報処理方法、及び、プログラム
JP2018502320A (ja) 公開鍵暗号化システム
US20210211274A1 (en) Method and system for communicating a secret
JP2015184490A (ja) 暗号化装置、暗号化方法、情報処理装置および暗号化システム
Natanael et al. Text encryption in android chat applications using elliptical curve cryptography (ECC)
JPWO2005098795A1 (ja) コンピュータシステム、コンピュータプログラム及び加算方法
KR101233682B1 (ko) 타원곡선암호를 위한 연산 장치 및 방법
US20180294951A1 (en) Methods and systems for enhanced data-centric scalar multiplicative homomorphic encryption systems using geometric algebra
JPH11317734A (ja) デ―タの暗号化復号化方法および、それを用いたネットワ―クシステム
WO2023169081A1 (zh) 数据处理
KR20210081471A (ko) 프로그램 코드를 저장하는 비일시적 컴퓨터 판독가능 매체, 복호화 장치, 및 암호화 장치와 복호화 장치를 포함하는 통신 시스템
JP2012080152A (ja) 暗号化システム、暗号化装置、復号装置、暗号化システムプログラム及び暗号化方法
JP2021086158A (ja) 格子ベースの暗号鍵生成方法及び電子署名方法
WO2017163434A1 (ja) 情報処理方法及び情報処理システム
KR101440680B1 (ko) 중국인 나머지 정리에 기반한 준동형 암복호화 방법 및 이를 이용한 장치
JP2016027391A (ja) 秘匿ベクトル内積計算システム、データ処理装置、秘匿ベクトル内積計算方法、秘匿ベクトル内積プログラム、および、記録媒体
KR102284877B1 (ko) 효율적인 교집합 연산을 위한 함수 암호 기술
Al-Absi et al. Cryptography Survey of DSS and DSA
WO2022054130A1 (ja) 暗号システム、方法及びプログラム
JP3784055B2 (ja) リストマッチング方法、ネットワークシステム、そのサーバ及び情報端末

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20171212