---
title: 简介
description: "商密应用是基于鲲鹏安全计算密码模块，提供满足商密模块二级认证的内生商密服务。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengcctrustzone/cca/devg/Kunpeng_ommercialcryptography_16_0001.html
sourcePath: /source/zh/kunpengcctrustzone/cca/devg/Kunpeng_ommercialcryptography_16_0001.html
indexId: 8d02eb4173c81e7131fc350c12bcd0368655ff9c998c70c6e661415d5317368081
---
# 简介

商密应用是基于鲲鹏安全计算密码模块，提供满足商密模块二级认证的内生商密服务。

鲲鹏安全计算密码模块是基于华为自研可信执行环境操作系统（Trusted Execution Environment OS， TEE OS）提供的一个密码模块套件，该模块分为CA/TA两部分，TA部分内置于TEE OS中，CA部分包括API库和密钥管理工具，旨在为安全业务提供便捷、安全的密码算法能力。

#### 应用场景

本密码模块符合GM/T 0018-2012、2023标准，为公钥密码基础设施应用中的通用密码服务层提供基础密码服务，包括密钥生成，单一的密码运算，文件管理等服务。典型应用场景如VPN网关、应用数据加密等，本密码设备内生于服务器，可在不新增密码卡、密码机的前提下提供标准密码接口，具有高可靠、低成本、高易用的特点。


#### 软件架构

TEE OS是基于TrustZone架构的可信安全隔离执行环境，密码模块管理单元随TEE OS启动而加载运行。密码运算运行在安全侧，REE侧提供标准SDF接口支持和调用。

图1 鲲鹏安全计算密码模块架构图

libsdf.so：部署在REE侧，提供标准的SDF接口。将密码应用的密码运算请求转发到TEE OS密码模块管理单元中运行。

华为TEE OS架构详见系统架构(https://www.hikunpeng.com/document/detail/zh/kunpengcctrustzone/trustzone/twp/kunpengtrustzone_19_0007.html)。


#### 原理描述

鲲鹏安全计算密码模块运行在华为自研的安全TEE OS基础之上，REE侧提供符合GM/T 0018-2012和2023标准规范的接口库文件libsdf.so，用户应用调用libsdf.so接口后，请求被转发到TEE侧，由密码模块管理单元进行处理，算法服务单元基于TEE OS底层实现具体的密码运算，安全存储服务单元提供数据加密存储。

图2 SDF架构原理


#### 基本概念

- 设备密钥与内部用户密钥。

  - 内部用户密钥为鲲鹏安全计算密码模块管理的密钥，外部用户密钥为用户管理的密钥。
  - 设备密钥只能在设备初始化时生成或安装，内部用户密钥通过密码设备管理工具生成或安装。
  - 设备密钥和内部用户密钥存放于密钥存储区，索引号从0开始，每个索引号对应一个签名密钥对和一个加密密钥对。其中，索引号为0表示设备密钥。索引号从1开始表示用户密钥。
- 密钥加密密钥。
  密钥加密密钥通过密码设备管理工具生成或安装，密钥长度为128位，存放于密钥存储区，使用索引号从1开始。


#### 对系统的影响

客户侧程序通过集成libsdf.so来调用SDF接口，libsdf.so通过驱动调用TEE侧的鲲鹏安全计算密码模块，对REE侧系统无影响。
