1e41f4b71Sopenharmony_ci# Certificate Changelog 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci## cl.cert.1 Change of X509Crl Interfaces 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ci**Access Level** 6e41f4b71Sopenharmony_ci 7e41f4b71Sopenharmony_ciOpen API 8e41f4b71Sopenharmony_ci 9e41f4b71Sopenharmony_ci**Reason for Change** 10e41f4b71Sopenharmony_ci 11e41f4b71Sopenharmony_ci- Changed **X509crl** interfaces to **X509CRL** interfaces to comply with the CRL description defined in specifications. 12e41f4b71Sopenharmony_ci- Changed the type of **serialNumber** in **getRevokedCert** from number to bigint to comply with the certificate serial number defined in specifications. 13e41f4b71Sopenharmony_ci 14e41f4b71Sopenharmony_ci 15e41f4b71Sopenharmony_ci**Change Impact** 16e41f4b71Sopenharmony_ci 17e41f4b71Sopenharmony_ciThis change is a non-compatible change. Since API version 11, use **X509CRL** interfaces instead of **X509Crl** interfaces. The interface functionality remains unchanged. 18e41f4b71Sopenharmony_ci 19e41f4b71Sopenharmony_ci**Change Since** 20e41f4b71Sopenharmony_ci 21e41f4b71Sopenharmony_ciOpenHarmony SDK 4.1.3.5 22e41f4b71Sopenharmony_ci 23e41f4b71Sopenharmony_ci**Key API/Component Changes** 24e41f4b71Sopenharmony_ci 25e41f4b71Sopenharmony_ciBefore change: 26e41f4b71Sopenharmony_ci 27e41f4b71Sopenharmony_ci ```js 28e41f4b71Sopenharmony_ciinterface X509Crl { 29e41f4b71Sopenharmony_ci ... 30e41f4b71Sopenharmony_ci getRevokedCert(serialNumber: number): X509CrlEntry; 31e41f4b71Sopenharmony_ci getRevokedCertWithCert(cert: X509Cert): X509CrlEntry; 32e41f4b71Sopenharmony_ci getRevokedCerts(callback: AsyncCallback<Array<X509CrlEntry>>): void; 33e41f4b71Sopenharmony_ci getRevokedCerts(): Promise<Array<X509CrlEntry>>; 34e41f4b71Sopenharmony_ci getTbsInfo(): DataBlob; 35e41f4b71Sopenharmony_ci ... 36e41f4b71Sopenharmony_ci}; 37e41f4b71Sopenharmony_cifunction createX509Crl(inStream: EncodingBlob, callback: AsyncCallback<X509Crl>): void; 38e41f4b71Sopenharmony_cifunction createX509Crl(inStream: EncodingBlob): Promise<X509Crl>; 39e41f4b71Sopenharmony_ci ``` 40e41f4b71Sopenharmony_ci 41e41f4b71Sopenharmony_ciAfter change: 42e41f4b71Sopenharmony_ci 43e41f4b71Sopenharmony_ci ```js 44e41f4b71Sopenharmony_ciinterface X509CRL { 45e41f4b71Sopenharmony_ci ... 46e41f4b71Sopenharmony_ci getRevokedCert(serialNumber: bigint): X509CRLEntry; 47e41f4b71Sopenharmony_ci getRevokedCertWithCert(cert: X509Cert): X509CRLEntry; 48e41f4b71Sopenharmony_ci getRevokedCerts(callback: AsyncCallback<Array<X509CRLEntry>>): void; 49e41f4b71Sopenharmony_ci getRevokedCerts(): Promise<Array<X509CRLEntry>>; 50e41f4b71Sopenharmony_ci getTBSInfo(): DataBlob; 51e41f4b71Sopenharmony_ci ... 52e41f4b71Sopenharmony_ci}; 53e41f4b71Sopenharmony_cifunction createX509CRL(inStream: EncodingBlob, callback: AsyncCallback<X509CRL>): void; 54e41f4b71Sopenharmony_cifunction createX509CRL(inStream: EncodingBlob): Promise<X509CRL>; 55e41f4b71Sopenharmony_ci ``` 56e41f4b71Sopenharmony_ci 57e41f4b71Sopenharmony_ci**Adaptation Guide** 58e41f4b71Sopenharmony_ci 59e41f4b71Sopenharmony_ciSee [Certificate Development Guide](../../../application-dev/security/cert-guidelines.md) and [Certificate APIs](../../../application-dev/reference/apis/js-apis-cert.md). 60e41f4b71Sopenharmony_ci 61e41f4b71Sopenharmony_ci## cl.cert.2 X509CrlEntry Interface Change 62e41f4b71Sopenharmony_ci 63e41f4b71Sopenharmony_ci**Access Level** 64e41f4b71Sopenharmony_ci 65e41f4b71Sopenharmony_ciOpen API 66e41f4b71Sopenharmony_ci 67e41f4b71Sopenharmony_ci**Reason for Change** 68e41f4b71Sopenharmony_ci 69e41f4b71Sopenharmony_ci- Changed the **X509CrlEntry** interfaces to **X509CRLEntry** interfaces to comply with the CRL description defined in specifications. 70e41f4b71Sopenharmony_ci 71e41f4b71Sopenharmony_ci- Changed the type of the return value of **getSerialNumber** from number to bigint to comply with the certificate serial number defined in specifications. 72e41f4b71Sopenharmony_ci 73e41f4b71Sopenharmony_ci**Change Impact** 74e41f4b71Sopenharmony_ci 75e41f4b71Sopenharmony_ciThis change is a non-compatible change. Since API version 11, use the **X509CRLEntry** interfaces instead of the **X509CrlEntry** interfaces. 76e41f4b71Sopenharmony_ci 77e41f4b71Sopenharmony_ci**Change Since** 78e41f4b71Sopenharmony_ci 79e41f4b71Sopenharmony_ciOpenHarmony SDK 4.1.3.5 80e41f4b71Sopenharmony_ci 81e41f4b71Sopenharmony_ci**Key API/Component Changes** 82e41f4b71Sopenharmony_ci 83e41f4b71Sopenharmony_ciBefore change: 84e41f4b71Sopenharmony_ci 85e41f4b71Sopenharmony_ci ```js 86e41f4b71Sopenharmony_ciinterface X509CrlEntry { 87e41f4b71Sopenharmony_ci ... 88e41f4b71Sopenharmony_ci getSerialNumber(): number; 89e41f4b71Sopenharmony_ci ... 90e41f4b71Sopenharmony_ci} 91e41f4b71Sopenharmony_ci ``` 92e41f4b71Sopenharmony_ci 93e41f4b71Sopenharmony_ciAfter change: 94e41f4b71Sopenharmony_ci 95e41f4b71Sopenharmony_ci ```js 96e41f4b71Sopenharmony_ciinterface X509CRLEntry { 97e41f4b71Sopenharmony_ci ... 98e41f4b71Sopenharmony_ci getSerialNumber(): bigint; 99e41f4b71Sopenharmony_ci ... 100e41f4b71Sopenharmony_ci} 101e41f4b71Sopenharmony_ci ``` 102e41f4b71Sopenharmony_ci 103e41f4b71Sopenharmony_ci**Adaptation Guide** 104e41f4b71Sopenharmony_ci 105e41f4b71Sopenharmony_ciSee [Certificate Development Guide](../../../application-dev/security/cert-guidelines.md) and [Certificate APIs](../../../application-dev/reference/apis/js-apis-cert.md). 106