From 34269b3b81d48e8f9e2961c43437412678d71a89 Mon Sep 17 00:00:00 2001 From: Annie_wang Date: Thu, 8 Jun 2023 15:14:11 +0800 Subject: [PATCH] update docs Signed-off-by: Annie_wang --- README-en.md | 70 ++++++++++++++++++ README.en.md | 36 --------- .../certificate_framework_architecture.png | Bin 0 -> 56479 bytes 3 files changed, 70 insertions(+), 36 deletions(-) create mode 100644 README-en.md delete mode 100644 README.en.md create mode 100644 figures/certificate_framework_architecture.png diff --git a/README-en.md b/README-en.md new file mode 100644 index 0000000..7558a8c --- /dev/null +++ b/README-en.md @@ -0,0 +1,70 @@ +# Certificate Framework + +## Introduction +The certificate framework shields the implementation differences of third-party certificate algorithm libraries. It provides the capabilities of parsing and verifying certificates, certificate extensions, and certificate revocation lists (CRLs), and verifying certificate chains. You can use the APIs provided by the certificate framework to easily complete your development. + +**Figure 1** Certificate framework architecture + + +![](figures/certificate_framework_architecture.png) + +The certificate framework consists of the following: + +- API layer: provides unified JavaScript interfaces to implement capabilities, including parsing certificates, certificate extensions, and CRLs and verifying certificate chains. + * Certificate operations include obtaining the version number, serial number (SN), issuer, subject, signature algorithm, and public key of the certificate based on the certificate data passed by the service. + * Certificate extension operations include obtaining the object identifier (OID) list of the certificate extensions based on the certificate extension fields passed by the service and obtaining specific data based on the OID. + * CRL operations include obtaining revoked certificates, SNs, issuers, and revocation time of the certificates based on the CRL. + * Certificate chain operations include verifying the validity of a certificate chain based on the certificate chain data passed by the service. +- Framework implementation layer: manages internal objects and flexibly loads the algorithm library adaptation layer to adapt to the algorithm and shield differences between the third-party algorithm libraries. +- Algorithm library adaptation layer: calls specific APIs of the OpenSSL or Mbed TLS algorithm library to provide capabilities, such as parsing certificates and obtaining certificate fields, for services. + +## Directory Structure +``` +base/security/certificate_framwork +├── bundle.json # Component configuration file +├── cf.gni # Compilation configuration file +├── config # Configuration related to the build +├── figures # Figures used in the README +├── frameworks # Framework implementation layer +│ ├── ability # Abilities of the framework layer +│ ├── adapter # Algorithm library adaptation layer +│ ├── common # Common methods relied on internally +│ ├── core # Certificate framework implementation +│ └── js +│ └── napi # JS interfaces encapsulated by NAPI +├── interfaces # APIs exposed externally +└── test # Test cases +``` + +## Building the Certificate Framework + +In the root directory of the OpenHarmony source code, run the following command to separately build the certificate framework component: +```shell +./build.sh --product-name rk3568 --ccache --build-target certificate_framework +``` +> **NOTE** +> +> --**product-name** indicates the product name, for example, **rk3568**. +> +> --**ccache** indicates the cache function used during the compilation. +> +> --**build-target** indicates the name of the component to build. + + +## Usage + +### Available APIs + + + +### How to Use + + + +## Repositories Involved + +[Security subsystem](https://gitee.com/openharmony/docs/blob/master/en/readme/Security.md) + +[security\_crypto\_framework](https://gitee.com/openharmony/security_crypto_framework) + +[**security\_certificate\_framework**](https://gitee.com/openharmony-sig/security_certificate_framework) diff --git a/README.en.md b/README.en.md deleted file mode 100644 index 120792f..0000000 --- a/README.en.md +++ /dev/null @@ -1,36 +0,0 @@ -# security_certificate_framework - -#### Description -{**When you're done, you can delete the content in this README and update the file with details for others getting started with your repository**} - -#### Software Architecture -Software architecture description - -#### Installation - -1. xxxx -2. xxxx -3. xxxx - -#### Instructions - -1. xxxx -2. xxxx -3. xxxx - -#### Contribution - -1. Fork the repository -2. Create Feat_xxx branch -3. Commit your code -4. Create Pull Request - - -#### Gitee Feature - -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) -4. The most valuable open source project [GVP](https://gitee.com/gvp) -5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) -6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/figures/certificate_framework_architecture.png b/figures/certificate_framework_architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..cdcb1d8d8300b8401bf8bf0b14eb1ddfc79510fb GIT binary patch literal 56479 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 tA^HEFV)}wSN!vTgKP;dAAV5@%gTx-