libpki icon indicating copy to clipboard operation
libpki copied to clipboard

Library Design Refactoring and Code Re-Organization

Open opencrypto opened this issue 1 year ago • 0 comments

The refactoring of the Crypto layer is long due. This pull request covers a comprehensive refactoring of the library to allow for better code management and easier use of the library:

CRYPTO Level Refactoring:

  • Add a new CRYPTO layer to correctly handle key pairs and low-level crypto operations
  • Refactor the HSM layer to provide HSM management, KEY storage, and crypto functions
  • Remove support for network in/out functionalities from the HSM layer
  • Integrate Composite Crypto from external providers
  • Remove old experimental code

X509 Layer Refactoring (low level):

  • Add a new X509 abstraction layer to correctly handle X509 structures and functions
  • Provide a generalized layer to create, destroy, and manage X509 data structures
  • Define layer's boundaries (X509 vs. PKIX)

PKIX Layer Addition (higher level):

  • Add a new PKIX abstraction layer to correctly handle PKIX protocols
  • Move all PKIX functionalities to this layer

X9F Layer Addition (protocol layer):

  • Add support for ISARA Catalyst extensions (X509 layer)
  • Add support for ISARA Catalyst Certificate Signing (X509 layer)
  • Add support for X9 CKS Hello Extension (X509 layer)
  • Add support for X9 MFA CertificateVerify extension (X509 layer)

TLS Layer Refactoring:

  • Simplify and extend support for TLS
  • Move TLS to a new abstraction layer from the net utils
  • Add support for QTLS when using ISARA Catal (TLS layer)

opencrypto avatar Sep 02 '24 01:09 opencrypto