X509 Provider类定义
更多...
#include <x509_provider.h>
X509 Provider类定义
- Swsid
- SWS_CRYPT_40600
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- class
- 符号
- ara::crypto::x509::X509Provider
- 范围
- namespace ara::crypto::x509
- 基类
- N/A
- 分类
- ara
- 头文件
-
- 注解
- N/A
- 模板参数
-
在文件 第 行定义.
◆ Uptr
X509 Provider的共享智能指针
- Swsid
- SWS_CRYPT_40601
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- type alias
- 符号
- Uptr
- 范围
- class ara::crypto::x509::X509Provider
- 派生来源
- std::unique_ptr<X509Provider>
- 分类
- ara
- 头文件
-
- 注解
- N/A
在文件 第 行定义.
◆ ~X509Provider()
| virtual ara::crypto::x509::X509Provider::~X509Provider |
( |
| ) |
|
|
virtualdefaultnoexcept |
X509Provider析构函数
- 模板参数
-
- 参数
-
| [in] | N/A | |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- N/A
- 注解
- N/A
- 错误码偏差项
- N/A
- 异常
-
- Swsid
- SWS_CRYPT_40604
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- reentrant
- Fireandforget
- no
- 错误
- N/A
- 头文件
-
- 异常安全
- noexcept
- 分类
- ara
◆ CountCertsInChain()
计数由单个 BLOB 表示的序列化证书链中的证书数
- 模板参数
-
- 参数
-
| [in] | certChain | PEM 编码的证书链(每个证书由输入向量中的单独 BLOB 提供) |
| [in] | formatId | 输入格式标识符(kFormatDefault 表示自动检测证书类型) |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- ara::core::Result<std::size_t> 证书链内的证书个数
- 注解
- [Error]CryptoError::kInvalidArgument 证书链无法解析
-
[Error]CryptoError::kUnknownIdentifier formatId 为不支持的证书格式(只支持pem证书)
- 错误码偏差项
- N/A
- 异常
-
- Swsid
- SWS_CRYPT_40615
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- reentrant
- Fireandforget
- no
- 错误
- N/A
- 头文件
-
- 异常安全
- noexcept
◆ Import()
| virtual ara::core::Result<void> ara::crypto::x509::X509Provider::Import |
( |
const Certificate & |
cert, |
|
|
ara::core::Optional< ara::core::InstanceSpecifier > |
iSpecify |
|
) |
| |
|
pure virtualnoexcept |
导入证书 ,此接口受IAM访问控制
- 模板参数
-
- 参数
-
| [in] | cert | 导入的证书对象 |
| [in] | iSpecify | 指定的证书名,格式为SlotXXX/certname,例如"Slot193/device" |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- ara::core::Result<void> 导入结果
- 注解
- [Error]CryptoError::kInvalidArgument 证书无效(证书对象无法导出)
-
[Error]CryptoError::kContentDuplication 证书已经存在于指定文件系统内
-
[Error]CryptoError::kAccessViolation 受IAM访问控制限制
- 错误码偏差项
- N/A
- 异常
-
- Swsid
- SWS_CRYPT_40621
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- reentrant
- Fireandforget
- no
- 错误
- N/A
- 头文件
-
- 异常安全
- noexcept
◆ ImportCertChain()
| virtual ara::core::Result<void> ara::crypto::x509::X509Provider::ImportCertChain |
( |
const ara::core::Vector< Certificate::Uptr > & |
cert, |
|
|
ara::core::InstanceSpecifier & |
iSpecify |
|
) |
| |
|
pure virtualnoexcept |
导入证书链到指定的文件内,此接口受IAM访问控制
- 模板参数
-
- 参数
-
| [in] | cert | 导入的证书链对象vector |
| [in] | iSpecify | 指定的证书名,格式为SlotXXX/certname, 例如:"Slot193/device" |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- ara::core::Result<void> 导入结果
- 注解
- [Error]CryptoError::kInvalidArgument 证书无效(证书对象无法导出)
-
[Error]CryptoError::kContentDuplication 证书已经存在于指定文件内
-
[Error]CryptoError::kAccessViolation 受IAM访问控制限制
- 错误码偏差项
- N/A
- 异常
-
- Swsid
- User_defined_Crypto_00002
- 符合标准
- no
- 非标原因
- 新增
- 种类
- function
- 可见
- public
- 线程安全
- reentrant
- Fireandforget
- no
- 错误
- N/A
- 头文件
-
- 异常安全
- noexcept
◆ LoadCertificate()
| virtual ara::core::Result<Certificate::Uptr> ara::crypto::x509::X509Provider::LoadCertificate |
( |
ara::core::InstanceSpecifier & |
iSpecify | ) |
|
|
pure virtualnoexcept |
加载证书
- 模板参数
-
- 参数
-
| [in] | iSpecify | 加载的目标证书标识 定义格式例如:Slot193/cacert |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- ara::core::Result<Certificate::Uptr> 证书对象的智能指针
- 注解
- [Error]CryptoError::kUnreservedResource 没找到对应的证书
-
[Error]CryptoError::kAccessViolation 受IAM访问控制限制
- 错误码偏差项
- N/A
- 异常
-
- Swsid
- SWS_CRYPT_40641
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- reentrant
- Fireandforget
- no
- 错误
- N/A
- 头文件
-
- 异常安全
- noexcept
◆ operator=() [1/2]
将另一个 X509Provider 复制赋值给此实例
- 模板参数
-
- 参数
-
- 返回
- X509Provider &, *this 包含其他实例内容
- 注解
- N/A
- 错误码偏差项
- N/A
- 异常
-
- Swsid
- SWS_CRYPT_30226
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- reentrant
- Fireandforget
- no
- 错误
- N/A
- 头文件
-
- 异常安全
- noexcept
- 分类
- ara
◆ operator=() [2/2]
将另一个 X509Provider 移动赋值给此实例
- 模板参数
-
- 参数
-
- 返回
- X509Provider &, *this 包含其他实例内容
- 注解
- N/A
- 错误码偏差项
- N/A
- 异常
-
- Swsid
- SWS_CRYPT_30227
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- reentrant
- Fireandforget
- no
- 错误
- N/A
- 头文件
-
- 异常安全
- noexcept
- 分类
- ara
◆ ParseCert()
解析证书的序列化表示并创建其实例。
- 模板参数
-
- 参数
-
| [in] | cert | DER/PEM 编码的证书 |
| [in] | formatId | 输入格式标识符(kFormatDefault 表示自动检测证书类型) |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- ara::core::Result< Certificate::Uptr > 指向证书对象的智能指针
- 注解
- [Error]CryptoError::kInvalidArgument 证书无法解析
-
[Error]CryptoError::kUnknownIdentifier formatId 为不支持的证书格式
- 错误码偏差项
- N/A
- 异常
-
- Swsid
- SWS_CRYPT_40614
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- reentrant
- Fireandforget
- no
- 错误
- N/A
- 头文件
-
- 异常安全
- noexcept
◆ ParseCertChain()
解析证书链的序列化表示并创建它们的实例
- 模板参数
-
- 参数
-
| [in] | certChain | PEM 编码的证书链 |
| [in] | formatId | 输入格式标识符(kFormatDefault 表示自动检测证书类型) |
| [out] | outcome | 解析出来的证书对象的集合 |
| [in,out] | N/A | |
- 返回
- ara::core::Result<void> 无
- 注解
- [Error]CryptoError::kInvalidArgument 证书链无法解析
-
[Error]CryptoError::kUnknownIdentifier formatId 为不支持的证书格式
- 错误码偏差项
- N/A
- 异常
-
- Swsid
- SWS_CRYPT_40616
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- reentrant
- Fireandforget
- no
- 错误
- N/A
- 头文件
-
- 异常安全
- noexcept
◆ Remove()
删除证书对象
- 模板参数
-
- 参数
-
| [in] | cert | 待删除的证书智能指针 |
| [in] | N/A | |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- bool 是否成功删除
- 注解
- 系统默认根证书cacert 不能删除
- 错误码偏差项
- N/A
- 异常
-
- Swsid
- SWS_CRYPT_40622
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- reentrant
- Fireandforget
- no
- 错误
- N/A
- 头文件
-
- 异常安全
- noexcept
◆ VerifyCert()
验证证书状态
- 模板参数
-
- 参数
-
| [in] | cert | 目标验证证书 |
| [in] | myRoot | 用于验证的根证书,如果为空,将使用设备默认的根证书 |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- Certificate::Status 证书状态 ,参考
Certificate::Status
- 注解
- N/A
- 错误码偏差项
- N/A
- 异常
-
- Swsid
- SWS_CRYPT_40618
- 符合标准
- yes
- 非标原因
- N/A
- 种类
- function
- 可见
- public
- 线程安全
- reentrant
- Fireandforget
- no
- 错误
- N/A
- 头文件
-
- 异常安全
- noexcept
◆ VerifyCertChain()
验证证书链状态
- 模板参数
-
- 参数
-
| [in] | chain | 目标待验证的证书链 (证书链顺序要求 index 0 为根证书) |
| [in] | myRoot | 用于验证的根证书,如果为空,将使用设备默认的根证书 |
| [out] | N/A | |
| [in,out] | N/A | |
- 返回
- Certificate::Status 证书链状态 ,参考
Certificate::Status
- 注解
- N/A
- 错误码偏差项
- N/A
- 异常
-
- Swsid
- SWS_CRYPT_40619
- 符合标准
- no
- 非标原因
- 接口定义成const,myRoot=nullptr无法加载系统默认根证书
- 种类
- function
- 可见
- public
- 线程安全
- reentrant
- Fireandforget
- no
- 错误
- N/A
- 头文件
-
- 异常安全
- noexcept