JP2019211867A - コンピュータプログラム及びメッセージ送信方法 - Google Patents
コンピュータプログラム及びメッセージ送信方法 Download PDFInfo
- Publication number
- JP2019211867A JP2019211867A JP2018105431A JP2018105431A JP2019211867A JP 2019211867 A JP2019211867 A JP 2019211867A JP 2018105431 A JP2018105431 A JP 2018105431A JP 2018105431 A JP2018105431 A JP 2018105431A JP 2019211867 A JP2019211867 A JP 2019211867A
- Authority
- JP
- Japan
- Prior art keywords
- message
- distributed ledger
- ledger network
- user
- public 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
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
【課題】コンピュータプログラム及びメッセージ送信方法の提供。【解決手段】ユーザの秘密鍵により署名されたトランザクション情報を複数のノードに分散して保持する分散型台帳ネットワークへのアクセスが可能なコンピュータに、ユーザへのメッセージと、メッセージの送信先アドレスとを受付け、受付けたメッセージをユーザの秘密鍵に対応した公開鍵により暗号化し、公開鍵により暗号化したメッセージを、分散型台帳ネットワークを介して送信先アドレスへ送信する処理を実行させるためのコンピュータプログラムである。【選択図】図3
Description
本発明は、コンピュータプログラム及びメッセージ送信方法に関する。
近年、インターネット網などの通信ネットワークを利用して、送信者及び受信者間でメッセージを送受信するシステムが広く普及している(例えば、特許文献1を参照)。
従来のメッセージ送受信システムには、送信者の端末から送信されるメッセージを取得する送信サーバ、及び受信者の端末へ送信すべきメッセージを一時的に蓄積する受信サーバが設置されていることが一般的である。送信サーバが取得したメッセージ及び受信サーバに蓄積されたメッセージは、サーバを設置しているメッセージ送受信システムの運営者によって閲覧可能な状態にあり、メッセージの秘匿性を担保することができないという問題点を有する。
本発明は、斯かる事情に鑑みてなされたものであり、メッセージの秘匿性を担保することができるコンピュータプログラム及びメッセージ送信方法を提供することを目的とする。
本発明の一態様に係るコンピュータプログラムは、ユーザの秘密鍵により署名されたトランザクション情報を複数のノードに分散して保持する分散型台帳ネットワークへのアクセスが可能なコンピュータに、前記ユーザへのメッセージと、該メッセージの送信先アドレスとを受付け、受付けたメッセージを前記ユーザの秘密鍵に対応した公開鍵により暗号化し、前記公開鍵により暗号化したメッセージを、前記分散型台帳ネットワークを介して前記送信先アドレスへ送信する処理を実行させるためのコンピュータプログラムである。
本発明の一態様に係るメッセージ送信方法は、ユーザの秘密鍵により署名されたトランザクション情報を複数のノードに分散して保持する分散型台帳ネットワークへのアクセスが可能なコンピュータを用いて、前記ユーザへのメッセージと、該メッセージの送信先アドレスとを受付け、受付けたメッセージを前記ユーザの秘密鍵に対応した公開鍵により暗号化し、前記公開鍵により暗号化したメッセージを、前記分散型台帳ネットワークを介して前記送信先アドレスへ送信する。
本願によれば、メッセージの秘匿性を担保することができる。
以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
(実施の形態1)
図1は本実施の形態に係るメッセージ送受信システムの構成例を示す模式図である。本実施の形態に係るメッセージ送受信システムは、メッセージの送信者が利用する送信者端末10A、メッセージの受信者が利用する受信者端末10B、及び分散型台帳ネットワークNを構成する複数のノード20,20,…,20を備える。送信者端末10Aから送信するメッセージは、文字、記号等を含む文字列のデータである。また、送信者端末10Aから送信するメッセージは、文字列のデータを含む電子メール形式のデータであってもよい。
(実施の形態1)
図1は本実施の形態に係るメッセージ送受信システムの構成例を示す模式図である。本実施の形態に係るメッセージ送受信システムは、メッセージの送信者が利用する送信者端末10A、メッセージの受信者が利用する受信者端末10B、及び分散型台帳ネットワークNを構成する複数のノード20,20,…,20を備える。送信者端末10Aから送信するメッセージは、文字、記号等を含む文字列のデータである。また、送信者端末10Aから送信するメッセージは、文字列のデータを含む電子メール形式のデータであってもよい。
複数のノード20,20,…,20によって構成される分散型台帳ネットワークNは、例えば仮想通貨用のプラットフォームを提供する。すなわち、ノード20,20,…,20は、ピア・ツー・ピア(P2P)で接続されており、仮想通貨の取引に関するトランザクションを分散して記憶する分散型台帳を構成する。分散型台帳ネットワークNの一例はブロックチェーンであり、複数のノード20,20,…,20に同じ内容を記憶させることにより、改竄を困難にしている。分散型台帳ネットワークNは、電子署名とハッシュポインタとを含み、改竄検出が容易なデータ構造を持つトランザクションのデータを複数のノード20,20,…,20に分散保持させることによって、高可用性及びデータ同一性を実現し、信頼性の高い、公正なプラットフォームを提供する。
本実施の形態では、このような分散型台帳ネットワークNを利用して、送信者端末10Aから受信者端末10Bへメッセージを送信することを特徴の1つとしている。
なお、本実施の形態では、メッセージの送信者と受信者とを便宜的に区別して説明を行うが、両者を区別して説明する必要がない場合には、単にユーザとも記載する。また、送信者端末10Aと受信者端末10Bとを区別して説明する必要がない場合には、ユーザ端末10とも記載する。送信者端末10Aは、メッセージを送信する機能だけでなく、メッセージを受信する機能を備えていてもよく、受信者端末10Bは、メッセージを受信する機能だけでなく、メッセージを送信する機能を備えていてもよい。
また、本実施の形態では、分散型台帳ネットワークNを構成するノード20とは区別して、送信者端末10A及び受信者端末10Bを記載したが、送信者端末10A及び受信者端末10Bは、それぞれ分散型台帳ネットワークNを構成するノードの1つとして機能するものであってもよい。
図2はユーザ端末10の内部構成を説明するブロック図である。ユーザ端末10は、例えばスマートフォン、パーソナルコンピュータなどの端末装置であり、制御部11、記憶部12、通信部13、操作部14、表示部15等を備える。
制御部11は、例えば、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等を備える。制御部11のCPUは、ROM又は記憶部12に予め記憶された各種プログラムをRAMに展開して実行することにより、上述した各種ハードウェアの動作を制御し、装置全体を本願のメッセージ送信方法を実現させる。
なお、制御部11は、上記の構成に限定されるものではなく、1又は複数のCPU、マルチコアCPU、マイコン等を含む任意の処理回路であればよい。また、制御部11は、日時情報を出力するクロック、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
記憶部12は、SRAM(Static Random Access Memory)、フラッシュメモリ、ハードディスクなどを用いた記憶装置を備える。記憶部12には、制御部11によって実行される各種コンピュータプログラム、及びコンピュータプログラムの実行に必要なデータ等が記憶される。記憶部12に記憶されるコンピュータプログラムには、分散型台帳ネットワークNを利用して仮想通貨の取引を行うためのウォレットアプリ121、分散型台帳ネットワークNを利用してメッセージの送受信を行うメッセージアプリ122等が含まれる。
記憶部12に記憶されるプログラムは、当該プログラムを読み取り可能に記録した非一時的な記録媒体Mにより提供されてもよい。記録媒体Mは、例えば、CD−ROM、USBメモリ、SD(Secure Digital)カード、マイクロSDカード、コンパクトフラッシュ(登録商標)などの可搬型メモリである。この場合、制御部11は、不図示の読取装置を用いて記録媒体Mから各種プログラムを読み取り、読み取った各種プログラムを記憶部12にインストールする。また、記憶部12に記憶されるプログラムは、通信部13を介した通信により提供されてもよい。この場合、制御部11は、通信部13を通じて各種プログラムを取得し、取得した各種プログラムを記憶部12にインストールする。
記憶部12に記憶されるデータには、ユーザ端末10を所持するユーザに固有の秘密鍵、この秘密鍵と対をなす公開鍵、他のユーザにより公開される公開鍵、メッセージの送受信に用いられるアドレス等が含まれる。記憶部12に記憶されている秘密鍵及び公開鍵は、後述するように、メッセージの暗号化及び復号の際に用いられる。また、メッセージの暗号化及び復号に用いられる秘密鍵及び公開鍵は、分散型台帳ネットワークNを介して仮想通貨を取引する際に用いられる秘密鍵及び公開鍵と共用してもよい。
通信部13は、分散型台帳ネットワークNに接続するための接続インタフェースを備える。通信部13は、分散型台帳ネットワークNを構成するノード20,20,…,20の1つからデータを受信した場合、受信したデータを制御部11へ出力する。また、通信部13は、送信すべきデータが制御部11から入力された場合、分散型台帳ネットワークNを構成するノード20,20,…,20の1つへデータを送信する。
操作部14は、キーボード、マウスなどの入力インタフェースを備えており、ユーザによる操作を受付ける。表示部15は、液晶ディスプレイ装置などを備えており、ユーザに対して報知すべき情報を表示する。
以下、分散型台帳ネットワークNを利用して送信者端末10Aと受信者端末10Bとの間でメッセージを送受信する際の動作について説明する。
図3はメッセージの送受信に係る手順を説明するフローチャートである。送信者が受信者に対してメッセージを送信する場合、送信者端末10Aにおいて、メッセージアプリ122を起動する。メッセージアプリ122が起動された状態にて、送信者端末10Aの制御部11は、操作部14を通じて、受信者へ送信するメッセージ、及びメッセージの宛先を示す送信先アドレスを受付ける(ステップS101)。送信先アドレスを示す文字列の入力を受付ける構成であってもよく、送信先アドレスに関連付けられたアイコンの選択を受付ける構成であってもよい。
次いで、制御部11は、受信者の秘密鍵と対をなす公開鍵を記憶部12から読み出し、読み出した公開鍵を用いて、メッセージを暗号化する(ステップS102)。すなわち、制御部11は、正当な受信者のみが開封できるように、受信者の秘密鍵に対応した公開鍵を用いてメッセージを暗号化する。
次いで、制御部11は、ステップS101で受付けた送信先アドレスを宛先として、暗号化したメッセージを通信部13より送信する(ステップS103)。このとき、制御部11は、送信先アドレスと、暗号化したメッセージとを含むトランザクションを分散型台帳ネットワークNへ送信する。送信者端末10Aの通信部13から送信されたメッセージは、分散型台帳ネットワークNを構成する1又は複数のノード20を介して、受信者端末10Bに到達する。
受信者端末10Bの通信部13は、分散型台帳ネットワークNを通じて、送信者端末10Aから送信されたメッセージを受信する(ステップS104)。通信部13は、受信したメッセージを制御部11へ出力する。
制御部11は、受信者の秘密鍵を記憶部12から読み出し、読み出した秘密鍵を用いて、受信したメッセージを復号する(ステップS105)。制御部11は、復号したメッセージを表示部15へ出力し、メッセージを表示部15に表示させる(ステップS106)。
以上のように、本実施の形態では、例えば仮想通貨の取引のために構築される分散型台帳ネットワークNを利用して、メッセージを送受信することができる。よって、本実施の形態では、運営者によって設置されるサーバを介さずにメッセージを送受信することができ、しかも受信者のみが復号できるように受信者の秘密鍵に対応した公開鍵でメッセージが暗号化されるので、メッセージの秘匿化を担保することができる。
(実施の形態2)
実施の形態2では、送信者端末10Aから送信したメッセージに関して、送信履歴情報を分散型台帳ネットワークNのノード20に記憶させる構成について説明する。
実施の形態2では、送信者端末10Aから送信したメッセージに関して、送信履歴情報を分散型台帳ネットワークNのノード20に記憶させる構成について説明する。
図4は送信履歴情報の保存手順を説明するフローチャートである。送信者端末10Aからメッセージを送信した場合、制御部11は、送信したメッセージの送信履歴情報を取得する(ステップS201)。送信履歴情報には、例えば送信日時、宛先等の情報が含まれる。また、送信履歴情報には、メッセージの一部又は全部、メッセージのタイトル等の情報が含まれていてもよい。
制御部11は、取得した送信履歴情報に対して電子署名を施す(ステップS202)。例えば、制御部11は、送信履歴情報からメッセージダイジェストを生成し、生成したメッセージダイジェストを送信者の秘密鍵で暗号化する。送信者の秘密鍵は記憶部12に予め記憶されているものとする。制御部11は、秘密鍵で暗号化したメッセージダイジェストを送信履歴情報に添付することにより、送信履歴情報に電子署名を施すことができる。
次いで、制御部11は、電子署名を施した送信履歴情報を通信部13より分散型台帳ネットワークNへ送信する(ステップS203)。このとき、制御部11は、電子署名を施した送信履歴情報を、分散型台帳ネットワークNを構成する複数のノード20,20,…,20へブロードキャストすればよい。送信された送信履歴情報は、当該送信履歴情報を受信したノード20,20,…,20のそれぞれによって保持され、その正当性は各ノード20によって検証される。
以上のように、実施の形態2では、送信者端末10Aから送信したメッセージの送信履歴情報を分散型台帳ネットワークNのノード20,20,…,20に記憶させることができ、必要に応じて送信履歴の正当性を証明することができる。
なお、送信履歴情報をノード20に保存させる処理は、送信者端末10Aからメッセージを送信した後、送信者端末10Aの制御部11が自動的に行うものであってもよく、送信者からの指示を操作部14にて受付けた場合のみ行うものであってもよい。
(実施の形態3)
実施の形態3では、メッセージの受信経路に係る経路情報を分散型台帳ネットワークNのノード20に記憶させる構成について説明する。
実施の形態3では、メッセージの受信経路に係る経路情報を分散型台帳ネットワークNのノード20に記憶させる構成について説明する。
図5は経路情報の保存手順を説明するフローチャートである。受信者端末10Bの制御部11は、メッセージを受信した場合、送信元から送信先(受信者端末10B)に至る経路情報を取得する(ステップS301)。経路情報には、メッセージを中継したノード20のアドレス等の情報が含まれていてもよい。
制御部11は、取得した経路情報に対して電子署名を施す(ステップS302)。例えば、制御部11は、経路情報からメッセージダイジェストを生成し、生成したメッセージダイジェストを受信者の秘密鍵で暗号化する。受信者の秘密鍵は記憶部12に予め記憶されているものとする。制御部11は、秘密鍵で暗号化したメッセージダイジェストを経路情報に添付することにより、経路情報に電子署名を施すことができる。
次いで、制御部11は、電子署名を施した経路情報を通信部13より分散型台帳ネットワークNへ送信する(ステップS303)。このとき、制御部11は、電子署名を施した経路情報を、分散型台帳ネットワークNを構成する複数のノード20,20,…,20へブロードキャストすればよい。送信された経路情報は、当該経路情報を受信したノード20,20,…,20のそれぞれによって保持され、その正当性は各ノード20によって検証される。
以上のように、実施の形態3では、受信したメッセージの経路情報を分散型台帳ネットワークNのノード20,20,…,20に記憶させることができ、必要に応じて受信経路の正当性を証明することができる。
なお、経路情報をノード20に保存させる処理は、受信者端末10Bがメッセージを受信した後、受信者端末10Bの制御部11が自動的に行うものであってもよく、受信者からの指示を操作部14にて受付けた場合のみ行うものであってもよい。
今回開示された実施の形態は、全ての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上述した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
10A 送信者端末
10B 受信者端末
11 制御部
12 記憶部
121 ウォレットアプリ
122 メッセージアプリ
13 通信部
14 操作部
15 表示部
20 ノード
N 分散型台帳ネットワーク
10B 受信者端末
11 制御部
12 記憶部
121 ウォレットアプリ
122 メッセージアプリ
13 通信部
14 操作部
15 表示部
20 ノード
N 分散型台帳ネットワーク
Claims (5)
- ユーザの秘密鍵により署名されたトランザクション情報を複数のノードに分散して保持する分散型台帳ネットワークへのアクセスが可能なコンピュータに、
前記ユーザへのメッセージと、該メッセージの送信先アドレスとを受付け、
受付けたメッセージを前記ユーザの秘密鍵に対応した公開鍵により暗号化し、
前記公開鍵により暗号化したメッセージを、前記分散型台帳ネットワークを介して前記送信先アドレスへ送信する
処理を実行させるためのコンピュータプログラム。 - 前記コンピュータに、
前記メッセージの送信履歴情報に対して、前記メッセージの送信元の秘密鍵を用いて電子署名を施し、
電子署名を施した送信履歴情報を前記複数のノードに分散させて記憶させるべく、前記分散型台帳ネットワークへ送信する
処理を実行させるための請求項1に記載のコンピュータプログラム。 - 前記コンピュータに、
公開鍵により暗号化されたメッセージを受信した場合、前記公開鍵に対応する秘密鍵を用いて前記メッセージを復号する
処理を実行させるための請求項1又は請求項2に記載のコンピュータプログラム。 - 前記コンピュータに、
前記メッセージの送信元から送信先に至る経路情報に対して、前記秘密鍵を用いて電子署名を施し、
電子署名を施した経路情報を前記複数のノードに分散させて記憶させるべく、前記分散型台帳ネットワークへ送信する
処理を実行させるための請求項3に記載のコンピュータプログラム。 - ユーザの秘密鍵により署名されたトランザクション情報を複数のノードに分散して保持する分散型台帳ネットワークへのアクセスが可能なコンピュータを用いて、
前記ユーザへのメッセージと、該メッセージの送信先アドレスとを受付け、
受付けたメッセージを前記ユーザの秘密鍵に対応した公開鍵により暗号化し、
前記公開鍵により暗号化したメッセージを、前記分散型台帳ネットワークを介して前記送信先アドレスへ送信する
メッセージ送信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018105431A JP2019211867A (ja) | 2018-05-31 | 2018-05-31 | コンピュータプログラム及びメッセージ送信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018105431A JP2019211867A (ja) | 2018-05-31 | 2018-05-31 | コンピュータプログラム及びメッセージ送信方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019211867A true JP2019211867A (ja) | 2019-12-12 |
Family
ID=68846803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018105431A Pending JP2019211867A (ja) | 2018-05-31 | 2018-05-31 | コンピュータプログラム及びメッセージ送信方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019211867A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117574408A (zh) * | 2024-01-15 | 2024-02-20 | 杭州字节方舟科技有限公司 | 基于区块链的生产资料管理方法、装置及电子设备 |
-
2018
- 2018-05-31 JP JP2018105431A patent/JP2019211867A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117574408A (zh) * | 2024-01-15 | 2024-02-20 | 杭州字节方舟科技有限公司 | 基于区块链的生产资料管理方法、装置及电子设备 |
CN117574408B (zh) * | 2024-01-15 | 2024-05-14 | 杭州字节方舟科技有限公司 | 基于区块链的生产资料管理方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101591255B1 (ko) | 클라이언트로부터 생성되는 정보에 대한 차동 클라이언트측 암호화 | |
JP6326173B1 (ja) | データ送受信システム及びデータ送受信方法 | |
US20090158035A1 (en) | Public Key Encryption For Web Browsers | |
US10643204B2 (en) | Cryptography method and system for securing data via electronic transmission | |
FR3006082A1 (fr) | Procede de mise en œuvre d'un droit sur un contenu | |
CN115529130B (zh) | 数据处理方法、终端、服务器、系统、设备、介质和产品 | |
US20140082095A1 (en) | Workflow monitoring | |
JP4979210B2 (ja) | ログイン情報管理装置及び方法 | |
CN112004201A (zh) | 一种短信的发送方法、装置及计算机系统 | |
KR101541165B1 (ko) | 모바일 메시지 암호화 방법, 이 방법을 수행하는 프로그램을 기록한 컴퓨터 판독가능 기록매체 및 이 방법을 저장한 다운로드 서버 | |
JP2010004420A (ja) | 鍵管理サーバ、端末、通信システム、鍵配信方法、鍵配信プログラム、鍵受信方法及び鍵受信プログラム | |
JP6894469B2 (ja) | 情報処理装置およびその制御プログラム | |
JP2019211867A (ja) | コンピュータプログラム及びメッセージ送信方法 | |
JP2010200210A (ja) | 鍵管理機器及び鍵利用システム及び鍵運用システム及び鍵管理方法及び鍵管理プログラム | |
JP6939313B2 (ja) | 分散認証システム | |
JP4668028B2 (ja) | 転送元用ソフトウェア、転送要求端末、転送元用パック生成装置、及びプログラムセット | |
JP4222132B2 (ja) | ソフトウェア提供方法及びシステム | |
WO2019179240A1 (zh) | 一种建立安全基础设施的方法、终端及装置 | |
JP5391694B2 (ja) | 情報処理装置、情報処理方法および情報処理システム | |
CN112350920A (zh) | 基于区块链的即时通讯系统 | |
JP7406777B1 (ja) | 鍵端末に秘密鍵を秘匿したまま暗号ファイルを処理するネットワークストレージ | |
Trif et al. | A windows phone 7 oriented secure architecture for business intelligence mobile applications | |
CA3034028C (en) | Cryptography method and system for securing data via electronic transmission | |
KR102320667B1 (ko) | 사용자 정보의 관리 방법 및 단말 | |
JP6603632B2 (ja) | Apiシステム及びデータ暗号化方法 |