- Feature Name: openssl-interface
- Start Date: 2019-03-08
- RFC PR:
- Ursa Issue:
- Version: 1
...
Explain the proposal as if it was already included in Ursa and you were teaching it to another Ursa programmer. That generally means:
- Introducing new named concepts.
- Explaining the feature largely in terms of examples.
- Explaining how Ursa programmers should think about the feature, and how it should impact the way they use Ursa. It should explain the impact as concretely as possible.
- If applicable, provide sample error messages, deprecation warnings, or migration guidance.
- If applicable, describe the differences between teaching this to existing Ursa programmers and new Ursa programmers.
- If applicable, describe any changes that may affect the security of communications or administration.Will add Chinese GM/T cryptographic standards or GCCS for short.
- Support SM2(elliptic curve cryptographic), SM3(hash function with 256-bit digest length), SM4, SM9(Signature), ZUC
Reference-level explanation
...
- Its interaction with other features is clear. There is already implementations(wrapper) in difference languages, like golang, java, etc. at https://github.com/guanzhi/GmSSL. Ursa can use the implementation if the current implementation support or re-write in Rust.
- It is reasonably clear how the feature would be implemented.
- Corner cases are dissected by example.
- Any new or altered interfaces should include pseudo-code.. The standards is at http://www.gmbz.org.cn/main/bzlb.html & http://gmssl.org/docs/standards.html, existing implementation is at https://github.com/guanzhi/GmSSL
The section should return to the examples given in the previous section, and explain more fully how the detailed proposal makes those examples work.
...