rats-tls integrated librats
houhuiting opened this issue · comments
houhuiting commented
librats目前将rats-tls的Crypto Wrapper实例,Enclave Attester实例, Enclave Verifier实例迁移过去,提供了两个api(librats_get_attestation_certificate和librats_verify_attestation_certificate)来生成和验证证书:
- 对Tls Wrapper实例的use_privkey方法进行改造,使得其可以接受PEM格式的privkey
- 对Tls Wrapper实例的use_cert方法进行改造,使其接受uint8_t格式(DER编码)的cert
- 将librats的librats_get_attestation_certificate api集成到rats-tls的librats_get_attestation_certificate() api中
- 对rats_tls_set_verification_callback api进行调整,使其设置的回调函数指针能传入到librats_verify_attestation_certificate中
- 对verify_certificate进行改造,使用librats_verify_attestation_certificate来实现verify_certificate
- 改造rats_tls_cleanup api,使其不再清理被迁移到librats的实例
- 给librats每个api加param,提供一些自定义能力(包括实例选择类型、可以考虑将custom_claims等也放进去)
- 在rats-tls中加入no_privkey参数,让用户可以决定是否使用用户自己提供的privkey。