-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
85 changed files
with
8,752 additions
and
7,611 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,7 +6,6 @@ | |
*.dat | ||
**/config.h | ||
**/adapter_output_data | ||
# device/lib/kri_data/* | ||
# adpater/thirdparty | ||
# **/data/ | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
# List of Changes | ||
|
||
## Version 1.1.0 | ||
|
||
### New Features | ||
|
||
- Added explicit support for other parameter sets (for degree = 1024, 2048, 8192, and 16384, as well as an alternate prime set for degree = 4096) | ||
- Adapter can now just be build once for any of the supported degrees, and degree can be specied as a command line argument | ||
- Added scripts to [`device/scripts`](device/scripts) to automatically test configurations of the library | ||
|
||
### Bug Fixes | ||
|
||
- Added an extra index map setting to fix memory bug encountered in certain edge-case configurations of the library | ||
- Fixed error with generated header files for special primes > 30 bits | ||
- Fixed error with IFFT header file generation | ||
- Fixed error with NTT tests | ||
|
||
### Minor API Changes | ||
|
||
- Scale is now automatically set for default parameters | ||
- `set_custom_parms_ckks` now includes a parameter to set the scale | ||
|
||
### Other | ||
|
||
- Corrected minor typos in code comments | ||
- Added description comments for some functions | ||
- Added `const` and explicit type casting as good practice | ||
- Added `memset` after array creation instances for when `malloc` is not used | ||
- Removed support for degree < 1024, which was just for initial debugging | ||
- Fixed path issue when building for an Azure Sphere A7 target | ||
- Updated adapter [`CMakeLists.txt`](adapter/CMakeLists.txt) to use Microsoft SEAL 3.7.2 | ||
- Other minor code changes | ||
|
||
## Version 1.0.0 | ||
|
||
- Initial commit |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,16 +1,13 @@ | ||
## Correct Use of SEAL-Embedded | ||
|
||
SEAL-Embedded supports encryption with either a secret key (symmetric) or a public key (asymmetric). | ||
A secret key is stored in device flash RAM, and is vulnerable against attacker with physiscal access to the deivce. | ||
Once a secret key is leaked, all previous data encrypted with the secret key or a public key generated by the secret key are at risk. | ||
Deployments of SEAL-Embedded should avoid using symmetric encryption unless has been reviewed by security and cryptography experts. | ||
When symmetric encryption is used, the secret key must be stored in device memory and is thus vulnerable to attackers with access to the device. | ||
Once the secret key is leaked, all previous data encrypted with the secret key (or a public key associated with the secret key) is at risk. | ||
Therefore, deployments of SEAL-Embedded should avoid using symmetric encryption, unless the deployment has been reviewed by security and cryptography experts. | ||
|
||
## Correct Use of Microsoft SEAL | ||
|
||
Homomorphic encryption schemes have various and often unexpected security models that may be surprising even to cryptography experts. | ||
In particular, decryptions of Microsoft SEAL ciphertexts should be treated as private information only available to the secret key owner, as sharing decryptions of ciphertexts may in some cases lead to leaking the secret key. | ||
If it is absolutely necessary to share information about the decryption of a ciphertext, for example when building a protocol of some kind, the number of bits shared should be kept to a minimum, and secret keys should be rotated regularly. | ||
Commercial applications of Microsoft SEAL should be carefully reviewed by cryptography experts who are familiar with homomorphic encryption security models. | ||
Please see the [SECURITY.md document for Microsoft SEAL](https://github.com/microsoft/SEAL/blob/main/SECURITY.md#correct-use-of-microsoft-seal). | ||
|
||
## Security | ||
|
||
|
@@ -24,7 +21,7 @@ If you believe you have found a security vulnerability in any Microsoft-owned re | |
|
||
Instead, please report them to the Microsoft Security Response Center (MSRC) at [https://msrc.microsoft.com/create-report](https://msrc.microsoft.com/create-report). | ||
|
||
If you prefer to submit without logging in, send email to [[email protected]](mailto:[email protected]). If possible, encrypt your message with our PGP key; please download it from the [Microsoft Security Response Center PGP Key page](https://www.microsoft.com/en-us/msrc/pgp-key-msrc). | ||
If you prefer to submit without logging in, send an email to [[email protected]](mailto:[email protected]). If possible, encrypt your message with our PGP key; please download it from the [Microsoft Security Response Center PGP Key page](https://www.microsoft.com/en-us/msrc/pgp-key-msrc). | ||
|
||
You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Additional information can be found at [microsoft.com/msrc](https://www.microsoft.com/msrc). | ||
|
||
|
@@ -50,4 +47,4 @@ We prefer all communications to be in English. | |
|
||
Microsoft follows the principle of [Coordinated Vulnerability Disclosure](https://www.microsoft.com/en-us/msrc/cvd). | ||
|
||
<!-- END MICROSOFT SECURITY.MD BLOCK --> | ||
<!-- END MICROSOFT SECURITY.MD BLOCK --> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.