-
Notifications
You must be signed in to change notification settings - Fork 352
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Windows: Implement crypto functions for host on BCrypt #375
Labels
core
Issue is related to the core design of Open Enclave and its default 3rd party libs
functionality
Issue describes an enhancement or addition of functionality to Open Enclave SDK
windows
Issue has to do with supporting Open Enclave on Windows
Projects
Milestone
Comments
8 tasks
8 tasks
mbed test has been enabled on Windows (PR #1372 ) |
CodeMonkeyLeet
pushed a commit
that referenced
this issue
Jul 30, 2019
- Implement host/crypto/bcrypt parity with openssl for Windows. - Refactor rsa.c to share code with new ec.c via key.c. - Add PEM encoding functions for Windows crypto implementation. - Standardize constant names in internal/pem.h include header. - Change common/cert.c to only provide `oe_get_crl_distribution_points()` impl on OpenSSL/mbedTLS Linux builds. - host/crypto/bcrypt/cert.c provides the Windows impl. - Enable tests/crypto cert, crl, EC and RSA tests on Windows. - ASN tests are not enabled or supported on Windows. - Enclave tests/crypto_crls_cert_chain on Windows. Fixes #375
CodeMonkeyLeet
pushed a commit
that referenced
this issue
Jul 30, 2019
- Implement host/crypto/bcrypt parity with openssl for Windows. - Refactor rsa.c to share code with new ec.c via key.c. - Add PEM encoding functions for Windows crypto implementation. - Standardize constant names in internal/pem.h include header. - Change common/cert.c to only provide `oe_get_crl_distribution_points()` impl on OpenSSL/mbedTLS Linux builds. - host/crypto/bcrypt/cert.c provides the Windows impl. - Enable tests/crypto cert, crl, EC and RSA tests on Windows. - ASN tests are not enabled or supported on Windows. - Enclave tests/crypto_crls_cert_chain on Windows. Fixes #375
CodeMonkeyLeet
pushed a commit
that referenced
this issue
Jul 30, 2019
- Implement host/crypto/bcrypt parity with openssl for Windows. - Refactor rsa.c to share code with new ec.c via key.c. - Add PEM encoding functions for Windows crypto implementation. - Standardize constant names in internal/pem.h include header. - Change common/cert.c to only provide `oe_get_crl_distribution_points()` impl on OpenSSL/mbedTLS Linux builds. - host/crypto/bcrypt/cert.c provides the Windows impl. - Enable tests/crypto cert, crl, EC and RSA tests on Windows. - ASN tests are not enabled or supported on Windows. - Enclave tests/crypto_crls_cert_chain on Windows. Fixes #375
CodeMonkeyLeet
pushed a commit
that referenced
this issue
Aug 1, 2019
- Implement host/crypto/bcrypt parity with openssl for Windows. - Refactor rsa.c to share code with new ec.c via key.c. - Add PEM encoding functions for Windows crypto implementation. - Standardize constant names in internal/pem.h include header. - Change common/cert.c to only provide `oe_get_crl_distribution_points()` impl on OpenSSL/mbedTLS Linux builds. - host/crypto/bcrypt/cert.c provides the Windows impl. - Enable tests/crypto cert, crl, EC and RSA tests on Windows. - ASN tests are not enabled or supported on Windows. - Enclave tests/crypto_crls_cert_chain on Windows. Fixes #375
CodeMonkeyLeet
pushed a commit
that referenced
this issue
Aug 1, 2019
- Implement host/crypto/bcrypt parity with openssl for Windows. - Refactor rsa.c to share code with new ec.c via key.c. - Add PEM encoding functions for Windows crypto implementation. - Standardize constant names in internal/pem.h include header. - Change common/cert.c to only provide `oe_get_crl_distribution_points()` impl on OpenSSL/mbedTLS Linux builds. - host/crypto/bcrypt/cert.c provides the Windows impl. - Enable tests/crypto cert, crl, EC and RSA tests on Windows. - ASN tests are not enabled or supported on Windows. - Enclave tests/crypto_crls_cert_chain on Windows. Fixes #375
CodeMonkeyLeet
pushed a commit
that referenced
this issue
Aug 2, 2019
- Implement host/crypto/bcrypt parity with openssl for Windows. - Refactor rsa.c to share code with new ec.c via key.c. - Add PEM encoding functions for Windows crypto implementation. - Standardize constant names in internal/pem.h include header. - Change common/cert.c to only provide `oe_get_crl_distribution_points()` impl on OpenSSL/mbedTLS Linux builds. - host/crypto/bcrypt/cert.c provides the Windows impl. - Enable tests/crypto cert, crl, EC and RSA tests on Windows. - ASN tests are not enabled or supported on Windows. - Enable tests/crypto_crls_cert_chain on Windows. - Disable positive tests with extra certs on Windows, revisit this as part of #1593. Fixes #375
CodeMonkeyLeet
pushed a commit
that referenced
this issue
Aug 2, 2019
- Implement host/crypto/bcrypt parity with openssl for Windows. - Refactor rsa.c to share code with new ec.c via key.c. - Add PEM encoding functions for Windows crypto implementation. - Standardize constant names in internal/pem.h include header. - Change common/cert.c to only provide `oe_get_crl_distribution_points()` impl on OpenSSL/mbedTLS Linux builds. - host/crypto/bcrypt/cert.c provides the Windows impl. - Enable tests/crypto cert, crl, EC and RSA tests on Windows. - ASN tests are not enabled or supported on Windows. - Enable tests/crypto_crls_cert_chain on Windows. - Disable positive tests with extra certs on Windows, revisit this as part of #1593. Fixes #375
CodeMonkeyLeet
pushed a commit
that referenced
this issue
Aug 3, 2019
- Implement host/crypto/bcrypt parity with openssl for Windows. - Refactor rsa.c to share code with new ec.c via key.c. - Add PEM encoding functions for Windows crypto implementation. - Standardize constant names in internal/pem.h include header. - Change common/cert.c to only provide `oe_get_crl_distribution_points()` impl on OpenSSL/mbedTLS Linux builds. - host/crypto/bcrypt/cert.c provides the Windows impl. - Enable tests/crypto cert, crl, EC and RSA tests on Windows. - ASN tests are not enabled or supported on Windows. - Enable tests/crypto_crls_cert_chain on Windows. - Disable positive tests with extra certs on Windows, revisit this as part of #1593. Fixes #375
CodeMonkeyLeet
pushed a commit
that referenced
this issue
Aug 9, 2019
- Implement host/crypto/bcrypt parity with openssl for Windows. - Refactor rsa.c to share code with new ec.c via key.c. - Add PEM encoding functions for Windows crypto implementation. - Standardize constant names in internal/pem.h include header. - Change common/cert.c to only provide `oe_get_crl_distribution_points()` impl on OpenSSL/mbedTLS Linux builds. - host/crypto/bcrypt/cert.c provides the Windows impl. - Enable tests/crypto cert, crl, EC and RSA tests on Windows. - ASN tests are not enabled or supported on Windows. - Enable tests/crypto_crls_cert_chain on Windows. - Disable positive tests with extra certs on Windows, revisit this as part of #1593. Fixes #375
CodeMonkeyLeet
pushed a commit
that referenced
this issue
Aug 14, 2019
- Implement host/crypto/bcrypt parity with openssl for Windows. - Refactor rsa.c to share code with new ec.c via key.c. - Add PEM encoding functions for Windows crypto implementation. - Standardize constant names in internal/pem.h include header. - Change common/cert.c to only provide `oe_get_crl_distribution_points()` impl on OpenSSL/mbedTLS Linux builds. - host/crypto/bcrypt/cert.c provides the Windows impl. - Enable tests/crypto cert, crl, EC and RSA tests on Windows. - ASN tests are not enabled or supported on Windows. - Enable tests/crypto_crls_cert_chain on Windows. - Disable positive tests with extra certs on Windows, revisit this as part of #1593. Fixes #375
oe-bors bot
pushed a commit
that referenced
this issue
Aug 14, 2019
2072: Implement host crypto functions on BCrypt for Windows r=CodeMonkeyLeet a=CodeMonkeyLeet This change set brings Windows `host/crypto/bcrypt` implementations up to parity with the `openssl` equivalents for Linux and includes the following: - Implement missing cert.c, crl.c, ec.c functions. - Refactor rsa.c to share code with new ec.c via key.c. - Add PEM encoding functions for Windows crypto implementation. - Standardize constant names in internal/pem.h include header. - Change common/cert.c to only provide `oe_get_crl_distribution_points()` impl on OpenSSL/mbedTLS Linux builds. - host/crypto/bcrypt/cert.c provides the Windows impl. - Enable tests/crypto cert, CRL, EC and RSA tests on Windows. - ASN tests are not enabled or supported on Windows. - Enable tests/crypto_crls_cert_chain on Windows. - Disable positive tests with extra certs on Windows, revisit this as part of #1593. Fixes #375 Co-authored-by: Simon Leet <simon.leet@microsoft.com>
CodeMonkeyLeet
pushed a commit
that referenced
this issue
Aug 14, 2019
- Implement host/crypto/bcrypt parity with openssl for Windows. - Refactor rsa.c to share code with new ec.c via key.c. - Add PEM encoding functions for Windows crypto implementation. - Standardize constant names in internal/pem.h include header. - Change common/cert.c to only provide `oe_get_crl_distribution_points()` impl on OpenSSL/mbedTLS Linux builds. - host/crypto/bcrypt/cert.c provides the Windows impl. - Enable tests/crypto cert, crl, EC and RSA tests on Windows. - ASN tests are not enabled or supported on Windows. - Enable tests/crypto_crls_cert_chain on Windows. - Disable positive tests with extra certs on Windows, revisit this as part of #1593. Fixes #375
oe-bors bot
pushed a commit
that referenced
this issue
Aug 14, 2019
2072: Implement host crypto functions on BCrypt for Windows r=CodeMonkeyLeet a=CodeMonkeyLeet This change set brings Windows `host/crypto/bcrypt` implementations up to parity with the `openssl` equivalents for Linux and includes the following: - Implement missing cert.c, crl.c, ec.c functions. - Refactor rsa.c to share code with new ec.c via key.c. - Add PEM encoding functions for Windows crypto implementation. - Standardize constant names in internal/pem.h include header. - Change common/cert.c to only provide `oe_get_crl_distribution_points()` impl on OpenSSL/mbedTLS Linux builds. - host/crypto/bcrypt/cert.c provides the Windows impl. - Enable tests/crypto cert, CRL, EC and RSA tests on Windows. - ASN tests are not enabled or supported on Windows. - Enable tests/crypto_crls_cert_chain on Windows. - Disable positive tests with extra certs on Windows, revisit this as part of #1593. Fixes #375 Co-authored-by: Simon Leet <simon.leet@microsoft.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
core
Issue is related to the core design of Open Enclave and its default 3rd party libs
functionality
Issue describes an enhancement or addition of functionality to Open Enclave SDK
windows
Issue has to do with supporting Open Enclave on Windows
The host side implementation of crypto functions (other than hashing) are all not yet implemented. This means that features such as loading unsigned debug enclaves, which test sign during loading, will fail.
This issue includes refactoring existing BCrypt implementations on the host side used by oesign:
host/crypto/bcrypt/rsa.c
has copied structs and functions fromhost/crypto/openssl/[rsa.c|keys.[c|h]]
, so they need to be consolidated.This also includes enabling the following tests for enclaves on Windows:
This has a dependency on #839 as mbedtls has a dependency on CPUID in enclaves which OE provides through handling the illegal instruction exception.
This is related to the #1003 in terms of the broader crypto API refactor.
The text was updated successfully, but these errors were encountered: