IP Library Granted Patent US 12,341,885
Granted Patent B2
US 12,341,885 · App. 17/055,993 · Granted Jun 24, 2025

Secret batch approximation system, secure computation device, secret batch approximation method, and program

Inventor: Koki Hamada (Musashino, JP)
Assignee: NIPPON TELEGRAPH AND TELEPHONE CORPORATION
H04L9/0894H04L2209/46
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,341,885
App. No.
17/055,993
Granted
Jun 24, 2025
Kind
B2
Abstract

Calculation time is reduced without degrading approximation accuracy in calculation of a complicated function through secure computation. A secret batch approximation system calculates a concealed text [z] of an approximate value z for a function value y satisfying yj=f(xj) by using a concealed text [x] of a value x as input. g is defined as a polynomial for approximating each section of m sections into which the function f is divided. A parameter acquisition unit acquires a concealed text [a] of a parameter a corresponding to the value x for each integer j that is not less than 1 and not more than n, where aj is defined as a parameter pi corresponding to a section Ri including a value xj. A polynomial calculation unit calculates a polynomial g([x], [a]) by using the concealed text [x] of the value x as input based on the concealed text [a].

Claims (37)

1. A secret batch approximation system including three or more secure computation apparatuses for calculating a concealed text [z] :=([z 1 ], . . . , [z n ]) of an approximate value z :=(z 1 , . . . , z n ) for a function value y :=(y 1 , . . . , y n ) satisfying y j =f(x j ) for each integer j, the integer j being greater than or equal to 1 and less than or equal to n, the three or more secure computation apparatuses cooperatively calculating the concealed text [z] using a concealed text [x] :=([x 1 ], . . . , [x n ]) of n pieces of values x :=(x 1 , . . . , x n ) as input when n is defined as an integer greater than or equal to 1, wherein

m is defined as an integer greater than or equal to 2, g is defined as a polynomial for approximating each section of m sections into which a function f is divided, i is defined as each integer and is greater than or equal to 1 and less than or equal to m, R i is defined as one of the m sections, and p i is defined as a parameter of the polynomial g corresponding to the section R i ,

each of the three or more secure computation apparatuses comprises processing circuitry configured to:

receive the concealed text [x] :=([x 1 ], . . . , [x n ]) as input;

acquire a concealed text [a] :=([a 1 ], . . . , [a n ]) of a parameter a :=(a 1 , . . . , a n ) corresponding to a value x :=(x 1 , . . . , x n ) for each integer j, where a j is defined as a parameter p i corresponding to the section R i including the value x j ;

calculate the polynomial g([x], [a]) by using the concealed text [x] of the value x as input based on the concealed text [a] of the parameter a so as to obtain the concealed text [z] of the approximate value z for the function value y; and

set the concealed text [z] as output of each of the three or more secure computation apparatuses,

wherein

the processing circuitry acquires the concealed text [a] :=([a 1 ], . . . m [a n ]) of the parameter a :=(a 1 , . . . , a n ) based on a formula:

([ a 1 ], . . . ,[a n ])←BatchMap([ x ],( u 1 , . . . ,u m ),( p 1 , . . . ,p m ))

where BatchMap is defined as a secure computation batch mapping algorithm, u i is defined as a value indicating a boundary of the section R i , and u i <u +1 .

2. The secret batch approximation system according to claim 1 , wherein the function f is a sigmoid function with a domain of definition expressed as X :=[0, 1000), m≤5000 holds.

3. The secret batch approximation system according to claim 1 , wherein the polynomial g is a quadratic polynomial.

4. A secure computation apparatus that is included in a secret batch approximation system, the secret batch approximation system including three or more secure computation apparatuses that cooperatively calculate a concealed text [z] :=([z 1 ], . . . , [z n ]) of an approximate value z :=(z 1 , . . . , z n ) for a function value y :=(y 1 , . . . , y n ) satisfying y j =f(x j ) for each integer j, the integer j being greater than or equal to 1 and less than or equal to n, by using a concealed text [x] :=([x 1 ], . . . , [x n ]) of n pieces of values x :=(x 1 , . . . , x n ) as input when n is defined as an integer greater than or equal to 1, wherein

m is defined as an integer greater than or equal to 2, g is defined as a polynomial for approximating each section of m sections into which a function f is divided, i is defined as each integer greater than or equal to 1 and less than or equal to m, R i is defined as one of the m sections, and p i is defined as a parameter of the polynomial g corresponding to the section R i ,

the secure computation apparatus comprises processing circuitry configured to:

receive the concealed text [x] :=([x 1 ], . . . ,[x n ]) as input;

acquire a concealed text [a] :=([a 1 ], . . . , [a n ]) of a parameter a :=(a 1 , . . . , a n ) corresponding to a value x :=(x 1 , . . . , x n ) for each integer j, where a j is defined as a parameter p i corresponding to the section R i including the value x j ;

calculate the polynomial g([x], [a]) by using the concealed text [x] of the value x as input based on the concealed text [a] of the parameter a so as to obtain the concealed text [z] of the approximate value z for the function value y; and

set the concealed text IzI as output of each of the three or more secure computation apparatuses,

wherein

the processing circuitry acquires the concealed text [a] :=([a 1 ], . . . , [a n ]) of the parameter a :=(a 1 , . . . , a n ) based on a formula:

([ a 1 ], . . . ,[a n ])←BatchMap([ x ],( u 1 , . . . ,u m ),( p 1 , . . . ,p m ))

where BatchMap is defined as a secure computation batch mapping algorithm, u i is defined as a value indicating a boundary of the section R i , and u i <u i+1 .

5. A non-transitory computer readable medium having a program recorded thereon for making a computer function as the secure computation apparatus according to claim 4 .

6. The secret batch approximation system according to claim 4 , wherein the polynomial g is a cubic polynomial.

7. A secret batch approximation method that is executed by a secret batch approximation system, the secret batch approximation system including three or more secure computation apparatuses that cooperatively calculate a concealed text [z] :=([z 1 ], . . . , [z n ]) of an approximate value z :=(z 1 , . . . , z n ) for a function value y :=(y 1 , . . . , y n ) satisfying y j =f(x j ) for each integer j, the integer j being greater than or equal to 1 and less than or equal to n, by using a concealed text [x] :=([x 1 ], . . . , [x n ]) of n pieces of values x :=(x 1 , . . . , x n ) as input when n is defined as an integer greater than or equal to 1, wherein

m is defined as an integer greater than or equal to 2, g is defined as a polynomial for approximating each section of m sections into which a function f is divided, i is defined as each integer greater than or equal to 1 and less than or equal to m, R i is defined as one of the m sections, and p i is defined as a parameter of the polynomial g corresponding to the section R i ,

the secure computation apparatus comprises processing circuitry configured to:

receiving, by processing circuitry of each of the three or more secure computation apparatuses, the concealed text [x] :=([x 1 ], . . . ,[x n ]) as input,

acquiring, by processing circuitry of each of the three or more secure computation apparatuses, a concealed text [a] :=([a 1 ], . . . , [a n ]) of a parameter a :=(a 1 , . . . , a n ) corresponding to a value x :=(x 1 , . . . , x n ) for each integer j, where a j is defined as a parameter p i corresponding to the section R i including the value x j ,

calculating, by the processing circuitry of each of the three or more secure computation apparatuses, the polynomial g([x], [a]) by using the concealed text [x] of the value x as input based on the concealed text [a] of the parameter a so as to obtain the concealed text [z] of the approximate value z for the function value y, and

setting, by the processing circuitry of each of the three or more secure computation apparatuses, the concealed text [z] as output of each of the three or more secure computation apparatuses,

wherein the method further comprises:

acquiring the concealed text [a] :=([a 1 ], . . . , [a n ]) of the parameter a :=(a 1 , . . . , a n ) based on a formula:

([ a 1 ], . . . ,[a n ])←BatchMap([ x ],( u 1 , . . . ,u m ),( p 1 , . . . ,p m ))

where BatchMap is defined as a secure computation batch mapping algorithm, u i is defined as a value indicating a boundary of the section R i , and u i <u i+1 .

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 17, 2020
From: HAMADA, KOKI
To: NIPPON TELEGRAPH AND TELEPHONE CORPORATION
Reel/Frame 054383/0545 →
Priority Claims (1)
JP 2018-100340 · May 25, 2018 · national
Continuity (1)
Related Publication 20210287573A1 · Sep 16, 2021
References Cited (66)
US 5825670A · Chernoff · 1998 [cited by examiner]
US 5898603A · Osborn · 1999 [cited by examiner]
US 6438230B1 · Moore · 2002 [cited by examiner]
US 6941463B1 · Atallah · 2005 [cited by examiner]
US 7366745B1 · Oberman · 2008 [cited by examiner]
US 7483819B2 · Gurumurthy · 2009 [cited by examiner]
US 11854680B1 · Gershoni · 2023 [cited by examiner]
US 20020087884A1 · Shacham · 2002 [cited by examiner]
US 20030046547A1 · Jakobsson · 2003 [cited by examiner]
US 20030091192A1 · Chen · 2003 [cited by examiner]
US 20030101206A1 · Graziano · 2003 [cited by examiner]
US 20040015830A1 · Reps · 2004 [cited by examiner]
US 20040071293A1 · Yamamichi · 2004 [cited by examiner]
US 20050044123A1 · Sazegari · 2005 [cited by examiner]
US 20050275733A1 · Chao · 2005 [cited by examiner]
US 20070098289A1 · Kondo · 2007 [cited by examiner]
US 20070230692A1 · Akiyama · 2007 [cited by examiner]
US 20080209214A1 · Schrijen · 2008 [cited by examiner]
US 20090185680A1 · Akiyama · 2009 [cited by examiner]
US 20090322916A1 · Wang · 2009 [cited by examiner]
US 20100226496A1 · Akiyama · 2010 [cited by examiner]
US 20110103583A1 · Yoon · 2011 [cited by examiner]
US 20110196652A1 · Tanaka · 2011 [cited by examiner]
US 20120081168A1 · Hastings · 2012 [cited by examiner]
US 20130278661A1 · Terada · 2013 [cited by examiner]
US 20150046708A1 · Yasuda · 2015 [cited by examiner]
US 20150142990A1 · Adachi et al. · 2015 [cited by applicant]
US 20150270967A1 · Susella · 2015 [cited by examiner]
US 20150280914A1 · Yasuda · 2015 [cited by examiner]
US 20150318991A1 · Yasuda · 2015 [cited by examiner]
US 20160034421A1 · Magesacher · 2016 [cited by examiner]
US 20160072801A1 · Cao · 2016 [cited by examiner]
US 20160080333A1 · Isshiki · 2016 [cited by examiner]
US 20160173275A1 · Yasuda · 2016 [cited by examiner]
US 20160197726A1 · Yasuda · 2016 [cited by examiner]
US 20160269174A1 · Yasuda · 2016 [cited by examiner]
US 20160350552A1 · Matsuzaki · 2016 [cited by examiner]
US 20160350648A1 · Gilad-Bachrach · 2016 [cited by examiner]
US 20160352510A1 · Morikawa · 2016 [cited by examiner]
US 20160352710A1 · Hibshoosh · 2016 [cited by examiner]
US 20160380653A1 · Sheikh · 2016 [cited by examiner]
US 20170083287A1 · Yu · 2017 [cited by examiner]
US 20170099263A1 · Matsuzaki · 2017 [cited by examiner]
US 20170272244A1 · Garcia Morchon · 2017 [cited by examiner]
US 20170308357A1 · Bekas · 2017 [cited by examiner]
US 20180032311A1 · Mathew · 2018 [cited by examiner]
US 20180034630A1 · Rietman · 2018 [cited by examiner]
US 20180040160A1 · Moon · 2018 [cited by examiner]
US 20180096248A1 · Chabanne · 2018 [cited by examiner]
US 20190042924A1 · Pasca · 2019 [cited by examiner]
US 20190065974A1 · Michigami · 2019 [cited by examiner]
US 20190182216A1 · Gulak · 2019 [cited by examiner]
US 20190272361A1 · Kursun · 2019 [cited by examiner]
US 20190333415A1 · Hamada · 2019 [cited by examiner]
US 20200242466A1 · Mohassel · 2020 [cited by examiner]
US 20200304293A1 · Gama · 2020 [cited by examiner]
US 20220230057A1 · Pasca · 2022 [cited by examiner]
US 20240225087A1 · Quitorio · 2024 [cited by examiner]
EP 3863002A1 · 2021 [cited by applicant]
Lazzeretti et al., Piecewise Function Approximation With Private Data, IEEE, 2016. [cited by examiner]
Lazzeretti et al., Piecewise Function Approximation With Private Data, IEEE (Year: 2015). [cited by examiner]
Chida et al., “A Three-Party Secure Function Evaluation with Lightweight Verifiability Revisited”, CSS 2010, 13 pages including English Translation. [cited by applicant]
Kamm et al., “Secure floating point arithmetic and private satellite collision analysis”, International Journal of Information Security, vol. 14, No. 6, 2015, pp. 531-548. [cited by applicant]
Hamada et al., “A Batch Mapping Algorithm for Secure Function Evaluation”, The transactions of the Institute of Electronics, Information and Communication Engineers, vol. J96-A, No. 4, 2013, pp. 157-165 (10 pages includ… [cited by applicant]
Laud, “Parallel Oblivious Array Access for Secure Multiparty Computation and Privacy-Preserving Minimum Spanning Trees”, Proceedings on Privacy Enhancing Technologies, 2015, pp. 188-205. [cited by applicant]
Mohassel et al., “SecureML: A System for Scalable Privacy-Preserving Machine Learning”, In 2017 IEEE Symposium on Security and Privacy, IEEE Computer Society, San Jose, CA, USA, May 22-26, 2017, pp. 1-20. [cited by applicant]