US 12,407,496 B2
Program execution system, data processing apparatus, program execution method and program
Tetsuya Okuda, Tokyo (JP); Koji Chida, Tokyo (JP); Yuichiro Dan, Tokyo (JP); and Ryohei Suzuki, Tokyo (JP)
Assigned to NIPPON TELEGRAPH AND TELEPHONE CORPORATION, Tokyo (JP)
Appl. No. 18/249,659
Filed by NIPPON TELEGRAPH AND TELEPHONE CORPORATION, Tokyo (JP)
PCT Filed Nov. 13, 2020, PCT No. PCT/JP2020/042532
§ 371(c)(1), (2) Date Apr. 19, 2023,
PCT Pub. No. WO2022/102108, PCT Pub. Date May 19, 2022.
Prior Publication US 2023/0396415 A1, Dec. 7, 2023
Int. Cl. H04L 9/08 (2006.01); G06F 21/12 (2013.01)
CPC H04L 9/0825 (2013.01) [G06F 21/12 (2013.01)] 6 Claims
OG exemplary drawing
 
1. A program execution system comprising:
a data holding apparatus; a program providing apparatus; and a data processing apparatus having a mechanism that performs secret computing in a secure region,
wherein
the data holding apparatus transmits encrypted data to the data processing apparatus, and the program providing apparatus transmits an encrypted program to the data processing apparatus, the encrypted data being encrypted with a first common key, the encrypted program being encrypted with a second common key,
in the secure region, the data processing apparatus acquires data by decrypting the encrypted data transmitted by the data holding apparatus with the first common key, acquires a program by decrypting the encrypted program transmitted by the program providing apparatus with the second common key, executes the program acquired by decrypting the encrypted program transmitted by the program providing apparatus for the data acquired by decrypting the encrypted data transmitted by the data holding apparatus, and encrypts a result of the execution with a public key of the data holding apparatus or the first common key,
the data processing apparatus transmits the encrypted result of the execution to the data holding apparatus, and
the data holding apparatus acquires the result of the execution by decrypting the encrypted result of the execution with a secret key or the first common key.