WO2022019278A1 - 秘密計算システム、秘密計算方法、及びプログラム - Google Patents

秘密計算システム、秘密計算方法、及びプログラム Download PDF

Info

Publication number
WO2022019278A1
WO2022019278A1 PCT/JP2021/027019 JP2021027019W WO2022019278A1 WO 2022019278 A1 WO2022019278 A1 WO 2022019278A1 JP 2021027019 W JP2021027019 W JP 2021027019W WO 2022019278 A1 WO2022019278 A1 WO 2022019278A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
secret calculation
secret
encrypted
unit
Prior art date
Application number
PCT/JP2021/027019
Other languages
English (en)
French (fr)
Inventor
康智 外園
光太郎 田村
Original Assignee
株式会社野村総合研究所
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 株式会社野村総合研究所 filed Critical 株式会社野村総合研究所
Priority to CN202180060811.9A priority Critical patent/CN116194943A/zh
Publication of WO2022019278A1 publication Critical patent/WO2022019278A1/ja
Priority to US18/083,683 priority patent/US20230120548A1/en

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption

Definitions

  • the present invention relates to a secret calculation system, a secret calculation method, and a program.
  • the secret sharing method which is one of the secret calculation techniques and is a method of distributing secret information to a plurality of groups and performing various processes in cooperation with each group, is known.
  • Patent Document 1 a secret sharing processing system that guarantees the validity of distributed data by adding verification data to the distributed data and evaluating the distributed data using the distributed data and the verification data before restoration. Is described.
  • Patent Document 1 the conventional secret calculation technique described in Patent Document 1 is not necessarily intended to reduce the processing burden of secret calculation.
  • the secret calculation system is a secret calculation system that executes a secret calculation that calculates data in an encrypted state, and has a first acquisition unit for acquiring encrypted first data and a first acquisition unit.
  • a second acquisition unit that acquires unencrypted second data according to one data, a secret calculation unit that executes secret calculation based on the first data and the second data, and a secret calculation unit that encrypts the result of the secret calculation. It is equipped with an output unit that outputs in a encrypted state.
  • the secret calculation method is a secret calculation method in which a computer executes a secret calculation for calculating data in an encrypted state, and includes a step of acquiring encrypted first data and a first step. A step of acquiring unencrypted second data according to one data, a step of executing a secret calculation based on the first data and the second data, and a step in which the result of the secret calculation is encrypted. Includes steps to output.
  • a computer that executes a secret calculation that calculates data in an encrypted state is subjected to a first acquisition unit that acquires encrypted first data and a first acquisition unit according to the first data.
  • a second acquisition unit that acquires unencrypted second data, a secret calculation unit that executes secret calculation based on the first data and the second data, and outputs the result of the secret calculation in an encrypted state. It works as an output unit.
  • the "part” does not simply mean a physical means, but also includes a case where the function of the "part” is realized by software. Further, even if the function of one "part” or device is realized by two or more physical means or devices, the function of two or more "parts” or devices is realized by one physical means or device. May be.
  • FIG. 1 is a schematic configuration diagram (system configuration diagram) showing an example of a secret calculation system that calculates data in an encrypted state according to an embodiment.
  • FIG. 2 is a diagram showing an example of stock price data and stock price data according to one embodiment.
  • FIG. 2A is a diagram showing an example of stock number data.
  • FIG. 2B is a diagram showing an example of stock price data.
  • FIG. 3 shows an example of a functional configuration diagram of the secret calculation server device according to the embodiment.
  • FIG. 4 is a flowchart of a first example of the secret calculation process according to the embodiment.
  • FIG. 5 is a conceptual diagram showing an example of encrypted data in the first example of the secret calculation process according to the embodiment.
  • FIG. 1 is a schematic configuration diagram (system configuration diagram) showing an example of a secret calculation system that calculates data in an encrypted state according to an embodiment.
  • FIG. 2 is a diagram showing an example of stock price data and stock price data according to one embodiment.
  • FIG. 2A is a diagram showing an example
  • FIG. 5A is a conceptual diagram showing an example of encrypted data in the secret calculation server device 1A shown in FIG.
  • FIG. 5B is a conceptual diagram showing an example of encrypted data in the secret calculation server device 1B shown in FIG.
  • FIG. 5C is a conceptual diagram showing an example of encrypted data in the secret calculation server device 1C shown in FIG.
  • FIG. 6 is a flowchart of a second example of the secret calculation process according to the embodiment.
  • FIG. 7 is a conceptual diagram showing an example of encrypted data in the second example of the secret calculation process according to the embodiment.
  • FIG. 7A is a conceptual diagram showing an example of book value data (T-1).
  • FIG. 7B is a conceptual diagram showing an example of transaction data (T).
  • FIG. 7C is a conceptual diagram showing an example of trading profit / loss data (T).
  • FIG. 7D is a conceptual diagram showing an example of book value data (T).
  • FIG. 8 is a diagram showing an example of the hardware configuration of the computer according to the embodiment.
  • FIG. 1 is a schematic configuration diagram (system configuration diagram) showing an example of a secret calculation system that executes a secret calculation that calculates data in an encrypted state according to an embodiment.
  • "Secret calculation” processing means to perform calculation processing in a state where data is kept secret.
  • the desired calculation process is executed without any data held by one or more organizations being disclosed to the organization or another organization.
  • the calculation result is provided to one or more organizations or other organizations that require the calculation result in a concealed state.
  • the security of the secret data CD (first data) to be kept secret is improved.
  • secret calculation the process of secret calculation is also kept secret, so that the security of the process of secret calculation is improved.
  • the secret calculation system 100 includes, for example, a secret calculation server device 1A, 1B, 1C (server device), a secret data supply device 3, and a calculation result restoration device 5.
  • secret calculation server device 1 When each of the secret calculation server device 1A, 1B, and 1C is not distinguished, it is called "secret calculation server device 1".
  • the secret calculation system 100 uses secret calculation to calculate, for example, the valuation amount of one or more stocks included in the investment trust and the base price (value per unit) based on the valuation amount. do.
  • the financial products constituting the investment trust may include other financial products such as bonds and real estate in addition to stocks.
  • the secret data supply device 3 includes a database (DB) 1 in which the secret data CD is stored, and supplies the secret data CD to each of the secret calculation server devices 1A, 1B, and 1C in an encrypted state. Further, from the database (DB) 3 in which the confidential data NCD (second data) is managed, the confidential data NCD is supplied to each of the secret calculation server devices 1A, 1B, and 1C in an unencrypted state. Will be supplied.
  • the secret data CD is data that should be kept secret, and as will be described later, it is data that needs to be prevented from being known to a third party. Further, the confidentiality-free data NCD is data that may be known to a third party. In FIG. 1, the DB 3 in which the confidentiality-free data NCD is managed is described as a configuration separate from the secret calculation server device 1, but the DB 3 may be provided in the secret calculation server device 1.
  • FIG. 2A is a diagram showing stock number data (holding number data) relating to the number of shares held by the manager of stocks (financial instruments), which is an example of confidential data.
  • the number of shares data includes a stock code, a name, and a number of shares.
  • the share number data at least the name of the share and the number of shares are encrypted when they are supplied to the secret calculation server devices 1A, 1B, 1C. This is because it is necessary for the manager to avoid making the name and number of shares held by the manager known to other managers and third parties. That is, it is to prevent the manager's stock trading strategy or trading algorithm from being leaked.
  • FIG. 2B is a diagram showing stock price data (price data) relating to the price of stocks (financial instruments), which is an example of confidentiality-free data.
  • the stock price data includes a stock code and a stock price.
  • the stock price data may further include the name of the stock.
  • the secret calculation system 100 executes the "secret sharing” process in the "secret calculation”.
  • Secret sharing is a technology that protects the confidentiality of data by dividing the data into multiple "share” fragments and performing secret calculations.
  • the secret data supply device 3 is a secret calculation server device in an encrypted state as shares A, B, and C after dividing the secret data CD. It will be distributed and sent to each of 1A, 1B, and 1C.
  • Each share A, B, C has a ciphertext-key relationship in the case of a general encryption technique, and this relationship is used when recovering the secret calculation result.
  • the shares A, B, and C are, for example, predetermined random numbers.
  • the secret calculation server device 1 is a device that executes secret calculation.
  • the secret calculation server devices 1A, 1B, and 1C can communicate with each other (cooperate).
  • the secret calculation server device 1A, 1B, 1C executes a secret calculation based on the shares A, B, C and the confidential unnecessary data NCD, and calculates the secret calculation result (X, Y, Z).
  • the secret calculation server device 1A, 1B, 1C outputs the secret calculation result (X, Y, Z) to the calculation result restoration device 5 in an encrypted state.
  • the specific contents of the secret calculation will be described in detail with reference to FIGS. 4 and 5 described later.
  • the calculation result restoration device 5 restores the calculation result using the secret calculation result (X), the secret calculation result (Y), and the secret calculation result (Z) received from each of the secret calculation server devices 1A, 1B, and 1C. ..
  • the calculation result restoration device 5 stores the secret calculation result R in the database (DB) 5.
  • the secret calculation system 100 in the present embodiment, not all the data to be the secret calculation process is acquired as encrypted data, but the data that does not need to be kept secret is managed without being encrypted.
  • the secret calculation system 100 acquires secret unnecessary data (for example, stock price data) corresponding to the secret data (for example, stock price data) by referring to the brand code or the like when executing the secret calculation, and executes the secret calculation. .. Therefore, it is possible to improve the security of the confidential data and reduce the processing load of the secret calculation (for example, speeding up the calculation process or shortening the calculation time).
  • the secret calculation system 100 since the secret calculation is executed while keeping the secret data such as the name and the number of shares held by the investment trust manager secret, the investment service is provided while maintaining the privacy of the investment status. You can continue.
  • the secret calculation server device 1, the secret data supply device 3, and the calculation result restoration device 5 are, for example, information processing devices such as a server device.
  • the secret calculation server device 1, the secret data supply device 3, and the calculation result restoration device 5 may be, for example, an information processing device such as a general-purpose personal computer, a smartphone, or a tablet terminal. Further, there is no limit to the number of the secret calculation server device 1, the secret data supply device 3, and the calculation result restoration device 5.
  • FIG. 3 shows an example of a functional configuration diagram of the secret calculation server device according to the embodiment.
  • the secret calculation server device 1 typically stores an information processing unit 10 that executes a secret calculation and data used when executing the secret calculation or data related to the result of the secret calculation.
  • a storage unit 19 is provided.
  • the information processing unit 10 functionally includes, for example, a confidential data acquisition unit 11 (first data acquisition unit), a confidential data acquisition unit 13 (second data acquisition unit), a secret calculation unit 15, and an output unit 17. It is configured to include.
  • a confidential data acquisition unit 11 first data acquisition unit
  • a confidential data acquisition unit 13 second data acquisition unit
  • a secret calculation unit 15 secret calculation unit 15
  • an output unit 17 It is configured to include.
  • Each of the above parts of the information processing unit 10 can be realized, for example, by using a storage area such as a memory or a hard disk, or by executing a program stored in the storage area by a processor.
  • the confidential data acquisition unit 11 acquires the encrypted confidential data.
  • the secret data acquisition unit 11 acquires the share generated by dividing the secret data CD from the secret data supply device 3 shown in FIG. 1 in an encrypted state.
  • the confidential data acquisition unit 13 acquires unencrypted confidential data according to the confidential data.
  • the confidential data acquisition unit 13 acquires the confidential data NCD according to the share of the confidential data CD acquired from the confidential data supply device 3 shown in FIG.
  • the confidentiality-free data acquisition unit 13 refers to the stock code included in the stock number data shown in FIG. 2, and determines the stock price of the stock corresponding to the code in DB3 in which the confidentiality-free data NCD is managed. Get from.
  • the secret calculation unit 15 executes the secret calculation based on the confidential data and the confidential unnecessary data. For example, the secret calculation unit 15 executes a secret calculation based on the share data regarding the number of shares data and the stock price data stored in the storage unit 19 to calculate the valuation amount of the stocks.
  • the valuation of a stock is calculated by multiplying the number of shares and the stock price for each stock. According to this configuration, it is possible to calculate the valuation amount of shares after concealing confidential information such as the number of shares held by the manager.
  • the output unit 17 outputs the result of the secret calculation in an encrypted state. For example, as shown in FIG. 1, the output unit 17 outputs the calculation result (X, Y or Z) relating to the valuation amount of the stock to the calculation result restoration device 5 in an encrypted state. The output unit 17 may output the calculation result to the secret data supply device 3 in an encrypted state.
  • the storage unit 19 typically stores the share data SD related to the share, which is a fragment of the secret data generated by secretly sharing the secret data, and the secret calculation result R of the secret calculation unit 15.
  • FIG. 4 is a flowchart of a first example of the secret calculation process according to the embodiment.
  • the secret calculation processing application software according to the embodiment of the present invention can be downloaded from a predetermined site or recording medium of the network and executed on the secret calculation server device 1 shown in FIG. Save it like this. Then, when the execution of the secret calculation processing application software is instructed, the program operation based on the software starts.
  • the secret data supply device 3 and the calculation result restoration device 5 also execute the software in advance so as to properly operate as an element of the secret calculation system 100.
  • Step S1 The secret calculation server device 1 shown in FIG. 1 acquires encrypted secret data.
  • the secret calculation server device 1 acquires the encrypted stock number data of all brands from the secret data supply device 3 shown in FIG. According to this configuration, since the data on the number of shares of all brands is transmitted to the secret calculation server device 1 regardless of whether or not the investment trust manager owns it, the data management of the secret data supply device 3 becomes simple.
  • the secret calculation server device 1 acquires unencrypted, secret-unnecessary data according to the secret data. For example, the secret calculation server device 1 acquires stock price data of stocks whose number of shares held by the manager is other than "zero" among the stock price data of all stocks by referring to the stock code.
  • Step S5 The secret calculation server device 1 executes secret calculation based on the secret data and the secret unnecessary data. For example, the secret calculation server device 1 calculates the valuation amount in an encrypted state based on the acquired stock price data and the acquired stock price data.
  • FIG. 5 is a conceptual diagram showing an example of encrypted data in the first example of the secret calculation process according to the embodiment.
  • FIG. 5A is a conceptual diagram showing an example of encrypted data in the secret calculation server device 1A shown in FIG.
  • FIG. 5B is a conceptual diagram showing an example of encrypted data in the secret calculation server device 1B shown in FIG.
  • FIG. 5C is a conceptual diagram showing an example of encrypted data in the secret calculation server device 1C shown in FIG.
  • data other than the brand code that is, the number of shares data, the stock price data, and the valuation amount data are encrypted.
  • each secret calculation server device 1A, 1B, 1C may execute the secret calculation after encrypting the brand code as well.
  • Step S7 The secret calculation server device 1 outputs the secret calculation result in an encrypted state.
  • the secret calculation server device 1 acquires the encrypted stock price data, and acquires the unencrypted stock price data according to the stock price data.
  • the secret calculation server device 1 calculates the valuation amount of the stocks held in an encrypted state based on the stock number data and the stock price data, and outputs the secret calculation result in the encrypted state. Therefore, it is possible to improve the security of the confidential data and reduce the processing load of the confidential calculation.
  • the secret calculation server device 1 calculates the base price of the investment trust composed of one or more stocks by using the valuation amount of one or more stocks calculated in the first example.
  • the secret calculation is used in the process of calculating the base price to keep the confidentiality of the data to be kept secret, which is the same as the first example.
  • the base price of an investment trust is obtained by dividing the total number of investment trust units (total number of beneficiary rights) from the total net assets.
  • the total asset value is expressed by the following formula 2 using the total stock valuation amount, the profit / loss carried forward, and others (accounts payable, accounts receivable, call loan, etc.).
  • Total assets Total stock valuation + Gain / loss carried forward for the next term + Others ...
  • the total stock valuation is the sum of the valuations of all the shares held. As described above, the stock valuation amount is calculated by multiplying the number of shares and the stock price for each stock. In the following, as an example, the calculation method of the profit / loss carried forward for the next term will be described with reference to FIGS. 6 and 7.
  • FIG. 6 is a flowchart showing a second example of the secret calculation process according to the embodiment.
  • FIG. 7 is a conceptual diagram showing an example of encrypted data in the second example of the secret calculation process according to the embodiment.
  • FIG. 7A is a conceptual diagram showing an example of book value data (T-1) of a stock (financial instrument).
  • FIG. 7B is a conceptual diagram showing an example of stock transaction data (T).
  • FIG. 7C is a conceptual diagram showing an example of stock trading profit / loss data (T).
  • FIG. 7D is a conceptual diagram showing an example of book value data (T) of stocks. Note that, in FIGS. 7 (A) to 7 (D), each data is illustrated for convenience of explanation, but the grayed out data is encrypted in the secret calculation process.
  • FIG. 7 (A) At least the number of shares held and the book value in FIG. 7 (A), the number and amount of shares traded in FIG. 7 (B), the gain / loss on sale of shares in FIG. 7 (C), and FIG. 7 (D).
  • the number of shares held and the book value in) are encrypted in the secret calculation process. Further, the trading flag in FIG. 7B may also be encrypted.
  • the secret calculation server device 1 shown in FIG. 1 acquires the book value data (T-1) shown in FIG. 7A and the transaction data (T) shown in FIG. 7B as input data.
  • the secret calculation server device 1 shown in FIG. 1 executes a secret calculation based on the book value data (T-1) and the transaction data (T) to calculate the trading profit / loss data (T). For example, when the number of trading shares is "(+) 400" like the stock of the stock code "4307” shown in FIG. 7B, the "buying and selling flag” is “buy” and the stock of the stock code "7203". When the number of shares to be bought and sold is "-300", the "buying and selling flag” is "sell”.
  • the secret calculation server device 1 shown in FIG. 1 executes secret calculation based on the book value data (T-1) and the transaction data (T) to calculate the book value data (T).
  • the number of holdings (T) and the book value (T) shown in FIG. 7 (D) are represented by the following equation 4.
  • the calculation of Equation 4 is also executed by secret calculation.
  • Number of holdings (T) Number of holdings (T-1) + Number of shares traded ... (4) More specifically, the number of shares (T) held by the stock code "4307” is the number of shares held (T-1) "400" shown in FIG. 7 (A) and the number of shares traded "300” shown in FIG. 7 (B).
  • the number of possessions (T) "700” shown in FIG. 7 (D) is calculated.
  • the book value (T) shown in FIG. 7 (D) is represented by the following equation 5.
  • the calculation of Equation 5 is also executed by secret calculation.
  • Book value (T) ⁇ Number of holdings (T-1) x Book value (T-1) + Number of shares traded x Trading amount ⁇ / Number of holdings (T) ... (5)
  • the book value (T) of the issue code "4307” is the number of holdings (T-1) "400” and the book value (T-1) "2000” shown in FIG. 7 (A), and FIG. It is calculated as "2571.429” based on the number of shares traded "300" and the trading amount "3000” shown in (B) and the number of shares (T) "700” shown in FIG. 7 (D).
  • Step S17 The secret calculation server device 1 shown in FIG. 1 executes secret calculation based on the book value data (T) to calculate the book value data (T + 1).
  • the secret calculation server device 1 can use the book value data (T + 1) when calculating the next term profit / loss carried forward next time.
  • the secret calculation server device 1 uses the secret calculation to buy and sell based on the book value data of one or more stocks and the transaction data of one or more stocks. Calculate profit and loss data.
  • the secret calculation server device 1 calculates the base price of the investment trust based on the calculated trading profit / loss data and the calculated valuation amount of the stock. Therefore, even when the base price of an investment trust composed of one or a plurality of stocks is calculated by secret calculation, it is possible to improve the security of confidential data and reduce the processing burden of secret calculation.
  • FIG. 8 is a diagram showing an example of the hardware configuration of the computer according to the embodiment.
  • a computer that can be used to configure various devices in the secret calculation processing system 100 shown in FIG. 1, for example, a secret calculation server device 1, a secret data supply device 3, and a calculation result recovery device 5.
  • a secret calculation server device 1 for example, a secret calculation server device 1, a secret data supply device 3, and a calculation result recovery device 5.
  • An example of the hardware configuration of is described.
  • the computer 40 mainly includes a processor 41, a main recording device 42, an auxiliary recording device 43, an input / output interface 44, and a communication interface 45 as hardware resources. These are connected to each other via a bus line 46 including an address bus, a data bus, a control bus and the like. An interface circuit (not shown) may be appropriately interposed between the bus line 46 and each hardware resource.
  • the processor 41 controls the entire computer.
  • the processor 41 corresponds to, for example, the information processing unit 10 of the secret calculation server device 1 shown in FIG.
  • the main recording device 42 provides a work area for the processor 41, and is a volatile memory such as a SRAM (Static Random Access Memory) or a DRAM (Dynamic Random Access Memory).
  • the auxiliary recording device 43 is a non-volatile memory such as an HDD, SSD, or flash memory that stores software programs and the like and data. The program, data, or the like is loaded from the auxiliary recording device 43 to the main recording device 42 via the bus line 46 at an arbitrary time point.
  • the auxiliary recording device 43 corresponds to, for example, the storage unit 19 of the secret calculation server device 1 shown in FIG.
  • the input / output interface 44 performs one or both of presenting information and receiving input of information, and is a camera, keyboard, mouse, display, touch panel display, microphone, speaker, temperature sensor, and the like.
  • the communication interface 45 transmits / receives data to / from various databases (DB) 3, 5 and 7 shown in FIG. 1 via a predetermined communication network (not shown).
  • the communication interface 45 and the predetermined communication network may be connected by wire or wirelessly.
  • the communication interface 45 may also acquire information related to the network, for example, information related to a Wi-Fi access point, information related to a base station of a communication carrier, and the like.
  • each of the above embodiments is for facilitating the understanding of the present invention, and does not limit the interpretation of the present invention.
  • the present invention can be modified / improved without departing from the spirit thereof, and the present invention also includes an equivalent thereof.
  • the present invention can form various disclosures by appropriately combining the plurality of components disclosed in each of the above embodiments. For example, some components may be removed from all the components shown in the embodiments. Further, the components may be appropriately combined in different embodiments.
  • FIG. 9 is a schematic configuration diagram showing another example of the secret calculation system according to the embodiment.
  • the secret calculation system 100 shown in FIG. 9 executes homomorphic encryption processing.
  • the secret data supply device 3 encrypts the secret data CD and then transmits the secret data CD together with the encryption key K1 to the secret calculation server device 1.
  • the secret calculation server device 1 acquires the secret unnecessary data NCD from the DB 3 according to the secret data CD acquired from the secret data supply device 3.
  • the secret calculation server device 1 executes the secret calculation in an encrypted state based on the secret data CD and the secret unnecessary data NCD.
  • the secret calculation server device 1 transmits the recovery key K3 together with the secret calculation result to the calculation result recovery device 5.
  • the calculation result restoration device 5 restores the secret calculation result R by using the restoration key K3.
  • the confidential data supply device 3 and the calculation result restoration device 5 are separate devices, but both devices may be the same device.
  • the secret calculation system 100 shown in FIG. 9 does not require a plurality of secret calculation server devices 1. Therefore, the secret calculation process that improves the security of the confidential data can be executed more easily.
  • the secret sharing process and the homomorphic encryption process may be used as the secret calculation, or another encryption process may be adopted.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Strategic Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Storage Device Security (AREA)

Abstract

秘密計算システム100は、データを暗号化した状態で計算する秘密計算を実行する秘密計算システムであって、暗号化された第1データを取得する第1取得部と、第1データに応じて、暗号化されていない第2データを取得する第2取得部と、第1データと第2データとに基づいて秘密計算を実行する秘密計算部15と、秘密計算の結果を暗号化された状態で出力する出力部17と、を備える。これにより、データのセキュリティを向上させ、且つ、秘密計算の処理負担を軽減させることができる。

Description

秘密計算システム、秘密計算方法、及びプログラム
 本発明は、秘密計算システム、秘密計算方法、及びプログラムに関する。
 従来、秘密計算技術の一つであり、秘密情報を複数のグループに分散して各グループが協働して各種処理を実行する手法である秘密分散法が知られている。
 例えば、特許文献1には、分散データに対して検証用のデータを付加し、復元前に分散データと検証用データを用いて評価することで、分散データの正当性を保証する秘密分散処理システムが記載されている。
特開2005-234069号公報
 しかしながら、特許文献1に記載されている従来の秘密計算技術は、必ずしも秘密計算の処理負担を軽減させるためのものではない。
 そこで、本発明のいくつかの態様はかかる事情に鑑みてなされたものであり、データのセキュリティを向上させ、且つ、秘密計算の処理負担を軽減させることができる秘密計算技術を提供することを目的とする。
 本発明の一態様に係る秘密計算システムは、データを暗号化した状態で計算する秘密計算を実行する秘密計算システムであって、暗号化された第1データを取得する第1取得部と、第1データに応じて、暗号化されていない第2データを取得する第2取得部と、第1データと第2データとに基づいて秘密計算を実行する秘密計算部と、秘密計算の結果を暗号化された状態で出力する出力部と、を備える。
 本発明の一態様に係る秘密計算方法は、コンピュータが、データを暗号化した状態で計算する秘密計算を実行する秘密計算方法であって、暗号化された第1データを取得するステップと、第1データに応じて、暗号化されていない第2データを取得するステップと、第1データと第2データとに基づいて秘密計算を実行するステップと、秘密計算の結果を暗号化された状態で出力するステップと、を含む。
 本発明の一態様に係るプログラムは、データを暗号化した状態で計算する秘密計算を実行するコンピュータを、暗号化された第1データを取得する第1取得部と、第1データに応じて、暗号化されていない第2データを取得する第2取得部と、第1データと第2データとに基づいて秘密計算を実行する秘密計算部と、秘密計算の結果を暗号化された状態で出力する出力部と、して機能させる。
 なお、本発明において、「部」とは、単に物理的手段を意味するものではなく、その「部」が有する機能をソフトウェアによって実現する場合も含む。また、1つの「部」や装置が有する機能が2つ以上の物理的手段や装置により実現されても、2つ以上の「部」や装置の機能が1つの物理的手段や装置により実現されても良い。
 本発明によれば、データのセキュリティを向上させ、且つ、秘密計算の処理負担を軽減させることができる。
図1は、一実施形態に係る、データを暗号化した状態で計算する秘密計算システムの一例を示す概略構成図(システム構成図)である。 図2は、一実施形態に係る株数データ及び株価データの一例を示す図である。図2(A)は、株数データの一例を示す図である。図2(B)は、株価データの一例を示す図である。 図3は、一実施形態に係る秘密計算サーバ装置の機能構成図の一例を示す。 図4は、一実施形態に係る秘密計算処理の第1例のフローチャートである。 図5は、一実施形態に係る秘密計算処理の第1例における暗号化データの一例を示す概念図である。図5(A)は、図1に示す秘密計算サーバ装置1Aにおける暗号化データの一例を示す概念図である。図5(B)は、図1に示す秘密計算サーバ装置1Bにおける暗号化データの一例を示す概念図である。図5(C)は、図1に示す秘密計算サーバ装置1Cにおける暗号化データの一例を示す概念図である。 図6は、一実施形態に係る秘密計算処理の第2例のフローチャートである。 図7は、一実施形態に係る秘密計算処理の第2例における暗号化データの一例を示す概念図である。図7(A)は、簿価データ(T-1)の一例を示す概念図である。図7(B)は、取引データ(T)の一例を示す概念図である。図7(C)は、売買損益データ(T)の一例を示す概念図である。図7(D)は、簿価データ(T)の一例を示す概念図である。 図8は、一実施形態に係るコンピュータのハードウェア構成の一例を示す図である。 図9は、一実施形態に係る秘密計算システムの他の一例を示す概略構成図である。
 以下、添付図面を参照しながら本発明の実施の形態について説明する。以下の実施の形態は、本発明を説明するための例示であり、本発明をその実施の形態のみに限定する趣旨ではない。また、本発明は、その要旨を逸脱しない限り、様々な変形が可能である。さらに、各図面において同一の構成要素に対しては可能な限り同一の符号を付し、重複する説明は省略する。
 図1は、一実施形態に係る、データを暗号化した状態で計算する秘密計算を実行する秘密計算システムの一例を示す概略構成図(システム構成図)である。「秘密計算」処理とは、データを秘匿した状態で計算処理することをいう。「秘密計算」では、例えば、一又は複数の組織が保有するデータが、当該組織又は他の組織に一切開示されることなく、所望の計算処理が実行される。また、「秘密計算」では、計算結果は、秘匿された状態で、一又は複数の組織、又は、計算結果を必要とする他の組織に提供される。このように、「秘密計算」では、秘匿すべき秘匿データCD(第1データ)のセキュリティが向上する。さらに、「秘密計算」では、秘密計算の過程についても秘匿されるため、秘密計算の過程のセキュリティが向上する。
 図1に示すように、秘密計算システム100は、例示的に、秘密計算サーバ装置1A,1B,1C(サーバ装置)と、秘匿データ供給装置3と、計算結果復元装置5と、を備える。秘密計算サーバ装置1A,1B,1Cのそれぞれを区別しない場合は、「秘密計算サーバ装置1」と呼ぶ。本実施形態に係る秘密計算システム100は、秘密計算を用いて、例えば、投資信託に含まれる一又は複数の株式の評価額、及び、当該評価額に基づく基準価額(一口あたりの価額)を算出する。以下では、投資信託を構成する金融商品には、株式の他、債券や不動産等の他の金融商品を含んでもよい。
 秘匿データ供給装置3は、秘匿データCDが記憶されたデータベース(DB)1を備え、秘匿データCDを暗号化した状態で、秘密計算サーバ装置1A,1B,1Cのそれぞれに供給する。また、秘匿不要データNCD(第2データ)が管理されているデータベース(DB)3からは、秘匿不要データNCDが、暗号化されていない状態で、秘密計算サーバ装置1A,1B,1Cのそれぞれに供給される。秘匿データCDは、秘匿すべきデータであり、後述するとおり、第三者に知られることを防止する必要があるデータである。また、秘匿不要データNCDは、特段、第三者に知られても構わないデータである。なお、図1においては、秘匿不要データNCDが管理されているDB3は、秘密計算サーバ装置1とは別個の構成として説明されているが、DB3は、秘密計算サーバ装置1が備えてもよい。
 図2(A)は、秘匿データの一例である、株式(金融商品)の運用者の保有数に関する株数データ(保有数データ)を示す図である。図2(A)に示すように、株数データは、銘柄コードと、名称と、株数と、を含む。株数データのうち、少なくとも株式の名称及び株数は、秘密計算サーバ装置1A,1B,1Cに供給される際に、暗号化される。運用者にとって、運用者が保有する株式の名称及び株数を他の運用者をはじめ、第三者に知られることは避ける必要があるためである。すなわち、運用者の株式の売買戦略又は売買アルゴリズムが漏れてしまうことを防止するためである。
 図2(B)は、秘匿不要データの一例である、株式(金融商品)の価格に関する株価データ(価格データ)を示す図である。図2(B)に示すように、株価データは、銘柄コードと、株価とを含む。株価データは、株式の名称をさらに含んでもよい。
 本実施形態において、秘密計算システム100は「秘密計算」における「秘密分散」処理を実行する。「秘密分散」とは、データを複数の「シェア」という断片に分割し、秘密計算を実行することで、データの機密性を守る技術である。図1に示すように、秘密分散を実行する秘密計算システム100において、秘匿データ供給装置3は、秘匿データCDを分割した上でシェアA,B,Cとして、暗号化した状態で秘密計算サーバ装置1A,1B,1Cのそれぞれに分散して送付する。各シェアA,B,Cは、一般的な暗号化技術の場合の暗号文と鍵の関係を有し、この関係は、秘密計算結果を復元する際に利用される。なお、シェアA,B,Cは、例えば、所定の乱数である。
 秘密計算サーバ装置1は、秘密計算を実行する装置である。秘密計算サーバ装置1A,1B,1Cは、互いに通信を行う(協働する)ことが可能である。秘密計算サーバ装置1A,1B,1Cは、シェアA,B,Cと、秘匿不要データNCDと、に基づいて秘密計算を実行して、秘密計算結果(X,Y,Z)を算出する。秘密計算サーバ装置1A,1B,1Cは、秘密計算結果(X,Y,Z)を、暗号化した状態で計算結果復元装置5に出力する。なお、秘密計算の具体的な内容については、後述する図4及び図5を参照して詳述する。
 計算結果復元装置5は、秘密計算サーバ装置1A,1B,1Cのそれぞれから受信した秘密計算結果(X)、秘密計算結果(Y)、及び秘密計算結果(Z)を用いて計算結果を復元する。計算結果復元装置5は、秘密計算結果Rをデータベース(DB)5に記憶する。
 従来、秘密計算に使用される膨大なデータの全て(秘匿不要データを含む)を暗号化して管理して、その上、全データを用いて計算処理を行うことは、データの処理負担が大きい。本実施形態における秘密計算システム100においては、秘密計算処理の対象となるデータのすべてを暗号化されたデータとして取得するのではなく、秘匿不要なデータは暗号化されることなく管理されている。秘密計算システム100は、秘密計算を実行する際に、銘柄コード等を参照することによって、秘匿データ(例えば株数データ)に応じた秘匿不要データ(例えば株価データ)を取得して秘密計算を実行する。よって、秘匿データのセキュリティを向上させ、且つ、秘密計算の処理負担を軽減させること(例えば、計算処理の高速化又は計算時間の短縮)が可能となる。
 また、秘密計算システム100においては、投資信託の運用者が保有する株式の名称及び株数等の秘匿データを秘匿したままで秘密計算を実行するため、運用状況のプライバシーを維持しながら、運用サービスを継続することができる。
 さらに、秘密計算システム100において、秘密分散処理を採用することによって、一の秘密計算サーバ装置からシェアが流出した場合であっても、処理結果の復元(復号)は困難である。よって、秘匿データの秘密が保たれるから、秘匿データのセキュリティがより向上する。
 なお、秘密計算サーバ装置1、秘匿データ供給装置3、及び、計算結果復元装置5は、例えばサーバ装置等の情報処理装置である。秘密計算サーバ装置1、秘匿データ供給装置3、及び、計算結果復元装置5は、例えば、汎用のパーソナルコンピュータ、スマートフォン、タブレット端末等の情報処理装置であってもよい。また、秘密計算サーバ装置1、秘匿データ供給装置3、及び、計算結果復元装置5の台数に制限はない。
 図3は、一実施形態に係る秘密計算サーバ装置の機能構成図の一例を示す。図3に示すように、秘密計算サーバ装置1は、例示的に、秘密計算を実行する情報処理部10と、秘密計算を実行する際に使用されるデータ又は秘密計算の結果に関するデータを記憶する記憶部19と、を備える。
 情報処理部10は、機能的に、例えば、秘匿データ取得部11(第1データ取得部)、秘匿不要データ取得部13(第2データ取得部)、秘密計算部15、及び、出力部17を含んで構成されている。なお、情報処理部10の上記各部は、例えば、メモリやハードディスク等の記憶領域を用いたり、記憶領域に格納されているプログラムをプロセッサが実行したりすることにより実現することができる。
 秘匿データ取得部11は、暗号化された秘匿データを取得する。例えば、秘匿データ取得部11は、図1に示す秘匿データ供給装置3から、秘匿データCDを分割して生成されたシェアを暗号化した状態で取得する。
 秘匿不要データ取得部13は、秘匿データに応じて、暗号化されていない秘匿不要データを取得する。例えば、秘匿不要データ取得部13は、図1に示す秘匿データ供給装置3から取得した、秘匿データCDのシェアに応じて、秘匿不要データNCDを取得する。より具体的には、秘匿不要データ取得部13は、図2に示す株数データに含まれる銘柄コードを参照して、当該コードに対応する株式の株価を、秘匿不要データNCDが管理されているDB3から取得する。
 秘密計算部15は、秘匿データと秘匿不要データとに基づいて秘密計算を実行する。例えば、秘密計算部15は、記憶部19に記憶された、株数データに関するシェアデータと、株価データと、に基づいて秘密計算を実行して、株式の評価額を算出する。株式の評価額は、銘柄ごとに、株数と株価とを乗ずることによって算出される。この構成によれば、運用者の株式の保有数等の機密情報を秘匿した上で株式の評価額を算出可能である。
 出力部17は、秘密計算の結果を暗号化された状態で出力する。例えば、出力部17は、図1に示すように、株式の評価額に関する計算結果(X、Y又はZ)を暗号化された状態で、計算結果復元装置5に出力する。出力部17は、計算結果を暗号化された状態で、秘匿データ供給装置3に出力してもよい。
 記憶部19は、例示的に、秘匿データを秘密分散して生成された当該秘匿データの断片であるシェアに関するシェアデータSDと、秘密計算部15の秘密計算結果Rと、を記憶する。
<秘密計算処理>
 (第1例)
 図4及び図5を参照して、一実施形態に係る秘密計算処理の第1例を説明する。第1例では、秘密計算サーバ装置1は、秘密計算処理によって、一又は複数の株式の評価額を算出する。
 図4は、一実施形態に係る秘密計算処理の第1例のフローチャートである。まず前提として、秘密計算処理において、例えばネットワークの所定のサイト又は記録媒体から、本発明の一実施形態に係る秘密計算処理アプリケーションソフトウェアをダウンロードし、図1に示す秘密計算サーバ装置1に実行可能なように保存しておく。そして、秘密計算処理アプリケーションソフトウェアの実行が指示されると、当該ソフトウェアに基づくプログラム動作が開始する。なお、秘匿データ供給装置3及び計算結果復元装置5においても、秘密計算システム100の要素として適切に作動するように事前に当該ソフトウェアを実行する。
 (ステップS1)
 図1に示す秘密計算サーバ装置1は、暗号化された秘匿データを取得する。例えば、秘密計算サーバ装置1は、図1に示す秘匿データ供給装置3から、暗号化された全銘柄の株数データを取得する。この構成によれば、投資信託運用者の保有の有無に関わらず、秘密計算サーバ装置1に全銘柄の株数データを送信するから、秘匿データ供給装置3のデータ管理が簡便となる。
 (ステップS3)
 秘密計算サーバ装置1は、秘匿データに応じて、暗号化されていない、秘匿不要データを取得する。例えば、秘密計算サーバ装置1は、銘柄コードを参照することによって、全銘柄の株価データのうち、運用者の保有株数が「ゼロ」以外の銘柄の株価データを取得する。
 (ステップS5)
 秘密計算サーバ装置1は、秘匿データと秘匿不要データとに基づいて秘密計算を実行する。例えば、秘密計算サーバ装置1は、取得した株数データと、取得した株価データと、に基づいて暗号化した状態で評価額を算出する。
 図5は、一実施形態に係る秘密計算処理の第1例における暗号化データの一例を示す概念図である。図5(A)は、図1に示す秘密計算サーバ装置1Aにおける暗号化データの一例を示す概念図である。図5(B)は、図1に示す秘密計算サーバ装置1Bにおける暗号化データの一例を示す概念図である。図5(C)は、図1に示す秘密計算サーバ装置1Cにおける暗号化データの一例を示す概念図である。図5(A)から図5(C)に示すように、各秘密計算サーバ装置1A,1B,1Cにおいては、例えば、銘柄コード以外のデータ、すなわち、株数データ、株価データ及び評価額データが暗号化された状態で秘密計算を実行する。また、各秘密計算サーバ装置1A,1B,1Cは、銘柄コードについても暗号化した上で、秘密計算を実行してもよい。
 (ステップS7)
 秘密計算サーバ装置1は、暗号化した状態で秘密計算結果を出力する。
 以上、秘密計算処理の第1例によれば、秘密計算サーバ装置1は、暗号化された株数データを取得し、当該株数データに応じて、暗号化されていない株価データを取得する。秘密計算サーバ装置1は、株数データと株価データとに基づいて暗号化した状態で、保有株式の評価額を算出し、暗号化した状態で秘密計算結果を出力する。よって、秘匿データのセキュリティを向上させ、且つ、秘密計算の処理負担を軽減させることが可能となる。
 (第2例)
 図6及び図7を参照して、一実施形態に係る秘密計算処理の第2例を説明する。第2例では、秘密計算サーバ装置1は、第1例で算出された一又は複数の株式の評価額を用いて、一又は複数の株式で構成される投資信託の基準価額を算出する。第2例において、基準価額を算出する過程で秘密計算を用いて、秘匿すべきデータの秘密を保持する点については、第1例と同様である。
 投資信託の基準価額は、純資産総額から投資信託の総口数(受益権総口数)を除算することによって得られる。投資信託の基準価額は、以下の式1のように表される。
 基準価額=総資産総額/総口数 ・・・(1)
 総資産総額は、株式評価額合計と、次期繰越損益金と、その他(未払金、未収金、又はコール・ローン等)と、を用いて以下の式2のように表される。
 総資産総額=株式評価額合計+次期繰越損益金+その他 ・・・(2)
 株式評価額合計とは、保有するすべての株式の評価額を合計したものである。なお、株式評価額は、上記したとおり、銘柄ごとに、株数と株価とを乗算することによって算出される。以下では、一例として、次期繰越損益金の算出手法を図6及び図7を参照して説明する。
 図6は、一実施形態に係る秘密計算処理の第2例を示すフローチャートである。図7は、一実施形態に係る秘密計算処理の第2例における暗号化データの一例を示す概念図である。図7(A)は、株式(金融商品)の簿価データ(T-1)の一例を示す概念図である。図7(B)は、株式の取引データ(T)の一例を示す概念図である。図7(C)は、株式の売買損益データ(T)の一例を示す概念図である。図7(D)は、株式の簿価データ(T)の一例を示す概念図である。なお、図7(A)から図7(D)では、説明の便宜上、各データを例示しているが、グレーアウトされているデータについては、秘密計算過程において暗号化されている。すなわち、少なくとも、図7(A)における株式の保有数及び簿価と、図7(B)における株式の売買数及び売買金額と、図7(C)における株式の売却損益と、図7(D)における株式の保有数及び簿価と、は秘密計算過程において暗号化されている。また、図7(B)における売買フラグも暗号化されてもよい。
 (ステップS11)
 図1に示す秘密計算サーバ装置1は、入力データとして、図7(A)に示す簿価データ(T-1)、及び、図7(B)に示す取引データ(T)を取得する。
 (ステップS13)
 図1に示す秘密計算サーバ装置1は、簿価データ(T-1)及び取引データ(T)に基づいて秘密計算を実行して、売買損益データ(T)を算出する。例えば、図7(B)に示す銘柄コード「4307」の株式のように、売買株数が「(+)400」の場合は、「売買フラグ」は「買」となり、銘柄コード「7203」の株式のように、売買株数が「-300」の場合は、「売買フラグ」は、「売」となる。
 売買損益データ(T)の算出に関して、売買フラグが「買」の場合、売買損益は「0」となり、売買フラグが「売」の場合、以下の式3で表される。式3の計算に関しても秘密計算で実行される。
 売買損益(T)=(簿価(T-1)-売買金額)×売買株数 ・・・(3)
 また、次期繰越損益金は、図7(C)に示すように、銘柄ごとの売買損益を合計した金額に相当する。
 (ステップS15)
 図1に示す秘密計算サーバ装置1は、簿価データ(T-1)及び取引データ(T)に基づいて秘密計算を実行して、簿価データ(T)を算出する。例えば、図7(D)に示す保有数(T)と簿価(T)については、以下の式4で表される。なお、式4の計算に関しても秘密計算で実行される。
 保有数(T)=保有数(T-1)+売買株数 ・・・(4)
 より具体的に、銘柄コード「4307」の株式の保有数(T)は、図7(A)に示す保有数(T-1)「400」に、図7(B)に示す売買株数「300」を加算することによって、図7(D)に示す保有数(T)「700」が算出される。
 図7(D)に示す簿価(T)については、以下の式5で表される。なお、式5の計算に関しても秘密計算で実行される。
 簿価(T)={保有数(T-1)×簿価(T-1)+売買株数×売買金額}/保有数(T) ・・・(5)
 より具体的に、銘柄コード「4307」の簿価(T)は、図7(A)に示す保有数(T-1)「400」及び簿価(T-1)「2000」と、図7(B)に示す売買株数「300」及び売買金額「3000」と、図7(D)に示す保有数(T)「700」とに基づいて、「2571.429」と算出される。
 (ステップS17)
 図1に示す秘密計算サーバ装置1は、簿価データ(T)に基づいて秘密計算を実行して、簿価データ(T+1)を算出する。秘密計算サーバ装置1は、次回、次期繰越損益金を算出する際に、簿価データ(T+1)を用いることができる。
 以上、秘密計算処理の第2例によれば、秘密計算サーバ装置1は、秘密計算を用いて、一又は複数の株式の簿価データと、一又は複数の株式の取引データとに基づいて売買損益データを算出する。秘密計算サーバ装置1は、算出された売買損益データと、算出された株式の評価額と、に基づいて、投資信託の基準価額を算出する。よって、一又は複数の株式で構成される投資信託の基準価額を秘密計算で算出する際にも、秘匿データのセキュリティを向上させ、且つ、秘密計算の処理負担を軽減させることが可能となる。
 図8は、一実施形態に係るコンピュータのハードウェア構成の一例を示す図である。図8を参照して、図1に示す秘密計算処理システム100における各種装置、例えば、秘密計算サーバ装置1、秘匿データ供給装置3、及び計算結果復元装置5を構成するのに用いることができるコンピュータのハードウェア構成の一例について説明する。
 図8に示すように、コンピュータ40は、ハードウェア資源として、主に、プロセッサ41と、主記録装置42と、補助記録装置43と、入出力インターフェース44と、通信インターフェース45とを備えており、これらはアドレスバス、データバス、コントロールバス等を含むバスライン46を介して相互に接続されている。なお、バスライン46と各ハードウェア資源との間には適宜インターフェース回路(図示せず)が介在している場合もある。
 プロセッサ41は、コンピュータ全体の制御を行う。プロセッサ41は、例えば、図3に示す秘密計算サーバ装置1の情報処理部10に相当する。主記録装置42は、プロセッサ41に対して作業領域を提供し、SRAM(Static Random Access Memory)やDRAM(Dynamic Random Access Memory)等の揮発性メモリである。補助記録装置43は、ソフトウェアであるプログラム等やデータ等を格納する、HDDやSSD、フラッシュメモリ等の不揮発性メモリである。当該プログラムやデータ等は、任意の時点で補助記録装置43からバスライン46を介して主記録装置42へとロードされる。補助記録装置43は、例えば図3に示す秘密計算サーバ装置1の記憶部19に相当する。
 入出力インターフェース44は、情報を提示すること及び情報の入力を受けることの一方又は双方を行うものであり、カメラ、キーボード、マウス、ディスプレイ、タッチパネル・ディスプレイ、マイク、スピーカ、温度センサ等である。通信インターフェース45は、所定の通信ネットワーク(不図示)を介して、図1に示す各種データベース(DB)3、5及び7とデータを送受する。通信インターフェース45と所定の通信ネットワークとは、有線又は無線で接続されうる。通信インターフェース45は、ネットワークに係る情報、例えば、Wi-Fiのアクセスポイントに係る情報、通信キャリアの基地局に関する情報等も取得することがある。
 上に例示したハードウェア資源とソフトウェアとの協働により、コンピュータ40は、所望の手段として機能し、所望のステップを実行し、所望の機能を実現させることできることは、当業者には明らかである。
 なお、上記各実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するものではない。本発明はその趣旨を逸脱することなく、変更/改良され得るとともに、本発明にはその等価物も含まれる。また、本発明は、上記各実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の開示を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素は削除してもよい。さらに、異なる実施形態に構成要素を適宜組み合わせてもよい。
 図9は、一実施形態に係る秘密計算システムの他の一例を示す概略構成図である。図9に示す秘密計算システム100は、準同型暗号化処理を実行する。準同型暗号化処理においては、秘匿データ供給装置3は、秘匿データCDを暗号化した上で、暗号鍵K1とともに秘密計算サーバ装置1に送信する。秘密計算サーバ装置1は、秘匿データ供給装置3から取得した秘匿データCDに応じて、DB3から秘匿不要データNCDを取得する。秘密計算サーバ装置1は、秘匿データCD及び秘匿不要データNCDに基づいて、暗号化した状態で秘密計算を実行する。秘密計算サーバ装置1は、秘密計算結果とともに復元鍵K3を計算結果復元装置5に送信する。計算結果復元装置5は、復元鍵K3を使用して、秘密計算結果Rを復元する。なお、図9においては、秘匿データ供給装置3と計算結果復元装置5とは別個の装置であるが、両装置は、同一の装置でもよい。
 図9に示す秘密計算システム100は、図1に示す秘密計算システム100とは異なり複数台の秘密計算サーバ装置1が不要である。よって、秘匿データのセキュリティを向上させる秘密計算処理をより簡便に実行可能である。
 なお、秘密計算システム100においては、上記でも述べたとおり、秘密計算として、秘密分散処理、及び、準同型暗号化処理を利用する形態の他、他の暗号化処理を採用してもよい。
1A,1B,1C…秘密計算サーバ装置、3…秘匿データ供給装置、5…計算結果復元装置、10…情報処理部、11…秘匿データ取得部、13…秘匿不要データ取得部、15…秘密計算部、17…出力部、19…記憶部、40…コンピュータ、41…プロセッサ、42…主記録装置、43…補助記録装置、44…入出力インターフェース、45…通信インターフェース、46…バスライン、100…秘密計算システム
 

Claims (8)

  1.  データを暗号化した状態で計算する秘密計算を実行する秘密計算システムであって、
     暗号化された第1データを取得する第1取得部と、
     前記第1データに応じて、暗号化されていない第2データを取得する第2取得部と、
     前記第1データと前記第2データとに基づいて前記秘密計算を実行する秘密計算部と、
     前記秘密計算の結果を暗号化された状態で出力する出力部と、
    を備える、秘密計算システム。
  2.  複数のサーバ装置を備え、
     前記サーバ装置のそれぞれは、
     前記第1データを秘密分散して生成された、前記第1データの断片であるシェアを記憶する記憶部と、
     記憶された前記シェアと前記第2データとに基づいて前記秘密計算を実行する秘密計算部と、
     前記秘密計算の結果を暗号化された状態で出力する出力部と、を備える、
     請求項1に記載の秘密計算システム。
  3.  前記第1データは、金融商品の保有数に関する保有数データであり、
     前記第2データは、前記金融商品の価格に関する価格データであり、
     前記秘密計算部は、前記保有数データと前記価格データとに基づいて、前記特金融商品の評価額を算出する、
     請求項1又は2に記載の秘密計算システム。
  4.  前記第1データは、前記金融商品の簿価データと当該金融商品の売買金額を示す取引データとを含み、
     前記秘密計算部は、前記簿価データと前記取引データとに基づいて売買損益データを算出し、算出された前記売買損益データと、算出された前記評価額と、に基づいて前記金融商品に関する基準価額を算出する、
     請求項3に記載の秘密計算システム。
  5.  前記第1データは、前記金融商品の名称に関するデータを更に含む、
     請求項1から請求項4のいずれか一項に記載の秘密計算システム。
  6.  前記第1データは、全ての金融商品の保有数に関するデータを含む、
     請求項1から請求項5のいずれか一項に記載の秘密計算システム。
  7.  コンピュータが、データを暗号化した状態で計算する秘密計算を実行する秘密計算方法であって、
     暗号化された第1データを取得するステップと、
     前記第1データに応じて、暗号化されていない第2データを取得するステップと、
     前記第1データと前記第2データとに基づいて前記秘密計算を実行するステップと、
     前記秘密計算の結果を暗号化された状態で出力するステップと、
    を含む、秘密計算方法。
  8.  データを暗号化した状態で計算する秘密計算を実行するコンピュータを、
     暗号化された第1データを取得する第1取得部と、
     前記第1データに応じて、暗号化されていない第2データを取得する第2取得部と、
     前記第1データと前記第2データとに基づいて前記秘密計算を実行する秘密計算部と、
     前記秘密計算の結果を暗号化された状態で出力する出力部と、
    して機能させるプログラム。
     
PCT/JP2021/027019 2020-07-22 2021-07-19 秘密計算システム、秘密計算方法、及びプログラム WO2022019278A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202180060811.9A CN116194943A (zh) 2020-07-22 2021-07-19 安全计算系统、安全计算方法和程序
US18/083,683 US20230120548A1 (en) 2020-07-22 2022-12-19 Secret calculation system, secret calculation method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020-125547 2020-07-22
JP2020125547A JP2022021761A (ja) 2020-07-22 2020-07-22 秘密計算システム、秘密計算方法、及びプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/083,683 Continuation US20230120548A1 (en) 2020-07-22 2022-12-19 Secret calculation system, secret calculation method, and program

Publications (1)

Publication Number Publication Date
WO2022019278A1 true WO2022019278A1 (ja) 2022-01-27

Family

ID=79728770

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/027019 WO2022019278A1 (ja) 2020-07-22 2021-07-19 秘密計算システム、秘密計算方法、及びプログラム

Country Status (4)

Country Link
US (1) US20230120548A1 (ja)
JP (1) JP2022021761A (ja)
CN (1) CN116194943A (ja)
WO (1) WO2022019278A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116938597B (zh) * 2023-09-14 2023-12-05 北京固加数字科技有限公司 一种股票交易数据交互系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011081301A (ja) * 2009-10-09 2011-04-21 Nippon Telegr & Teleph Corp <Ntt> 秘密計算システム、秘密計算方法
JP2012168599A (ja) * 2011-02-10 2012-09-06 Futurebridge Partners Co Ltd 金融ポートフォリオ分析システム
WO2020071187A1 (ja) * 2018-10-04 2020-04-09 日本電信電話株式会社 秘密シグモイド関数計算システム、秘密ロジスティック回帰計算システム、秘密シグモイド関数計算装置、秘密ロジスティック回帰計算装置、秘密シグモイド関数計算方法、秘密ロジスティック回帰計算方法、プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011081301A (ja) * 2009-10-09 2011-04-21 Nippon Telegr & Teleph Corp <Ntt> 秘密計算システム、秘密計算方法
JP2012168599A (ja) * 2011-02-10 2012-09-06 Futurebridge Partners Co Ltd 金融ポートフォリオ分析システム
WO2020071187A1 (ja) * 2018-10-04 2020-04-09 日本電信電話株式会社 秘密シグモイド関数計算システム、秘密ロジスティック回帰計算システム、秘密シグモイド関数計算装置、秘密ロジスティック回帰計算装置、秘密シグモイド関数計算方法、秘密ロジスティック回帰計算方法、プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"SE Financial Know-How, from the Basics (Revised edition)", 23 June 2008, NIKKEI BP, Japan, ISBN: 978-4-8222-8360-5, article TSUCHIYA, KIYOMI: "Passage", pages: 151 - 153, XP009533754 *

Also Published As

Publication number Publication date
CN116194943A (zh) 2023-05-30
JP2022021761A (ja) 2022-02-03
US20230120548A1 (en) 2023-04-20

Similar Documents

Publication Publication Date Title
US10678931B2 (en) Regulating blockchain confidential transactions
KR102208891B1 (ko) 블록체인 기밀 트랜잭션에서 암호화된 트랜잭션 정보 복구
EP3520319B1 (en) Distributed electronic record and transaction history
US20180359092A1 (en) Method for managing a trusted identity
US9704143B2 (en) Cryptographic currency for securities settlement
US20220309505A1 (en) Reissuing obligations to preserve privacy
WO2018137316A1 (zh) 基于区块链的安全交易方法、电子装置、系统及存储介质
US20160241390A1 (en) Cloud Encryption Key Broker Apparatuses, Methods and Systems
JP6880255B2 (ja) ブロックチェーン機密トランザクションの管理
KR102250998B1 (ko) 다중 서명 보안 계정 제어 시스템
WO2020051710A1 (en) System and process for managing digitized security tokens
US20220012699A1 (en) Distributed order book system
CN111639938A (zh) 数据处理方法、装置、设备及介质
TW201901584A (zh) 具多重密鑰的kyc資料標記之爭議救濟系統及其方法
WO2022019278A1 (ja) 秘密計算システム、秘密計算方法、及びプログラム
TWI636415B (zh) 基於區塊鏈智能合約的去中心化kyc系統及其方法
Aleksieva et al. Implementation of smart contracts based on hyperledger fabric blockchain for the purpose of insurance services
JP6526299B1 (ja) 情報処理方法、情報処理装置、およびプログラム
US20230012276A1 (en) System, Method, and Apparatus for Decentralized E-Commerce
JP6909452B2 (ja) 情報処理方法、情報処理装置、プログラムならびに情報処理システム
JP2021158548A (ja) 情報共有管理方法及び情報共有管理装置
US11948144B2 (en) Knowledge-based authentication for asset wallets
US20210327002A1 (en) Distributed ledger based mass balancing via secret sharing
US20230153209A1 (en) System and method for database recovery
US20230028112A1 (en) Confidential asset transaction system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21846230

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21846230

Country of ref document: EP

Kind code of ref document: A1