JP2023070060A - Information processing system, information processing method, and program - Google Patents

Information processing system, information processing method, and program Download PDF

Info

Publication number
JP2023070060A
JP2023070060A JP2022142212A JP2022142212A JP2023070060A JP 2023070060 A JP2023070060 A JP 2023070060A JP 2022142212 A JP2022142212 A JP 2022142212A JP 2022142212 A JP2022142212 A JP 2022142212A JP 2023070060 A JP2023070060 A JP 2023070060A
Authority
JP
Japan
Prior art keywords
information processing
processing device
information
calculated value
transmission data
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
JP2022142212A
Other languages
Japanese (ja)
Inventor
伸治 鈴木
Shinji Suzuki
浩二 佐々木
Koji Sasaki
健人 佐々木
Taketo Sasaki
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.)
AdIn Research Inc
Original Assignee
AdIn Research 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 AdIn Research Inc filed Critical AdIn Research Inc
Priority to JP2022142212A priority Critical patent/JP2023070060A/en
Publication of JP2023070060A publication Critical patent/JP2023070060A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

PROBLEM TO BE SOLVED: To improve security in communication.
SOLUTION: In an information processing system 1, a first information processing device stores first identification information for identifying a user, and transmits a request for a service by a second information processing device to a third information processing device. The third information processing device acquires the first identification information, receives the request from the first information processing device, inquires of the second information processing device whether or not to permit the request, generates first transmission data by using a seed, first shared information sharing with the first information processing device, time information determined by a communication time with the first information processing device, the first identification information and first communication information determined in each communication with the first information processing device to transmit the first transmission data to the first information processing device when the request is permitted, and generates second transmission data including the seed to transmit the second transmission data to the second information processing device. The first information processing device and the second information processing device perform encryption and communication by using a key generated by extracting the seed from the first transmission data and the second transmission data.
SELECTED DRAWING: Figure 10
COPYRIGHT: (C)2023,JPO&INPIT

Description

本発明は、情報処理システム、情報処理方法、及び、プログラムに関する。 The present invention relates to an information processing system, an information processing method, and a program.

情報処理装置の間で行う通信において、鍵で情報を暗号化する方法が知られている。 2. Description of the Related Art A method of encrypting information with a key in communication between information processing apparatuses is known.

具体的には、ユーザが使用する第1情報処理装置、及び、サービスを提供する第3情報処理装置の間で通信を行う場合において、複数の第2情報処理装置は、通信に用いられる鍵、又は、鍵を生成する素材となる素材データを生成する。このように、第1情報処理装置、第2情報処理装置、及び、第3情報処理装置を含む少なくとも3装置の間で、情報処理システムは、通信を行う前に「合意」を図る。そして、情報処理システムは、3装置の間で「合意」できると、通信を開始する。このような構成であると、2装置の間において事前に共有する鍵で暗号化、及び、復号を行う共通鍵暗号方式等で通信を行う場合と比較して、セキュリティを向上させて通信できる技術が知られている(例えば、特許文献1等を参照)。 Specifically, when communication is performed between a first information processing device used by a user and a third information processing device providing a service, a plurality of second information processing devices have a key used for communication, Alternatively, it generates material data that is a material for generating a key. In this way, the information processing system seeks an "agreement" between at least three devices including the first information processing device, the second information processing device, and the third information processing device before communicating. Then, the information processing system starts communication when an "agreement" is reached among the three devices. With such a configuration, compared to when communication is performed by a common key cryptosystem that encrypts and decrypts with a key that is shared in advance between two devices, it is a technology that enables communication with improved security. is known (see, for example, Patent Document 1, etc.).

特開2020-77978号公報JP 2020-77978 A

従来の技術は、例えば、鍵、又は、鍵を生成する素材となる素材データを送受信する装置間で行う通信に対する攻撃等にセキュリティ上の課題がある。すなわち、従来の技術は、セキュリティを向上させる課題がある。特に、Trust Access SecureNetwork Architecture(TSA)等では、セキュリティを向上させる課題がある。 The conventional technology has a security problem, such as an attack on communication between devices that transmit and receive a key or material data that is a material for generating a key. That is, the conventional technology has a problem of improving security. Especially in Trust Access Secure Network Architecture (TSA), etc., there is a problem of improving security.

本発明は、通信におけるセキュリティ向上を目的とする。 An object of the present invention is to improve security in communication.

上記の課題を解決するため、本発明の一態様では、
ユーザが使用する第1情報処理装置、前記第1情報処理装置と接続する第2情報処理装置、並びに、前記第1情報処理装置及び前記第2情報処理装置と接続する第3情報処理装置を有する情報処理システムにおいて、
前記第1情報処理装置は、
前記ユーザを識別する第1識別情報を記憶する第1識別情報記憶部と、
前記第3情報処理装置に、前記第2情報処理装置によるサービスのリクエストを送信するリクエスト部とを有し、
前記第3情報処理装置は、
前記第1識別情報を取得する第1識別情報取得部と、
前記リクエストを前記第1情報処理装置から受け付けると、前記第2情報処理装置に、前記リクエストを許可するか否かを問い合わせる通知を行う通知部と、
前記通知に対する返答を前記第2情報処理装置から受け付ける返答受付部と、
鍵の基礎情報、又は、前記鍵を示すシードを生成するシード生成部と、
前記返答によって前記リクエストが許可されると、前記シード、前記第1情報処理装置と共有する第1共有情報、前記第1情報処理装置との通信時刻で定まる時間情報、前記第1識別情報、及び、前記第1情報処理装置との通信ごとに定まる第1通信情報を利用して第1送信データを生成する第1送信データ生成部と、
前記第1送信データを前記第1情報処理装置に送信する第1送信データ送信部と、
前記返答によって前記リクエストが許可されると、前記シードを含む第2送信データを生成する第2送信データ生成部と、
前記第2送信データを前記第2情報処理装置に送信する第2送信データ送信部とを有し、
前記第2情報処理装置は、
前記通知を前記第3情報処理装置から受け付けると、前記通知を許可する場合には、前記リクエストを許可する前記返答を前記第3情報処理装置に行う許可部を有し、
前記第1情報処理装置、及び、前記第2情報処理装置は、
前記第1送信データ、又は、前記第2送信データから前記シードを取り出して生成する前記鍵を用いて暗号化して通信を行う通信部を各々に更に備える。
In order to solve the above problems, in one aspect of the present invention,
A first information processing device used by a user, a second information processing device connected to the first information processing device, and a third information processing device connected to the first information processing device and the second information processing device. In an information processing system,
The first information processing device is
a first identification information storage unit that stores first identification information that identifies the user;
a request unit for transmitting a service request from the second information processing device to the third information processing device;
The third information processing device is
a first identification information acquisition unit that acquires the first identification information;
a notification unit that, when receiving the request from the first information processing device, notifies the second information processing device of whether or not to permit the request;
a response receiving unit that receives a response to the notification from the second information processing device;
a seed generation unit that generates key basic information or a seed that indicates the key;
When the request is permitted by the response, the seed, first shared information shared with the first information processing device, time information determined by communication time with the first information processing device, the first identification information, and a first transmission data generation unit that generates first transmission data using first communication information determined for each communication with the first information processing device;
a first transmission data transmission unit that transmits the first transmission data to the first information processing device;
a second transmission data generation unit that generates second transmission data including the seed when the request is permitted by the reply;
a second transmission data transmission unit that transmits the second transmission data to the second information processing device;
The second information processing device is
a permitting unit that, when receiving the notification from the third information processing device, sends the response permitting the request to the third information processing device when permitting the notification;
The first information processing device and the second information processing device are
Each further includes a communication unit that performs encryption using the key generated by extracting the seed from the first transmission data or the second transmission data and performing communication.

本発明によれば、通信において、セキュリティを向上できる。 According to the present invention, security can be improved in communication.

情報処理システムの全体構成例を示す図である。It is a figure which shows the whole structural example of an information processing system. 情報処理装置のハードウェア構成例を示す図である。It is a figure which shows the hardware structural example of an information processing apparatus. 事前処理の例を示す図である。It is a figure which shows the example of a pre-processing. 本処理の例を示す図である。It is a figure which shows the example of this process. 対話型の認証処理例を示す図である。It is a figure which shows the example of an interactive authentication process. 非対話型の認証処理例を示す図である。It is a figure which shows the example of a non-interactive authentication process. 攻撃の例を示す図である。It is a figure which shows the example of an attack. 共有情報を用いる認証処理の第1変形例を示す図である。It is a figure which shows the 1st modification of the authentication process using shared information. 共有情報を用いる認証処理の第2変形例を示す図である。FIG. 12 is a diagram showing a second modified example of authentication processing using shared information; 機能構成例を示す図である。It is a figure which shows the functional structural example. 第2実施形態において情報を分散させる例を示す図である。It is a figure which shows the example which distributes information in 2nd Embodiment. 分散情報の例を示す図である。It is a figure which shows the example of distributed information. SDxによる装置群の特定例を示す図である。FIG. 4 is a diagram showing an example of specifying a group of devices by SDx; DNSによる装置群の特定例を示す図である。FIG. 4 is a diagram showing an example of specifying a group of devices by DNS; 中間者攻撃の例を示す図である。FIG. 10 illustrates an example of a man-in-the-middle attack; 「なりすまし」による攻撃の例を示す図である。FIG. 10 is a diagram showing an example of an attack by "spoofing";

以下、添付する図面を参照して、具体例を説明する。なお、以下の説明において、図面に記載する符号は、符号が同一の場合には同一の要素を指す。 A specific example will be described below with reference to the accompanying drawings. In the following description, reference numerals in the drawings refer to the same elements when the reference numerals are the same.

[第1実施形態]
図1は、情報処理システムの全体構成例を示す図である。例えば、情報処理システム1は、第1情報処理装置11、第2情報処理装置12、第3情報処理装置13、及び、第4情報処理装置14等の組み合わせで構成する。例えば、情報処理システム1において、第1情報処理装置11、第2情報処理装置12、第3情報処理装置13、及び、第4情報処理装置14は、装置間を有線、又は、無線のネットワークで接続し、情報を送受信する。
[First embodiment]
FIG. 1 is a diagram showing an example of the overall configuration of an information processing system. For example, the information processing system 1 is configured by a combination of a first information processing device 11, a second information processing device 12, a third information processing device 13, a fourth information processing device 14, and the like. For example, in the information processing system 1, the first information processing device 11, the second information processing device 12, the third information processing device 13, and the fourth information processing device 14 are connected by a wired or wireless network. Connect and send and receive information.

第1情報処理装置11は、ユーザ15が使用する情報処理装置である。具体的には、第1情報処理装置11は、Personal Computer(PC)等である。 The first information processing device 11 is an information processing device used by the user 15 . Specifically, the first information processing device 11 is a Personal Computer (PC) or the like.

第2情報処理装置12は、サーバ等の情報処理装置である。例えば、第2情報処理装置12は、インターネット等を介して、第1情報処理装置11と接続する。また、第2情報処理装置12は、ネットワークを介してユーザ15にサービスを提供する。例えば、第2情報処理装置12は、いわゆるネットショッピングサイト等を展開し、ユーザ15に対して商品を販売するサービス等を提供する。 The second information processing device 12 is an information processing device such as a server. For example, the second information processing device 12 connects to the first information processing device 11 via the Internet or the like. The second information processing device 12 also provides services to the user 15 via the network. For example, the second information processing device 12 develops a so-called online shopping site and the like, and provides the user 15 with services such as selling products.

なお、第2情報処理装置12が提供するサービスは、小売りに関するサービスに限られず、ネットワークを利用してユーザ15に提供できるサービスであればよい。例えば、第2情報処理装置12が提供するサービスは、電子メール等の通信に関するサービス等でもよい。 The service provided by the second information processing apparatus 12 is not limited to a service related to retail sales, and may be any service that can be provided to the user 15 using a network. For example, the service provided by the second information processing device 12 may be a service related to communication such as e-mail.

第3情報処理装置13は、第1情報処理装置11、第2情報処理装置12、及び、第4情報処理装置14とネットワークを介して接続するサーバ等の情報処理装置である。 The third information processing device 13 is an information processing device such as a server connected to the first information processing device 11, the second information processing device 12, and the fourth information processing device 14 via a network.

第4情報処理装置14は、第1情報処理装置11、第2情報処理装置12、及び、第3情報処理装置13とネットワークを介して接続するサーバ等の情報処理装置である。また、第4情報処理装置14は、データベース等でユーザ15のユーザ情報16を保有する。 The fourth information processing device 14 is an information processing device such as a server connected to the first information processing device 11, the second information processing device 12, and the third information processing device 13 via a network. Further, the fourth information processing device 14 holds user information 16 of the user 15 in a database or the like.

例えば、ユーザ15は、第2情報処理装置12が提供するサービスの会員に加入する際等にユーザ情報16を登録する。したがって、ユーザ情報16は、サービス等で用いる内容によって異なる。具体的には、ユーザ情報16は、例えば、ネットショッピングのサービスでは、氏名、年齢、住所、パスワード、及び、クレジットカード番号等の情報である。 For example, the user 15 registers the user information 16 when subscribing as a member of the service provided by the second information processing apparatus 12 . Therefore, the user information 16 differs depending on the content used in the service or the like. Specifically, the user information 16 is, for example, information such as name, age, address, password, and credit card number in an online shopping service.

なお、ユーザ情報16は、第2情報処理装置12が提供するサービス以外に用いる情報でもよい。また、ユーザ情報16は、第1情報処理装置11、及び、第2情報処理装置12の間で通信を行う前に登録されていればよい。 Note that the user information 16 may be information used for services other than the services provided by the second information processing device 12 . Moreover, the user information 16 may be registered before communication is performed between the first information processing device 11 and the second information processing device 12 .

以下、ユーザ情報16を識別するために、登録により、識別情報(ID、identification)が設定されるとする。したがって、ユーザ15、及び、第1情報処理装置11を識別する識別情報(以下「第1識別情報」という。)は、登録の際に第1情報処理装置11が取得できるとする。 Hereinafter, in order to identify the user information 16, it is assumed that identification information (ID, identification) is set by registration. Therefore, identification information for identifying the user 15 and the first information processing apparatus 11 (hereinafter referred to as "first identification information") can be acquired by the first information processing apparatus 11 at the time of registration.

なお、第1識別情報は、登録が行われた後、第4情報処理装置14に問い合わせると取得できる。ただし、第4情報処理装置14は、外部装置の問い合わせに無条件に第1識別情報を提供するのではなく、一定の照合処理等によるチェックを行って第1識別情報を提供する。 Note that the first identification information can be acquired by inquiring of the fourth information processing device 14 after registration. However, the fourth information processing device 14 does not unconditionally provide the first identification information in response to an inquiry from the external device, but provides the first identification information after performing a check such as a certain verification process.

また、第1識別情報は、ユーザ情報16の全部、又は、一部を利用して生成される。例えば、第1識別情報は、ユーザ情報16の全部、又は、一部に対応して生成される。具体的には、第1識別情報は、ユーザ情報16における氏名が異なれば、異なる識別番号になる等である。一方で、第1識別情報が定まれば、対応する氏名は1つであるため、第1識別情報に基づき、ユーザ15が特定できる。 Also, the first identification information is generated using all or part of the user information 16 . For example, the first identification information is generated corresponding to all or part of the user information 16 . Specifically, the first identification information may be a different identification number if the name in the user information 16 is different. On the other hand, if the first identification information is determined, the user 15 can be specified based on the first identification information because there is one corresponding name.

[情報処理装置のハードウェア構成例]
図2は、情報処理装置のハードウェア構成例を示す図である。例えば、第1情報処理装置11は、Central Processing Unit(CPU、以下「CPU11H1」という。)、記憶装置11H2、インタフェース11H3、入力装置11H4、及び、出力装置11H5等を有するハードウェア構成である。
[Hardware Configuration Example of Information Processing Device]
FIG. 2 is a diagram illustrating a hardware configuration example of an information processing apparatus. For example, the first information processing device 11 has a hardware configuration including a Central Processing Unit (CPU, hereinafter referred to as "CPU 11H1"), a storage device 11H2, an interface 11H3, an input device 11H4, an output device 11H5, and the like.

CPU11H1は、演算装置、及び、制御装置の例である。例えば、CPU11H1は、プログラム、又は、操作等に基づいて演算を行う。 The CPU 11H1 is an example of an arithmetic device and a control device. For example, the CPU 11H1 performs calculations based on programs, operations, or the like.

記憶装置11H2は、メモリ等の主記憶装置である。なお、記憶装置11H2は、Solid State Drive(SSD)、又は、ハードディスク等の補助記憶装置があってもよい。 The storage device 11H2 is a main storage device such as a memory. The storage device 11H2 may be a Solid State Drive (SSD) or an auxiliary storage device such as a hard disk.

インタフェース11H3は、ネットワーク、又は、ケーブル等を介して外部装置とデータを送受信する。例えば、インタフェース11H3は、コネクタ、又は、アンテナ等である。 The interface 11H3 transmits and receives data to and from an external device via a network, cable, or the like. For example, the interface 11H3 is a connector, an antenna, or the like.

入力装置11H4は、ユーザによる操作を入力する装置である。例えば、入力装置11H4は、マウス、又は、キーボード等である。 The input device 11H4 is a device for inputting an operation by a user. For example, the input device 11H4 is a mouse, keyboard, or the like.

出力装置11H5は、ユーザに対して処理結果等を出力する装置である。例えば、出力装置11H5は、ディスプレイ等である。 The output device 11H5 is a device that outputs processing results and the like to the user. For example, the output device 11H5 is a display or the like.

なお、情報処理装置は、上記以外のハードウェア資源を内部、又は、外部に更に有するハードウェア構成であってもよい。また、各々の情報処理装置は、複数の装置であってもよい。 Note that the information processing apparatus may have a hardware configuration that further includes internal or external hardware resources other than those described above. Also, each information processing device may be a plurality of devices.

また、第1情報処理装置11、第2情報処理装置12、第3情報処理装置13、及び、第4情報処理装置14は、異なるハードウェア構成の装置でもよいし、同じハードウェア構成の装置でもよい。 Further, the first information processing device 11, the second information processing device 12, the third information processing device 13, and the fourth information processing device 14 may have different hardware configurations, or may have the same hardware configuration. good.

[全体処理例]
以下、情報処理システム1は、全体処理において、事前に行う処理(以下「事前処理」という。)を行った後、事前処理による準備が完了している状態で通信等を含む処理(以下「本処理」という。)を行う。
[Overall processing example]
Hereinafter, in the overall processing, the information processing system 1 performs processing (hereinafter referred to as “pre-processing”) in advance, and then processing including communication etc. (hereinafter referred to as “main (hereinafter referred to as “processing”).

なお、事前処理は、本処理より前に完了していればよい。したがって、事前処理、及び、本処理は、処理が連続でなくともよい。 Note that the pre-processing may be completed before the main processing. Therefore, the pretreatment and the main treatment do not have to be continuous.

また、事前処理は、1度実行すれば、以降、本処理ごとに実行する必要はない。すなわち、本処理を行うごとに応じて、事前処理を毎回事前に行う必要はない。 Moreover, once the pre-processing is executed, it is not necessary to execute the main processing thereafter. That is, it is not necessary to perform the pre-processing in advance each time the main processing is performed.

図3は、事前処理の例を示す図である。例えば、情報処理システム1は、ユーザ情報16を以下のような事前処理で登録する。 FIG. 3 is a diagram illustrating an example of preprocessing. For example, the information processing system 1 registers the user information 16 by the following pre-processing.

ステップS101では、第1情報処理装置11は、ユーザ15による入力操作で入力する情報等を第4情報処理装置14に送信してユーザ情報16を登録する。 In step S<b>101 , the first information processing device 11 transmits information and the like input by the input operation by the user 15 to the fourth information processing device 14 to register the user information 16 .

なお、ユーザ情報16は、上記のような処理以外で登録されてもよい。例えば、ユーザ情報16は、第2情報処理装置12が展開するサイト等を介して登録されてもよい。 Note that the user information 16 may be registered by a process other than the above process. For example, the user information 16 may be registered via a site or the like developed by the second information processing device 12 .

具体的には、第2情報処理装置12が提供するサービスにユーザ15が入会する手続き等のため、第2情報処理装置12は、手続き用に入会フォームを表示するサイト等を展開する。そして、ユーザ15は、第1情報処理装置11を操作して、入会フォームにおける各項目(ユーザ情報16の氏名等に該当する情報となる。)を入力する。このような入力がされると、第2情報処理装置12は、第1情報処理装置11からユーザ情報16(又は、一部の場合もある。)を受け取る。この後、第2情報処理装置12は、第4情報処理装置14にユーザ情報16を送信する。 Specifically, the second information processing apparatus 12 develops a site or the like that displays an enrollment form for procedures for the user 15 to join the service provided by the second information processing apparatus 12 . Then, the user 15 operates the first information processing device 11 to input each item (information corresponding to the name, etc. of the user information 16) in the membership form. When such an input is made, the second information processing device 12 receives the user information 16 (or part of it in some cases) from the first information processing device 11 . After that, the second information processing device 12 transmits the user information 16 to the fourth information processing device 14 .

このように、ユーザ情報16は、直接、又は、複数の情報処理装置を介して登録されてもよい。また、ユーザ情報16は、複数のサービスで用いる情報を一元的に管理するでもよい。 In this manner, the user information 16 may be registered directly or through multiple information processing devices. Also, the user information 16 may centrally manage information used in a plurality of services.

なお、ユーザ情報16は、データ統合(データインテグレーション(Digital Identity、DI、ID)等と呼ばれる場合もある。)等で生成、及び、管理されてもよい。また、ユーザ情報16は、複数のサービスで併用されてもよいし、サービスごとに異なる(ユーザ情報16の一部異なる場合を含む。)でもよい。 The user information 16 may be generated and managed by data integration (sometimes called data integration (Digital Identity, DI, ID), etc.). Also, the user information 16 may be used in combination with a plurality of services, or may be different for each service (including a case where the user information 16 is partially different).

ステップS101の後、例えば、第4情報処理装置14は、ユーザ情報16、又は、ユーザ情報16の一部を利用して、第1識別情報を生成する。したがって、ステップS101による登録の後、例えば、ステップS102、又は、ステップS104による第1識別情報の問い合わせを行うと、第4情報処理装置14以外の外部装置は、第1識別情報を取得できる。 After step S101, for example, the fourth information processing device 14 uses the user information 16 or part of the user information 16 to generate the first identification information. Therefore, after the registration in step S101, for example, by inquiring about the first identification information in step S102 or step S104, an external device other than the fourth information processing device 14 can acquire the first identification information.

ステップS102では、第3情報処理装置13は、第1識別情報の問い合わせを第4情報処理装置14に行う。 In step S102, the third information processing device 13 inquires of the fourth information processing device 14 about the first identification information.

ステップS103では、第4情報処理装置14は、問い合わせに対し、第1識別情報を返答する。このようにして、第3情報処理装置13は、第1識別情報を取得する。 In step S103, the fourth information processing device 14 responds to the inquiry with the first identification information. Thus, the third information processing device 13 acquires the first identification information.

ステップS104では、第2情報処理装置12は、第1識別情報の問い合わせを第4情報処理装置14に行う。 In step S104, the second information processing device 12 inquires of the fourth information processing device 14 about the first identification information.

ステップS105では、第4情報処理装置14は、問い合わせに対し、第1識別情報を返答する。このようにして、第2情報処理装置12は、第1識別情報を取得する。 In step S105, the fourth information processing device 14 responds to the inquiry with the first identification information. Thus, the second information processing device 12 acquires the first identification information.

なお、第1識別情報は、ステップS102乃至ステップS104以外の方法で取得されてもよい。例えば、第3情報処理装置13等は、ユーザ情報16、又は、ユーザ情報16の一部を利用して処理を行って第1識別情報を取得してもよい。また、第1識別情報の取得は、登録が完了した後であれば、タイミングは問わない。 Note that the first identification information may be acquired by a method other than steps S102 to S104. For example, the third information processing device 13 and the like may acquire the first identification information by performing processing using the user information 16 or part of the user information 16 . Also, the acquisition of the first identification information can be done at any timing as long as the registration is completed.

図4は、本処理の例を示す図である。以下、図3に示す事前処理が完了した後、情報処理システム1が行う本処理の例を説明する。 FIG. 4 is a diagram showing an example of this processing. An example of main processing performed by the information processing system 1 after the pre-processing shown in FIG. 3 is completed will be described below.

ステップS201では、第1情報処理装置11は、第2情報処理装置12によるサービスのリクエストを第3情報処理装置13に送信する。以下、ユーザ15の希望に応じて、第2情報処理装置12によるサービスの開始を指示する情報を単に「リクエスト」という。また、リクエストの送信によって本処理が開始される。 In step S<b>201 , the first information processing device 11 transmits a service request from the second information processing device 12 to the third information processing device 13 . Hereinafter, information instructing the second information processing device 12 to start a service at the request of the user 15 is simply referred to as a "request". Also, this process is started by sending a request.

具体的には、リクエストは、ネットショッピングサイトにおいてユーザ15が所定の商品を購入する申し込み、又は、メール送受信サービスにおいて、ユーザ15がメールを送信する操作等の入力があったタイミング等に送信される。したがって、リクエストは、このような本処理の開始を示すトリガ(Trigger)となる情報であれば、情報量、及び、形式は問わない。 Specifically, the request is sent at the timing when the user 15 makes an application to purchase a predetermined product at an online shopping site, or when the user 15 inputs an operation such as sending an email in an email sending/receiving service. . Therefore, as long as the request is information that serves as a trigger indicating the start of this processing, the amount of information and the format of the request do not matter.

ステップS202では、第3情報処理装置13は、リクエストを受け付けると、リクエストを許可するか否かを第2情報処理装置12に問い合わせる通知を行う。 In step S202, when receiving the request, the third information processing device 13 notifies the second information processing device 12 whether or not to permit the request.

ステップS203では、第2情報処理装置12は、通知に対して返答を第3情報処理装置13に行う。具体的には、第2情報処理装置12は、リクエストが第1情報処理装置11からであると判断した場合には、許可する返答を行う。 In step S<b>203 , the second information processing device 12 sends a reply to the notification to the third information processing device 13 . Specifically, when the second information processing device 12 determines that the request is from the first information processing device 11, it makes a reply of permission.

一方で、第2情報処理装置12は、リクエストが第1情報処理装置11からでないと判断した場合には、拒否する返答を行う。なお、拒否の返答がされた場合には、本処理は終了する。以下、返答が許可である場合とする。 On the other hand, when the second information processing device 12 determines that the request is not from the first information processing device 11, it makes a reply of refusal. It should be noted that, if a reply of refusal is received, this processing ends. In the following, it is assumed that the response is permission.

また、ステップS203による返答が許可であると、第1情報処理装置11は、第2情報処理装置12によって認証されたことになる。 Also, if the response in step S203 is permission, it means that the first information processing device 11 has been authenticated by the second information processing device 12 .

ステップS204では、第3情報処理装置13は、第1情報処理装置11を認証するのが望ましい。なお、ステップS204は、後述する共有情報を用いる認証処理を行うのがより望ましい。このように、認証が行われると、第1情報処理装置11に「なりすまし」した情報処理装置による不正なアクセス、又は、不正な情報取得を防げる。 In step S<b>204 , the third information processing device 13 preferably authenticates the first information processing device 11 . In step S204, it is more desirable to perform authentication processing using shared information, which will be described later. In this way, when authentication is performed, unauthorized access or unauthorized acquisition of information by an information processing apparatus "spoofing" the first information processing apparatus 11 can be prevented.

ステップS205では、第3情報処理装置13は、第1情報処理装置11に送信するデータ(以下「第1送信データ」という。)を生成する。 In step S205, the third information processing device 13 generates data to be transmitted to the first information processing device 11 (hereinafter referred to as "first transmission data").

例えば、第1送信データは、下記(1)式を計算して生成される。 For example, the first transmission data is generated by calculating the following formula (1).

第1送信データ=(S||N||T) XOR Hash(ID||S) (1) First transmission data=(S d ||N 1 ||T) XOR Hash(ID 1 ||S 1 ) (1)

例えば、ステップS205では、第3情報処理装置13は、上記(1)式における右辺を計算して第1送信データを生成する。具体的には、第3情報処理装置13は、第1送信データを生成する上で、まず、鍵、又は、鍵の基礎情報となるデータ(以下「シード」(Seed)という。)を生成する。以下、シードが鍵の基礎情報である場合を例に説明する。 For example, in step S205, the third information processing device 13 calculates the right side of the above equation (1) to generate the first transmission data. Specifically, in generating the first transmission data, the third information processing device 13 first generates a key or data serving as basic information of the key (hereinafter referred to as "seed"). . A case where the seed is the basic information of the key will be described below as an example.

上記(1)式では、「S」がシードである。シードは、第1情報処理装置11、及び、第3情報処理装置13の間を共通鍵方式で暗号化して通信を行うのに用いる鍵を生成するのに基礎とするデータである。 In the above equation (1), "S d " is the seed. The seed is data used as a basis for generating a key used for encrypted communication between the first information processing device 11 and the third information processing device 13 using a common key system.

したがって、第1情報処理装置11、及び、第2情報処理装置12等は、同じシードを受け取れば、送信側、及び、受信側で同じ鍵を生成できるため、共通鍵方式における暗号化、及び、復号が可能となる。 Therefore, if the first information processing device 11 and the second information processing device 12 receive the same seed, the same key can be generated on the transmitting side and the receiving side. Decryption becomes possible.

例えば、シードは、所定の情報量となる乱数等である。又は、シードは、鍵でもよい。ただし、シードは、鍵より、シードに対して一定の処理を行うと鍵が得られる基礎情報である方が、一定の処理を知らない攻撃者に対してセキュリティを向上できる。 For example, the seed is a random number or the like having a predetermined amount of information. Alternatively, the seed may be a key. However, if the seed is basic information from which the key can be obtained by performing certain processing on the seed, rather than the key, the security against an attacker who does not know the certain processing can be improved.

なお、シードは、鍵の基礎となれば情報量等は問わない。例えば、シードは、鍵の一部となるデータ等でもよい。 It should be noted that the amount of information of the seed does not matter as long as it serves as the basis of the key. For example, the seed may be data or the like that becomes part of the key.

具体的には、第1情報処理装置11、及び、第2情報処理装置12は、シードを受け取るよりも事前に追加するデータ、又は、変換方法等を共有する。そして、シードを受け取ると、第1情報処理装置11、及び、第2情報処理装置12は、シードに対して共有するデータを追加、又は、共有する変換方法等の同じ処理を行い、シードを変換して、同じ鍵を得てもよい。 Specifically, the first information processing device 11 and the second information processing device 12 share data to be added in advance, a conversion method, or the like, rather than receiving the seed. Then, when the seeds are received, the first information processing device 11 and the second information processing device 12 add data to be shared to the seeds, or perform the same processing such as the conversion method to be shared, and convert the seeds. to get the same key.

また、上記(1)式において、「N」は、第1情報処理装置11、及び、第3情報処理装置13の間で共有する情報(以下「第1共有情報」という。)である。例えば、第1共有情報は、番号等である。したがって、「N」は、第1情報処理装置11、及び、第3情報処理装置13の間で同じデータを共有できれば情報量等は問わない。また、第1共有情報の共有方法は、情報を送信する等である。 Also, in the above equation (1), "N 1 " is information shared between the first information processing device 11 and the third information processing device 13 (hereinafter referred to as "first shared information"). For example, the first shared information is a number or the like. Therefore, as long as the same data can be shared between the first information processing device 11 and the third information processing device 13, "N 1 " can be any amount of information. Also, the method of sharing the first shared information is, for example, transmitting information.

上記(1)式において、「T」は、第1情報処理装置11、及び、第3情報処理装置13の間で行う通信を行った時刻(以下「通信時刻」という。)で定まる情報(以下「時間情報」という。)である。例えば、時間情報は、いわゆるタイムパスワード等である。また、通信時刻は、例えば、通信を開始した時刻等である。 In the above formula (1), "T" is information (hereinafter referred to as "communication time") determined by the time at which communication was performed between the first information processing device 11 and the third information processing device 13. (referred to as "time information"). For example, the time information is a so-called time password or the like. Also, the communication time is, for example, the time when communication is started.

このように、第1送信データは、通信を行う時刻に依拠して生成されるのが望ましい。なぜならば、時間情報を用いると、時間情報に応じた一定期間以外の時刻では、第1送信データからシード等を取り出すのが難しくできる。ゆえに、第1データからシード等の情報が漏洩するのを防ぎ、セキュリティを向上できる。 Thus, the first transmission data is desirably generated depending on the time of communication. This is because using the time information makes it difficult to extract the seed or the like from the first transmission data at times other than the fixed period according to the time information. Therefore, information such as seeds can be prevented from leaking from the first data, and security can be improved.

上記(1)式において、「ID」は、第1識別情報である。したがって、第1識別情報は、事前処理等により事前に取得される。 In the above formula (1), "ID 1 " is the first identification information. Therefore, the first identification information is acquired in advance by preprocessing or the like.

上記(1)式において、「S」は、第1情報処理装置11、及び、第3情報処理装置13の間で行う通信ごとに定まる情報(以下「第1通信情報」という。)である。例えば、第1通信情報は、セッションごとに異なる情報である。したがって、第1通信情報は、セッションID、又は、ワンタイムパスワード等といった通信ごとに使い捨ての情報である。なお、第1通信情報は、セッション以外の単位で生成されてもよい。 In the above formula (1), “S 1 ” is information determined for each communication performed between the first information processing device 11 and the third information processing device 13 (hereinafter referred to as “first communication information”). . For example, the first communication information is information different for each session. Therefore, the first communication information is disposable information for each communication, such as a session ID or a one-time password. Note that the first communication information may be generated in units other than sessions.

また、第1通信情報は、例えば、第1情報処理装置11、及び、第3情報処理装置13の間で通信を確立する際等に、第3情報処理装置13から第1情報処理装置11に送信して共有する。 Further, the first communication information is transmitted from the third information processing device 13 to the first information processing device 11, for example, when communication is established between the first information processing device 11 and the third information processing device 13. Send and share.

このように、第1送信データは、通信ごとに異なる情報に依拠して生成されるのが望ましい。なぜならば、第1通信情報を用いると、通信ごとに情報が異なるため、異なる通信では第1送信データからシード等を取り出すのが難しくできる。ゆえに、第1送信データからシード等の情報が漏洩するのを防ぎ、セキュリティを向上できる。 Thus, it is desirable that the first transmission data be generated based on information that differs for each communication. This is because if the first communication information is used, the information differs for each communication, making it difficult to extract the seed or the like from the first transmission data in different communications. Therefore, information such as seeds can be prevented from leaking from the first transmission data, and security can be improved.

また、上記(1)式において、「||」は、論理和(OR)の演算子である。さらに、上記(1)式において、「XOR」は、排他的論理和(Exclusive OR)の演算子である。そして、上記(1)式において、「Hash」は、ハッシュ関数を示す。ゆえに、「Hash」に続く「括弧()」内がハッシュ関数の引数となる。 In the above formula (1), "||" is a logical sum (OR) operator. Furthermore, in the above formula (1), "XOR" is an exclusive OR operator. In the above formula (1), "Hash" indicates a hash function. Therefore, the argument of the hash function is in "brackets ( )" following "Hash".

なお、第1送信データは、上記(1)式以外の計算で生成されてもよい。例えば、第1送信データは、上記(1)式と等価計算を行う式等を計算して生成されてもよい。又は、第1送信データは、上記(1)式とは演算子が異なる式、又は、任意の乱数を更に用いる計算で生成されてもよい。 Note that the first transmission data may be generated by a calculation other than the formula (1) above. For example, the first transmission data may be generated by calculating an equation that performs an equivalent calculation to equation (1) above. Alternatively, the first transmission data may be generated by a formula using a different operator from formula (1) above, or a calculation further using arbitrary random numbers.

ほかにも、第1送信データは、位置情報を上記(1)式に追加、又は、上記(1)式における変数と代えて用いる計算で生成されてもよい。 In addition, the first transmission data may be generated by calculation using location information in addition to the above equation (1) or using it instead of the variables in the above equation (1).

このように位置情報を用いると、第1情報処理装置11が所定の位置、又は、範囲内に存在している場合、又は、第1情報処理装置11の存在している位置等を把握しないと、第1送信データからシード等を取り出すのを難しくできる。ゆえに、位置情報の利用により、第1送信データからシード等の情報が漏洩するのを防ぎ、セキュリティを向上できる。 When the position information is used in this way, it is necessary to grasp the position where the first information processing device 11 exists, or the like, when the first information processing device 11 exists within a predetermined position or within a range. , it can be difficult to extract seeds, etc. from the first transmitted data. Therefore, by using the location information, it is possible to prevent the information such as the seed from leaking from the first transmission data and improve the security.

ステップS206では、第3情報処理装置13は、第1情報処理装置11に第1送信データを送信する。なお、第3情報処理装置13は、第1送信データを暗号化して送信するのが望ましい。すなわち、第1送信データは、機密性が確保されて第1情報処理装置11、及び、第3情報処理装置13の間を送信されるのが望ましい。 In step S<b>206 , the third information processing device 13 transmits first transmission data to the first information processing device 11 . In addition, it is desirable that the third information processing device 13 encrypts and transmits the first transmission data. That is, the first transmission data is desirably transmitted between the first information processing device 11 and the third information processing device 13 while ensuring confidentiality.

ステップS207では、第1情報処理装置11は、シードを取り出して、鍵を生成する。まず、第1情報処理装置11は、ステップS207で第3情報処理装置13が送信する第1送信データを受け取る。なお、第1送信データが暗号化されている場合には、第1情報処理装置11は、第1送信データを復号する。 In step S207, the first information processing device 11 extracts the seed and generates a key. First, the first information processing device 11 receives first transmission data transmitted by the third information processing device 13 in step S207. In addition, when the first transmission data is encrypted, the first information processing device 11 decrypts the first transmission data.

次に、第1送信データを受け取ると、第1情報処理装置11は、第1送信データからシードを取り出す。例えば、上記(1)式に基づいて第1送信データが生成される場合において、上記(1)式を逆算すると、第1情報処理装置11は、第1送信データからシードを取り出せる。 Next, upon receiving the first transmission data, the first information processing device 11 extracts the seed from the first transmission data. For example, when the first transmission data is generated based on the above equation (1), the first information processing device 11 can extract the seed from the first transmission data by calculating back the above equation (1).

ゆえに、第1情報処理装置11は、上記(1)式、第1共有情報、時間情報、第1識別情報、及び、第1通信情報等を第3情報処理装置13と共有していると、第1送信データからシードを取り出せる。 Therefore, if the first information processing device 11 shares the above formula (1), the first shared information, the time information, the first identification information, the first communication information, etc. with the third information processing device 13, A seed can be retrieved from the first transmitted data.

続いて、第1情報処理装置11は、取り出したシードに基づき、鍵を生成する。なお、シードから鍵を生成する方法は、第2情報処理装置12と事前に共有するため、同じシードを保有すれば、同じ鍵を生成できる。 Subsequently, the first information processing device 11 generates a key based on the extracted seed. Since the method of generating the key from the seed is shared with the second information processing device 12 in advance, the same key can be generated if the same seed is held.

ステップS208では、第3情報処理装置13は、第2情報処理装置12に送信するデータ(以下「第2送信データ」という。)を生成する。具体的には、第2送信データは、シードが取り出せるデータ(例えば、暗号化、又は、圧縮したデータ等でもよい。)であればよい。ただし、第2送信データは、第1送信データと同様に生成されるのが望ましい。以下、第2送信データを第1送信データと同様に生成する場合を例に説明する。なお、下記(2)式は、第2情報処理装置12、及び、第3情報処理装置13の間で共有できれば、上記(1)式と同じでなくともよい。 In step S208, the third information processing device 13 generates data to be transmitted to the second information processing device 12 (hereinafter referred to as "second transmission data"). Specifically, the second transmission data may be data that can be extracted by the seed (for example, encrypted or compressed data may be used). However, it is desirable that the second transmission data be generated in the same manner as the first transmission data. An example of generating the second transmission data in the same manner as the first transmission data will be described below. Note that the following formula (2) may not be the same as the above formula (1) as long as it can be shared between the second information processing device 12 and the third information processing device 13 .

例えば、第2送信データは、下記(2)式を計算して生成される。 For example, the second transmission data is generated by calculating the following formula (2).

第2送信データ=(S||N||T) XOR Hash(ID||S) (2) Second transmission data=(S d ||N 2 ||T) XOR Hash(ID 2 ||S 2 ) (2)

例えば、ステップS208では、第3情報処理装置13は、上記(2)式における右辺を計算して第2送信データを生成する。具体的には、第3情報処理装置13は、第1送信データに用いたのと同じシードを用いる。したがって、上記(2)式における「S」は、シードである。また、上記(2)式における「S」は、上記(1)式における「S」と同じデータである。ゆえに、シードは、第1情報処理装置11、及び、第2情報処理装置12の間で共通のデータである。その結果、第1情報処理装置11、及び、第2情報処理装置12は、暗号化で同じ鍵を用いることができる。 For example, in step S208, the third information processing device 13 calculates the right side of the above equation (2) to generate the second transmission data. Specifically, the third information processing device 13 uses the same seed as used for the first transmission data. Therefore, "S d " in the above equation (2) is the seed. Also, "S d " in the above formula (2) is the same data as "S d " in the above formula (1). Therefore, the seed is common data between the first information processing device 11 and the second information processing device 12 . As a result, the first information processing device 11 and the second information processing device 12 can use the same key for encryption.

また、上記(2)式において、「N」は、第2情報処理装置12、及び、第3情報処理装置13の間で共有する情報(以下「第2共有情報」という。)である。例えば、第2共有情報は、番号等である。したがって、「N」は、第2情報処理装置12、及び、第3情報処理装置13の間で同じデータを共有できれば情報量等は問わない。また、第2共有情報の共有方法は、情報を送信する等である。 Also, in the above equation (2), “N 2 ” is information shared between the second information processing device 12 and the third information processing device 13 (hereinafter referred to as “second shared information”). For example, the second shared information is a number or the like. Therefore, as long as the same data can be shared between the second information processing device 12 and the third information processing device 13, the amount of information or the like does not matter for "N 2 ". Further, the method of sharing the second shared information is, for example, transmitting information.

上記(2)式において、「T」は、時間情報である。なお、時間情報は、第2情報処理装置12、及び、第3情報処理装置13の間で共有できれば、上記(1)式と同じ情報でもよいし、又は、異なる情報でもよい。 In the above equation (2), "T" is time information. Note that the time information may be the same information as the above equation (1), or may be different information as long as it can be shared between the second information processing device 12 and the third information processing device 13 .

このように、第2送信データにも、通信を行う時刻に依拠して生成されるのが望ましい。なぜならば、時間情報を用いると、時間情報に応じた一定期間以外の時刻では、第2送信データからシード等を取り出すのが難しくできる。ゆえに、第2送信データからシード等の情報が漏洩するのを防ぎ、セキュリティを向上できる。 Thus, it is desirable that the second transmission data is also generated depending on the time of communication. This is because using the time information makes it difficult to extract the seed or the like from the second transmission data at times other than the fixed period according to the time information. Therefore, information such as seeds can be prevented from leaking from the second transmission data, and security can be improved.

上記(2)式において、「ID」は、第2情報処理装置12を識別する情報(以下「第2識別情報」という。)である。例えば、第2識別情報は、第1識別情報と同様に、事前処理等により事前に取得される。 In the above equation (2), “ID 2 ” is information identifying the second information processing device 12 (hereinafter referred to as “second identification information”). For example, like the first identification information, the second identification information is acquired in advance by preprocessing or the like.

上記(2)式において、「S」は、第2情報処理装置12、及び、第3情報処理装置13の間で行う通信ごとに定まる情報(以下「第2通信情報」という。)である。例えば、第2通信情報は、セッションごとに異なる情報である。したがって、第2通信情報は、セッションID、又は、ワンタイムパスワード等といった通信ごとに使い捨ての情報である。なお、第2通信情報は、セッション以外の単位で生成されてもよい。 In the above formula (2), “S 2 ” is information determined for each communication performed between the second information processing device 12 and the third information processing device 13 (hereinafter referred to as “second communication information”). . For example, the second communication information is information different for each session. Therefore, the second communication information is disposable information for each communication, such as a session ID or a one-time password. Note that the second communication information may be generated in units other than sessions.

ただし、第2通信情報は、第1通信情報と同じ情報でもよい。以下、第1通信情報、及び、第2通信情報が異なる場合を例に説明する。 However, the second communication information may be the same information as the first communication information. An example in which the first communication information and the second communication information are different will be described below.

また、第2通信情報は、例えば、第2情報処理装置12、及び、第3情報処理装置13の間で通信を確立する際等に、第3情報処理装置13から第2情報処理装置12に送信して共有する。 Further, the second communication information is transmitted from the third information processing device 13 to the second information processing device 12, for example, when establishing communication between the second information processing device 12 and the third information processing device 13. Send and share.

このように、第2送信データは、通信ごとに異なる情報に依拠して生成されるのが望ましい。なぜならば、第2通信情報を用いると、通信ごとに情報が異なるため、異なる通信では第2送信データからシード等を取り出すのが難しくできる。ゆえに、第1送信データからシード等の情報が漏洩するのを防ぎ、セキュリティを向上できる。 Thus, it is desirable that the second transmission data be generated based on information that differs for each communication. This is because when the second communication information is used, the information differs for each communication, making it difficult to extract the seed or the like from the second transmission data in different communications. Therefore, information such as seeds can be prevented from leaking from the first transmission data, and security can be improved.

また、上記(2)式における「||」、「XOR」、及び、「Hash」は、上記(1)式と同様である。 "||", "XOR", and "Hash" in the above formula (2) are the same as in the above formula (1).

ステップS209では、第3情報処理装置13は、第2情報処理装置12に第2送信データを送信する。なお、第3情報処理装置13は、第2送信データを暗号化して送信するのが望ましい。すなわち、第2送信データは、機密性が確保されて第2情報処理装置12、及び、第3情報処理装置13の間を送信されるのが望ましい。 In step S<b>209 , the third information processing device 13 transmits the second transmission data to the second information processing device 12 . In addition, it is desirable that the third information processing device 13 encrypts the second transmission data and transmits the encrypted data. That is, the second transmission data is desirably transmitted between the second information processing device 12 and the third information processing device 13 with confidentiality secured.

ステップS210では、第2情報処理装置12は、シードを取り出して、鍵を生成する。まず、第2情報処理装置12は、ステップS209で第3情報処理装置13が送信する第2送信データを受け取る。なお、第2送信データが暗号化されている場合には、第2情報処理装置12は、第2送信データを復号する。 In step S210, the second information processing device 12 extracts the seed and generates a key. First, the second information processing device 12 receives second transmission data transmitted by the third information processing device 13 in step S209. In addition, when the second transmission data is encrypted, the second information processing device 12 decrypts the second transmission data.

次に、第2送信データを受け取ると、第2情報処理装置12は、第2送信データからシードを取り出す。例えば、上記(2)式に基づいて第2送信データが生成される場合において、上記(2)式を逆算すると、第2情報処理装置12は、第2送信データからシードを取り出せる。 Next, upon receiving the second transmission data, the second information processing device 12 extracts the seed from the second transmission data. For example, when the second transmission data is generated based on the above equation (2), the second information processing device 12 can extract the seed from the second transmission data by back-calculating the above equation (2).

ゆえに、第2情報処理装置12は、上記(2)式、第2共有情報、時間情報、第2識別情報、及び、第2通信情報等を第3情報処理装置13と共有していると、第2送信データからシードを取り出せる。 Therefore, if the second information processing device 12 shares the above formula (2), the second shared information, the time information, the second identification information, the second communication information, etc. with the third information processing device 13, A seed can be retrieved from the second transmitted data.

続いて、第2情報処理装置12は、取り出したシードに基づき、鍵を生成する。なお、シードから鍵を生成する方法は、第1情報処理装置11と事前に共有するため、同じシードを保有すれば、同じ鍵を生成できる。 Subsequently, the second information processing device 12 generates a key based on the extracted seed. Since the method of generating the key from the seed is shared with the first information processing device 11 in advance, the same key can be generated if the same seed is held.

なお、ステップS205乃至ステップS207、及び、ステップS208乃至ステップS210は、並列、又は、逆の順序で実行されてもよい。 Note that steps S205 to S207 and steps S208 to S210 may be executed in parallel or in reverse order.

以上のように、第1情報処理装置11がステップS207を実行し、かつ、第2情報処理装置12がステップS210を実行すると、第1情報処理装置11、及び、第2情報処理装置12は、同じ鍵を用いる暗号化、すなわち、共通鍵方式で通信が可能な状態となる。 As described above, when the first information processing device 11 executes step S207 and the second information processing device 12 executes step S210, the first information processing device 11 and the second information processing device 12 Encryption using the same key, ie, a state in which communication is possible with a common key system.

ステップS211では、第1情報処理装置11、及び、第2情報処理装置12は、鍵を用いて暗号化して通信を行う。具体的には、通信は、Advanced Encryption Standard(AES)、又は、Data Encryption Standard(DES)等である。なお、暗号化、及び、復号は、共通した鍵を用いる方式(他の方式との組み合わせ、又は、一部の暗号化に用いる場合を含む。)であれば、規格等は問わない。 In step S211, the first information processing apparatus 11 and the second information processing apparatus 12 perform communication by encrypting using a key. Specifically, the communication is Advanced Encryption Standard (AES), Data Encryption Standard (DES), or the like. Note that the encryption and decryption may be of any standard as long as it is a method using a common key (including a combination with another method or use for partial encryption).

このように暗号化して通信を行うことができると、情報処理システム1は、第1情報処理装置11、及び、第2情報処理装置12の間で情報を秘密にして通信ができ、通信におけるセキュリティを向上できる。 If communication can be performed with encryption in this way, the information processing system 1 can communicate confidentially between the first information processing device 11 and the second information processing device 12, thereby ensuring security in communication. can be improved.

なお、ステップS211は、Galois/Counter Mode(GCM)等の認証付き暗号の通信であるのが望ましい。 It should be noted that step S211 is preferably encrypted communication with authentication such as Galois/Counter Mode (GCM).

また、通信は、鍵が保有できた状態以降であれば、タイミング及び回数を問わない。すなわち、ステップS211は、ステップS207、及び、ステップS210が実行された後であればいつでもよい。 In addition, the timing and the number of times of communication are not limited as long as the communication is in a state where the key can be held or later. That is, step S211 may be performed at any time after steps S207 and S210 are performed.

[共有情報を用いる認証処理の例]
ステップS204等の認証は、例えば、以下のように、識別情報を記憶するか否かを判定して認証するのが望ましい。以下、識別情報を第1識別情報、すなわち、第3情報処理装置13による第1情報処理装置11の認証を例に説明する。なお、認証は、例えば、以下に説明する対話型、又は、非対話型のどちらの方法でもよい。
[Example of authentication processing using shared information]
For the authentication in step S204 and the like, for example, it is desirable to authenticate by determining whether or not to store the identification information as follows. In the following, the identification information is the first identification information, that is, the authentication of the first information processing device 11 by the third information processing device 13 will be described as an example. Note that the authentication may be, for example, either an interactive method or a non-interactive method described below.

[対話型の処理例]
図5は、対話型の認証処理例を示す図である。まず、以下の例は、図において左に記載する第1情報処理装置11が認証の対象となる。つまり、第1情報処理装置11が攻撃者によって「なりすまし」された情報処理装置でないかを第3情報処理装置13が認証する。
[Example of interactive processing]
FIG. 5 is a diagram illustrating an example of interactive authentication processing. First, in the following example, the first information processing apparatus 11 shown on the left side of the drawing is subject to authentication. In other words, the third information processing device 13 authenticates whether the first information processing device 11 is an information processing device that has been "spoofed" by an attacker.

認証は、第1情報処理装置11が秘密情報「s」を記憶しているか否かによって判定される。以下、秘密情報「s」を第1識別情報とする。したがって、第3情報処理装置13は、事前処理等により、第1識別情報を事前に把握する。ゆえに、第3情報処理装置13は、第1情報処理装置11が記憶する秘密情報「s」が把握する第1識別情報と一致するか否かにより、第1情報処理装置11を認証する。 Authentication is determined by whether or not the first information processing device 11 stores the secret information “s”. The secret information “s” is hereinafter referred to as first identification information. Therefore, the third information processing device 13 grasps the first identification information in advance by preprocessing or the like. Therefore, the third information processing device 13 authenticates the first information processing device 11 based on whether or not the secret information “s” stored by the first information processing device 11 matches the first identification information.

まず、認証を行う事前に、下記(3)式に示す公開鍵「h」が公開される。したがって、第1情報処理装置11、及び、第3情報処理装置13等は、下記(3)式を参照して、公開鍵計算式等を把握する。 First, prior to performing authentication, a public key "h" shown in the following equation (3) is made public. Therefore, the first information processing device 11, the third information processing device 13, and the like refer to the following formula (3) to grasp the public key calculation formula and the like.

h=g (3) h = g A (3)

以下、公開鍵計算式が上記(3)式である場合を例に説明する。ただし、公開鍵計算式は、上記(3)式に限られず、公開鍵を算出できる計算式であればよい。すなわち、公開鍵計算式は、複数の情報処理装置の間で同一の計算式が共有できればよい。 A case where the public key calculation formula is the above formula (3) will be described below as an example. However, the public key calculation formula is not limited to the above formula (3), and any formula that can calculate the public key may be used. That is, it is sufficient that the same public key calculation formula can be shared among a plurality of information processing apparatuses.

公開鍵計算式は、例えば、上記(3)式が示すように、係数「g」、及び、指数「A」で構成する。したがって、公開鍵計算式を把握すると、第1情報処理装置11、及び、第3情報処理装置13等は、公開鍵「h」の算出方法、及び、係数「g」等を把握できる。 The public key calculation formula, for example, is composed of the coefficient "g" and the index "A" as shown in the above formula (3). Therefore, when the public key calculation formula is grasped, the first information processing apparatus 11, the third information processing apparatus 13, etc. can grasp the calculation method of the public key "h", the coefficient "g", and the like.

次に、第3情報処理装置13は、乱数(以下「第1乱数」という。)「c」を生成する。例えば、第1乱数「c」は、「1」又は「0」のどちらかの値である。 Next, the third information processing device 13 generates a random number (hereinafter referred to as "first random number") "c". For example, the first random number 'c' has a value of either '1' or '0'.

ステップS401では、第3情報処理装置13は、第1乱数「c」を第1情報処理装置11に送信する。したがって、第1情報処理装置11は、第1乱数「c」を把握し、以降の計算に用いることができる。 In step S<b>401 , the third information processing device 13 transmits the first random number “c” to the first information processing device 11 . Therefore, the first information processing device 11 can grasp the first random number "c" and use it for subsequent calculations.

ステップS402では、第1情報処理装置11は、乱数(以下「第2乱数」という。)「r」を生成する。なお、第2乱数は、第1乱数と異なる乱数である。 In step S402, the first information processing device 11 generates a random number (hereinafter referred to as "second random number") "r". Note that the second random number is a random number different from the first random number.

ステップS403では、第1情報処理装置11は、公開鍵計算式に係数「g」、及び、第2乱数「r」を代入して定まる値(以下「第1計算値」という。)「x」を計算する。具体的には、第1計算値「x」は、下記(4)式で計算する。 In step S403, the first information processing apparatus 11 substitutes the coefficient "g" and the second random number "r" into the public key calculation formula to determine a value (hereinafter referred to as "first calculated value") "x". to calculate Specifically, the first calculated value "x" is calculated by the following formula (4).

x=g (4) x= gr (4)

上記(4)式は、上記(3)式に示す公開鍵計算式である。したがって、上記(4)式は、同じ係数「g」を計算に用いる。一方で、上記(4)式は、指数に第2乱数「r」が代入される。このように、係数「g」、及び、第2乱数「r」のべき乗を計算して、第1情報処理装置11は、第1計算値「x」を計算する。 Equation (4) above is the public key calculation equation shown in Equation (3) above. Therefore, the above equation (4) uses the same coefficient "g" for calculation. On the other hand, in the above equation (4), the second random number "r" is substituted for the exponent. Thus, by calculating the power of the coefficient "g" and the second random number "r", the first information processing device 11 calculates the first calculated value "x".

ステップS404では、第1情報処理装置11は、第1計算値「x」を第3情報処理装置13に送信する。したがって、第3情報処理装置13は、第1計算値「x」を把握し、以降の計算に用いることができる。 In step S<b>404 , the first information processing device 11 transmits the first calculated value “x” to the third information processing device 13 . Therefore, the third information processing device 13 can grasp the first calculated value "x" and use it for subsequent calculations.

ステップS405では、第1情報処理装置11は、第2乱数「r」、第1識別情報「s」、第1乱数「c」、及び、係数「g」から定まる位数「q」を用いて値(以下「第2計算値」という。)「y」を計算する。具体的には、ステップS405では、第1情報処理装置11は、下記(5)式で第2計算値「y」を計算する。 In step S405, the first information processing device 11 uses the order "q" determined from the second random number "r", the first identification information "s", the first random number "c", and the coefficient "g". A value (hereinafter referred to as "second calculated value") "y" is calculated. Specifically, in step S405, the first information processing device 11 calculates the second calculated value "y" using the following equation (5).

y=r+s×c mod q (5) y=r+s×c mod q (5)

上記(5)式において、位数「q」は、係数「g」の位数(order)である。つまり、位数「q」は、係数「g」を位数「q」でべき乗すると単位元(identity)となる自然数の中で最も小さい値である。したがって、位数「q」は、係数「g」から計算により定まる値である。 In the above equation (5), the order "q" is the order of the coefficient "g". That is, the order "q" is the smallest value among the natural numbers that become the identity when the coefficient "g" is raised to the power of the order "q". Therefore, the order "q" is a value determined by calculation from the coefficient "g".

ステップS406では、第1情報処理装置11は、第2計算値「y」を第3情報処理装置13に送信する。したがって、第3情報処理装置13は、第2計算値「y」を把握し、以降の計算に用いることができる。 In step S<b>406 , the first information processing device 11 transmits the second calculated value “y” to the third information processing device 13 . Therefore, the third information processing device 13 can grasp the second calculated value "y" and use it for subsequent calculations.

ステップS407では、第3情報処理装置13は、第2計算値「y」を受信すると、公開鍵計算式に係数「g」、及び、第2計算値「y」を代入して値(以下「第3計算値」という。)を計算する。具体的には、第3計算値は、下記(6)式の左辺を計算して求まる値である。 In step S407, when the third information processing apparatus 13 receives the second calculated value "y", it substitutes the coefficient "g" and the second calculated value "y" into the public key calculation formula to obtain a value (hereinafter " (referred to as "third calculated value"). Specifically, the third calculated value is a value obtained by calculating the left side of the following equation (6).

ステップS408では、第3情報処理装置13は、第1計算値「x」を受信すると、第1計算値「x」、公開鍵「h」、及び、第1乱数「c」を用いて値(以下「第4計算値」という。)を計算する。 In step S408, when the third information processing device 13 receives the first calculated value "x", it uses the first calculated value "x", the public key "h", and the first random number "c" to generate a value ( hereinafter referred to as "fourth calculated value").

= x×h (6) g y = x×h c (6)

ステップS407は、上記(6)式の左辺、すなわち、第3計算値を計算する。まず、上記(6)式の左辺は、上記(3)式に示す公開鍵計算式であり、係数「g」が同じである。そして、第3計算値の計算に用いる第2計算値「y」は、ステップS406で送信される。 A step S407 calculates the left side of the above equation (6), that is, the third calculated value. First, the left side of the above equation (6) is the public key calculation formula shown in the above equation (3), and the coefficient "g" is the same. Then, the second calculated value "y" used for calculating the third calculated value is transmitted in step S406.

ステップS408は、上記(6)式の右辺、すなわち、第4計算値を計算する。まず、上記(6)式の右辺における第1計算値「x」は、ステップS404で送信される。そして、第4計算値は、第1計算値「x」に「h」を乗じて計算する。なお、公開鍵「h」は、上記(3)式の公開により定まる。したがって、「h」は、第1乱数「c」、及び、公開鍵「h」により定まる。 A step S408 calculates the right side of the above equation (6), that is, the fourth calculated value. First, the first calculated value "x" on the right side of the above equation (6) is transmitted in step S404. The fourth calculated value is calculated by multiplying the first calculated value 'x' by 'h c '. It should be noted that the public key "h" is determined by the disclosure of the above equation (3). Therefore, 'h c ' is determined by the first random number 'c' and the public key 'h'.

ステップS409では、第3情報処理装置13は、第3計算値、及び、第4計算値を比較する。具体的には、第3情報処理装置13は、第3計算値、及び、第4計算値が一致するか否か、すなわち、上記(6)式における「=」が成立するか否かを判定する。 In step S409, the third information processing device 13 compares the third calculated value and the fourth calculated value. Specifically, the third information processing device 13 determines whether or not the third calculated value and the fourth calculated value match, that is, whether or not “=” in the above formula (6) holds. do.

第1情報処理装置11が保有する秘密情報「s」(この例では、第1識別情報である。)が事前に第3情報処理装置13と共有する情報であれば、すなわち、第1情報処理装置11が秘密情報「s」を知っていれば、上記(6)式における「=」が成立する。以下、当該判定を証明する。 If the secret information "s" held by the first information processing device 11 (in this example, it is the first identification information) is information shared with the third information processing device 13 in advance, that is, the first information processing If the device 11 knows the secret information "s", "=" in the above equation (6) is established. The determination is proved below.

この例では、第1乱数「c」は、「1」又は「0」のどちらかの値であるため、「c=0」と「c=1」の場合を分けて以下に証明する。 In this example, the first random number 'c' is either '1' or '0', so the cases of 'c=0' and 'c=1' are separately demonstrated below.

「c=0」の場合には、上記(5)式により、第2計算値「y」は、「y=r」となる。そのため、上記(6)式の計算は、左辺が「g」=「g」である。そして、上記(4)式に基づき、「g」=「x」である。 When "c=0", the second calculated value "y" is "y=r" according to the above equation (5). Therefore, in the calculation of the above equation (6), the left side is “g y ”=“g r ”. Then, based on the above equation (4), “g r ”=“x”.

一方で、上記(6)式の計算は、右辺が「c=0」であるため、「h」は、「h=h=1」である。ゆえに、上記(6)式の右辺は、「x×h=x×1=x」となる。したがって、上記(6)式は、「左辺=右辺」が成立する。 On the other hand, in the calculation of the above equation (6), since the right side is "c=0", " hc " is " hc = h0 =1". Therefore, the right side of the above equation (6) is "x×h c =x×1=x". Therefore, in the above equation (6), "left side=right side" holds.

「c=1」の場合には、上記(5)式により、第2計算値「y」は、「y=r+s」となる。そのため、上記(6)式の計算は、左辺が「g」=「gr+s」である。そして、「gr+s」は、「g×g」である。 When "c=1", the second calculated value "y" is "y=r+s" according to the above equation (5). Therefore, in the calculation of the above equation (6), the left side is "g y "="g r+s ". And "g r+s " is "g r ×g s ".

一方で、上記(6)式の計算は、右辺が「c=1」であるため、「x×h=x×h」となる。さらに、上記(4)式に基づき、「x」=「g」である。次に、上記(3)式に基づき、「A=s」であれば(すなわち、第1情報処理装置11が秘密情報「s」を知っているのであれば)、「h=g=g」である。ゆえに、右辺は、「g×g」である。したがって、上記(6)式は、「左辺=右辺」が成立する。 On the other hand, the calculation of the above equation (6) is "x×h c =x×h" because the right side is "c=1". Furthermore, based on the above equation (4), “x”=“g r ”. Next, based on the above equation (3), if "A=s" (that is, if the first information processing device 11 knows the secret information "s"), then "h=g A =g s ”. Therefore, the right-hand side is "g r ×g s ". Therefore, in the above equation (6), "left side=right side" holds.

図5が示すように、上記(3)式の開示、ステップS401、ステップS404、及び、ステップS406は、秘密情報「s」を含まない。すなわち、第1情報処理装置11、及び、第3情報処理装置13の間で情報を取得(不正な情報の取得を含む。)、及び、公開鍵等の情報を得られても、秘密情報「s」を特定するのは難しい。 As shown in FIG. 5, the disclosure of equation (3) above, steps S401, S404, and S406 do not include the secret information 's'. That is, even if information (including unauthorized information acquisition) and information such as a public key are obtained between the first information processing device 11 and the third information processing device 13, the secret information " s" is difficult to identify.

このように、第3情報処理装置13は、第1情報処理装置11から直接秘密情報「s」を伝えられなくとも、秘密情報「s」を記憶するか否かを判定して、第1情報処理装置11を認証できる。 In this way, even if the third information processing device 13 cannot directly transmit the secret information "s" from the first information processing device 11, the third information processing device 13 determines whether or not to store the secret information "s". The processing device 11 can be authenticated.

第1情報処理装置11、及び、第3情報処理装置13の間を盗聴又は中間者攻撃等により、不正に情報が取得できる状態にされると、秘密情報「s」等の情報を送受信すると、秘密情報「s」等の情報が漏洩する可能性がある。一方で、図5に示すように、秘密情報「s」等の情報を第1情報処理装置11、及び、第3情報処理装置13の間で送受信せず、第1情報処理装置11を認証できると、よりセキュリティを向上できる。 If information can be obtained illegally by eavesdropping or man-in-the-middle attack between the first information processing device 11 and the third information processing device 13, sending and receiving information such as secret information "s" Information such as confidential information “s” may be leaked. On the other hand, as shown in FIG. 5, the first information processing apparatus 11 can be authenticated without transmitting/receiving information such as secret information "s" between the first information processing apparatus 11 and the third information processing apparatus 13. and further improve security.

以上のように、認証は、対話型のゼロ知識証明(ZKPOK、Zero-Knowledge Proof Of Knowledge)が用いられるのが望ましい。このような認証であると、「なりすまし」等を防ぎ、かつ、秘密とする情報の漏洩を防ぐことができる。 As described above, it is desirable that interactive zero-knowledge proof (ZKPOK, Zero-Knowledge Proof Of Knowledge) is used for authentication. With such authentication, it is possible to prevent "spoofing" and the like, and to prevent leakage of confidential information.

[非対話型の処理例]
図6は、非対話型の認証処理例を示す図である。以下、図5と同様に、図において左に記載する第1情報処理装置11が認証の対象となる例で説明する。
[Example of non-interactive processing]
FIG. 6 is a diagram illustrating an example of non-interactive authentication processing. In the following description, as in FIG. 5, an example in which the first information processing apparatus 11 shown on the left side of the figure is to be authenticated will be described.

認証を行うより前に、第1情報処理装置11、及び、第3情報処理装置13の間で、2つの値(以下「第1共有値」、及び、「第2共有値」という。)、及び、関数(以下「共有関数」という。)を共有する。 Before performing authentication, two values (hereinafter referred to as "first shared value" and "second shared value") are exchanged between first information processing device 11 and third information processing device 13, and share functions (hereinafter referred to as "shared functions").

以下、第1共有値を「P」、第2共有値を「Q」とする。さらに、共有関数をハッシュ関数とし、「Hash()」とする。「Hash()」に続く「括弧()」内がハッシュ関数の引数となる。なお、共有関数は、引数に対する特定の計算結果を計算する関数であればよい。 Hereinafter, let the first shared value be “P” and the second shared value be “Q”. Further, the shared function is a hash function and is denoted as "Hash( )". An argument of the hash function is in "brackets ( )" following "Hash( )". Note that the shared function may be any function that calculates a specific calculation result for the argument.

また、共有は、公開する形式でもよい。例えば、第2共有値「Q」は、公開鍵等でもよい。 Sharing may also be in the form of public disclosure. For example, the second shared value 'Q' may be a public key or the like.

第1共有値「P」、及び、第2共有値「Q」は、一定の関係がある値である。以下、第1共有値「P」、及び、第2共有値「Q」の関係を示す式を「関係式」という。例えば、関係式は、「Q=qP」である。そして、関係式における定数「q」に、秘密情報「s」を代入する。 The first shared value 'P' and the second shared value 'Q' are values having a certain relationship. Hereinafter, the expression indicating the relationship between the first shared value "P" and the second shared value "Q" will be referred to as "relational expression". For example, the relational expression is "Q=qP". Then, the secret information "s" is substituted for the constant "q" in the relational expression.

認証は、図5と同様に、第1情報処理装置11が秘密情報「s」を記憶しているか否かによって判定される。以下、図5と同様に、秘密情報「s」を第1識別情報とする。したがって、第3情報処理装置13は、事前処理等により、第1識別情報を事前に把握する。ゆえに、第3情報処理装置13は、第1情報処理装置11が記憶する秘密情報「s」が把握する第1識別情報と一致するか否かにより、第1情報処理装置11を認証する。 Authentication is determined by whether or not the first information processing device 11 stores the secret information "s", as in FIG. Hereinafter, as in FIG. 5, the secret information "s" is used as the first identification information. Therefore, the third information processing device 13 grasps the first identification information in advance by preprocessing or the like. Therefore, the third information processing device 13 authenticates the first information processing device 11 based on whether or not the secret information “s” stored by the first information processing device 11 matches the first identification information.

ステップS501では、第1情報処理装置11は、乱数(以下「第3乱数」という。)「m」を生成する。なお、第3乱数「m」は、認証ごとに異なる、一時的な値であるのが望ましい。このように、認証ごとに異なる第3乱数「m」を利用すると、いわゆるワンタイムパスワードのように使用できる期間が一定であるため、セキュリティを向上できる。例えば、セッションハイジャック等の不正なアクセスに対して対策でき、セキュリティを向上できる。 In step S501, the first information processing device 11 generates a random number (hereinafter referred to as "third random number") "m". It should be noted that the third random number "m" is desirably a temporary value that differs for each authentication. Using a different third random number "m" for each authentication in this way improves security because the usable period is fixed like a so-called one-time password. For example, countermeasures can be taken against unauthorized access such as session hijacking, and security can be improved.

ステップS502では、第1情報処理装置11は、第3乱数「m」、及び、第1共有値「P」を乗算して値(以下「第5計算値」という。)「R」を計算する。具体的には、ステップS502では、第1情報処理装置11は、下記(7)式で第5計算値「R」を計算する。 In step S502, the first information processing device 11 multiplies the third random number "m" and the first shared value "P" to calculate a value (hereinafter referred to as "fifth calculated value") "R". . Specifically, in step S502, the first information processing device 11 calculates the fifth calculated value "R" by the following equation (7).

R = m×P (7) R = m x P (7)

上記(7)式が示すように、第5計算値「R」は、第3乱数「m」に基づいて計算される。そして、第3乱数「m」を一時的な値とすると、乗算結果である第5計算値「R」も一時的な値にでき、使用できる期間が一定であるため、セキュリティを向上できる。 As shown in the above equation (7), the fifth calculated value "R" is calculated based on the third random number "m". If the third random number "m" is set to a temporary value, the fifth calculated value "R", which is the multiplication result, can also be set to a temporary value, and the usable period is constant, thereby improving security.

ステップS503では、第1情報処理装置11は、第5計算値「R」を第3情報処理装置13に送信する。したがって、第3情報処理装置13は、第5計算値「R」を把握し、以降の計算に用いることができる。 In step S<b>503 , the first information processing device 11 transmits the fifth calculated value “R” to the third information processing device 13 . Therefore, the third information processing device 13 can grasp the fifth calculated value "R" and use it for subsequent calculations.

また、ステップS503のように、第5計算値「R」は、第1情報処理装置11、及び、第3情報処理装置13の間を送受信される情報である。したがって、第3乱数「m」を一時的な値とする等により、第5計算値「R」が盗聴等によって不正に取得されても、情報が漏洩しにくいようにするのが望ましい。 Also, the fifth calculated value “R” is information transmitted and received between the first information processing device 11 and the third information processing device 13 as in step S<b>503 . Therefore, it is desirable to prevent information leakage even if the fifth calculated value "R" is illegally obtained by eavesdropping or the like by setting the third random number "m" to a temporary value.

ステップS504では、第1情報処理装置11は、第1共有値「P」、第2共有値「Q」、及び、第5計算値「R」を引数とする共有関数「Hash()」を用いて値(以下「第6計算値」という。)「b」を計算する。具体的には、ステップS504では、第1情報処理装置11は、下記(8)式で第6計算値「b」を計算する。 In step S504, the first information processing device 11 uses a shared function "Hash( )" whose arguments are the first shared value "P", the second shared value "Q", and the fifth calculated value "R". A value (hereinafter referred to as a "sixth calculated value") "b" is calculated. Specifically, in step S504, the first information processing device 11 calculates the sixth calculated value "b" using the following equation (8).

b=Hash(P,Q,R) (8) b=Hash(P, Q, R) (8)

上記(8)式を計算する上で、計算式である共有関数「Hash()」、並びに、引数となる第1共有値「P」、及び、第2共有値「Q」は、事前に共有される。さらに、第5計算値「R」は、ステップS502で計算される。 In calculating the above formula (8), the shared function "Hash()", which is the calculation formula, and the first shared value "P" and the second shared value "Q" as arguments are shared in advance. be done. Additionally, a fifth calculated value 'R' is calculated in step S502.

ステップS505では、第1情報処理装置11は、第3乱数「m」、第1識別情報である秘密情報「s」、及び、第6計算値「b」を用いて値(以下「第7計算値」という。)「k」を計算する。具体的には、ステップS505では、第1情報処理装置11は、下記(9)式で第7計算値「k」を計算する。 In step S505, the first information processing apparatus 11 uses the third random number "m", the secret information "s" which is the first identification information, and the sixth calculated value "b" (hereinafter referred to as "seventh calculation value”) to calculate “k”. Specifically, in step S505, the first information processing device 11 calculates the seventh calculated value "k" using the following equation (9).

k=m+s×b (9) k=m+s×b (9)

上記(9)式が示すように、第7計算値「k」は、第3乱数「m」に基づいて計算される。そして、第3乱数「m」を一時的な値とすると、乗算結果である第7計算値「k」も一時的な値にでき、使用できる期間が一定であるため、セキュリティを向上できる。 As shown in the above equation (9), the seventh calculated value "k" is calculated based on the third random number "m". If the third random number "m" is set to a temporary value, the seventh calculated value "k", which is the result of multiplication, can also be set to a temporary value, and the usable period is constant, thereby improving security.

ステップS506では、第1情報処理装置11は、第7計算値「k」を第3情報処理装置13に送信する。したがって、第3情報処理装置13は、第7計算値「k」を把握し、以降の計算に用いることができる。 In step S<b>506 , the first information processing device 11 transmits the seventh calculated value “k” to the third information processing device 13 . Therefore, the third information processing device 13 can grasp the seventh calculated value "k" and use it for subsequent calculations.

また、ステップS506のように、第7計算値「k」は、第1情報処理装置11、及び、第3情報処理装置13の間を送受信される情報である。したがって、第3乱数「m」を一時的な値とする等により、第7計算値「k」が盗聴等によって不正に取得されても、情報が漏洩しにくいようにするのが望ましい。 Also, the seventh calculated value “k” is information transmitted and received between the first information processing apparatus 11 and the third information processing apparatus 13 as in step S<b>506 . Therefore, it is desirable to set the third random number "m" to a temporary value so as to prevent information leakage even if the seventh calculated value "k" is illegally obtained by eavesdropping or the like.

ステップS507では、第3情報処理装置13は、第5計算値「R」を受信すると、第1共有値「P」、第2共有値「Q」、及び、第5計算値「R」を引数として共有関数「Hash()」を用いて値(以下「第8計算値」という。)「j」を計算する。具体的には、ステップS507では、第3情報処理装置13は、下記(10)式で第8計算値「j」を計算する。 In step S507, when the third information processing device 13 receives the fifth calculated value "R", it takes the first shared value "P", the second shared value "Q", and the fifth calculated value "R" as arguments. , the value (hereinafter referred to as the "eighth calculated value") "j" is calculated using the shared function "Hash()". Specifically, in step S507, the third information processing device 13 calculates the eighth calculated value "j" using the following equation (10).

j=Hash(P,Q,R) (10) j=Hash(P, Q, R) (10)

上記(10)式は、上記(8)式と同じ共有関数「Hash()」、及び、引数の計算である。したがって、第3情報処理装置13は、ステップS507により、第1情報処理装置11から第6計算値「b」を直接取得しないで、第6計算値「b」と同じ計算結果を第8計算値「j」を計算して把握できる。 The above expression (10) is the same shared function "Hash( )" as the above expression (8), and calculation of arguments. Therefore, in step S507, the third information processing device 13 does not directly acquire the sixth calculated value "b" from the first information processing device 11, but obtains the same calculation result as the sixth calculated value "b" as the eighth calculated value. "j" can be calculated and grasped.

ステップS508では、第3情報処理装置13は、第7計算値「k」を受信すると、第7計算値「k」、及び、第1共有値「P」を乗算して値(以下「第9計算値」という。)「F」を計算する。具体的には、ステップS508では、第3情報処理装置13は、下記(11)式で第9計算値「F」を計算する。 In step S508, when the third information processing device 13 receives the seventh calculated value "k", it multiplies the seventh calculated value "k" and the first shared value "P" to obtain a value (hereinafter referred to as "9th (referred to as "calculated value"). Calculate "F". Specifically, in step S508, the third information processing device 13 calculates the ninth calculated value "F" using the following equation (11).

F=k×P (11) F=k×P (11)

上記(11)式において、第7計算値「k」は、第1情報処理装置11から取得される。また、第1共有値「P」は、事前に共有される。 In the above equation (11), the seventh calculated value “k” is acquired from the first information processing device 11 . Also, the first shared value 'P' is shared in advance.

ステップS509では、第3情報処理装置13は、第5計算値「R」、第8計算値「j」、及び、第2共有値「Q」を用いて値(以下「第10計算値」という。)「L」を計算する。具体的には、ステップS509では、第3情報処理装置13は、下記(12)式で第10計算値「L」を計算する。 In step S509, the third information processing device 13 uses the fifth calculated value "R", the eighth calculated value "j", and the second shared value "Q" to obtain a value (hereinafter referred to as "tenth calculated value"). .) Compute "L". Specifically, in step S509, the third information processing device 13 calculates the tenth calculated value "L" by the following equation (12).

L=R+j×Q (12) L=R+j×Q (12)

上記(12)式において、第5計算値「R」は、ステップS503により取得される。また、第2共有値「Q」は、事前に共有される。さらに、第8計算値「j」は、ステップS507により計算される。 In the above equation (12), the fifth calculated value "R" is acquired in step S503. Also, the second shared value 'Q' is shared in advance. Further, an eighth calculated value 'j' is calculated by step S507.

ステップS510では、第3情報処理装置13は、第9計算値「F」、及び、第10計算値「L」を比較して、第1情報処理装置11であるか否かを認証する。すなわち、ステップS510では、第3情報処理装置13は、下記(13)式が成り立つか否かを判定して認証する。 In step S<b>510 , the third information processing device 13 compares the ninth calculated value “F” and the tenth calculated value “L” to authenticate whether it is the first information processing device 11 . That is, in step S510, the third information processing device 13 performs authentication by determining whether the following formula (13) holds.

F=L (13) F = L (13)

上記(13)式が成り立つと、第3情報処理装置13は、リクエストを送信した情報処理装置が第1情報処理装置11であると認証する。一方で、上記(13)式が成り立たないと、第3情報処理装置13は、リクエストを送信した情報処理装置が第1情報処理装置11でない(「なりすまし」等の可能性がある。)と判断する。 When the above formula (13) holds, the third information processing device 13 authenticates that the information processing device that has transmitted the request is the first information processing device 11 . On the other hand, if the above formula (13) does not hold, the third information processing device 13 determines that the information processing device that has sent the request is not the first information processing device 11 (there is a possibility of "spoofing" or the like). do.

第1情報処理装置11が保有する秘密情報「s」(この例では、第1識別情報である。)が事前に第3情報処理装置13と共有する情報であれば、すなわち、第1情報処理装置11が秘密情報「s」を知っていれば、上記(13)式における「=」が成立する。以下、当該判定を証明する。 If the secret information “s” held by the first information processing device 11 (in this example, it is the first identification information) is information shared with the third information processing device 13 in advance, that is, the first information processing If the device 11 knows the secret information "s", "=" in the above equation (13) is established. The determination is proved below.

上記(13)式における左辺は、上記(11)式で計算する第9計算値「F」である。したがって、上記(11)式に基づき、左辺は、「F=k×P」である。次に、「k」は、上記(9)式に基づき、「k=m+s×b」である。ゆえに、左辺は、「F=k×P=(m+s×b)×P=mP+b×sP」である。 The left side in the above equation (13) is the ninth calculated value "F" calculated by the above equation (11). Therefore, based on the above equation (11), the left side is "F=k×P". Next, "k" is "k=m+s×b" based on the above equation (9). Therefore, the left side is "F=k*P=(m+s*b)*P=mP+b*sP".

一方で、上記(13)式における右辺は、上記(12)式で計算する第10計算値「L」である。したがって、上記(12)式に基づき、右辺は、「L=R+j×Q」である。次に、上記(7)式に基づき、「R=m×P」である。ゆえに、右辺は、「L=R+j×Q=(m×P)+j×Q=mP+j×Q」である。 On the other hand, the right side in the above equation (13) is the tenth calculated value "L" calculated by the above equation (12). Therefore, based on the above equation (12), the right side is "L=R+j×Q". Next, based on the above formula (7), "R=m×P". Therefore, the right side is "L=R+j*Q=(m*P)+j*Q=mP+j*Q".

上記(8)式、及び、上記(10)に基づき、「j=b」である。ゆえに、上記(13)式は、「mP+b×sP=mP+j×Q」であるから、「sP=Q」であると、成立する。そして、関係式に基づき、「Q=qP」である。したがって、定数「q」に秘密情報「s」を代入できていれば、上記(13)式は成り立つ。すなわち、秘密情報「s」(この例では、第1識別情報である。)を知っているのであれば、上記(13)式は成り立つので、第3情報処理装置13は、上記(13)式が成り立つか否かを判定して認証できる。 Based on the above formula (8) and the above (10), "j=b". Therefore, since the above equation (13) is "mP+b*sP=mP+j*Q", it is established that "sP=Q". Then, based on the relational expression, "Q=qP". Therefore, if the secret information "s" can be substituted for the constant "q", the above equation (13) holds. That is, if the secret information "s" (in this example, it is the first identification information) is known, the above equation (13) holds, so the third information processing device 13 uses the above equation (13) can be authenticated by determining whether or not

このように、第3情報処理装置13は、第1情報処理装置11から直接秘密情報「s」を伝えられなくとも、秘密情報「s」を記憶するか否かを判定して、第1情報処理装置11を認証できる。 In this way, even if the third information processing device 13 cannot directly transmit the secret information "s" from the first information processing device 11, the third information processing device 13 determines whether or not to store the secret information "s". The processing device 11 can be authenticated.

第1情報処理装置11、及び、第3情報処理装置13の間を盗聴又は中間者攻撃等により、不正に情報が取得できる状態にされると、秘密情報「s」等の情報を送受信すると、秘密情報「s」等の情報が漏洩する可能性がある。一方で、図5に示すように、秘密情報「s」等の情報を第1情報処理装置11、及び、第3情報処理装置13の間で送受信せず、第1情報処理装置11を認証できると、よりセキュリティを向上できる。 If information can be obtained illegally by eavesdropping or man-in-the-middle attack between the first information processing device 11 and the third information processing device 13, sending and receiving information such as secret information "s" Information such as confidential information “s” may be leaked. On the other hand, as shown in FIG. 5, the first information processing apparatus 11 can be authenticated without transmitting/receiving information such as secret information "s" between the first information processing apparatus 11 and the third information processing apparatus 13. and further improve security.

さらに、図5に示す対話型と比較して、図6に示すような非対話型は、第1情報処理装置11、及び、第3情報処理装置13の間で送受信する情報を少なくできる。したがって、非対話型による認証であると、第1情報処理装置11、及び、第3情報処理装置13の間の通信量を少なくできる。さらに、第1情報処理装置11、及び、第3情報処理装置13の間の通信から漏洩する情報を少なくできる。 Furthermore, compared to the interactive type shown in FIG. 5, the non-interactive type shown in FIG. Therefore, non-interactive authentication can reduce the amount of communication between the first information processing device 11 and the third information processing device 13 . Furthermore, information leaked from communication between the first information processing device 11 and the third information processing device 13 can be reduced.

以上のように、認証は、非対話型のゼロ知識証明(Non-Interactive Zero-Knowledge Proof:NIZK)及びシュノア署名が用いられるのがより望ましい。このような認証であると、「なりすまし」等を防ぎ、かつ、秘密とする情報の漏洩を防ぐことができる。さらに、非対話型は、より通信を少なくできる。 As described above, it is more desirable to use non-interactive zero-knowledge proof (NIZK) and Schnorr signature for authentication. With such authentication, it is possible to prevent "spoofing" and the like, and to prevent leakage of confidential information. In addition, non-interactive allows for less communication.

なお、対話型の処理例、及び、非対話型の処理例における各手順は、上記の例に示す順序でなくともよい。すなわち、各手順において用いる値が取得できた状態以降であれば、各手順は、順序が前後、冗長、又は、並列に実行してもよい。 Note that each procedure in the interactive processing example and the non-interactive processing example does not have to be in the order shown in the above examples. That is, after the values used in each procedure have been acquired, each procedure may be executed in sequence, redundantly, or in parallel.

また、以上のように、直接秘密情報「s」を伝えられない認証等であると、例えば、以下のような攻撃等に対してセキュリティを向上できる。 Also, as described above, if the authentication or the like is such that the secret information "s" cannot be directly transmitted, security can be improved against attacks such as the following, for example.

図7は、攻撃の例を示す図である。例えば、攻撃者18が攻撃者端末17を操作して、第1情報処理装置11、及び、第3情報処理装置13の間で不正に情報を取得する、又は、第1情報処理装置11に不正にアクセスする等攻撃を行う場合がある。 FIG. 7 is a diagram showing an example of an attack. For example, the attacker 18 operates the attacker terminal 17 to illegally acquire information between the first information processing device 11 and the third information processing device 13, or illegally acquires information from the first information processing device 11. may perform attacks such as accessing

このような攻撃がされると、攻撃者端末17は、第1識別情報「ID」等を取得できる場合がある。このような情報が不正に取得されると、第1情報処理装置11、及び、第3情報処理装置13の間で送受信される上記(1)式に示すような第1送信データからシード「S」等の情報が漏洩する可能性が高くなる。 When such an attack is made, the aggressor terminal 17 may be able to acquire the first identification information "ID 1 " and the like. If such information is illegally obtained, the seed "S d " and other information is likely to be leaked.

攻撃者18は、シード「S」を特定できると、例えば、シード「S」を改ざんする攻撃を行う。具体的には、攻撃者端末17は、シード「S」を取得し、シード「S」を構成するビットのうち、いずれかの「1」に対して「XOR」を行う。このように、攻撃者端末17は、シード「S」の全部、又は、一部を何らかの計算により異なる値に改ざんする。このような改ざんが行われると、第1情報処理装置11、及び、第2情報処理装置12が互いに異なるシード「S」を取得する。したがって、同じ鍵を共有できず、共通鍵方式で暗号化して通信を行うのが難しくなる。このようにして、攻撃者18は、通信を妨害する等の攻撃を行う。ゆえに、第1識別情報「ID」等の情報が漏洩するのを少なくできると、セキュリティを向上できる。 When the attacker 18 can identify the seed "S d ", for example, he attacks to tamper with the seed "S d ". Specifically, the attacker terminal 17 acquires the seed “S d ” and performs “XOR” on any “1” of the bits forming the seed “S d ”. In this way, the attacker terminal 17 modifies all or part of the seed "S d " to a different value by some calculation. When such falsification is performed, the first information processing device 11 and the second information processing device 12 acquire different seeds "S d ". Therefore, the same key cannot be shared, and it becomes difficult to encrypt and communicate using the common key method. In this way, the attacker 18 attacks such as obstructing communication. Therefore, if the leakage of information such as the first identification information “ID 1 ” can be reduced, security can be improved.

一方で、直接秘密情報「s」等を伝えなくすると、このような攻撃を受ける可能性を低くでき、セキュリティを向上できる。 On the other hand, if secret information such as "s" is not directly communicated, the possibility of receiving such an attack can be reduced, and security can be improved.

[共有情報を用いる認証処理の変形例]
情報処理システム1は、上記の共有情報を用いる認証処理(対話型、及び、非対話型のどちらでもよい。)を以下のような構成で行ってもよい。以下、第1情報処理装置11、及び、第3情報処理装置13の間で認証する場合を例に説明する。ただし、以下に説明する構成は、他の装置間における認証に適用されてもよい。
[Modified example of authentication processing using shared information]
The information processing system 1 may perform authentication processing using the shared information (both interactive and non-interactive) with the following configuration. A case where authentication is performed between the first information processing apparatus 11 and the third information processing apparatus 13 will be described below as an example. However, the configuration described below may be applied to authentication between other devices.

[第1変形例]
図8は、共有情報を用いる認証処理の第1変形例を示す図である。上記に説明する対話型、及び、非対話型の例と比較すると、第1変形例は、第1情報処理装置11、及び、第3情報処理装置13とは別に、更に情報処理装置(以下「第5情報処理装置19」という。)を用いる点が異なる。
[First modification]
FIG. 8 is a diagram showing a first modified example of authentication processing using shared information. When compared with the interactive and non-interactive examples described above, the first modification further includes an information processing device (hereinafter " ) is used.

第1変形例では、第5情報処理装置19も、第1情報処理装置11を認証する。 In the first modification, the fifth information processing device 19 also authenticates the first information processing device 11 .

事前に、第3情報処理装置13、及び、第5情報処理装置19は、認証に用いる第1識別情報(秘密情報「s」となる。)、第1共有値「P」、又は、共有関数「Hash()」等を共有する。 In advance, the third information processing device 13 and the fifth information processing device 19 use the first identification information (secret information “s”), the first shared value “P”, or the shared function used for authentication. Share "Hash()" and so on.

そして、第5情報処理装置19は、第3情報処理装置13とは別に、並列、又は、第3情報処理装置13による認証とは前後して第1情報処理装置11を認証する。 Then, the fifth information processing device 19 authenticates the first information processing device 11 separately from the third information processing device 13 in parallel or before or after the authentication by the third information processing device 13 .

第5情報処理装置19は、第3情報処理装置13による認証とは異なる乱数(具体的には、第1乱数「c」、又は、第3乱数「m」等である。)等を用いて認証を行う。 The fifth information processing device 19 uses a random number different from the authentication by the third information processing device 13 (specifically, the first random number "c", the third random number "m", etc.), etc. Authenticate.

このように、情報処理システム1は、複数の情報処理装置で冗長して認証を行うのがより望ましい。そして、冗長して行う認証のうち、いずれか1つでも認証できない場合には、情報処理システム1は、全体として、第1情報処理装置11に「なりすまし」等がされている可能性があると判定する。 In this way, it is more desirable for the information processing system 1 to redundantly perform authentication using a plurality of information processing apparatuses. If even one of the authentications performed redundantly cannot be authenticated, the information processing system 1 as a whole may assume that the first information processing apparatus 11 is being "spoofed" or the like. judge.

このように、情報処理システム1は、複数の情報処理装置で冗長して認証を行うと、より「なりすまし」等の不正を防ぎ、セキュリティを向上できる。 In this way, the information processing system 1 can prevent fraud such as "spoofing" and improve security by redundantly performing authentication with a plurality of information processing apparatuses.

なお、第5情報処理装置19は、複数台でもよい。また、第5情報処理装置19、又は、第3情報処理装置13が複数回の認証を更に行ってもよい。 A plurality of fifth information processing apparatuses 19 may be provided. Further, the fifth information processing device 19 or the third information processing device 13 may further perform authentication a plurality of times.

[第2変形例]
図9は、共有情報を用いる認証処理の第2変形例を示す図である。第1変形例と比較すると、第2変形例は、第5情報処理装置19を用いる構成は第1変形例と同様である。
[Second modification]
FIG. 9 is a diagram showing a second modified example of authentication processing using shared information. Compared with the first modification, the second modification has the same configuration as the first modification in which the fifth information processing device 19 is used.

第2変形例では、第1情報処理装置11、及び、第3情報処理装置13は、第5情報処理装置19を介してデータの送受信、又は、情報の共有等を行う。具体的には、ステップS401、ステップS404、ステップS406、ステップS503、ステップS506、第1共有値「P」、共有関数「Hash()」、又は、これらの組み合わせ等が、第5情報処理装置19を介して、データの送受信、又は、共有化される。 In the second modification, the first information processing device 11 and the third information processing device 13 transmit and receive data or share information via the fifth information processing device 19 . Specifically, step S401, step S404, step S406, step S503, step S506, the first shared value "P", the shared function "Hash( )", or a combination of these, etc., are performed by the fifth information processing device 19. Data is transmitted/received or shared through the

このように、認証を行う装置間において、直接、データの送受信、又は、共有化を行う回数を少なくする。代わりに、情報処理システム1は、認証を行う装置、及び、認証される装置とは異なる情報処理装置を介して、別の通信経路により、データの送受信、又は、情報の共有等を行う。このように、他の情報処理装置を介する構成とすると、認証を行う装置間の間で盗聴等の不正がされても、情報が漏洩する等を防ぎ、セキュリティを向上できる。 In this way, the number of direct transmission/reception or sharing of data between devices performing authentication is reduced. Instead, the information processing system 1 performs data transmission/reception, information sharing, or the like through a separate communication path via an information processing apparatus different from the apparatus that performs authentication and the apparatus to be authenticated. In this way, with a configuration in which another information processing device is interposed, it is possible to prevent information from being leaked and improve security even if fraud such as eavesdropping occurs between authentication devices.

なお、第1情報処理装置11、及び、第3情報処理装置13の間を介する情報処理装置は、1台に限られない。すなわち、第5情報処理装置19は、複数台でもよい。このように、複数の情報処理装置を介してデータの送受信、又は、情報の共有等が行われてもよい。 Note that the number of information processing devices that intervene between the first information processing device 11 and the third information processing device 13 is not limited to one. That is, the fifth information processing device 19 may be plural. In this manner, data transmission/reception, information sharing, or the like may be performed via a plurality of information processing apparatuses.

[その他の認証処理例]
ほかにも、認証は、例えば、identification(ID)、パスワード、IPアドレス、位置情報、コールバック、バイオメトリクス、又は、これらの組み合わせを利用してもよい。
[Other authentication processing examples]
Alternatively, authentication may utilize, for example, identification (ID), password, IP address, geolocation, callback, biometrics, or a combination thereof.

[機能構成例]
図10は、機能構成例を示す図である。例えば、情報処理システム1は、第1情報処理装置11、第2情報処理装置12、第3情報処理装置13を有する。また、情報処理システム1は、第4情報処理装置14等と常時又は一時的に接続する。
[Example of functional configuration]
FIG. 10 is a diagram illustrating a functional configuration example. For example, the information processing system 1 has a first information processing device 11 , a second information processing device 12 and a third information processing device 13 . In addition, the information processing system 1 is always or temporarily connected to the fourth information processing device 14 and the like.

なお、情報処理システム1は、第4情報処理装置14等を常に有しなくともよい。すなわち、第1情報処理装置11、第2情報処理装置12、又は、第3情報処理装置13は、第4情報処理装置14と通信を行う場合だけ接続する等でもよい。 Note that the information processing system 1 does not always have to include the fourth information processing device 14 and the like. That is, the first information processing device 11, the second information processing device 12, or the third information processing device 13 may be connected only when communicating with the fourth information processing device .

第1情報処理装置11は、例えば、第1識別情報記憶部1F1、リクエスト部1F2、及び、通信部1F12等を備える機能構成である。 The first information processing device 11 has, for example, a functional configuration including a first identification information storage unit 1F1, a request unit 1F2, a communication unit 1F12, and the like.

第2情報処理装置12は、例えば、許可部1F5、及び、通信部1F12等を備える機能構成である。 The second information processing device 12 has, for example, a functional configuration including a permission unit 1F5, a communication unit 1F12, and the like.

第3情報処理装置13は、例えば、第1識別情報取得部1F3、通知部1F4、返答受付部1F6、シード生成部1F7、第1送信データ生成部1F8、第1送信データ送信部1F9、第2送信データ生成部1F10、及び、第2送信データ送信部1F11等を備える機能構成である。 The third information processing device 13 includes, for example, a first identification information acquisition unit 1F3, a notification unit 1F4, a response reception unit 1F6, a seed generation unit 1F7, a first transmission data generation unit 1F8, a first transmission data transmission unit 1F9, a second It is a functional configuration including a transmission data generation unit 1F10, a second transmission data transmission unit 1F11, and the like.

第4情報処理装置14は、例えば、ユーザ情報16等を事前に保有する。なお、第4情報処理装置14は、第1識別情報等を管理、生成、及び、要求に応じて送信等をしてもよい。 The fourth information processing device 14 has, for example, the user information 16 and the like in advance. Note that the fourth information processing device 14 may manage, generate, and transmit the first identification information and the like in response to a request.

なお、情報処理システム1は、例えば、第3情報処理装置13が認証部1F13、及び、共有部1F14等を更に備えるのが望ましい。 In the information processing system 1, for example, it is desirable that the third information processing device 13 further includes an authentication unit 1F13, a sharing unit 1F14, and the like.

第1識別情報記憶部1F1は、第1識別情報を記憶する第1識別情報記憶手順を行う。例えば、第1識別情報記憶部1F1は、記憶装置11H2等で実現する。 The first identification information storage unit 1F1 performs a first identification information storage procedure for storing the first identification information. For example, the first identification information storage unit 1F1 is realized by the storage device 11H2 or the like.

リクエスト部1F2は、第3情報処理装置13に、第2情報処理装置12によるサービスのリクエストを送信するリクエスト手順を行う。例えば、リクエスト部1F2は、インタフェース11H3等で実現する。 The request unit 1F2 performs a request procedure for transmitting a service request from the second information processing device 12 to the third information processing device 13 . For example, the request part 1F2 is realized by the interface 11H3 or the like.

第1識別情報取得部1F3は、第1識別情報を取得する第1識別情報取得手順を行う。例えば、第1識別情報取得部1F3は、インタフェース11H3等で実現する。 The first identification information acquisition unit 1F3 performs a first identification information acquisition procedure for acquiring the first identification information. For example, the first identification information acquisition unit 1F3 is realized by the interface 11H3 or the like.

通知部1F4は、リクエストを第1情報処理装置11から受け付けると、第2情報処理装置12に、リクエストを許可するか否かを問い合わせる通知を行う通知手順を行う。例えば、通知部1F4は、インタフェース11H3等で実現する。 Upon receiving the request from the first information processing apparatus 11, the notification unit 1F4 performs a notification procedure of inquiring whether or not to permit the request to the second information processing apparatus 12. FIG. For example, the notification unit 1F4 is realized by the interface 11H3 or the like.

許可部1F5は、通知部1F4による通知を第3情報処理装置13から受け付けると、通知を許可する場合には、リクエストを許可する返答を第3情報処理装置13に行う許可手順を行う。例えば、許可部1F5は、インタフェース11H3等で実現する。なお、許可部1F5は、許可において、第1情報処理装置11、又は、第3情報処理装置13の認証等によるチェックの結果に基づいて許可するか拒否するかを判定してもよい。 Upon receiving the notification from the notification unit 1F4 from the third information processing device 13, the permission unit 1F5 performs a permission procedure of sending a response to the third information processing device 13 to permit the request if the notification is permitted. For example, the permitting unit 1F5 is realized by the interface 11H3 or the like. Note that the permitting unit 1F5 may determine whether to permit or reject based on the result of a check by authentication of the first information processing device 11 or the third information processing device 13 or the like.

返答受付部1F6は、通知に対する返答を第2情報処理装置12から受け付ける返答受付手順を行う。例えば、返答受付部1F6は、インタフェース11H3等で実現する。 The response reception unit 1F6 performs a response reception procedure for receiving a response to the notification from the second information processing device 12. FIG. For example, the reply receiving unit 1F6 is realized by the interface 11H3 or the like.

シード生成部1F7は、鍵の基礎情報、又は、鍵を示すシードを生成するシード生成手順を行う。例えば、シード生成部1F7は、CPU11H1等で実現する。 The seed generation unit 1F7 performs a seed generation procedure for generating basic information of a key or a seed indicating a key. For example, the seed generation unit 1F7 is realized by the CPU 11H1 or the like.

第1送信データ生成部1F8は、返答受付部1F6が受け付ける返答によってリクエストが許可されると、シード、第1共有情報、時間情報、第1識別情報、及び、第1通信情報を利用して第1送信データを生成する第1送信データ生成手順を行う。例えば、第1送信データ生成部1F8は、CPU11H1等で実現する。 When the request is permitted by the reply received by the reply receiving unit 1F6, the first transmission data generating unit 1F8 uses the seed, the first shared information, the time information, the first identification information, and the first communication information. A first transmission data generating procedure for generating 1 transmission data is performed. For example, the first transmission data generator 1F8 is implemented by the CPU 11H1 or the like.

第1送信データ送信部1F9は、第1送信データを第1情報処理装置11に送信する第1送信データ送信手順を行う。例えば、第1送信データ送信部1F9は、インタフェース11H3等で実現する。 The first transmission data transmission unit 1F9 performs a first transmission data transmission procedure for transmitting the first transmission data to the first information processing device 11. FIG. For example, the first transmission data transmission unit 1F9 is realized by the interface 11H3 or the like.

第2送信データ生成部1F10は、返答受付部1F6が受け付ける返答によってリクエストが許可されると、シードを含む第2送信データを生成する第2送信データ生成手順を行う。例えば、第2送信データ生成部1F10は、CPU11H1等で実現する。 The second transmission data generation unit 1F10 performs a second transmission data generation procedure for generating second transmission data including a seed when the request is permitted by the response received by the response reception unit 1F6. For example, the second transmission data generator 1F10 is realized by the CPU 11H1 or the like.

第2送信データ送信部1F11は、第2送信データを第2情報処理装置12に送信する第2送信データ送信手順を行う。例えば、第2送信データ送信部1F11は、インタフェース11H3等で実現する。 The second transmission data transmission unit 1F11 performs a second transmission data transmission procedure for transmitting the second transmission data to the second information processing device 12 . For example, the second transmission data transmission unit 1F11 is realized by the interface 11H3 or the like.

通信部1F12は、まず、第1送信データ、又は、第2送信データから、シードを取り出して鍵を生成する。次に、通信部1F12は、鍵を用いて暗号化して通信を行う通信手順を行う。例えば、通信部1F12は、インタフェース11H3等で実現する。 The communication unit 1F12 first extracts a seed from the first transmission data or the second transmission data to generate a key. Next, the communication unit 1F12 performs a communication procedure for encrypting and communicating using a key. For example, the communication unit 1F12 is realized by the interface 11H3 or the like.

具体的には、第1情報処理装置11が備える通信部1F12は、第1送信データからシードを取り出して鍵を生成して、鍵で第2情報処理装置12と送受信するデータを暗号化又は復号して通信を行う第1通信手順を行う。同様に、第2情報処理装置12が備える通信部1F12は、第2送信データからシードを取り出して鍵を生成して、鍵で第1情報処理装置11と送受信するデータを暗号化又は復号して通信を行う第2通信手順を行う。 Specifically, the communication unit 1F12 included in the first information processing device 11 extracts the seed from the first transmission data, generates a key, and uses the key to encrypt or decrypt data to be transmitted to and received from the second information processing device 12. Then, the first communication procedure is performed to perform communication. Similarly, the communication unit 1F12 included in the second information processing device 12 extracts the seed from the second transmission data, generates a key, and encrypts or decrypts data to be transmitted to and received from the first information processing device 11 using the key. A second communication procedure for communicating is performed.

認証部1F13は、第1情報処理装置11等を認証する認証手順を行う。例えば、認証部1F13は、インタフェース11H3等で実現する。 The authentication unit 1F13 performs an authentication procedure for authenticating the first information processing device 11 and the like. For example, the authentication unit 1F13 is realized by the interface 11H3 or the like.

共有部1F14は、例えば、第1共有情報、時間情報、第1通信情報、第2共有情報、第2識別情報、第2通信情報、公開鍵、公開鍵計算式、乱数、係数、又は、これらの組み合わせの情報等の情報を共有する。例えば、共有部1F14は、インタフェース11H3等で実現する。 The sharing unit 1F14 stores, for example, first shared information, time information, first communication information, second shared information, second identification information, second communication information, public key, public key calculation formula, random number, coefficient, or Share information such as information on combinations of For example, the shared unit 1F14 is realized by the interface 11H3 or the like.

なお、機能構成は、図示する構成に限られない。すなわち、各構成は、一部、又は、全部が他の情報処理装置にあってもよい。例えば、共有部1F14は、他の情報処理装置が有してもよい。したがって、情報の共有は、他の情報処理装置により行われてもよい。具体的には、共有部1F14は、第1情報処理装置11等が有してもよい。 Note that the functional configuration is not limited to the illustrated configuration. That is, each configuration may be partly or wholly in another information processing apparatus. For example, the shared unit 1F14 may be included in another information processing apparatus. Therefore, information sharing may be performed by other information processing devices. Specifically, the shared unit 1F14 may be included in the first information processing apparatus 11 or the like.

また、認証部1F13等も同様である。したがって、認証は、他の情報処理装置が主体となって行う構成でもよい。 The same applies to the authentication unit 1F13 and the like. Therefore, the authentication may be performed mainly by another information processing apparatus.

[共有の例]
第1共有情報、時間情報、第1通信情報、第2共有情報、第2識別情報、第2通信情報、公開鍵、公開鍵計算式、乱数、及び、係数等の情報は、例えば、公開、又は、要求等で共有する。
[Sharing example]
Information such as first shared information, time information, first communication information, second shared information, second identification information, second communication information, public keys, public key calculation formulas, random numbers, and coefficients, for example, is public, Or share by request.

具体的には、共有する情報を公開すると、公開を行う情報処理装置に対して、アクセスすると、アクセスした情報処理装置は、情報を取得できる。 Specifically, when the information to be shared is made public, when the information processing apparatus that makes the information public is accessed, the accessed information processing apparatus can obtain the information.

要求は、情報を保有する情報処理装置に対して要求すると、要求に応じて情報が返信される。このようにして、要求した情報処理装置は、情報を取得できる。 When a request is made to an information processing device that holds information, the information is returned in response to the request. In this way, the requesting information processing device can acquire the information.

なお、情報を共有する際に、情報を取得しようとする情報処理装置は、認証等のチェックがされてもよい。また、共有において、情報は、一部、又は、別の情報に加工されて共有されてもよい。すなわち、情報を共有した情報処理装置は、事前に定めた処理等を行うことで、一部、又は、別の情報から情報を取得できる。 When sharing information, an information processing apparatus that attempts to acquire information may be checked for authentication or the like. Moreover, in sharing, the information may be partially or processed into other information and shared. In other words, the information processing apparatus that has shared the information can acquire the information from part or other information by performing a predetermined process or the like.

さらに、共有は、通信だけで実現しなくともよい。すなわち、共有は、データを記録媒体等で入力する、又は、口頭等で情報がユーザに伝えられて、ユーザが情報を入力する等で実現してもよい。 Furthermore, sharing does not have to be realized only by communication. That is, sharing may be realized by inputting data in a recording medium or the like, or by verbally conveying information to the user and inputting the information by the user.

[第2実施形態]
第2実施形態は、第1実施形態と情報の共有化が異なる。以下、異なる点を中心に説明し、第1実施形態と同じ内容は説明を省略する。
[Second embodiment]
The second embodiment differs from the first embodiment in information sharing. In the following, different points will be mainly described, and descriptions of the same contents as in the first embodiment will be omitted.

以下、第1識別情報「ID」を第1情報処理装置11、及び、第3情報処理装置13の間で共有する場合を例に説明する。 A case where the first identification information “ID 1 ” is shared between the first information processing device 11 and the third information processing device 13 will be described below as an example.

第1識別情報「ID」は、例えば、以下のように管理するのが望ましい。 For example, it is desirable to manage the first identification information “ID 1 ” as follows.

図11は、第2実施形態において情報を分散させる例を示す図である。以下、第1情報処理装置11が記憶する第1識別情報「ID」を共有する例で説明する。 FIG. 11 is a diagram showing an example of distributing information in the second embodiment. An example in which the first identification information “ID 1 ” stored by the first information processing device 11 is shared will be described below.

第2実施形態は、第1情報処理装置11が第1識別情報「ID」を装置群20に送信し、装置群20が第1識別情報「ID」を管理する。したがって、第3情報処理装置13等は、装置群20に対して、要求して第1識別情報「ID」を取得する。 In the second embodiment, the first information processing device 11 transmits the first identification information "ID 1 " to the device group 20, and the device group 20 manages the first identification information "ID 1 ". Therefore, the third information processing device 13 and the like request the device group 20 to acquire the first identification information “ID 1 ”.

装置群20は、複数の情報処理装置である。以下、「情報処理装置200」、「情報処理装置210」乃至「情報処理装置2N0」の「N台」(「N」は情報処理装置の数を示す自然数である。)の情報処理装置で装置群20を構成する例で説明する。 The device group 20 is a plurality of information processing devices. Hereinafter, "N units" of "information processing apparatus 200", "information processing apparatus 210" to "information processing apparatus 2N0" ("N" is a natural number indicating the number of information processing apparatuses) will be described. An example of configuring the group 20 will be described.

また、以下の例では、装置群20に対する要求等は、情報処理装置200が受け付ける例とする。ただし、情報処理装置200のように窓口となる情報処理装置はなくともよい。例えば、第3情報処理装置13等は、装置群20に対する要求等を行う場合には、「情報処理装置210」乃至「情報処理装置2N0」のうち、いずれかに要求すればよい、又は、ブロックチェーン等でもよい。 Further, in the following example, it is assumed that the information processing device 200 receives a request to the device group 20 . However, unlike the information processing device 200, there may be no information processing device serving as a window. For example, when the third information processing device 13 or the like makes a request to the device group 20, the request may be made to one of the "information processing device 210" to the "information processing device 2N0", or the block A chain or the like may be used.

装置群20は、第1識別情報「ID」を分散して管理する。したがって、装置群20は、第1識別情報「ID」を受け付けると、第1識別情報「ID」を複数の情報処理装置で分散して管理できるような情報(以下「分散情報」という。)にして管理する。 The device group 20 distributes and manages the first identification information “ID 1 ”. Therefore, when the device group 20 receives the first identification information "ID 1 ", the device group 20 distributes and manages the first identification information "ID 1 " in a plurality of information processing devices (hereinafter referred to as "distributed information"). ).

例えば、装置群20では、まず、情報処理装置200は、第1識別情報「ID」を受け付けて分散情報を生成する。次に、分散情報が生成されると、情報処理装置200は、情報処理装置210乃至情報処理装置2N0(情報処理装置200が含まれてもよい。)に、情報が分散するように、分散情報を送信する。 For example, in the device group 20, first, the information processing device 200 receives the first identification information “ID 1 ” and generates distributed information. Next, when the distributed information is generated, the information processing device 200 distributes the distributed information so that the information is distributed to the information processing devices 210 to 2N0 (the information processing device 200 may be included). to send.

図12は、分散情報の例を示す図である。 FIG. 12 is a diagram showing an example of distributed information.

分散情報は、例えば、第1識別情報「ID」を小さな情報量に分けた情報である。例えば、分散情報は、第1識別情報「ID」をビット単位に分けた情報である。具体的には、第1識別情報「ID」が1バイト(byte)、すなわち、8ビット(bit)の情報量であるとする。以下、装置群20が情報処理装置210乃至情報処理装置240の4台の情報処理装置(すなわち、「N=4」である。)で構成されるとする。 The distributed information is, for example, information obtained by dividing the first identification information “ID 1 ” into small information amounts. For example, the distributed information is information obtained by dividing the first identification information "ID 1 " into bit units. Specifically, it is assumed that the first identification information “ID 1 ” has an information amount of 1 byte (byte), that is, 8 bits (bit). Hereinafter, it is assumed that the device group 20 is composed of four information processing devices 210 to 240 (that is, “N=4”).

第1識別情報「ID」は、例えば、「11110000」等である。そして、装置群20は、2ビットごとの4個の分散情報(以下「第1分散情報20D1」、「第2分散情報20D2」、「第3分散情報20D3」、及び、「第4分散情報20D4」という。)にして管理する。 The first identification information “ID 1 ” is, for example, “11110000”. Then, the device group 20 divides four pieces of shared information (hereinafter referred to as "first shared information 20D1", "second shared information 20D2", "third shared information 20D3", and "fourth shared information 20D4") for each 2 bits. ) and managed.

第1分散情報20D1は、第1識別情報「ID」のうち、上位から1ビット目、及び、2ビット目の情報を分けた情報である。 The first distributed information 20D1 is information obtained by dividing the information of the first bit and the second bit from the top of the first identification information “ID 1 ”.

第2分散情報20D2は、第1識別情報「ID」のうち、上位から3ビット目、及び、4ビット目の情報を分けた情報である。 The second distributed information 20D2 is information obtained by dividing the third and fourth bits from the first identification information "ID 1 ".

第3分散情報20D3は、第1識別情報「ID」のうち、上位から5ビット目、及び、6ビット目の情報を分けた情報である。 The third distributed information 20D3 is information obtained by dividing the information of the fifth and sixth bits from the first identification information "ID 1 ".

第4分散情報20D4は、第1識別情報「ID」のうち、上位から7ビット目、及び、8ビット目の情報を分けた情報である。 The fourth distributed information 20D4 is information obtained by dividing the information of the 7th and 8th bits from the first identification information "ID 1 ".

この例では、分散情報は、第1識別情報「ID」を2ビットごとに分けて生成する。すなわち、各々の分散情報は、第1識別情報「ID」の一部を示す情報である。 In this example, the shared information is generated by dividing the first identification information “ID 1 ” into 2 bits. That is, each distributed information is information indicating a part of the first identification information "ID 1 ".

このようにして、装置群20の各々の情報処理装置は、別々に分散情報を管理する。 In this manner, each information processing device of the device group 20 separately manages distributed information.

そして、情報処理装置200は、第1識別情報「ID」の取得を要求されると、情報処理装置200、情報処理装置210乃至情報処理装置2N0から分散情報を取得する。そこで、情報処理装置200は、分散情報を合成する。 When the information processing device 200 is requested to acquire the first identification information “ID 1 ”, the information processing device 200 acquires distributed information from the information processing device 200 and the information processing devices 210 to 2N0. Therefore, the information processing apparatus 200 synthesizes distributed information.

具体的には、情報処理装置200は、4個の分散情報を取得する。このように、分散情報を取得すると、情報処理装置200は、4個の分散情報を組み合わせて、第1識別情報「ID」を生成できる。 Specifically, the information processing device 200 acquires four pieces of distributed information. Thus, when the shared information is acquired, the information processing device 200 can combine the four pieces of shared information to generate the first identification information “ID 1 ”.

例えば、情報処理装置200は、情報処理装置210乃至情報処理装置240から、第1分散情報20D1、第2分散情報20D2、第3分散情報20D3、及び、第4分散情報20D4を取得する。そして、情報処理装置200は、第1分散情報20D1、第2分散情報20D2、第3分散情報20D3、第4分散情報20D4の順に上位から並べるように組み合わせて分散情報を合成する。このように合成すると、情報処理装置200は、「11110000」の第1識別情報「ID」を分散情報から生成できる。したがって、情報処理装置200は、第1識別情報「ID」の取得を要求する第3情報処理装置13等に対し、第1識別情報「ID」を送信できる。 For example, the information processing device 200 acquires the first distributed information 20D1, the second distributed information 20D2, the third distributed information 20D3, and the fourth distributed information 20D4 from the information processing devices 210 to 240. FIG. Then, the information processing apparatus 200 synthesizes the shared information by combining the first shared information 20D1, the second shared information 20D2, the third shared information 20D3, and the fourth shared information 20D4 in order from the top. By synthesizing in this way, the information processing apparatus 200 can generate the first identification information “ID 1 ” of “11110000” from the distributed information. Therefore, the information processing apparatus 200 can transmit the first identification information "ID 1 " to the third information processing apparatus 13 or the like that requests acquisition of the first identification information "ID 1 ".

このような分散情報にすると、情報処理システム1は、各々の情報処理装置が管理する情報を小さい情報量にできる。 With such distributed information, the information processing system 1 can reduce the amount of information managed by each information processing device.

なお、分散情報は、情報量が均等でなくともよい。すなわち、装置群20を構成する情報処理装置は、同じ情報量の分散情報を管理するのでなく、管理する分散情報の情報量が偏ってもよい。 Note that the distributed information does not have to have a uniform amount of information. In other words, the information processing devices constituting the device group 20 may not manage the same amount of distributed information, but the information amount of the distributed information to be managed may be biased.

分散情報は、情報を小さな情報量に分けるに限られない。例えば、分散情報は、暗号化した情報と、鍵の情報の組み合わせ(各々の情報を小さな情報量に分けてもよい。)でもよい。 Distributed information is not limited to dividing information into small pieces of information. For example, distributed information may be a combination of encrypted information and key information (each piece of information may be divided into smaller pieces).

また、分散情報の生成、すなわち、分散情報生成部1F15を備えるのは、情報処理装置200でなくともよい。例えば、分散情報生成部1F15は、第1情報処理装置11等が備えてもよい。 Further, it is not necessarily the information processing apparatus 200 that generates the distributed information, that is, includes the distributed information generation unit 1F15. For example, the distributed information generator 1F15 may be provided in the first information processing device 11 or the like.

このような分散情報であると、暗号化した情報を何らかの方法で取得できても、鍵がなければ、第1識別情報「ID」を取得するのは難しい。 With such distributed information, even if the encrypted information can be obtained by some method, it is difficult to obtain the first identification information “ID 1 ” without the key.

すなわち、分散情報のうち、一部の分散情報を不正に取得しても、第1識別情報「ID」を全体として取得するのが難しくできるのであれば、分散情報は、形式、及び、情報量等を問わない。 That is, even if part of the distributed information is obtained illegally, if it is difficult to obtain the first identification information “ID 1 ” as a whole, the distributed information has a format and information Any amount is acceptable.

なお、装置群20は、例えば、以下のように、Software-Defined anything(ソフトウェア定義)(以下「SDx」という。)等で構成する情報処理装置を特定されるのが望ましい。 It is desirable that the device group 20 is specified by, for example, an information processing device configured by Software-Defined anything (hereinafter referred to as “SDx”) or the like as follows.

図13は、SDxによる装置群の特定例を示す図である。例えば、図12のように、第1識別情報「ID」が8ビットの情報量であり、かつ、2ビットごとに分散する場合を例にする。 FIG. 13 is a diagram showing an example of specifying a group of devices by SDx. For example, as shown in FIG. 12, the case where the first identification information "ID 1 " has an information amount of 8 bits and is dispersed every 2 bits is taken as an example.

SDxは、例えば、装置群20において、N台の情報処理装置のうち、情報処理装置210乃至情報処理装置240を特定する処理である。 SDx is, for example, a process of specifying the information processing devices 210 to 240 among the N information processing devices in the device group 20 .

SDxのように、分散情報の数等に応じて用いる情報処理装置210乃至情報処理装置240を特定すると、情報処理装置等のハードウェア資源を効率良く活用できる。また、SDxによって、管理する情報処理装置を柔軟に変更すると、分散情報を管理する情報処理装置を固定する場合等と比較して、不正に情報を取得されるのを防ぎ、よりセキュリティを向上できる。 As in SDx, if the information processing devices 210 to 240 to be used are specified according to the number of pieces of distributed information, hardware resources such as information processing devices can be efficiently utilized. In addition, by flexibly changing the information processing device to be managed by SDx, it is possible to prevent illegal acquisition of information and improve security more than when the information processing device that manages distributed information is fixed. .

又は、装置群20は、例えば、Domain Name System(以下「DNS」という。)等で構成する情報処理装置を特定されるのが望ましい。 Alternatively, it is desirable that the device group 20 is specified by, for example, an information processing device configured by a Domain Name System (hereinafter referred to as "DNS").

図14は、DNSによる装置群の特定例を示す図である。すなわち、装置群20は、Uniform Resource Locator形式の情報(以下単に「URL」という。)等で構成する情報処理装置を特定されるのが望ましい。 FIG. 14 is a diagram showing an example of specifying a group of devices by DNS. That is, it is desirable for the device group 20 to specify an information processing device constituted by information in the Uniform Resource Locator format (hereinafter simply referred to as “URL”) or the like.

以下、URLを「www.aaa.co.jp」とする例で説明する。 An example in which the URL is "www.aaa.co.jp" will be described below.

例えば、情報処理装置200が、DNSにおけるDNSサーバとなる。まず、第1情報処理装置11は、URLを用いて情報処理装置200において問い合わせを行う。 For example, the information processing device 200 becomes a DNS server in DNS. First, the first information processing device 11 makes an inquiry to the information processing device 200 using a URL.

URLに基づく問い合わせが行われると、情報処理装置200は、ルートサーバ300に問い合わせを行う。 When a URL-based inquiry is made, the information processing device 200 makes an inquiry to the root server 300 .

DNSにより、ルートサーバ300に問い合わせが行われると、URLにより情報処理装置が特定される。この例では、「jp」、「co」、及び、「aaa」を各々担当するサーバが特定される。 When the root server 300 is queried by DNS, the information processing device is specified by the URL. In this example, the servers responsible for "jp", "co", and "aaa" are specified.

例えば、DNSを利用して、情報処理システム1は、情報処理装置210乃至情報処理装置230のように、複数の情報処理装置を特定して、装置群20を構成してもよい。ただし、装置群20を構成する情報処理装置は、「jp」、「co」、及び、「aaa」を各々担当するサーバ以外の情報処理装置でもよい。例えば、「jp」、「co」、及び、「aaa」を各々担当するサーバは、特定されると、別の情報処理装置で装置群20を構成するように、別の情報処理装置を指定してもよい。 For example, using DNS, the information processing system 1 may configure the device group 20 by specifying a plurality of information processing devices such as the information processing devices 210 to 230 . However, the information processing devices constituting the device group 20 may be information processing devices other than the servers responsible for "jp", "co", and "aaa". For example, when the servers responsible for "jp", "co", and "aaa" are specified, they specify different information processing devices so that they form the device group 20. may

なお、DNSによる装置群の特定は、DNSにおけるキャッシュを利用してもよい。 Note that a cache in DNS may be used to specify the device group by DNS.

このように、DNSを利用すると、URLにより、情報処理装置の数等を柔軟に指定できる。 In this way, when DNS is used, it is possible to flexibly designate the number of information processing apparatuses by URL.

このように、第1識別情報「ID」等の情報を分散して管理すると、一部の情報が漏洩しても、第1識別情報「ID」の一部しか把握できず、第1識別情報「ID」の全体を把握するのが難しくできる。このようにして、情報処理システム1は、第1識別情報「ID」が漏洩するのを防ぎ、セキュリティを向上できる。 In this way, if the information such as the first identification information "ID 1 " is distributed and managed, even if part of the information is leaked, only a part of the first identification information "ID 1 " can be grasped. It can be difficult to grasp the entirety of the identification information "ID 1 ". In this way, the information processing system 1 can prevent the first identification information “ID 1 ” from being leaked and improve security.

なお、第2実施形態において、対象となる情報は、第1識別情報「ID」に限られない。すなわち、情報は、第1識別情報「ID」以外の情報でもよい。例えば、第2識別情報「ID」等が対象であってもよい。 In addition, in the second embodiment, the target information is not limited to the first identification information "ID 1 ". That is, the information may be information other than the first identification information "ID 1 ". For example, the second identification information “ID 2 ” or the like may be targeted.

具体的には、第2識別情報「ID」は、第3情報処理装置13が第2送信データを生成する場合等に、第3情報処理装置13が用いる。又は、第2識別情報「ID」は、第3情報処理装置13が第2情報処理装置12を認証する場合等に、第3情報処理装置13が用いる。このような場合等に、第3情報処理装置13が第2実施形態に示す共有方法等を用いてもよい。 Specifically, the second identification information “ID 2 ” is used by the third information processing device 13 when, for example, the third information processing device 13 generates the second transmission data. Alternatively, the second identification information “ID 2 ” is used by the third information processing device 13 when, for example, the third information processing device 13 authenticates the second information processing device 12 . In such a case, the third information processing device 13 may use the sharing method or the like described in the second embodiment.

[中間者攻撃の例]
図15は、中間者攻撃の例を示す図である。例えば、中間者攻撃は、攻撃者18が攻撃者端末17を操作して、第1情報処理装置11、及び、第2情報処理装置12の間を送受信するデータを攻撃者端末17が不正に取得できるように接続する処理である。
[Example of man-in-the-middle attack]
FIG. 15 is a diagram illustrating an example of a man-in-the-middle attack. For example, in a man-in-the-middle attack, the attacker 18 operates the attacker terminal 17, and the attacker terminal 17 illegally acquires data transmitted and received between the first information processing device 11 and the second information processing device 12. It is a process to connect so that it can be done.

なお、第1情報処理装置11、及び、第2情報処理装置12等は、攻撃者端末17が接続した、又は、接続しているのを把握できないとする。 It is assumed that the first information processing apparatus 11, the second information processing apparatus 12, and the like cannot recognize that the attacker terminal 17 is connected or is being connected.

このように中間者攻撃がされると、以降、第1情報処理装置11、及び、第2情報処理装置12の間を送受信するデータは、攻撃者端末17を介して送受信される。そして、第1情報処理装置11、及び、第2情報処理装置12等は、データの改ざん、又は、データの削除等が起きないと、データの送受信が無事に完了したと判定する。 After such a man-in-the-middle attack, the data transmitted/received between the first information processing device 11 and the second information processing device 12 is transmitted/received via the attacker's terminal 17 . Then, the first information processing device 11, the second information processing device 12, and the like determine that data transmission/reception has been successfully completed unless falsification of data, deletion of data, or the like occurs.

したがって、第1情報処理装置11、及び、第2情報処理装置12等は、中間者攻撃による不正な情報の取得が把握できない場合がある。 Therefore, the first information processing device 11, the second information processing device 12, and the like may not be able to grasp unauthorized acquisition of information by a man-in-the-middle attack.

ゆえに、第1情報処理装置11、及び、第2情報処理装置12の間で、共通鍵方式で暗号化してデータを送受信しようとする場合等において、鍵を第1情報処理装置11、及び、第2情報処理装置12の間で直接送受信すると、鍵が中間者攻撃で不正に取得される可能性がある。ゆえに、第1情報処理装置11、及び、第2情報処理装置12の間で直接鍵を送受信しないのが望ましい。 Therefore, when the data encrypted by the common key method is to be transmitted and received between the first information processing device 11 and the second information processing device 12, the key is transferred to the first information processing device 11 and the second information processing device 12. Direct transmission/reception between the two information processing devices 12 may result in unauthorized acquisition of the key through a man-in-the-middle attack. Therefore, it is desirable not to transmit and receive keys directly between the first information processing device 11 and the second information processing device 12 .

本実施形態によれば、鍵を第1情報処理装置11、及び、第2情報処理装置12の間で直接送受信しないため、第1情報処理装置11、及び、第2情報処理装置12の間等を中間者攻撃されても、鍵を不正に取得されるのを防ぐことができる。ゆえに、情報処理システム1は、鍵を不正に取得する等に対し、通信におけるセキュリティを向上できる。 According to this embodiment, since the key is not directly transmitted/received between the first information processing device 11 and the second information processing device 12, a Even if a man-in-the-middle attack is performed, it is possible to prevent unauthorized acquisition of the key. Therefore, the information processing system 1 can improve security in communication against unauthorized acquisition of the key.

[「なりすまし」による攻撃の例]
図16は、「なりすまし」による攻撃の例を示す図である。例えば、「なりすまし」による攻撃は、攻撃者18が攻撃者端末17を操作して、第1情報処理装置11に「なりすまし」する処理である。
[Example of attack by “spoofing”]
FIG. 16 is a diagram showing an example of an attack by "spoofing". For example, an attack by “impersonation” is a process in which the attacker 18 operates the attacker terminal 17 to “impersonate” the first information processing device 11 .

攻撃者端末17は、第1情報処理装置11であると偽ってリクエスト等を行う。仮に、リクエストが許可されてしまうと、攻撃者端末17は、第1送信データを不正に取得する。 The aggressor terminal 17 pretends to be the first information processing device 11 and makes a request or the like. If the request is permitted, the attacker terminal 17 illegally acquires the first transmission data.

このような場合であっても、攻撃者18は、第1識別情報、第1共有情報、時間情報、第1通信情報、ハッシュ関数、及び、第1送信データを生成する計算式等をすべて知らないと、第1送信データからシードを取り出すのは難しい。 Even in such a case, the attacker 18 does not know all of the first identification information, the first shared information, the time information, the first communication information, the hash function, the calculation formula for generating the first transmission data, and the like. Otherwise, it is difficult to extract the seed from the first transmitted data.

また、攻撃者18は、シードから鍵を生成する方法を知らないと、攻撃者18は、鍵を取得するのは難しい。 Also, if the attacker 18 does not know how to generate the key from the seed, it will be difficult for the attacker 18 to obtain the key.

例えば、「フィッシング」(phishing)等で不正に情報が取得されても、すべての情報が取得されないと、シード等の情報を特定するのは難しい場合が多い。 For example, even if information is illegally acquired by "phishing" or the like, it is often difficult to specify the information such as the seed unless all the information is acquired.

また、第1識別情報を用いる認証等を行う場合には、攻撃者18は、第1識別情報等を知らないと、第3情報処理装置13に認証されない場合が多い。 Further, in the case of performing authentication using the first identification information, etc., the attacker 18 is often not authenticated by the third information processing apparatus 13 unless the attacker 18 knows the first identification information.

さらに、第1識別情報等が分散情報等で管理されると、攻撃者18は、第1識別情報等を不正に取得しにくい。 Furthermore, when the first identification information and the like are managed by distributed information and the like, it is difficult for the attacker 18 to illegally acquire the first identification information and the like.

ゆえに、情報処理システム1は、第1情報処理装置11に「なりすまし」する攻撃等に対し、通信におけるセキュリティを向上できる。 Therefore, the information processing system 1 can improve security in communication against attacks such as “spoofing” of the first information processing device 11 .

[その他の実施形態]
実施形態は、上記の実施形態を組み合わせたものでもよい。
鍵は、通信(例えば、セクション単位、又は、同じユーザ同士で連続してデータを送受信する単位等である。)ごとに生成されるのが望ましい。すなわち、通信ごとに異なる鍵が用いられると、セキュリティがより向上できる。
情報処理システム1において、第1情報処理装置11(第1情報処理装置11を介してユーザ15を認証する場合を含む。)、及び、第2情報処理装置12の間で直接認証をしない構成が望ましい。すなわち、第1情報処理装置11、及び、第2情報処理装置12の間は、非対話型のゼロ知識証明等が用いられるのが望ましい。
また、ユーザ15についての情報(例えば、ユーザ情報16等といったユーザ15に関する情報である。)は、第4情報処理装置14等が管理する構成が望ましい。
[Other embodiments]
Embodiments may be combinations of the above embodiments.
A key is desirably generated for each communication (for example, in units of sections, or in units of continuous data transmission/reception between the same users). In other words, using a different key for each communication can further improve security.
In the information processing system 1, there is a configuration in which direct authentication is not performed between the first information processing device 11 (including the case where the user 15 is authenticated via the first information processing device 11) and the second information processing device 12. desirable. That is, it is desirable to use a non-interactive zero-knowledge proof or the like between the first information processing device 11 and the second information processing device 12 .
Information about the user 15 (for example, information about the user 15 such as the user information 16) is desirably managed by the fourth information processing device 14 or the like.

情報処理システムは、情報処理装置におけるオペレーティングシステム(OS)を構成するカーネル(kernel)等で実現されてもよい。又は、情報処理システムは、Secure Sockets Layer(SSL)、又は、Transport Layer Security(TLS)等に用いられてもよい。 The information processing system may be realized by a kernel or the like that constitutes an operating system (OS) in the information processing apparatus. Alternatively, the information processing system may be used for Secure Sockets Layer (SSL), Transport Layer Security (TLS), or the like.

また、第1識別情報等は、一定期間ごと等に変更されてもよい。すなわち、第1識別情報等は、動的に切り替える、動的固有アイデンティティ(Dynamic SpecificIdentity、DSI)等が適用されてもよい。 Also, the first identification information and the like may be changed every certain period of time. That is, the first identification information or the like may apply a dynamic specific identity (DSI) or the like that is dynamically switched.

第1情報処理装置等は、例えば、Open Mobile Alliance-Device Management(OMA-DM)、Lightweight Directory Access Protocol(LDAP)、又は、Remote Authentication Dial In User Service(Radius)等で認証されてもよい。 The first information processing device or the like is authenticated by, for example, Open Mobile Alliance-Device Management (OMA-DM), Lightweight Directory Access Protocol (LDAP), or Remote Authentication Dial In User Service (Radius). may be

第1情報処理装置等は、Authentication(認証)、Authorization(認可)、及び、Accounting(アカウンティング)の機能(AAA)を有する情報処理装置等により、認証等がされてもよい。 The first information processing device or the like may be authenticated by an information processing device or the like having functions (AAA) of Authentication, Authorization, and Accounting.

第1識別情報等は、ハードウェア等を特定する情報でもよい。すなわち、第1識別情報等は、物理アドレス等でもよい。又は、第1識別情報等は、第1情報処理装置が有するセンサ等で特定される位置情報等でもよい。 The first identification information or the like may be information specifying hardware or the like. That is, the first identification information or the like may be a physical address or the like. Alternatively, the first identification information or the like may be position information or the like specified by a sensor or the like of the first information processing device.

本発明は、上記に例示する情報処理方法、又は、上記に示す処理と等価な処理を実行するプログラム(ファームウェア、及び、プログラムに準ずるものを含む。以下単に「プログラム」という。)で実現されてもよい。 The present invention is implemented by the information processing method exemplified above or a program (including firmware and programs equivalent thereto; hereinafter simply referred to as "program") that executes processing equivalent to the above-described processing. good too.

すなわち、本発明は、コンピュータに対して指令を行って所定の結果が得られるように、プログラミング言語等で記載されたプログラム等で実現されてもよい。なお、プログラムは、処理の一部をIntegrated Circuit(IC、集積回路)等のハードウェア、又は、Graphics Processing Unit(GPU)等の演算装置等で実行する構成であってもよい。 That is, the present invention may be realized by a program or the like written in a programming language or the like so as to issue a command to a computer and obtain a predetermined result. Note that the program may be configured such that part of the processing is executed by hardware such as an Integrated Circuit (IC) or an arithmetic unit such as a Graphics Processing Unit (GPU).

プログラムは、コンピュータが有する演算装置、制御装置、及び、記憶装置等を協働させて上記に示す処理等をコンピュータに実行させる。すなわち、プログラムは、主記憶装置等にロードされて、演算装置に命令を発して演算を行わせてコンピュータを動作させる。 The program causes the computer to execute the processes described above by cooperating with the arithmetic device, the control device, the storage device, and the like of the computer. That is, the program is loaded into the main storage device or the like, issues instructions to the arithmetic unit to perform arithmetic operation, and operates the computer.

また、プログラムは、コンピュータが読み込み可能な記録媒体、又は、ネットワーク等の電気通信回線を介して提供されてもよい。 Also, the program may be provided via a computer-readable recording medium or an electric communication line such as a network.

本発明は、複数の装置で構成されるシステムで実現されてもよい。すなわち、複数のコンピュータによるシステムは、上記に示す処理を冗長、並列、分散、又は、これらの組み合わせとなるように実行してもよい。したがって、本発明は、上記に示すハードウェア構成以外の装置、及び、上記に示す装置以外のシステムで実現されてもよい。 The present invention may be implemented in a system composed of multiple devices. That is, a system of multiple computers may perform the processes described above redundantly, in parallel, distributed, or any combination thereof. Therefore, the present invention may be realized by devices with hardware configurations other than those shown above, and systems other than those shown above.

なお、本発明は、上記に例示する各実施形態に限定されない。したがって、本発明は、技術的な要旨を逸脱しない範囲で、構成要素の追加、又は、変形が可能である。ゆえに、特許請求の範囲に記載された技術思想に含まれる技術的事項のすべてが本発明の対象となる。なお、上記に例示する実施形態は、実施において好適な具体例である。そして、当業者であれば、開示した内容から様々な変形例を実現で可能であって、このような変形例は、特許請求の範囲に記載された技術的範囲に含まれる。 In addition, the present invention is not limited to each embodiment illustrated above. Therefore, the present invention can be added or modified without departing from the technical scope. Therefore, all technical matters included in the technical idea described in the claims are covered by the present invention. In addition, embodiment illustrated above is a suitable specific example in implementation. A person skilled in the art can implement various modifications from the disclosed contents, and such modifications are included in the technical scope described in the claims.

1 :情報処理システム
1F1 :第1識別情報記憶部
1F10 :第2送信データ生成部
1F11 :第2送信データ送信部
1F12 :通信部
1F13 :認証部
1F14 :共有部
1F15 :分散情報生成部
1F2 :リクエスト部
1F3 :第1識別情報取得部
1F4 :通知部
1F5 :許可部
1F6 :返答受付部
1F7 :シード生成部
1F8 :第1送信データ生成部
1F9 :第1送信データ送信部
2N0 :情報処理装置
11 :第1情報処理装置
12 :第2情報処理装置
13 :第3情報処理装置
14 :第4情報処理装置
15 :ユーザ
16 :ユーザ情報
17 :攻撃者端末
18 :攻撃者
19 :第5情報処理装置
20 :装置群
20D1 :第1分散情報
20D2 :第2分散情報
20D3 :第3分散情報
20D4 :第4分散情報
200 :情報処理装置
210 :情報処理装置
230 :情報処理装置
240 :情報処理装置

1: information processing system 1F1: first identification information storage unit 1F10: second transmission data generation unit 1F11: second transmission data transmission unit 1F12: communication unit 1F13: authentication unit 1F14: sharing unit 1F15: distributed information generation unit 1F2: request Part 1F3: First identification information acquisition part 1F4: Notification part 1F5: Permission part 1F6: Response reception part 1F7: Seed generation part 1F8: First transmission data generation part 1F9: First transmission data transmission part 2N0: Information processing device 11: First information processing device 12 : Second information processing device 13 : Third information processing device 14 : Fourth information processing device 15 : User 16 : User information 17 : Attacker terminal 18 : Attacker 19 : Fifth information processing device 20 : Device group 20D1 : First distributed information 20D2 : Second distributed information 20D3 : Third distributed information 20D4 : Fourth distributed information 200 : Information processing device 210 : Information processing device 230 : Information processing device 240 : Information processing device

Claims (11)

ユーザが使用する第1情報処理装置、前記第1情報処理装置と接続する第2情報処理装置、並びに、前記第1情報処理装置及び前記第2情報処理装置と接続する第3情報処理装置を有する情報処理システムであって、
前記第1情報処理装置は、
前記ユーザを識別する第1識別情報を記憶する第1識別情報記憶部と、
前記第3情報処理装置に、前記第2情報処理装置によるサービスのリクエストを送信するリクエスト部とを有し、
前記第3情報処理装置は、
前記第1識別情報を取得する第1識別情報取得部と、
前記リクエストを前記第1情報処理装置から受け付けると、前記第2情報処理装置に、前記リクエストを許可するか否かを問い合わせる通知を行う通知部と、
前記通知に対する返答を前記第2情報処理装置から受け付ける返答受付部と、
鍵の基礎情報となるシードを生成するシード生成部と、
前記返答によって前記リクエストが許可されると、前記シード、前記第1情報処理装置と共有する第1共有情報、前記第1情報処理装置との通信時刻で定まる時間情報、前記第1識別情報、及び、前記第1情報処理装置との通信ごとに定まる第1通信情報を利用して第1送信データを生成する第1送信データ生成部と、
前記第1送信データを前記第1情報処理装置に送信する第1送信データ送信部と、
前記返答によって前記リクエストが許可されると、前記シードを含む第2送信データを生成する第2送信データ生成部と、
前記第2送信データを前記第2情報処理装置に送信する第2送信データ送信部とを有し、
前記第2情報処理装置は、
前記通知を前記第3情報処理装置から受け付けると、前記通知を許可する場合には、前記リクエストを許可する前記返答を前記第3情報処理装置に行う許可部を有し、
前記第1情報処理装置、及び、前記第2情報処理装置は、
前記第1送信データ、又は、前記第2送信データから前記シードを取り出して生成する前記鍵を用いて暗号化して通信を行う通信部を各々に更に備える
情報処理システム。
A first information processing device used by a user, a second information processing device connected to the first information processing device, and a third information processing device connected to the first information processing device and the second information processing device. An information processing system,
The first information processing device is
a first identification information storage unit that stores first identification information that identifies the user;
a request unit for transmitting a service request from the second information processing device to the third information processing device;
The third information processing device is
a first identification information acquisition unit that acquires the first identification information;
a notification unit that, when receiving the request from the first information processing device, notifies the second information processing device of whether or not to permit the request;
a response receiving unit that receives a response to the notification from the second information processing device;
a seed generation unit that generates a seed that is basic information of a key;
When the request is permitted by the response, the seed, first shared information shared with the first information processing device, time information determined by communication time with the first information processing device, the first identification information, and a first transmission data generation unit that generates first transmission data using first communication information determined for each communication with the first information processing device;
a first transmission data transmission unit that transmits the first transmission data to the first information processing device;
a second transmission data generation unit that generates second transmission data including the seed when the request is permitted by the reply;
a second transmission data transmission unit that transmits the second transmission data to the second information processing device;
The second information processing device is
a permitting unit that, when receiving the notification from the third information processing device, sends the response permitting the request to the third information processing device when permitting the notification;
The first information processing device and the second information processing device are
An information processing system, each further comprising a communication unit that performs encryption using the key generated by extracting the seed from the first transmission data or the second transmission data and performing communication.
前記第3情報処理装置は、
前記返答による許可を前記第2情報処理装置から受け付けると、前記第1情報処理装置が前記第1識別情報を記憶するか否かを判定して、前記第1情報処理装置を認証する
請求項1に記載の情報処理システム。
The third information processing device is
2. When the permission by the reply is accepted from the second information processing device, the first information processing device determines whether or not the first identification information is stored, and authenticates the first information processing device. The information processing system according to .
前記第1情報処理装置、及び、前記第3情報処理装置は、
公開鍵、前記公開鍵を算出する公開鍵計算式、及び、前記公開鍵計算式を構成する係数を共有し、
前記第3情報処理装置は、
第1乱数を生成する第1乱数生成部と、
前記第1乱数を前記第1情報処理装置に送信する第1乱数送信部とを更に有し、
前記第1情報処理装置は、
第2乱数を生成する第2乱数生成部と、
前記公開鍵計算式に前記係数、及び、前記第2乱数を代入して定まる第1計算値を計算する第1計算部と、
前記第1計算値を前記第3情報処理装置に送信する第1計算値送信部と、
前記第2乱数、前記第1識別情報、前記第1乱数、及び、前記係数から定まる位数を用いて、第2計算値を計算する第2計算部と、
前記第2計算値を前記第3情報処理装置に送信する第2計算値送信部とを更に有し、
前記第3情報処理装置は、
前記第2計算値を受信すると、前記公開鍵計算式に前記係数、及び、前記第2計算値を代入して第3計算値を計算する第3計算部と、
前記第1計算値を受信すると、前記第1計算値、前記公開鍵、及び、前記第1乱数を用いて第4計算値を計算する第4計算部とを更に有し、
前記第3計算値、及び、前記第4計算値を比較して、前記リクエストを送信した情報処理装置が前記第1情報処理装置であるか否かを認証する
請求項2に記載の情報処理システム。
The first information processing device and the third information processing device,
sharing a public key, a public key calculation formula for calculating the public key, and coefficients constituting the public key calculation formula;
The third information processing device is
a first random number generator that generates a first random number;
a first random number transmission unit that transmits the first random number to the first information processing device;
The first information processing device is
a second random number generator that generates a second random number;
a first calculation unit that calculates a first calculated value determined by substituting the coefficient and the second random number into the public key calculation formula;
a first calculated value transmission unit that transmits the first calculated value to the third information processing device;
a second calculation unit that calculates a second calculated value using an order determined from the second random number, the first identification information, the first random number, and the coefficient;
a second calculated value transmission unit that transmits the second calculated value to the third information processing device;
The third information processing device is
a third calculation unit that, upon receiving the second calculated value, calculates a third calculated value by substituting the coefficient and the second calculated value into the public key calculation formula;
a fourth calculation unit that, upon receiving the first calculated value, calculates a fourth calculated value using the first calculated value, the public key, and the first random number;
3. The information processing system according to claim 2, wherein the third calculated value and the fourth calculated value are compared to authenticate whether or not the information processing device that has transmitted the request is the first information processing device. .
前記第1情報処理装置、及び、前記第3情報処理装置は、
第1共有値、前記第1共有値と定数で定まる関係式が示す関係がある第2共有値、及び、引数に対する特定の計算結果を計算する共有関数を共有し、
前記第1情報処理装置は、
前記定数に前記第1識別情報を代入し、
第3乱数を生成する第3乱数生成部と、
前記第3乱数、及び、前記第1共有値を乗算して第5計算値を計算する第5計算部と、
前記第5計算値を前記第3情報処理装置に送信する第5計算値送信部と、
前記第1共有値、前記第2共有値、及び、前記第5計算値を前記引数として前記共有関数を用いて第6計算値を計算する第6計算部と、
前記第3乱数、前記第1識別情報、及び、前記第6計算値を用いて第7計算値を計算する第7計算部と、
前記第7計算値を前記第3情報処理装置に送信する第7計算値送信部とを有し、
前記第3情報処理装置は、
前記第5計算値を受信すると、前記第1共有値、前記第2共有値、及び、前記第5計算値を前記引数として前記共有関数を用いて第8計算値を計算する第8計算部と、
前記第7計算値を受信すると、前記第7計算値、及び、前記第1共有値を乗算して第9計算値を計算する第9計算部と、
前記第5計算値、前記第8計算値、及び、前記第2共有値を用いて第10計算値を計算する第10計算部とを有し、
前記第9計算値、及び、前記第10計算値を比較して、前記リクエストを送信した情報処理装置が前記第1情報処理装置であるか否かを認証する
請求項2に記載の情報処理システム。
The first information processing device and the third information processing device,
sharing a first shared value, a second shared value having a relationship indicated by a relational expression defined by a constant with the first shared value, and a shared function for calculating a specific calculation result for the argument;
The first information processing device is
Substituting the first identification information for the constant,
a third random number generator that generates a third random number;
a fifth calculation unit that calculates a fifth calculated value by multiplying the third random number and the first shared value;
a fifth calculated value transmission unit that transmits the fifth calculated value to the third information processing device;
a sixth calculation unit that calculates a sixth calculated value using the shared function with the first shared value, the second shared value, and the fifth calculated value as the arguments;
a seventh calculation unit that calculates a seventh calculated value using the third random number, the first identification information, and the sixth calculated value;
a seventh calculated value transmission unit that transmits the seventh calculated value to the third information processing device;
The third information processing device is
an eighth calculation unit that, upon receiving the fifth calculated value, calculates an eighth calculated value using the shared function with the first shared value, the second shared value, and the fifth calculated value as the arguments; ,
a ninth calculator that, upon receiving the seventh calculated value, calculates a ninth calculated value by multiplying the seventh calculated value and the first shared value;
a tenth calculation unit that calculates a tenth calculated value using the fifth calculated value, the eighth calculated value, and the second shared value;
3. The information processing system according to claim 2, wherein the ninth calculated value and the tenth calculated value are compared to authenticate whether or not the information processing device that has transmitted the request is the first information processing device. .
複数の情報処理装置である装置群は、
前記第2情報処理装置を識別する第2識別情報、又は、前記第1識別情報を分散情報にする分散情報生成部を有し、
前記装置群を構成する各々の情報処理装置は、
前記第1識別情報、又は、前記第2識別情報の取得を要求されると、各々の前記分散情報を送信し、
前記分散情報を合成すると、前記第1識別情報、又は、前記第2識別情報が生成される
請求項1乃至4のいずれか1項に記載の情報処理システム。
A device group, which is a plurality of information processing devices,
a distributed information generating unit that uses the second identification information for identifying the second information processing device or the first identification information as distributed information;
Each information processing device that constitutes the device group,
When the acquisition of the first identification information or the second identification information is requested, each of the distributed information is transmitted,
5. The information processing system according to any one of claims 1 to 4, wherein the first identification information or the second identification information is generated by synthesizing the distributed information.
前記第2送信データ生成部は、
前記シード、前記第2情報処理装置と共有する第2共有情報、前記時間情報、前記第2情報処理装置を識別する第2識別情報、及び、前記第2情報処理装置との通信ごとに定まる第2通信情報を利用して前記第2送信データを生成する
請求項1乃至5のいずれか1項に記載の情報処理システム。
The second transmission data generation unit,
The seed, the second shared information shared with the second information processing device, the time information, the second identification information for identifying the second information processing device, and a number determined for each communication with the second information processing device. 6. The information processing system according to any one of claims 1 to 5, wherein the second transmission data is generated using 2 communication information.
前記第1情報処理装置、又は、前記第3情報処理装置は、
前記第1共有情報、前記時間情報、前記第1識別情報、前記第1通信情報、又は、これらの組み合わせの情報を他の情報処理装置と共有させる共有部を更に備える
請求項1乃至6のいずれか1項に記載の情報処理システム。
The first information processing device or the third information processing device,
7. The apparatus according to any one of claims 1 to 6, further comprising a sharing unit for sharing the first shared information, the time information, the first identification information, the first communication information, or a combination thereof with other information processing apparatuses. or the information processing system according to item 1.
前記第1識別情報は、
前記ユーザに関するユーザ情報、又は、前記ユーザ情報の一部を利用して生成され、
前記ユーザ情報を保有する第4情報処理装置と接続する
請求項1乃至7のいずれか1項に記載の情報処理システム。
The first identification information is
User information about the user, or generated using a part of the user information,
8. The information processing system according to any one of claims 1 to 7, which is connected to a fourth information processing device holding said user information.
前記リクエストを送信する前に、
前記第1情報処理装置は、
前記ユーザ情報を前記第4情報処理装置に登録し、
前記第1識別情報は、
前記ユーザ情報、又は、前記ユーザ情報の一部を利用して生成される
請求項8に記載の情報処理システム。
Before sending said request,
The first information processing device is
registering the user information in the fourth information processing device;
The first identification information is
9. The information processing system according to claim 8, which is generated using said user information or part of said user information.
ユーザが使用する第1情報処理装置、前記第1情報処理装置と接続する第2情報処理装置、並びに、前記第1情報処理装置及び前記第2情報処理装置と接続する第3情報処理装置を有する情報処理システムが行う情報処理方法であって、
前記第1情報処理装置が、前記ユーザを識別する第1識別情報を記憶する第1識別情報手順と、
前記第1情報処理装置が、前記第3情報処理装置に、前記第2情報処理装置によるサービスのリクエストを送信するリクエスト手順と、
前記第3情報処理装置が、前記第1識別情報を取得する第1識別情報取得手順と、
前記第3情報処理装置が、前記リクエストを前記第1情報処理装置から受け付けると、前記第2情報処理装置に、前記リクエストを許可するか否かを問い合わせる通知を行う通知手順と、
前記第3情報処理装置が、前記通知に対する返答を前記第2情報処理装置から受け付ける返答受付手順と、
前記第3情報処理装置が、鍵の基礎情報となるシードを生成するシード生成手順と、
前記第3情報処理装置が、前記返答によって前記リクエストが許可されると、前記シード、前記第1情報処理装置と共有する第1共有情報、前記第1情報処理装置との通信時刻で定まる時間情報、前記第1識別情報、及び、前記第1情報処理装置との通信ごとに定まる第1通信情報を利用して第1送信データを生成する第1送信データ生成手順と、
前記第3情報処理装置が、前記第1送信データを前記第1情報処理装置に送信する第1送信データ送信手順と、
前記第3情報処理装置が、前記返答によって前記リクエストが許可されると、前記シードを含む第2送信データを生成する第2送信データ生成手順と、
前記第3情報処理装置が、前記第2送信データを前記第2情報処理装置に送信する第2送信データ送信手順と、
前記第2情報処理装置が、前記通知を前記第3情報処理装置から受け付けると、前記通知を許可する場合には、前記リクエストを許可する前記返答を前記第3情報処理装置に行う許可手順と、
前記第1情報処理装置、及び、前記第2情報処理装置が、前記第1送信データ、又は、前記第2送信データから前記シードを取り出して生成する前記鍵を用いて暗号化して通信を行う通信手順と
を有する情報処理方法。
A first information processing device used by a user, a second information processing device connected to the first information processing device, and a third information processing device connected to the first information processing device and the second information processing device. An information processing method performed by an information processing system,
a first identification information procedure in which the first information processing device stores first identification information identifying the user;
a request procedure in which the first information processing device transmits a service request by the second information processing device to the third information processing device;
a first identification information obtaining procedure in which the third information processing device obtains the first identification information;
a notification procedure in which, when the third information processing device receives the request from the first information processing device, a notification is sent to the second information processing device to inquire whether or not to permit the request;
a reply receiving procedure for the third information processing device to receive a reply to the notification from the second information processing device;
a seed generation procedure in which the third information processing device generates a seed serving as key basic information;
When the third information processing device permits the request by the reply, time information determined by the seed, the first shared information shared with the first information processing device, and the time of communication with the first information processing device. , a first transmission data generation procedure for generating first transmission data using the first identification information and first communication information determined for each communication with the first information processing device;
a first transmission data transmission procedure in which the third information processing device transmits the first transmission data to the first information processing device;
a second transmission data generation procedure in which the third information processing device generates second transmission data including the seed when the request is permitted by the reply;
a second transmission data transmission procedure in which the third information processing device transmits the second transmission data to the second information processing device;
a permitting step of, when the second information processing device receives the notification from the third information processing device, sending the response permitting the request to the third information processing device when permitting the notification;
Communication in which the first information processing device and the second information processing device encrypt and communicate using the key generated by extracting the seed from the first transmission data or the second transmission data An information processing method comprising:
請求項10に記載の情報処理方法をコンピュータに実行させるためのプログラム。
A program for causing a computer to execute the information processing method according to claim 10.
JP2022142212A 2021-11-04 2022-09-07 Information processing system, information processing method, and program Pending JP2023070060A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022142212A JP2023070060A (en) 2021-11-04 2022-09-07 Information processing system, information processing method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021180528 2021-11-04
JP2022142212A JP2023070060A (en) 2021-11-04 2022-09-07 Information processing system, information processing method, and program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2021180528 Division 2021-11-04 2021-11-04

Publications (1)

Publication Number Publication Date
JP2023070060A true JP2023070060A (en) 2023-05-18

Family

ID=87853077

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022142212A Pending JP2023070060A (en) 2021-11-04 2022-09-07 Information processing system, information processing method, and program

Country Status (1)

Country Link
JP (1) JP2023070060A (en)

Similar Documents

Publication Publication Date Title
RU2715163C1 (en) Method, apparatus and system for transmitting data
CN109088889B (en) SSL encryption and decryption method, system and computer readable storage medium
EP3318003B1 (en) Confidential authentication and provisioning
US8984295B2 (en) Secure access to electronic devices
US7688975B2 (en) Method and apparatus for dynamic generation of symmetric encryption keys and exchange of dynamic symmetric key infrastructure
WO2018046009A1 (en) Block chain identity system
KR101265873B1 (en) Distributed single sign-on service
JP4617763B2 (en) Device authentication system, device authentication server, terminal device, device authentication method, and device authentication program
US10924289B2 (en) Public-private key pair account login and key manager
US20170214664A1 (en) Secure connections for low power devices
CN107733933B (en) Method and system for double-factor identity authentication based on biological recognition technology
KR20200107931A (en) System and method for key generation and storage for multi-point authentication
Li et al. Towards Smart Card Based Mutual Authentication Schemes in Cloud Computing.
TW200402981A (en) Methods for remotely changing a communications password
CN113411187B (en) Identity authentication method and system, storage medium and processor
EP2414983B1 (en) Secure Data System
CN107347073A (en) A kind of resource information processing method
US8261088B2 (en) Secret authentication system
CN113545004A (en) Authentication system with reduced attack surface
JP2005175992A (en) Certificate distribution system and certificate distribution method
CN113826096A (en) User authentication and signature apparatus and method using user biometric identification data
Ogunleye et al. Elliptic Curve Cryptography Performance Evaluation for Securing Multi-Factor Systems in a Cloud Computing Environment
JP2024504719A (en) Zero Trust Endpoint Network Security Device
JP2023070060A (en) Information processing system, information processing method, and program
JP2004320174A (en) Authentication system, authentication apparatus, and authentication method