JP2018522291A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2018522291A5 JP2018522291A5 JP2018523361A JP2018523361A JP2018522291A5 JP 2018522291 A5 JP2018522291 A5 JP 2018522291A5 JP 2018523361 A JP2018523361 A JP 2018523361A JP 2018523361 A JP2018523361 A JP 2018523361A JP 2018522291 A5 JP2018522291 A5 JP 2018522291A5
- Authority
- JP
- Japan
- Prior art keywords
- computer
- operand
- obfuscated
- sending
- operations
- 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.)
- Granted
Links
- 238000004590 computer program Methods 0.000 claims 10
- 238000004364 calculation method Methods 0.000 claims 5
- 230000005540 biological transmission Effects 0.000 claims 2
- 241001442055 Vipera berus Species 0.000 claims 1
Claims (57)
少なくとも1つの他のコンピュータに接続された信頼できるコンピュータ上に存在する実行可能なコンピュータプログラムを一連の演算に分割するステップと、
前記一連の演算の各演算を難読化するステップと、
前記それぞれの演算の結果を計算して該結果を別のコンピュータに転送する付属命令と共に前記難読化した演算を、実行可能なコンピュータプログラムのリモート実行のために、前記少なくとも1つの他のコンピュータに送信するステップであって、
前記付属命令は、前記難読化された演算のそれぞれの結果を計算し、前記難読化された演算のそれぞれの結果を、難読化された演算を計算するために、前記それぞれの結果を必要とする前記少なくとも1つの他のコンピュータの別のコンピュータに転送し、前記実行可能なコンピュータプログラムの難読化された計算結果を前記信頼できるコンピュータに転送する、ステップと、
を含み、
前記方法は、前記信頼できるコンピュータにおいて、前記実行可能なコンピュータプログラムの前記難読化された計算結果を受信するステップと、
前記実行可能なコンピュータプログラムの受信した前記難読化された計算結果を逆難読化するステップと、
をさらに含むことを特徴とする方法。 A computer program execution method comprising:
Dividing an executable computer program residing on a trusted computer connected to at least one other computer into a series of operations;
Obfuscating each operation of the series of operations;
Sending the obfuscated operation to the at least one other computer for remote execution of an executable computer program along with an accompanying instruction that calculates the result of the respective operation and transfers the result to another computer A step to perform
The ancillary instruction calculates a result of each of the obfuscated operations and requires each result of the obfuscated operations to calculate an obfuscated operation. Transferring to another computer of the at least one other computer and transferring an obfuscated calculation result of the executable computer program to the trusted computer ;
Including
Receiving the obfuscated calculation result of the executable computer program at the trusted computer; and
Reverse obfuscating the obfuscated calculation result received by the executable computer program;
The method of further comprising.
請求項1に記載の方法。 The series of operations is a circuit gate operation, and each circuit gate operation has an operator, a first operand, and a second operand.
The method of claim 1 .
前記第1のオペランドを第1の乱数値で難読化するステップと、
前記第2のオペランドを第2の乱数値で難読化するステップと、
を含む、請求項2に記載の方法。 The step of obfuscating each operation of the series of operations includes:
Obfuscating the first operand with a first random value;
Obfuscating the second operand with a second random value;
The method of claim 2 comprising:
前記難読化されたオペランドを、
前記難読化されたオペランドを用いて複数の演算の複数の結果を計算し、
前記複数の結果を第2のコンピュータに送信する、
ことを含む命令と共に第1のコンピュータに送信するステップと、
前記演算子、前記第1の乱数値及び前記第2の乱数値に基づいて前記複数の結果から1つの結果を選択し、
前記選択された結果を第3の乱数値で難読化し、
前記選択された結果を異なるコンピュータに送信する、
ことを含む命令を前記第2のコンピュータに送信するステップと、
を含む、請求項3に記載の方法。 The step of sending each operation of the series of operations together with an accompanying instruction to at least one other computer,
The obfuscated operand is
Calculating multiple results of multiple operations using the obfuscated operands;
Sending the plurality of results to a second computer;
Transmitting to a first computer with instructions including:
Selecting one result from the plurality of results based on the operator, the first random value, and the second random value;
Obfuscating the selected result with a third random value;
Sending the selected result to a different computer;
Sending an instruction comprising: to the second computer;
The method of claim 3 comprising:
請求項1に記載の方法。 The series of operations is a computer arithmetic operation, and each computer arithmetic operation includes an operator, a first operand, and a second operand.
The method of claim 1 .
前記第1のオペランドを第1の乱数値で難読化するステップと、
前記第2のオペランドを第2の乱数値で難読化するステップと、
を含む、請求項5に記載の方法。 The step of obfuscating each operation of the series of operations before transmission includes:
Obfuscating the first operand with a first random value;
Obfuscating the second operand with a second random value;
The method of claim 5 comprising:
前記演算子及び難読化されたオペランドを、
前記演算子と、前記難読化された第1のオペランドと、前記難読化された第2のオペランドとを用いて第1の演算結果を計算し、
第2のコンピュータから値を受け取り、
前記演算子と、前記第1の結果と、前記値とを用いて第2の演算結果を計算し、
前記第2の結果を異なるコンピュータに送信する、
ことを含む命令と共に第1のコンピュータに送信するステップを含む、
請求項6に記載の方法。 The step of sending each operation of the series of operations together with an accompanying instruction to at least one other computer,
The operator and obfuscated operand are
Calculating a first operation result using the operator, the obfuscated first operand, and the obfuscated second operand;
Receive a value from the second computer,
Calculating a second operation result using the operator, the first result, and the value;
Sending the second result to a different computer;
Sending to a first computer with instructions including
The method of claim 6 .
請求項6に記載の方法。 The obfuscation scheme of the first operand does not match the obfuscation scheme of the second operand;
The method of claim 6 .
請求項8に記載の方法。 A transition obfuscation function is used that converts the obfuscation scheme of the first operand to the obfuscation scheme of the second operand using a third random value.
The method of claim 8 .
前記遷移難読化関数の各演算を、前記それぞれの演算の結果を計算して該結果を別のコンピュータに転送する付属命令と共に少なくとも1つの他のコンピュータに送信するステップと、
をさらに含む、請求項9に記載の方法。 Dividing the transition obfuscation function into a series of operations;
Sending each operation of the transition obfuscation function to at least one other computer together with an accompanying instruction that calculates a result of the respective operation and transfers the result to another computer;
10. The method of claim 9 , further comprising:
前記第1のオペランドが乗法難読化される場合、
前記難読化されたオペランドを、
第2のコンピュータから値を受け取り、
前記難読化された第1のオペランドと前記値との和を計算し、
前記和を第3のコンピュータに送信する、
ことを含む命令と共に第1のコンピュータに送信するステップと、
前記和と前記第1の乱数値との商を計算し、
前記商を異なるコンピュータに送信する、
ことを含む命令を前記第3のコンピュータに送信するステップと、
を含み、前記第1のオペランドが加法難読化される場合、
前記難読化されたオペランドを、
前記難読化された第1のオペランドと前記第3の乱数値との積を計算し、
前記積を第1のコンピュータに送信する、
ことを含む命令と共に第3のコンピュータに送信するステップと、
第2のコンピュータから値を受け取り、
前記積と前記値との間の差分を計算し、
前記差分を異なるコンピュータに送信する、
ことを含む命令を前記第1のコンピュータに送信するステップと、
を含む、請求項10に記載の方法。 Transmitting each operation of the transition obfuscation function together with an accompanying instruction to at least one other computer,
If the first operand is obfuscated multiplicatively,
The obfuscated operand is
Receive a value from the second computer,
Calculating the sum of the obfuscated first operand and the value;
Sending the sum to a third computer;
Transmitting to a first computer with instructions including:
Calculating the quotient of the sum and the first random number value;
Sending the quotient to a different computer;
Sending an instruction comprising: to the third computer;
And the first operand is additively obfuscated:
The obfuscated operand is
Calculating a product of the obfuscated first operand and the third random value;
Sending the product to a first computer;
Sending to a third computer with instructions including:
Receive a value from the second computer,
Calculating the difference between the product and the value;
Sending the difference to a different computer;
Sending an instruction comprising: to the first computer;
The method of claim 10 , comprising:
請求項11に記載の方法。 The value received from the second computer is a product of the first random value and the third random value;
The method of claim 11 .
請求項1に記載の方法。 The obfuscation includes code obfuscation, data obfuscation, or both,
The method of claim 1 .
請求項1に記載の方法。 The at least one other computer is part of a cloud;
The method of claim 1.
請求項14に記載の方法。 The cloud is unreliable,
The method according to claim 14 .
請求項14に記載の方法。 The cloud spans multiple management areas,
The method according to claim 14 .
請求項14に記載の方法。 The cloud spans multiple commercially different infrastructures,
The method according to claim 14 .
請求項1に記載の方法。 The at least one other computer is part of a corporate network;
The method of claim 1.
請求項1に記載の方法。 The at least one other computer is randomly selected from a plurality of computers;
The method of claim 1.
請求項19に記載の方法。 Each of the plurality of computers is unreliable,
The method of claim 19 .
請求項1に記載の方法。 The at least one other computer is unreliable,
The method of claim 1.
請求項1に記載の方法。 The at least one other computer is not the trusted computer;
The method of claim 1.
前記第1の信頼できるコンピュータ上に存在する実行可能なコンピュータプログラムを一連の演算に分割するステップと、
前記一連の演算の各演算を、前記それぞれの演算の結果を計算して該結果を別のコンピュータに転送する付属命令と共に前記難読化した演算を、実行可能なコンピュータプログラムのリモート実行のために、前記少なくとも1つの他のコンピュータに送信するステップであって、
前記付属命令は、前記難読化された演算のそれぞれの結果を計算し、前記難読化された演算のそれぞれの結果を、難読化された演算を計算するために、前記それぞれの結果を必要とする前記少なくとも1つの他のコンピュータの別のコンピュータに転送し、前記実行可能なコンピュータプログラムの難読化された計算結果を前記第1の信頼できるコンピュータに転送する、ステップと、
を含む動作を実行させるコンピュータ命令を記憶し、
前記命令は、さらに前記システムに、
前記第1の信頼できるコンピュータにおいて、前記実行可能なコンピュータプログラムの前記難読化された計算結果を受け取るステップと、
を含む動作を実行させる、
ことを特徴とするシステム。 A system comprising at least one trusted computer communicatively connected to at least one other computer, the first trusted computer of the at least one trusted computer being connected to the system at runtime. ,
Dividing an executable computer program residing on the first trusted computer into a series of operations;
For the remote execution of a computer program capable of executing the obfuscated operations together with the attached instructions for calculating the results of the respective operations and transferring the results to another computer , Transmitting to the at least one other computer ,
The ancillary instruction calculates a result of each of the obfuscated operations and requires each result of the obfuscated operations to calculate an obfuscated operation. Transferring to another computer of the at least one other computer and transferring an obfuscated calculation result of the executable computer program to the first trusted computer ;
Storing computer instructions for performing operations including:
The instructions are further directed to the system,
Receiving at the first trusted computer the obfuscated calculation result of the executable computer program;
To perform operations including,
A system characterized by that.
請求項23に記載のシステム。 The series of operations is a circuit gate operation, and each circuit gate operation has an operator, a first operand, and a second operand.
24. The system of claim 23 .
前記第1のオペランドを第1の乱数値で難読化するステップと、
前記第2のオペランドを第2の乱数値で難読化するステップと、
を含む、請求項24に記載のシステム。 The step of obfuscating each operation of the series of operations includes:
Obfuscating the first operand with a first random value;
Obfuscating the second operand with a second random value;
25. The system of claim 24 , comprising:
前記難読化されたオペランドを、
前記難読化されたオペランドを用いて複数の演算の複数の結果を計算し、
前記複数の結果を第2のコンピュータに送信する、
ことを含む命令と共に第1のコンピュータに送信するステップと、
前記演算子、前記第1の乱数値及び前記第2の乱数値に基づいて前記複数の結果から1つの結果を選択し、
前記選択された結果を第3の乱数値で難読化し、
前記選択された結果を異なるコンピュータに送信する、
ことを含む命令を前記第2のコンピュータに送信するステップと、
を含む、請求項25に記載のシステム。 The step of sending each operation of the series of operations together with an accompanying instruction to at least one other computer,
The obfuscated operand is
Calculating multiple results of multiple operations using the obfuscated operands;
Sending the plurality of results to a second computer;
Transmitting to a first computer with instructions including:
Selecting one result from the plurality of results based on the operator, the first random value, and the second random value;
Obfuscating the selected result with a third random value;
Sending the selected result to a different computer;
Sending an instruction comprising: to the second computer;
26. The system of claim 25 , comprising:
請求項23に記載のシステム。 The series of operations is a computer arithmetic operation, and each computer arithmetic operation includes an operator, a first operand, and a second operand.
24. The system of claim 23 .
請求項23に記載のシステム。 Each operation of the series of operations corresponds to an operation executed by the hardware unit.
24. The system of claim 23 .
請求項28に記載のシステム。 Further comprising an integer adder on said at least one other computer;
30. The system of claim 28 .
請求項28に記載のシステム。 Further comprising an integer multiplier on said at least one other computer;
30. The system of claim 28 .
請求項28に記載のシステム。 Further comprising an integer comparator on said at least one other computer;
30. The system of claim 28 .
請求項28に記載のシステム。 Further comprising a floating point multiplier on said at least one other computer;
30. The system of claim 28 .
前記第1のオペランドを第1の乱数値で難読化するステップと、
前記第2のオペランドを第2の乱数値で難読化するステップと、
を含む、請求項27に記載のシステム。 The step of obfuscating each operation of the series of operations before transmission includes:
Obfuscating the first operand with a first random value;
Obfuscating the second operand with a second random value;
28. The system of claim 27 , comprising:
前記演算子及び難読化されたオペランドを、
前記演算子と、前記難読化された第1のオペランドと、前記難読化された第2のオペランドとを用いて第1の演算結果を計算し、
第2のコンピュータから値を受け取り、
前記演算子と、前記第1の結果と、前記値とを用いて第2の演算結果を計算し、
前記第2の結果を異なるコンピュータに送信する、
ことを含む命令と共に第1のコンピュータに送信するステップを含む、
請求項33に記載のシステム。 The step of sending each operation of the series of operations together with an accompanying instruction to at least one other computer,
The operator and obfuscated operand are
Calculating a first operation result using the operator, the obfuscated first operand, and the obfuscated second operand;
Receive a value from the second computer,
Calculating a second operation result using the operator, the first result, and the value;
Sending the second result to a different computer;
Sending to a first computer with instructions including
34. The system of claim 33 .
請求項33に記載のシステム。 The obfuscation scheme of the first operand does not match the obfuscation scheme of the second operand;
34. The system of claim 33 .
請求項35に記載のシステム。 A transition obfuscation function is used that converts the obfuscation scheme of the first operand to the obfuscation scheme of the second operand using a third random value.
36. The system of claim 35 .
前記遷移難読化関数を一連の演算に分割するステップと、
前記遷移難読化関数の各演算を、前記それぞれの演算の結果を計算して該結果を別のコンピュータに転送する付属命令と共に少なくとも1つの他のコンピュータに送信するステップと、
をさらに含む動作を実行させるコンピュータ命令を記憶する、
請求項36に記載のシステム。 The at least one trusted computer can run the system at runtime,
Dividing the transition obfuscation function into a series of operations;
Sending each operation of the transition obfuscation function to at least one other computer together with an accompanying instruction that calculates a result of the respective operation and transfers the result to another computer;
Storing computer instructions for performing an operation further comprising:
37. The system of claim 36 .
前記第1のオペランドが乗法難読化される場合、
前記難読化されたオペランドを、
第2のコンピュータから値を受け取り、
前記難読化された第1のオペランドと前記値との和を計算し、
前記和を第3のコンピュータに送信する、
ことを含む命令と共に第1のコンピュータに送信するステップと、
前記和と前記第1の乱数値との商を計算し、
前記商を異なるコンピュータに送信する、
ことを含む命令を前記第3のコンピュータに送信するステップと、
を含み、前記第1のオペランドが加法難読化される場合、
前記難読化されたオペランドを、
前記難読化された第1のオペランドと前記第3の乱数値との積を計算し、
前記積を第1のコンピュータに送信する、
ことを含む命令と共に第3のコンピュータに送信するステップと、
第2のコンピュータから値を受け取り、
前記積と前記値との間の差分を計算し、
前記差分を異なるコンピュータに送信する、
ことを含む命令を前記第1のコンピュータに送信するステップと、
を含む、請求項37に記載のシステム。 Transmitting each operation of the transition obfuscation function together with an accompanying instruction to at least one other computer,
If the first operand is obfuscated multiplicatively,
The obfuscated operand is
Receive a value from the second computer,
Calculating the sum of the obfuscated first operand and the value;
Sending the sum to a third computer;
Transmitting to a first computer with instructions including:
Calculating the quotient of the sum and the first random number value;
Sending the quotient to a different computer;
Sending an instruction comprising: to the third computer;
And the first operand is additively obfuscated:
The obfuscated operand is
Calculating a product of the obfuscated first operand and the third random value;
Sending the product to a first computer;
Sending to a third computer with instructions including:
Receive a value from the second computer,
Calculating the difference between the product and the value;
Sending the difference to a different computer;
Sending an instruction comprising: to the first computer;
38. The system of claim 37 , comprising:
請求項38に記載のシステム。 The value received from the second computer is a product of the first random value and the third random value;
40. The system of claim 38 .
請求項23に記載のシステム。 The obfuscation includes code obfuscation, data obfuscation, or both,
24. The system of claim 23 .
請求項23に記載のシステム。 The at least one other computer is part of a cloud;
24. The system of claim 23 .
請求項41に記載のシステム。 The cloud is unreliable,
42. The system of claim 41 .
請求項41に記載のシステム。 The cloud spans multiple management areas,
42. The system of claim 41 .
請求項41に記載のシステム。 The cloud spans multiple commercially different infrastructures,
42. The system of claim 41 .
請求項23に記載のシステム。 The at least one other computer is part of a corporate network;
24. The system of claim 23 .
請求項23に記載のシステム。 The at least one other computer is randomly selected from a plurality of computers;
24. The system of claim 23 .
請求項46に記載のシステム。 Each of the plurality of computers is unreliable,
48. The system of claim 46 .
請求項23に記載のシステム。 The at least one other computer is unreliable,
24. The system of claim 23 .
請求項23に記載のシステム。 The at least one other computer is not the trusted computer;
24. The system of claim 23 .
請求項1に記載の方法。 The trusted computer includes one or more virtual machines;
The method of claim 1.
請求項1に記載の方法。 The at least one other computer includes one or more virtual machines;
The method of claim 1.
請求項1に記載の方法。 The another computer includes one or more virtual machines,
The method of claim 1.
請求項23に記載のシステム。 The trusted computer includes one or more virtual machines;
24. The system of claim 23 .
請求項23に記載のシステム。 The at least one other computer includes one or more virtual machines;
24. The system of claim 23 .
請求項23に記載のシステム。 The another computer includes one or more virtual machines,
24. The system of claim 23 .
請求項1に記載の方法。 Transmitting each operation of the series of operations with associated instructions to the at least one other computer includes transmitting each operation to a plurality of computers for computation;
The method of claim 1.
請求項23に記載のシステム。 Transmitting each operation of the series of operations with associated instructions to the at least one other computer includes transmitting each operation to a plurality of computers for computation;
24. The system of claim 23 .
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/804,713 | 2015-07-21 | ||
US14/804,713 US10110566B2 (en) | 2015-07-21 | 2015-07-21 | Systems and processes for executing private programs on untrusted computers |
PCT/US2016/043117 WO2017015357A1 (en) | 2015-07-21 | 2016-07-20 | Systems and processes for executing private programs on untrusted computers |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2018522291A JP2018522291A (en) | 2018-08-09 |
JP2018522291A5 true JP2018522291A5 (en) | 2019-08-29 |
JP6880017B2 JP6880017B2 (en) | 2021-06-02 |
Family
ID=57834671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018523361A Active JP6880017B2 (en) | 2015-07-21 | 2016-07-20 | Systems and processes for running private programs on untrusted computers |
Country Status (10)
Country | Link |
---|---|
US (2) | US10110566B2 (en) |
EP (1) | EP3326345B1 (en) |
JP (1) | JP6880017B2 (en) |
KR (1) | KR102315831B1 (en) |
CN (1) | CN108476198B (en) |
AU (1) | AU2016297559B2 (en) |
CA (1) | CA2998323C (en) |
DK (1) | DK3326345T3 (en) |
IL (1) | IL257040B (en) |
WO (1) | WO2017015357A1 (en) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10348503B2 (en) * | 2016-12-12 | 2019-07-09 | Sap Portals Israel Ltd. | Client side actions validation |
JP7177849B2 (en) * | 2017-12-18 | 2022-11-24 | ユニバーシティ オブ セントラル フロリダ リサーチ ファウンデーション,インコーポレイテッド | How to safely run code that operates on encrypted data on public computers |
US11232224B2 (en) | 2018-03-15 | 2022-01-25 | Servicenow, Inc. | Database encryption |
CN109446828B (en) * | 2018-11-07 | 2020-10-13 | 北京邮电大学 | Secure multi-party computing method and device |
US11042634B2 (en) * | 2018-12-21 | 2021-06-22 | Fujitsu Limited | Determining information leakage of computer-readable programs |
WO2020240246A1 (en) * | 2019-05-29 | 2020-12-03 | Commissariat A L 'energie Atomique Et Aux Energies Alternatives | A computer-implemented method for obfuscating a program code |
US11973743B2 (en) | 2019-12-13 | 2024-04-30 | TripleBlind, Inc. | Systems and methods for providing a systemic error in artificial intelligence algorithms |
US10924460B2 (en) * | 2019-12-13 | 2021-02-16 | TripleBlind, Inc. | Systems and methods for dividing filters in neural networks for private data computations |
US11431688B2 (en) | 2019-12-13 | 2022-08-30 | TripleBlind, Inc. | Systems and methods for providing a modified loss function in federated-split learning |
US11853793B2 (en) | 2020-10-09 | 2023-12-26 | Samsung Electronics Co., Ltd. | Methods and system for on-device AI model parameter run-time protection |
EP4050471A1 (en) * | 2021-02-26 | 2022-08-31 | Zama SAS | Encrypted scalar multiplication |
WO2023007633A1 (en) * | 2021-07-28 | 2023-02-02 | 富士通株式会社 | Control method, control program, node, and system |
US20240004998A1 (en) * | 2022-07-01 | 2024-01-04 | Nxp B.V. | Method for protecting a machine learning model from a side channel attack |
Family Cites Families (79)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6067620A (en) * | 1996-07-30 | 2000-05-23 | Holden; James M. | Stand alone security device for computer networks |
US6477648B1 (en) * | 1997-03-23 | 2002-11-05 | Novell, Inc. | Trusted workstation in a networked client/server computing system |
US6957341B2 (en) * | 1998-05-14 | 2005-10-18 | Purdue Research Foundation | Method and system for secure computational outsourcing and disguise |
US7430670B1 (en) | 1999-07-29 | 2008-09-30 | Intertrust Technologies Corp. | Software self-defense systems and methods |
AU2001243365A1 (en) * | 2000-03-02 | 2001-09-12 | Alarity Corporation | System and method for process protection |
US7305704B2 (en) * | 2002-03-16 | 2007-12-04 | Trustedflow Systems, Inc. | Management of trusted flow system |
US7353499B2 (en) * | 2003-09-25 | 2008-04-01 | Sun Microsystems, Inc. | Multiple instruction dispatch tables for application program obfuscation |
US7415618B2 (en) * | 2003-09-25 | 2008-08-19 | Sun Microsystems, Inc. | Permutation of opcode values for application program obfuscation |
US7363620B2 (en) * | 2003-09-25 | 2008-04-22 | Sun Microsystems, Inc. | Non-linear execution of application program instructions for application program obfuscation |
US20050069138A1 (en) * | 2003-09-25 | 2005-03-31 | Sun Microsystems, Inc., A Delaware Corporation | Application program obfuscation |
US8220058B2 (en) * | 2003-09-25 | 2012-07-10 | Oracle America, Inc. | Rendering and encryption engine for application program obfuscation |
DE102005021749A1 (en) * | 2005-05-11 | 2006-11-16 | Fachhochschule Dortmund | Program-controlled information processing method, involves initiating information processing operations in selected resources, and disconnecting connections that are no longer needed between selected resources |
WO2008007305A2 (en) * | 2006-07-12 | 2008-01-17 | Koninklijke Philips Electronics N.V. | Method and system for obfuscating a gryptographic function |
US20090249492A1 (en) * | 2006-09-21 | 2009-10-01 | Hans Martin Boesgaard Sorensen | Fabrication of computer executable program files from source code |
US9411976B2 (en) * | 2006-12-01 | 2016-08-09 | Maidsafe Foundation | Communication system and method |
US9124650B2 (en) | 2006-12-13 | 2015-09-01 | Quickplay Media Inc. | Digital rights management in a mobile environment |
US8538012B2 (en) * | 2007-03-14 | 2013-09-17 | Intel Corporation | Performing AES encryption or decryption in multiple modes with a single instruction |
US8312518B1 (en) * | 2007-09-27 | 2012-11-13 | Avaya Inc. | Island of trust in a service-oriented environment |
US8762736B1 (en) * | 2008-04-04 | 2014-06-24 | Massachusetts Institute Of Technology | One-time programs |
US8209744B2 (en) * | 2008-05-16 | 2012-06-26 | Microsoft Corporation | Mobile device assisted secure computer network communication |
US8171306B2 (en) * | 2008-11-05 | 2012-05-01 | Microsoft Corporation | Universal secure token for obfuscation and tamper resistance |
US8832778B2 (en) * | 2009-08-04 | 2014-09-09 | Carnegie Mellon University | Methods and apparatuses for user-verifiable trusted path in the presence of malware |
US8347398B1 (en) * | 2009-09-23 | 2013-01-01 | Savvystuff Property Trust | Selected text obfuscation and encryption in a local, network and cloud computing environment |
US9703586B2 (en) * | 2010-02-17 | 2017-07-11 | Microsoft Technology Licensing, Llc | Distribution control and tracking mechanism of virtual machine appliances |
US20110202765A1 (en) * | 2010-02-17 | 2011-08-18 | Microsoft Corporation | Securely move virtual machines between host servers |
US8862895B2 (en) * | 2010-04-27 | 2014-10-14 | Fuji Xerox Co., Ltd. | Systems and methods for communication, storage, retrieval, and computation of simple statistics and logical operations on encrypted data |
WO2011150346A2 (en) * | 2010-05-28 | 2011-12-01 | Laurich Lawrence A | Accelerator system for use with secure data storage |
US20110296164A1 (en) * | 2010-05-28 | 2011-12-01 | Mcafee, Inc. | System and method for providing secure network services |
AU2011291640B2 (en) * | 2010-08-18 | 2015-11-12 | Security First Corp. | Systems and methods for securing virtual machine computing environments |
US8681973B2 (en) * | 2010-09-15 | 2014-03-25 | At&T Intellectual Property I, L.P. | Methods, systems, and computer program products for performing homomorphic encryption and decryption on individual operations |
US20120084562A1 (en) * | 2010-10-04 | 2012-04-05 | Ralph Rabert Farina | Methods and systems for updating a secure boot device using cryptographically secured communications across unsecured networks |
US8762964B2 (en) | 2010-12-17 | 2014-06-24 | Cisco Technology, Inc. | Optimizing symbol manipulation language-based executable applications for distributed execution |
US8700906B2 (en) * | 2011-01-14 | 2014-04-15 | Microsoft Corporation | Secure computing in multi-tenant data centers |
CA2775206C (en) | 2011-04-27 | 2019-02-26 | Perspecsys Inc. | System and method of handling requests in a multi-homed reverse proxy |
US9077525B2 (en) * | 2011-06-24 | 2015-07-07 | Microsoft Technology Licensing, Llc | User-controlled data encryption with obfuscated policy |
US9203621B2 (en) * | 2011-07-11 | 2015-12-01 | Hewlett-Packard Development Company, L.P. | Policy-based data management |
US20130019092A1 (en) * | 2011-07-14 | 2013-01-17 | Barracuda Inc. | System to Embed Enhanced Security / Privacy Functions Into a User Client |
GB2497070B (en) * | 2011-11-17 | 2015-11-25 | Advanced Risc Mach Ltd | Cryptographic support instructions |
JP2015503280A (en) * | 2011-11-28 | 2015-01-29 | ポルティコア エルティディ. | A method and apparatus for securing an encryption key in an unsecured computer environment applied to securing and managing virtualization and cloud computing. |
US9208319B2 (en) * | 2011-12-15 | 2015-12-08 | Microsoft Technology Licensing, Llc | Code base partitioning system |
US10191754B2 (en) * | 2012-01-09 | 2019-01-29 | Koninklijke Philips N.V. | Virtual machine device having key driven obfuscation and method |
US8615656B2 (en) * | 2012-01-09 | 2013-12-24 | The Mitre Corporation | Secure remote peripheral encryption tunnel |
US9454666B2 (en) * | 2012-03-26 | 2016-09-27 | Irdeto B.V. | Method for protecting data |
EP2645618A1 (en) * | 2012-03-30 | 2013-10-02 | British Telecommunications Public Limited Company | Method and system for network data access |
EP2672672A1 (en) * | 2012-06-07 | 2013-12-11 | Alcatel-Lucent | Secure data processing |
EP2672673B1 (en) * | 2012-06-07 | 2016-05-25 | Alcatel Lucent | Apparatus and method for secure data processing |
US8656482B1 (en) * | 2012-08-20 | 2014-02-18 | Bitdefender IPR Management Ltd. | Secure communication using a trusted virtual machine |
WO2014059136A2 (en) * | 2012-10-12 | 2014-04-17 | Safelylocked, Llc. | Techniqued for secure data exchange |
US9176838B2 (en) * | 2012-10-19 | 2015-11-03 | Intel Corporation | Encrypted data inspection in a network environment |
GB2508894A (en) * | 2012-12-14 | 2014-06-18 | Ibm | Preventing a trusted boot device from being booted in a virtual machine |
US9535715B2 (en) * | 2012-12-14 | 2017-01-03 | Microsoft Technology Licensing, Llc | Booting from a trusted network image |
US8909967B1 (en) * | 2012-12-31 | 2014-12-09 | Emc Corporation | Technique for secure computation |
US9503268B2 (en) * | 2013-01-22 | 2016-11-22 | Amazon Technologies, Inc. | Securing results of privileged computing operations |
US10063380B2 (en) * | 2013-01-22 | 2018-08-28 | Amazon Technologies, Inc. | Secure interface for invoking privileged operations |
US9055038B1 (en) * | 2013-02-04 | 2015-06-09 | Stealth Software Technologies, Inc. | Apparatus, system, and method to garble programs |
US9141823B2 (en) * | 2013-03-15 | 2015-09-22 | Veridicom, Sa De Cv | Abstraction layer for default encryption with orthogonal encryption logic session object; and automated authentication, with a method for online litigation |
US9361456B2 (en) * | 2013-04-01 | 2016-06-07 | Uniquesoft, Llc | Secure computing device using a library of programs |
US9104862B2 (en) * | 2013-04-01 | 2015-08-11 | Uniquesoft, Llc | Secure computing device using new software versions |
US10275593B2 (en) * | 2013-04-01 | 2019-04-30 | Uniquesoft, Llc | Secure computing device using different central processing resources |
US9424421B2 (en) | 2013-05-03 | 2016-08-23 | Visa International Service Association | Security engine for a secure operating environment |
US9558358B2 (en) * | 2013-06-27 | 2017-01-31 | Visa International Service Association | Random number generator in a virtualized environment |
CN105408913B (en) * | 2013-08-21 | 2019-03-15 | 英特尔公司 | Privacy data are handled in cloud |
CN103559458B (en) * | 2013-10-09 | 2016-08-17 | 广州华迅网络科技有限公司 | Data hash acquisition methods and system thereof |
US9235692B2 (en) * | 2013-12-13 | 2016-01-12 | International Business Machines Corporation | Secure application debugging |
CN111355749A (en) * | 2014-06-18 | 2020-06-30 | 维萨国际服务协会 | Efficient method for authenticated communication |
EP3195521B1 (en) * | 2014-08-29 | 2020-03-04 | Visa International Service Association | Methods for secure cryptogram generation |
US9584517B1 (en) * | 2014-09-03 | 2017-02-28 | Amazon Technologies, Inc. | Transforms within secure execution environments |
CN104243166A (en) * | 2014-09-05 | 2014-12-24 | 深圳市中兴移动通信有限公司 | Recording encryption method and device |
US9735968B2 (en) * | 2014-10-20 | 2017-08-15 | Microsoft Technology Licensing, Llc | Trust service for a client device |
CA2970195A1 (en) * | 2014-12-16 | 2016-06-23 | Kyndi, Inc. | Method and apparatus for randomizing computer instruction sets, memory registers and pointers |
AU2016218981B2 (en) * | 2015-02-13 | 2020-03-05 | Visa International Service Association | Confidential communication management |
US9596263B1 (en) * | 2015-02-23 | 2017-03-14 | Amazon Technolgies, Inc. | Obfuscation and de-obfuscation of identifiers |
US10484168B2 (en) * | 2015-03-02 | 2019-11-19 | Dell Products L.P. | Methods and systems for obfuscating data and computations defined in a secure distributed transaction ledger |
US9712503B1 (en) * | 2015-03-23 | 2017-07-18 | Amazon Technologies, Inc. | Computing instance migration |
US20160294794A1 (en) * | 2015-04-04 | 2016-10-06 | Aleksandar Mancic | Security System For Data Communications Including Key Management And Privacy |
WO2016168487A1 (en) * | 2015-04-14 | 2016-10-20 | Gigavation, Inc. | Paravirtualized security threat protection of a computer-driven system with networked devices |
JP6397590B2 (en) * | 2015-05-19 | 2018-09-26 | クリプトムーヴ, インコーポレイテッドCryptomove, Inc. | Security through data hiding |
US20180089415A1 (en) * | 2015-06-11 | 2018-03-29 | International Business Machines Corporation | User trusted device for detecting a virtualized environment |
US9667606B2 (en) * | 2015-07-01 | 2017-05-30 | Cyphermatrix, Inc. | Systems, methods and computer readable medium to implement secured computational infrastructure for cloud and data center environments |
-
2015
- 2015-07-21 US US14/804,713 patent/US10110566B2/en active Active
-
2016
- 2016-07-20 AU AU2016297559A patent/AU2016297559B2/en active Active
- 2016-07-20 CN CN201680054703.XA patent/CN108476198B/en active Active
- 2016-07-20 DK DK16828463.6T patent/DK3326345T3/en active
- 2016-07-20 KR KR1020187005125A patent/KR102315831B1/en active IP Right Grant
- 2016-07-20 WO PCT/US2016/043117 patent/WO2017015357A1/en active Application Filing
- 2016-07-20 CA CA2998323A patent/CA2998323C/en active Active
- 2016-07-20 JP JP2018523361A patent/JP6880017B2/en active Active
- 2016-07-20 EP EP16828463.6A patent/EP3326345B1/en active Active
-
2018
- 2018-01-21 IL IL257040A patent/IL257040B/en active IP Right Grant
- 2018-09-28 US US16/146,212 patent/US10652216B2/en active Active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2018522291A5 (en) | ||
JP6983890B2 (en) | Computer-enhanced systems and methods for enabling complex functions on the blockchain while maintaining security-based limits on script size and opcode limits. | |
US8681973B2 (en) | Methods, systems, and computer program products for performing homomorphic encryption and decryption on individual operations | |
WO2016094840A3 (en) | System, method & computer readable medium for software protection via composable process-level virtual machines | |
JP2012194992A5 (en) | Data processing apparatus, program, data structure, data processing system, packet data, recording medium, storage device, data processing method, data communication method, and instruction set | |
JP2017200196A5 (en) | ||
JP2014524628A5 (en) | ||
WO2017030625A3 (en) | Loading and virtualizing cryptographic keys | |
CN107346401A (en) | Information Guarantee System for safely configuration processor | |
EP2867785B1 (en) | Method and apparatus for virtual machine interoperability | |
RU2016104608A (en) | SYSTEM FOR JOINT USE OF THE CRYPTOGRAPHIC KEY | |
EP3930252A1 (en) | Countermeasures for side-channel attacks on protected sign and key exchange operations | |
CN111596920B (en) | File compiling method, device, compiling equipment and storage medium | |
EP3757813A3 (en) | Processor cores using packet identifiers for routing and computation | |
US10838719B2 (en) | Carry chain for SIMD operations | |
Luo et al. | Effective simple-power analysis attacks of elliptic curve cryptography on embedded systems | |
Xu et al. | Optimizing speculative execution of deadline-sensitive jobs in cloud | |
Keliris et al. | Investigating large integer arithmetic on Intel Xeon Phi SIMD extensions | |
JP2021506010A5 (en) | ||
KR102528467B1 (en) | Method, device and recording medium for processing division operation | |
CN114611150A (en) | Security mode conversion method and device for privacy numerical value | |
KR102001222B1 (en) | Signal processing apparatus and method | |
EP3391264B1 (en) | Calculating device and method | |
US20150242192A1 (en) | Method and system for hardening of cfg flattening | |
JP5951260B2 (en) | Logical operation device, logical operation method, and program |