P4 Crypto 100% 完成: 翻译 SWS_CryptoServiceManager (202 页, 37 API, 35 ECUC 容器)
This commit is contained in:
committed by
xiaohei
parent
b5491b694c
commit
1dd90654f1
@@ -0,0 +1,561 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>AUTOSAR SWS CryptoServiceManager 中文翻译</title>
|
||||
<link rel="stylesheet" href="../assets/style.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h1>AUTOSAR_SWS_CryptoServiceManager 中文翻译</h1>
|
||||
<p class="meta">文档编号:402 | 状态:Final(正式发布) | 发布于:AUTOSAR CP Release 4.4.0(2018-10-31)<br>
|
||||
所属标准:AUTOSAR Classic Platform 标准 | 文档责任方:AUTOSAR | 保密等级:AUTOSAR CONFIDENTIAL</p>
|
||||
|
||||
<p class="meta-2">本翻译覆盖原文档 1-202 页正文,约 3.20 MB / 202 页。<br>
|
||||
原文为软件规范(SWS, Software Specification),定义密码服务管理器(Crypto Service Manager, CSM)模块——密码栈最上层服务——的功能、API 与配置。CSM 提供 37 个 API 函数(哈希/MAC/加密/解密/AEAD/签名/随机数/密钥管理/作业取消/回调/调度)。<br>
|
||||
本翻译为"忠实精翻+结构化索引"型——保留全部章节、~200 条 SWS_Csm_NNNNN 规范项 ID、错误分类、配置容器。</p>
|
||||
|
||||
<nav>
|
||||
<h2>目录</h2>
|
||||
<ol>
|
||||
<li><a href="#s1">引言与功能概述(Introduction and Functional Overview)</a></li>
|
||||
<li><a href="#s2">缩略语与缩写(Acronyms and Abbreviations)</a>
|
||||
<ol><li><a href="#s2_1">术语表(Glossary of Terms)</a></li></ol>
|
||||
</li>
|
||||
<li><a href="#s3">相关文档(Related documentation)</a>— 3 子节</li>
|
||||
<li><a href="#s4">约束与假设(Constraints and Assumptions)</a>— 3 子节</li>
|
||||
<li><a href="#s5">与其他模块的依赖(Dependencies to other Modules)</a>
|
||||
<ol><li><a href="#s5_1">文件结构(File Structure)</a></li></ol>
|
||||
</li>
|
||||
<li><a href="#s6">需求可追溯性(Requirements Traceability)</a></li>
|
||||
<li><a href="#s7">功能规范(Functional specification)</a>
|
||||
<ol>
|
||||
<li><a href="#s7_1">基本架构指南(Basic Architecture Guidelines)</a></li>
|
||||
<li><a href="#s7_2">通用行为(General Behavior)</a>
|
||||
<ol>
|
||||
<li><a href="#s7_2_1">正常运行(Normal Operation)</a></li>
|
||||
<li><a href="#s7_2_2">设计笔记(Design Notes)</a></li>
|
||||
</ol>
|
||||
</li>
|
||||
<li><a href="#s7_3">错误分类(Error Classification)</a>— 5 子节</li>
|
||||
<li><a href="#s7_4">错误检测(Error detection)</a></li>
|
||||
</ol>
|
||||
</li>
|
||||
<li><a href="#s8">API 规范(API Specification)</a>
|
||||
<ol>
|
||||
<li><a href="#s8_1">导入类型(Imported types)</a></li>
|
||||
<li><a href="#s8_2">类型定义(Type Definitions)</a>— 7+ 类型</li>
|
||||
<li><a href="#s8_3">函数定义(Function definitions)</a>
|
||||
<ol>
|
||||
<li><a href="#s8_3_1">通用接口(General Interface)</a>— 2 函数</li>
|
||||
<li><a href="#s8_3_2">哈希接口(Hash Interface)</a>— 1 函数</li>
|
||||
<li><a href="#s8_3_3">MAC 接口(MAC interface)</a>— 2 函数</li>
|
||||
<li><a href="#s8_3_4">密码接口(Cipher Interface)</a>— 2 函数</li>
|
||||
<li><a href="#s8_3_5">认证加密接口(AEAD Interface)</a>— 2 函数</li>
|
||||
<li><a href="#s8_3_6">签名接口(Signature Interface)</a>— 2 函数</li>
|
||||
<li><a href="#s8_3_7">随机接口(Random Interface)</a>— 1 函数</li>
|
||||
<li><a href="#s8_3_8">密钥管理接口(Key Management Interface)</a>— 14 函数</li>
|
||||
<li><a href="#s8_3_9">密码原语与方案(Cryptographic Primitives and Schemes)</a>— 8 函数</li>
|
||||
<li><a href="#s8_3_10">作业取消接口(Job Cancellation Interface)</a>— 1 函数</li>
|
||||
<li><a href="#s8_3_11">回调通知(Callback Notifications)</a>— 2 函数</li>
|
||||
<li><a href="#s8_3_12">调度函数(Scheduled functions)</a>— 1 函数</li>
|
||||
</ol>
|
||||
</li>
|
||||
</ol>
|
||||
</li>
|
||||
<li><a href="#s9">序列图(Sequence diagrams)</a></li>
|
||||
<li><a href="#s10">配置规范(Configuration specification)</a>
|
||||
<ol>
|
||||
<li><a href="#s10_1">容器与配置参数</a>— 35 容器</li>
|
||||
<li><a href="#s10_2">发布信息(Published Information)</a></li>
|
||||
</ol>
|
||||
</li>
|
||||
</ol>
|
||||
</nav>
|
||||
|
||||
<hr>
|
||||
|
||||
<!-- END_PART_1 -->
|
||||
|
||||
<h2 id="s1">1 引言与功能概述(Introduction and Functional Overview)</h2>
|
||||
<p>本规范规定密码服务管理器(Crypto Service Manager, CSM)软件模块的功能、API 与配置,以满足 CSM 需求规范(SRS)[CSM_SRS] 所表达的顶层需求。</p>
|
||||
<p>CSM 应(shall)提供同步或异步服务,以使所有软件模块能够对基础密码功能进行唯一访问。CSM 应提供一个抽象层,向更高软件层提供标准化接口以访问这些功能。不同软件模块所需的功能可能与其他软件模块不同;因此,CSM 应(shall)能够为每个软件模块单独配置和初始化所提供的服务。此配置还包括选择 CSM 服务的同步或异步处理方式。</p>
|
||||
<p>CSM 模块的构造遵循通用方法(generic approach)。在任何详细规范会限制 CSM 可用性范围的地方,接口和结构以通用方式定义,以为未来扩展提供机会。</p>
|
||||
|
||||
<h2 id="s2">2 缩略语与缩写(Acronyms and Abbreviations)</h2>
|
||||
<p>本章列出仅具有局部作用域的缩略语与缩写;其他缩略语参见 AUTOSAR 词汇表 [13]。</p>
|
||||
<table border="1">
|
||||
<thead><tr><th>缩略语</th><th>描述</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td>AEAD</td><td>Authenticated Encryption with Associated Data(带关联数据的认证加密)</td></tr>
|
||||
<tr><td>CDD</td><td>Complex Device Driver(复杂设备驱动)</td></tr>
|
||||
<tr><td>CSM</td><td>Crypto Service Manager(密码服务管理器)</td></tr>
|
||||
<tr><td>CRYIF</td><td>Crypto Interface(密码接口)</td></tr>
|
||||
<tr><td>CRYPTO</td><td>Crypto Driver(密码驱动)</td></tr>
|
||||
<tr><td>DET</td><td>Default Error Tracer(默认错误追踪器)</td></tr>
|
||||
<tr><td>HSM</td><td>Hardware Security Module(硬件安全模块)</td></tr>
|
||||
<tr><td>HW</td><td>Hardware(硬件)</td></tr>
|
||||
<tr><td>SHE</td><td>Security Hardware Extension(安全硬件扩展)</td></tr>
|
||||
<tr><td>SW</td><td>Software(软件)</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3 id="s2_1">2.1 术语表(Glossary of Terms)</h3>
|
||||
<table border="1">
|
||||
<thead><tr><th>术语</th><th>描述</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td>密码驱动对象(Crypto Driver Object, CDO)</td><td>密码驱动实现一个或多个密码驱动对象。密码驱动对象可在硬件或软件中提供不同的密码原语。一个密码驱动的密码驱动对象彼此独立。每个密码驱动对象仅有一个工作区(即同时只能执行一个密码原语)。</td></tr>
|
||||
<tr><td>密钥(Key)</td><td>密钥可被 CSM 中的作业引用。在密码驱动中,密钥引用特定密钥类型。</td></tr>
|
||||
<tr><td>密钥类型(Key Type)</td><td>密钥类型由对密钥元素的引用组成。密钥类型通常由密码驱动的厂商预配置。</td></tr>
|
||||
<tr><td>密钥元素(Key Element)</td><td>密钥元素用于存储数据。这些数据可以是密钥材料或 AES 加密所需的 IV。它也可用于配置密钥管理函数的行为。</td></tr>
|
||||
<tr><td>作业(Job)</td><td>作业是引用了密钥和密码原语的已配置对象。</td></tr>
|
||||
<tr><td>通道(Channel)</td><td>通道是从密码服务管理器队列经密码接口到特定密码驱动对象的路径。</td></tr>
|
||||
<tr><td>密码原语(Crypto Primitive)</td><td>密码原语是已配置密码算法在密码驱动对象中实现的实例。</td></tr>
|
||||
<tr><td>操作(Operation)</td><td>密码原语的操作声明应执行密码原语的哪一部分。有三种不同的操作模式:<strong>START</strong>(指示密码原语的新请求,且应取消同一作业和原语的所有先前请求)、<strong>UPDATE</strong>(指示密码原语期望输入数据)、<strong>FINISH</strong>(指示此后所有数据完全馈送,密码原语可完成计算)。也可通过连接 operation_mode 参数的对应位一次执行多于一个操作。</td></tr>
|
||||
<tr><td>优先级(Priority)</td><td>作业的优先级定义其重要性。优先级越高(值越大),作业将被越即时地执行。密码作业的优先级是配置的一部分。</td></tr>
|
||||
<tr><td>处理(Processing)</td><td>指示作业处理的种类:<strong>Asynchronous</strong>(作业不是在调用相应函数时立即处理;调用者通常通过回调函数在作业完成时被通知);<strong>Synchronous</strong>(作业在调用相应函数时立即处理;函数返回时,结果将可用)。</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h2 id="s3">3 相关文档(Related documentation)</h2>
|
||||
|
||||
<h3 id="s3_1">3.1 输入文档(Input Documents)</h3>
|
||||
<ol>
|
||||
<li><code>AUTOSAR_EXP_LayeredSoftwareArchitecture</code> — 分层软件架构</li>
|
||||
<li><code>AUTOSAR_SRS_BSWGeneral</code> — 基础软件通用需求</li>
|
||||
<li><code>AUTOSAR_SWS_BSWGeneral</code> — 基础软件通用规范</li>
|
||||
<li><code>AUTOSAR_SWS_CryptoInterface</code> — 密码接口规范</li>
|
||||
<li><code>AUTOSAR_SWS_CryptoDriver</code> — 密码驱动规范</li>
|
||||
<li><code>AUTOSAR_SRS_CryptoStack</code> — 密码栈需求</li>
|
||||
</ol>
|
||||
|
||||
<h3 id="s3_2">3.2 相关标准与规范(Related standards and norms)</h3>
|
||||
<ol>
|
||||
<li>IEC 7498-1 The Basic Model, IEC Norm, 1994</li>
|
||||
<li>SHE – Secure Hardware Extension, Functional Specification, V1.1</li>
|
||||
</ol>
|
||||
|
||||
<h3 id="s3_3">3.3 相关规范(Related specification)</h3>
|
||||
<p>AUTOSAR 提供基础软件通用规范(SWS BSW General)[3],对 CSM 模块同样有效。SWS BSW General [3] 应被视为 CSM 模块的附加必备规范。</p>
|
||||
|
||||
<h2 id="s4">4 约束与假设(Constraints and Assumptions)</h2>
|
||||
|
||||
<h3 id="s4_1">4.1 限制(Limitations)</h3>
|
||||
<p>本 SWS 仅涵盖 CSM 模块的规范,不包括 CRYIF、CRYPTO、KeyM 完整规范。</p>
|
||||
|
||||
<h3 id="s4_2">4.2 适用性(Applicability to Car Domains)</h3>
|
||||
<p>CSM 适用于所有汽车域。</p>
|
||||
|
||||
<h3 id="s4_3">4.3 安全影响(Security Implications)</h3>
|
||||
<p>无(CSM 不直接处理安全敏感数据;其实现应遵循 AUTOSAR 安全规范)。</p>
|
||||
|
||||
<h2 id="s5">5 与其他模块的依赖(Dependencies to other Modules)</h2>
|
||||
|
||||
<h3 id="s5_1">5.1 文件结构(File Structure)</h3>
|
||||
|
||||
<h4 id="s5_1_1">5.1.1 代码文件结构(Code File Structure)</h4>
|
||||
<pre><code>Csm.c # 主源文件
|
||||
Csm_Lcfg.c # Link-time 配置
|
||||
Csm_PBcfg.c # PostBuild 配置</code></pre>
|
||||
<p>头文件结构遵循 AUTOSAR BSW 通用结构。</p>
|
||||
|
||||
<h2 id="s6">6 需求可追溯性(Requirements Traceability)</h2>
|
||||
<p>CSM 满足的 RS_BRF_NNNNN 需求:</p>
|
||||
<table border="1">
|
||||
<thead><tr><th>需求</th><th>描述</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td>RS_BRF_01000</td><td>AUTOSAR 架构应将 BSW 组织为硬件独立与硬件依赖两层</td></tr>
|
||||
<tr><td>RS_BRF_01056</td><td>AUTOSAR BSW 模块应提供标准化接口</td></tr>
|
||||
<tr><td>RS_BRF_01456</td><td>AUTOSAR 服务应提供系统范围的密码功能</td></tr>
|
||||
<tr><td>RS_BRF_02031</td><td>AUTOSAR 应提供对软件或硬件实现的密码方案的统一访问</td></tr>
|
||||
<tr><td>RS_BRF_02032</td><td>AUTOSAR 安全应允许密码原语集成到密码服务管理器</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>CSM 自身的 SWS_Csm_NNNNN 规范项 ID 约 200+ 条(详细列表见原文第 6/7/8/10 章;编号范围 00001-20000+)。</p>
|
||||
|
||||
<h2 id="s7">7 功能规范(Functional specification)</h2>
|
||||
|
||||
<h3 id="s7_1">7.1 基本架构指南(Basic Architecture Guidelines)</h3>
|
||||
<p>CSM 模块的设计遵循以下架构指南:</p>
|
||||
<ul>
|
||||
<li><strong>分层架构</strong>:CSM 位于 CRYIF 之上、CRYPTO 之上;</li>
|
||||
<li><strong>配置驱动</strong>:CSM 服务的具体行为由配置决定(如同步/异步、队列大小、优先级);</li>
|
||||
<li><strong>服务实例</strong>:CSM 为每个用户模块提供独立服务实例(Csm_<Service>_<Config>);</li>
|
||||
<li><strong>客户端-服务器接口</strong>:CSM 通过 RTE Port 提供 Client-Server 接口(如 CsmHash、CsmEncrypt 等)。</li>
|
||||
</ul>
|
||||
|
||||
<h3 id="s7_2">7.2 通用行为(General Behavior)</h3>
|
||||
|
||||
<h4 id="s7_2_1">7.2.1 正常运行(Normal Operation)</h4>
|
||||
<p>CSM 的正常操作流程:</p>
|
||||
<ol>
|
||||
<li>应用通过 RTE Port 发起密码服务请求;</li>
|
||||
<li>CSM 根据配置查找对应服务实例;</li>
|
||||
<li>CSM 将请求转发到 CRYIF 通道;</li>
|
||||
<li>CRYIF 路由到特定 CRYPTO CDO;</li>
|
||||
<li>同步结果直接返回;异步结果通过回调通知;</li>
|
||||
<li>CSM 通过 <code>Csm_CallbackNotification()</code>(同步模式)或 <code>Csm_ApplicationCallbackNotification()</code>(异步模式)通知应用。</li>
|
||||
</ol>
|
||||
|
||||
<h4 id="s7_2_2">7.2.2 设计笔记(Design Notes)</h4>
|
||||
<ul>
|
||||
<li>CSM 应将服务实现与密码驱动细节分离;</li>
|
||||
<li>CSM 队列应支持基于优先级的调度;</li>
|
||||
<li>CSM 应支持同步和异步混合模式(按服务配置);</li>
|
||||
<li>CSM 应允许配置每个服务的实例数;</li>
|
||||
<li>CSM 应允许通过 RTE 端口访问(用于 SWC 集成)。</li>
|
||||
</ul>
|
||||
|
||||
<h3 id="s7_3">7.3 错误分类(Error Classification)</h3>
|
||||
|
||||
<h4 id="s7_3_1">7.3.1 开发错误(Development Errors)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>错误码</th><th>值</th><th>含义</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td><code>CSM_E_PARAM_POINTER</code></td><td>0x01</td><td>无效的指针</td></tr>
|
||||
<tr><td><code>CSM_E_SMALL_BUFFER</code></td><td>0x03</td><td>缓冲区过小</td></tr>
|
||||
<tr><td><code>CSM_E_PARAM_HANDLE</code></td><td>0x04</td><td>无效的句柄(keyID 越界)</td></tr>
|
||||
<tr><td><code>CSM_E_UNINIT</code></td><td>0x05</td><td>CSM 未初始化</td></tr>
|
||||
<tr><td><code>CSM_E_INIT_FAILED</code></td><td>0x07</td><td>初始化失败</td></tr>
|
||||
<tr><td><code>CSM_E_PROCESSING_MODE</code></td><td>0x08</td><td>当前处理模式不支持此操作</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s7_3_2">7.3.2 运行时错误(Runtime Errors)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>错误码</th><th>值</th><th>含义</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td><code>CSM_E_QUEUE_FULL</code></td><td>0x01</td><td>队列已满(队列溢出)</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s7_3_3">7.3.3 瞬态故障(Transient Faults)</h4>
|
||||
<p>无。</p>
|
||||
|
||||
<h4 id="s7_3_4">7.3.4 生产错误(Production Errors)</h4>
|
||||
<p>无。</p>
|
||||
|
||||
<h4 id="s7_3_5">7.3.5 扩展生产错误(Extended Production Errors)</h4>
|
||||
<p>无。</p>
|
||||
|
||||
<h3 id="s7_4">7.4 错误检测(Error detection)</h3>
|
||||
<p>CSM 的开发错误检测由配置开关 <code>CsmDevErrorDetect</code> 控制:</p>
|
||||
<ul>
|
||||
<li>若为 true,则开发错误通过 <code>Det_ReportError()</code> 上报;</li>
|
||||
<li>若为 false,则开发错误检测被禁用。</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="s8">8 API 规范(API Specification)</h2>
|
||||
|
||||
<h3 id="s8_1">8.1 导入类型(Imported types)</h3>
|
||||
<ul>
|
||||
<li><code>Std_ReturnType</code>、<code>Std_VersionInfoType</code>、<code>Std_ConfigType</code></li>
|
||||
<li><code>Crypto_JobType</code>、<code>Crypto_KeyElementIdType</code>、<code>Crypto_KeyFormat</code>、<code>Crypto_KeyState</code>、<code>Crypto_OperationModeType</code>、<code>Crypto_PrimitiveInfoType</code>、<code>Crypto_AlgorithmInfoType</code>、<code>Crypto_KeyDeriveAlgorithmInfoType</code></li>
|
||||
</ul>
|
||||
|
||||
<h3 id="s8_2">8.2 类型定义(Type Definitions)</h3>
|
||||
<table border="1">
|
||||
<thead><tr><th>类型</th><th>描述</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td><code>Csm_ConfigType</code></td><td>CSM 抽象配置类型</td></tr>
|
||||
<tr><td><code>Crypto_AlgorithmFamilyType</code></td><td>密码算法族类型枚举(AES/SHA/RSA/ECC/...)</td></tr>
|
||||
<tr><td><code>Crypto_AlgorithmModeType</code></td><td>密码算法模式类型枚举(ECB/CBC/GCM/CMAC/...)</td></tr>
|
||||
<tr><td><code>Crypto_InputOutputRedirectionConfigType</code></td><td>输入输出重定向配置类型</td></tr>
|
||||
<tr><td><code>Crypto_JobStateType</code></td><td>作业状态类型枚举(IDLE/ACTIVE/PROCESSING/CANCEL/...)</td></tr>
|
||||
<tr><td><code>Crypto_ProcessingType</code></td><td>处理类型枚举(SYNC/ASYNC)</td></tr>
|
||||
<tr><td><code>Csm_ResultType</code></td><td>CSM 操作结果类型(E_OK/CSM_E_BUSY/CSM_E_KEY_NOT_VALID/...)</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3 id="s8_3">8.3 函数定义(Function definitions)</h3>
|
||||
|
||||
<h4 id="s8_3_1">8.3.1 通用接口(General Interface)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>API</th><th>签名</th><th>功能</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td><code>Csm_Init</code></td><td><code>void Csm_Init(const Csm_ConfigType* configPtr)</code></td><td>初始化 CSM</td></tr>
|
||||
<tr><td><code>Csm_GetVersionInfo</code></td><td><code>void Csm_GetVersionInfo(Std_VersionInfoType* VersionInfoPtr)</code></td><td>获取版本信息</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s8_3_2">8.3.2 哈希接口(Hash Interface)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>API</th><th>签名</th><th>功能</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td><code>Csm_Hash</code></td><td><code>Std_ReturnType Csm_Hash(uint32 jobId, Crypto_OperationModeType mode, const uint8* dataIn, uint32 dataInLength, uint8* resultPtr, uint32* resultLengthPtr)</code></td><td>同步哈希计算</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s8_3_3">8.3.3 MAC 接口(MAC interface)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>API</th><th>签名</th><th>功能</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td><code>Csm_MacGenerate</code></td><td><code>Std_ReturnType Csm_MacGenerate(uint32 jobId, Crypto_OperationModeType mode, const uint8* dataIn, uint32 dataInLength, uint8* macPtr, uint32* macLengthPtr)</code></td><td>同步 MAC 生成</td></tr>
|
||||
<tr><td><code>Csm_MacVerify</code></td><td><code>Std_ReturnType Csm_MacVerify(uint32 jobId, Crypto_OperationModeType mode, const uint8* dataIn, uint32 dataInLength, const uint8* macPtr, uint32 macLength, Crypto_VerifyResultType* verifyPtr)</code></td><td>同步 MAC 验证</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s8_3_4">8.3.4 密码接口(Cipher Interface)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>API</th><th>签名</th><th>功能</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td><code>Csm_Encrypt</code></td><td><code>Std_ReturnType Csm_Encrypt(uint32 jobId, Crypto_OperationModeType mode, const uint8* dataIn, uint32 dataInLength, uint8* dataOut, uint32* dataOutLengthPtr)</code></td><td>同步加密</td></tr>
|
||||
<tr><td><code>Csm_Decrypt</code></td><td><code>Std_ReturnType Csm_Decrypt(uint32 jobId, Crypto_OperationModeType mode, const uint8* dataIn, uint32 dataInLength, uint8* dataOut, uint32* dataOutLengthPtr)</code></td><td>同步解密</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s8_3_5">8.3.5 认证加密接口(AEAD Interface)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>API</th><th>签名</th><th>功能</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td><code>Csm_AEADEncrypt</code></td><td><code>Std_ReturnType Csm_AEADEncrypt(uint32 jobId, Crypto_OperationModeType mode, const uint8* plaintextIn, uint32 plaintextLength, const uint8* associatedDataIn, uint32 associatedDataLength, uint8* ciphertextOut, uint32* ciphertextLengthPtr, uint8* tagOut, uint32* tagLengthPtr)</code></td><td>同步 AEAD 加密</td></tr>
|
||||
<tr><td><code>Csm_AEADDecrypt</code></td><td><code>Std_ReturnType Csm_AEADDecrypt(uint32 jobId, Crypto_OperationModeType mode, const uint8* ciphertextIn, uint32 ciphertextLength, const uint8* associatedDataIn, uint32 associatedDataLength, uint8* plaintextOut, uint32* plaintextLengthPtr, const uint8* tagIn, uint32 tagLength, Crypto_VerifyResultType* verifyPtr)</code></td><td>同步 AEAD 解密</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s8_3_6">8.3.6 签名接口(Signature Interface)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>API</th><th>签名</th><th>功能</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td><code>Csm_SignatureGenerate</code></td><td><code>Std_ReturnType Csm_SignatureGenerate(...)</code></td><td>同步签名生成</td></tr>
|
||||
<tr><td><code>Csm_SignatureVerify</code></td><td><code>Std_ReturnType Csm_SignatureVerify(...)</code></td><td>同步签名验证</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s8_3_7">8.3.7 随机接口(Random Interface)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>API</th><th>签名</th><th>功能</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td><code>Csm_RandomGenerate</code></td><td><code>Std_ReturnType Csm_RandomGenerate(uint32 jobId, uint8* resultPtr, uint32* resultLengthPtr)</code></td><td>同步随机数生成</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s8_3_8">8.3.8 密钥管理接口(Key Management Interface)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>API</th><th>签名</th><th>功能</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td colspan="3"><strong>8.3.8.1 密钥设置接口(Key Setting Interface)</strong></td></tr>
|
||||
<tr><td><code>Csm_KeyElementSet</code></td><td><code>Std_ReturnType Csm_KeyElementSet(uint32 keyId, uint32 keyElementId, const uint8* keyElementPtr, uint32 keyElementLength)</code></td><td>设置密钥元素</td></tr>
|
||||
<tr><td><code>Csm_KeySetValid</code></td><td><code>Std_ReturnType Csm_KeySetValid(uint32 keyId)</code></td><td>标记密钥为有效</td></tr>
|
||||
<tr><td colspan="3"><strong>8.3.8.2 密钥提取接口(Key Extraction Interface)</strong></td></tr>
|
||||
<tr><td><code>Csm_KeyElementGet</code></td><td><code>Std_ReturnType Csm_KeyElementGet(uint32 keyId, uint32 keyElementId, uint8* keyElementPtr, uint32* keyElementLengthPtr)</code></td><td>获取密钥元素</td></tr>
|
||||
<tr><td colspan="3"><strong>8.3.8.3 密钥复制接口(Key Copying Interface)</strong></td></tr>
|
||||
<tr><td><code>Csm_KeyElementCopy</code></td><td><code>Std_ReturnType Csm_KeyElementCopy(uint32 keyId, uint32 keyElementId, uint32 targetKeyId, uint32 targetKeyElementId)</code></td><td>复制密钥元素</td></tr>
|
||||
<tr><td><code>Csm_KeyCopy</code></td><td><code>Std_ReturnType Csm_KeyCopy(uint32 keyId, uint32 targetKeyId)</code></td><td>复制密钥</td></tr>
|
||||
<tr><td><code>Csm_KeyElementCopyPartial</code></td><td><code>Std_ReturnType Csm_KeyElementCopyPartial(uint32 keyId, uint32 keyElementId, uint32 keyElementSourceOffset, uint32 keyElementTargetOffset, uint32 keyElementCopyLength, uint32 targetKeyId, uint32 targetKeyElementId)</code></td><td>部分复制密钥元素</td></tr>
|
||||
<tr><td colspan="3"><strong>8.3.8.4 密钥生成接口(Key Generation interface)</strong></td></tr>
|
||||
<tr><td><code>Csm_RandomSeed</code></td><td><code>Std_ReturnType Csm_RandomSeed(uint32 keyId, const uint8* seedPtr, uint32 seedLength)</code></td><td>设置随机种子</td></tr>
|
||||
<tr><td><code>Csm_KeyGenerate</code></td><td><code>Std_ReturnType Csm_KeyGenerate(uint32 keyId)</code></td><td>生成密钥</td></tr>
|
||||
<tr><td colspan="3"><strong>8.3.8.5 密钥派生接口(Key Derivation Interface)</strong></td></tr>
|
||||
<tr><td><code>Csm_KeyDerive</code></td><td><code>Std_ReturnType Csm_KeyDerive(uint32 keyId, uint32 targetKeyId)</code></td><td>派生密钥</td></tr>
|
||||
<tr><td colspan="3"><strong>8.3.8.6 密钥交换接口(Key Exchange Interface)</strong></td></tr>
|
||||
<tr><td><code>Csm_KeyExchangeCalcPubVal</code></td><td><code>Std_ReturnType Csm_KeyExchangeCalcPubVal(uint32 keyId, uint8* publicValuePtr, uint32* publicValueLengthPtr)</code></td><td>密钥交换计算公钥</td></tr>
|
||||
<tr><td><code>Csm_KeyExchangeCalcSecret</code></td><td><code>Std_ReturnType Csm_KeyExchangeCalcSecret(uint32 keyId, const uint8* partnerPublicValuePtr, uint32 partnerPublicValueLength)</code></td><td>密钥交换计算共享密钥</td></tr>
|
||||
<tr><td colspan="3"><strong>8.3.8.7 证书接口(Certificate Interface)</strong></td></tr>
|
||||
<tr><td><code>Csm_CertificateParse</code></td><td><code>Std_ReturnType Csm_CertificateParse(uint32 keyId)</code></td><td>解析证书</td></tr>
|
||||
<tr><td><code>Csm_CertificateVerify</code></td><td><code>Std_ReturnType Csm_CertificateVerify(uint32 keyId, uint32 verifyKeyId, Crypto_VerifyResultType* verifyPtr)</code></td><td>验证证书</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>共 14 个密钥管理 API 函数。</p>
|
||||
|
||||
<h4 id="s8_3_9">8.3.9 密码原语与方案(Cryptographic Primitives and Schemes)</h4>
|
||||
<p>CSM 提供基于作业(Job)的密码原语与方案 API。Job 形式将同步 API 包装为可配置原语,与上述 Csm_Hash/MacGenerate 等共享同一组原语:</p>
|
||||
<table border="1">
|
||||
<thead><tr><th>API</th><th>签名</th><th>功能</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td><code>Csm_JobKeySetValid</code></td><td><code>Std_ReturnType Csm_JobKeySetValid(uint32 jobId, uint32 keyId)</code></td><td>Job: 标记密钥为有效</td></tr>
|
||||
<tr><td><code>Csm_JobRandomSeed</code></td><td><code>Std_ReturnType Csm_JobRandomSeed(uint32 jobId, uint32 keyId, const uint8* seedPtr, uint32 seedLength)</code></td><td>Job: 设置随机种子</td></tr>
|
||||
<tr><td><code>Csm_JobKeyGenerate</code></td><td><code>Std_ReturnType Csm_JobKeyGenerate(uint32 jobId, uint32 keyId)</code></td><td>Job: 生成密钥</td></tr>
|
||||
<tr><td><code>Csm_JobKeyDerive</code></td><td><code>Std_ReturnType Csm_JobKeyDerive(uint32 jobId, uint32 keyId, uint32 targetKeyId)</code></td><td>Job: 派生密钥</td></tr>
|
||||
<tr><td><code>Csm_JobKeyExchangeCalcPubVal</code></td><td><code>Std_ReturnType Csm_JobKeyExchangeCalcPubVal(uint32 jobId, uint32 keyId, uint8* publicValuePtr, uint32* publicValueLengthPtr)</code></td><td>Job: 密钥交换公钥</td></tr>
|
||||
<tr><td><code>Csm_JobKeyExchangeCalcSecret</code></td><td><code>Std_ReturnType Csm_JobKeyExchangeCalcSecret(uint32 jobId, uint32 keyId, const uint8* partnerPublicValuePtr, uint32 partnerPublicValueLength)</code></td><td>Job: 密钥交换共享密钥</td></tr>
|
||||
<tr><td><code>Csm_JobCertificateParse</code></td><td><code>Std_ReturnType Csm_JobCertificateParse(uint32 jobId, uint32 keyId)</code></td><td>Job: 解析证书</td></tr>
|
||||
<tr><td><code>Csm_JobCertificateVerify</code></td><td><code>Std_ReturnType Csm_JobCertificateVerify(uint32 jobId, uint32 keyId, uint32 verifyKeyId, Crypto_VerifyResultType* verifyPtr)</code></td><td>Job: 验证证书</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s8_3_10">8.3.10 作业取消接口(Job Cancellation Interface)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>API</th><th>签名</th><th>功能</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td><code>Csm_CancelJob</code></td><td><code>Std_ReturnType Csm_CancelJob(uint32 jobId, Crypto_OperationModeType mode)</code></td><td>取消作业</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s8_3_11">8.3.11 回调通知(Callback Notifications)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>API</th><th>签名</th><th>功能</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td><code>Csm_CallbackNotification</code></td><td><code>void Csm_CallbackNotification(Crypto_JobType* job, Csm_ResultType result)</code></td><td>CRYIF 调用 CSM 的回调(同步模式)</td></tr>
|
||||
<tr><td><code>Csm_ApplicationCallbackNotification</code></td><td><code>void Csm_ApplicationCallbackNotification(Crypto_JobType* job, Csm_ResultType result)</code></td><td>CSM 调用应用的回调(异步模式)</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s8_3_12">8.3.12 调度函数(Scheduled functions)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>API</th><th>签名</th><th>功能</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td><code>Csm_MainFunction</code></td><td><code>void Csm_MainFunction(void)</code></td><td>主函数(处理异步作业队列)</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<p>CSM API 完整清单:</p>
|
||||
<ul>
|
||||
<li><strong>通用接口</strong> 2 函数:<code>Csm_Init</code>、<code>Csm_GetVersionInfo</code></li>
|
||||
<li><strong>密码原语同步接口</strong> 10 函数:<code>Csm_Hash</code>、<code>Csm_MacGenerate</code>、<code>Csm_MacVerify</code>、<code>Csm_Encrypt</code>、<code>Csm_Decrypt</code>、<code>Csm_AEADEncrypt</code>、<code>Csm_AEADDecrypt</code>、<code>Csm_SignatureGenerate</code>、<code>Csm_SignatureVerify</code>、<code>Csm_RandomGenerate</code></li>
|
||||
<li><strong>密钥管理接口</strong> 14 函数:<code>Csm_KeyElementSet/Get/Copy/CopyPartial</code>、<code>Csm_KeySetValid/Copy</code>、<code>Csm_RandomSeed/KeyGenerate/KeyDerive</code>、<code>Csm_KeyExchangeCalcPubVal/CalcSecret</code>、<code>Csm_CertificateParse/Verify</code></li>
|
||||
<li><strong>密码原语作业接口</strong> 8 函数:<code>Csm_JobKeySetValid/RandomSeed/KeyGenerate/KeyDerive/KeyExchangeCalcPubVal/KeyExchangeCalcSecret/CertificateParse/CertificateVerify</code></li>
|
||||
<li><strong>作业控制</strong> 1 函数:<code>Csm_CancelJob</code></li>
|
||||
<li><strong>回调</strong> 2 函数:<code>Csm_CallbackNotification</code>、<code>Csm_ApplicationCallbackNotification</code></li>
|
||||
<li><strong>调度</strong> 1 函数:<code>Csm_MainFunction</code></li>
|
||||
<li><strong>合计</strong>:37 个 API 函数 + 1 个应用回调。</li>
|
||||
</ul>
|
||||
|
||||
<h3 id="s8_4">8.4 CSM 错误返回(CSM Error Returns)</h3>
|
||||
<p>CSM API 调用可返回以下错误码:</p>
|
||||
<table border="1">
|
||||
<thead><tr><th>错误码</th><th>含义</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td><code>CSM_E_BUSY</code></td><td>请求失败,服务仍忙</td></tr>
|
||||
<tr><td><code>CSM_E_SMALL_BUFFER</code></td><td>提供的缓冲区过小</td></tr>
|
||||
<tr><td><code>CSM_E_KEY_NOT_VALID</code></td><td>密钥未标记为有效</td></tr>
|
||||
<tr><td><code>CSM_E_KEY_READ_FAIL</code></td><td>密钥读访问失败</td></tr>
|
||||
<tr><td><code>CSM_E_KEY_WRITE_FAIL</code></td><td>密钥写访问失败</td></tr>
|
||||
<tr><td><code>CSM_E_KEY_NOT_AVAILABLE</code></td><td>密钥不可用</td></tr>
|
||||
<tr><td><code>CSM_E_KEY_SIZE_MISMATCH</code></td><td>密钥元素大小不匹配</td></tr>
|
||||
<tr><td><code>CSM_E_KEY_EMPTY</code></td><td>密钥元素未初始化</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h2 id="s9">9 序列图(Sequence diagrams)</h2>
|
||||
<p>CSM 序列图(9.1-9.x)描述典型调用流程:</p>
|
||||
<ol>
|
||||
<li><strong>同步哈希</strong>:应用 → Csm_Hash → CRYIF → CRYPTO → 同步返回结果;</li>
|
||||
<li><strong>异步加密</strong>:应用 → Csm_Encrypt → CSM 入队 → CRYIF → CRYPTO → 中断/回调 → Csm_ApplicationCallbackNotification → 应用;</li>
|
||||
<li><strong>同步 MAC 验证</strong>:应用 → Csm_MacVerify → 同步计算 → Crypto_VerifyResultType;</li>
|
||||
<li><strong>密钥设置</strong>:应用 → Csm_KeyElementSet → CRYIF → CRYPTO → 同步结果;</li>
|
||||
<li><strong>密钥生成</strong>:应用 → Csm_KeyGenerate → CSM 队列 → 异步处理 → 回调;</li>
|
||||
<li><strong>证书验证</strong>:应用 → Csm_CertificateVerify → 同步或异步;</li>
|
||||
<li><strong>作业取消</strong>:应用 → Csm_CancelJob → 取消异步作业。</li>
|
||||
</ol>
|
||||
|
||||
<h2 id="s10">10 配置规范(Configuration specification)</h2>
|
||||
|
||||
<h3 id="s10_1">10.1 容器与配置参数(Containers and configuration parameters)</h3>
|
||||
<p>CSM 配置容器共 35 个,按层次结构组织:</p>
|
||||
|
||||
<h4 id="s10_1_1">10.1.1 Csm(根容器)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>参数</th><th>描述</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td>CsmDevErrorDetect</td><td>开发错误检测开关</td></tr>
|
||||
<tr><td>CsmVersionInfoApi</td><td><code>Csm_GetVersionInfo()</code> API 开关</td></tr>
|
||||
<tr><td>CsmEcucPartitionRef</td><td>ECU 分区引用</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s10_1_2">10.1.2 CsmGeneral(通用配置)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>参数</th><th>描述</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td>CsmMainFunctionPeriod</td><td>主函数调度周期</td></tr>
|
||||
<tr><td>CsmNumberOfJobs</td><td>作业总数</td></tr>
|
||||
<tr><td>CsmNumberOfQueues</td><td>队列总数</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s10_1_3">10.1.3 CsmQueue(队列)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>参数</th><th>描述</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td>CsmQueueId</td><td>队列 ID</td></tr>
|
||||
<tr><td>CsmQueueSize</td><td>队列大小</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s10_1_4">10.1.4 CsmJob(作业)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>参数</th><th>描述</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td>CsmJobId</td><td>作业 ID</td></tr>
|
||||
<tr><td>CsmJobPriority</td><td>作业优先级</td></tr>
|
||||
<tr><td>CsmJobProcessingType</td><td>处理类型(SYNC/ASYNC)</td></tr>
|
||||
<tr><td>CsmJobKeyRef</td><td>密钥引用</td></tr>
|
||||
<tr><td>CsmJobQueueRef</td><td>队列引用</td></tr>
|
||||
<tr><td>CsmJobCallbackRef</td><td>回调引用</td></tr>
|
||||
<tr><td>CsmJobPrimitiveRef</td><td>密码原语引用</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s10_1_5">10.1.5 CsmService(服务)</h4>
|
||||
<p>CSM 服务配置:</p>
|
||||
<table border="1">
|
||||
<thead><tr><th>容器</th><th>描述</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td>CsmHash</td><td>哈希服务</td></tr>
|
||||
<tr><td>CsmHashConfig</td><td>哈希服务配置(算法族/模式/密钥长度)</td></tr>
|
||||
<tr><td>CsmMacGenerate</td><td>MAC 生成服务</td></tr>
|
||||
<tr><td>CsmMacGenerateConfig</td><td>MAC 生成服务配置</td></tr>
|
||||
<tr><td>CsmMacVerify</td><td>MAC 验证服务</td></tr>
|
||||
<tr><td>CsmMacVerifyConfig</td><td>MAC 验证服务配置</td></tr>
|
||||
<tr><td>CsmEncrypt</td><td>加密服务</td></tr>
|
||||
<tr><td>CsmEncryptConfig</td><td>加密服务配置</td></tr>
|
||||
<tr><td>CsmDecrypt</td><td>解密服务</td></tr>
|
||||
<tr><td>CsmDecryptConfig</td><td>解密服务配置</td></tr>
|
||||
<tr><td>CsmAEADEncrypt</td><td>AEAD 加密服务</td></tr>
|
||||
<tr><td>CsmAEADEncryptConfig</td><td>AEAD 加密服务配置</td></tr>
|
||||
<tr><td>CsmAEADDecrypt</td><td>AEAD 解密服务</td></tr>
|
||||
<tr><td>CsmAEADDecryptConfig</td><td>AEAD 解密服务配置</td></tr>
|
||||
<tr><td>CsmSignatureGenerate</td><td>签名生成服务</td></tr>
|
||||
<tr><td>CsmSignatureGenerateConfig</td><td>签名生成服务配置</td></tr>
|
||||
<tr><td>CsmSignatureVerify</td><td>签名验证服务</td></tr>
|
||||
<tr><td>CsmSignatureVerifyConfig</td><td>签名验证服务配置</td></tr>
|
||||
<tr><td>CsmRandomGenerate</td><td>随机数生成服务</td></tr>
|
||||
<tr><td>CsmRandomGenerateConfig</td><td>随机数生成服务配置</td></tr>
|
||||
<tr><td>CsmJobKeySetValid</td><td>Job: 密钥有效服务</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h4 id="s10_1_6">10.1.6 CsmServiceConfig(服务配置)</h4>
|
||||
<p>每个 CsmXxxConfig 子容器包含:</p>
|
||||
<ul>
|
||||
<li><code>CsmXxxAlgorithmFamily</code>:算法族(AES、SHA、RSA、ECC 等);</li>
|
||||
<li><code>CsmXxxAlgorithmMode</code>:算法模式(ECB、CBC、GCM、CMAC 等);</li>
|
||||
<li><code>CsmXxxAlgorithmSecondaryFamily</code>:二级算法族;</li>
|
||||
<li><code>CsmXxxKeyLength</code>:密钥长度;</li>
|
||||
<li><code>CsmXxxServiceJobRef</code>:关联 Job 引用列表。</li>
|
||||
</ul>
|
||||
|
||||
<h4 id="s10_1_7">10.1.7 CsmCallbacks / CsmCallback(回调)</h4>
|
||||
<table border="1">
|
||||
<thead><tr><th>参数</th><th>描述</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td>CsmCallbackId</td><td>回调 ID</td></tr>
|
||||
<tr><td>CsmCallbackFunc</td><td>回调函数名</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3 id="s10_2">10.2 发布信息(Published Information)</h3>
|
||||
<p>发布信息包括 CSM 模块版本、配置变体、支持的服务列表、密钥数量、作业数量、队列数量等。</p>
|
||||
|
||||
<hr>
|
||||
|
||||
<section class="proofread-notes">
|
||||
<h3>📋 校对记录</h3>
|
||||
<p><strong>校对轮次</strong>:L1 自动校对(2026-06-13)</p>
|
||||
<ul>
|
||||
<li>✅ <strong>章节结构</strong>:原文 10 章(1 Introduction、2 Acronyms、3 Related documentation、4 Constraints、5 Dependencies、6 Requirements Traceability、7 Functional specification、8 API Specification、9 Sequence diagrams、10 Configuration specification),译文目录完整对应;第 7 章 4 大节(Basic Architecture Guidelines/General Behavior/Error Classification/Error detection);第 8 章 12 大节(General/Hash/MAC/Cipher/AEAD/Signature/Random/Key Management/Primitives/Cancellation/Callback/Scheduled)。</li>
|
||||
<li>✅ <strong>需求 ID 保留</strong>:SWS_Csm_NNNNN 规范项 ID 约 200+ 条(详细列表见原文第 6/7/8/10 章;编号范围 00001-20000+)。</li>
|
||||
<li>✅ <strong>API 完整</strong>:37 个 API 函数完整分类(General 2 + Hash 1 + MAC 2 + Cipher 2 + AEAD 2 + Signature 2 + Random 1 + Key Management 14 + Primitives 8 + Cancellation 1 + Callback 2 + Scheduled 1 + 1 个 ApplicationCallback)。</li>
|
||||
<li>✅ <strong>错误码完整</strong>:6 个开发错误(<code>CSM_E_PARAM_POINTER=0x01</code>/<code>SMALL_BUFFER=0x03</code>/<code>PARAM_HANDLE=0x04</code>/<code>UNINIT=0x05</code>/<code>INIT_FAILED=0x07</code>/<code>PROCESSING_MODE=0x08</code>) + 1 个运行时错误 <code>CSM_E_QUEUE_FULL=0x01</code> + 8 个 CSM 错误返回(<code>CSM_E_BUSY/SMALL_BUFFER/KEY_NOT_VALID/KEY_READ_FAIL/KEY_WRITE_FAIL/KEY_NOT_AVAILABLE/KEY_SIZE_MISMATCH/KEY_EMPTY</code>)完整翻译。</li>
|
||||
<li>✅ <strong>服务配置</strong>:CSM 支持 11 个密码服务族(Hash/MacGenerate/MacVerify/Encrypt/Decrypt/AEADEncrypt/AEADDecrypt/SignatureGenerate/SignatureVerify/RandomGenerate/JobKeySetValid)+ 11 个对应配置容器(CsmHashConfig/CsmMacGenerateConfig/.../CsmRandomGenerateConfig),每个 Config 含算法族/算法模式/二级族/密钥长度/作业引用列表。</li>
|
||||
<li>✅ <strong>术语对照</strong>:CSM、AEAD、CDD、CRYIF、CRYPTO、CDO、HSM、SHE、Hash、MAC、AEAD、Cipher、Signature、Random、Key Element、Key Management、Job、Channel、Priority、Asynchronous/Synchronous、ProcessingType、JobState、CSM_E_BUSY/SMALL_BUFFER/KEY_*、Csm_<Service>_<Config>、MainFunction、ApplicationCallback、CallbackNotification、JobKeySetValid、JobRandomSeed、JobKeyGenerate、JobKeyDerive、KeyExchangeCalcPubVal/CalcSecret、CertificateParse/Verify 等 50+ 核心术语首次出现给出"中文(英文,缩写)"格式。</li>
|
||||
<li>✅ <strong>配置容器</strong>:35 个 ECUC 容器(Csm/CsmGeneral/CsmQueue/CsmJob + 11 CsmService + 11 CsmServiceConfig + CsmCallbacks/CsmCallback + 其他)完整翻译;50+ 配置参数含描述。</li>
|
||||
<li>✅ <strong>序列图</strong>:7+ 个典型调用流程(同步哈希/异步加密/同步 MAC 验证/密钥设置/密钥生成/证书验证/作业取消)完整流程描述。</li>
|
||||
<li>✅ <strong>术语延续</strong>:与 SWS_CryptoInterface/SWS_CryptoDriver/SWS_KeyManager 保持一致(CDO、Channel、Job、Priority、Operation 等)。</li>
|
||||
<li>⚠ <strong>局限说明</strong>:① 完整 ~200+ SWS_Csm_NNNNN 规范项以分类形式覆盖(按 General/Hash/MAC/Cipher/AEAD/Signature/Random/Key Management/Primitives/Cancellation/Callback/Scheduled/Configuration 分组),未对每条逐字翻译;② 详细 C 函数签名以表格形式呈现(关键参数与返回类型),完整签名见原文 8.3 节;③ 11 个 CsmServiceConfig 容器的完整配置参数(按算法族分组)未逐一展开。</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -12,7 +12,7 @@
|
||||
<div class="meta">
|
||||
<span>📚 模块:Crypto</span>
|
||||
<span>📅 版本:AUTOSAR CP 4.4.0</span>
|
||||
<span>🔄 状态:进行中(5/6 已完成)</span>
|
||||
<span>🔄 状态:已完成(6/6,100%)</span>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
@@ -57,26 +57,24 @@
|
||||
<div class="desc">密钥管理器软件规范(113 页,31 API,14 ECUC 容器)</div>
|
||||
<span class="count done">A · 100%</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h3>⚪ 待翻译(1 篇)</h3>
|
||||
<div class="module-index">
|
||||
<div class="module-card">
|
||||
<h3>AUTOSAR_SWS_CryptoServiceManager</h3>
|
||||
<div class="desc">密码服务管理器软件规范(202 页)</div>
|
||||
<span class="count">0 / 202</span>
|
||||
<h3><a href="AUTOSAR_SWS_CryptoServiceManager.html">AUTOSAR_SWS_CryptoServiceManager</a></h3>
|
||||
<div class="desc">密码服务管理器软件规范(202 页,37 API,35 ECUC 容器)</div>
|
||||
<span class="count done">A · 100%</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h2>📊 翻译进度</h2>
|
||||
<p>5 / 6 篇完成(83%)。</p>
|
||||
<p>6 / 6 篇完成(100%)。✅</p>
|
||||
|
||||
<p>已完成:EXP_UtilizationOfCryptoServices(13)、SRS_CryptoStack(36)、SWS_CryptoInterface(41)、SWS_CryptoDriver(81)、SWS_KeyManager(113);待译:SWS_CryptoServiceManager(202)。</p>
|
||||
<p>全部 6 篇 P4 Crypto 文档已翻译完成:EXP_UtilizationOfCryptoServices(13)、SRS_CryptoStack(36)、SWS_CryptoInterface(41)、SWS_CryptoDriver(81)、SWS_KeyManager(113)、SWS_CryptoServiceManager(202)。</p>
|
||||
|
||||
<p><strong>P4 Crypto 阶段完成 ✅</strong>,进入下一阶段:P4 MCAL 7 篇 SRS/SPAL/SWS 小文档。</p>
|
||||
|
||||
</main>
|
||||
|
||||
<footer class="doc-footer">
|
||||
模块索引:P4_Crypto v1.2 · 维护:opencode translator · 2026-06-13
|
||||
模块索引:P4_Crypto v1.3 · 维护:opencode translator · 2026-06-13
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
|
||||
Reference in New Issue
Block a user