Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
3e0444dd
D
Docs
项目概览
OpenHarmony
/
Docs
接近 2 年 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
3e0444dd
编写于
7月 05, 2023
作者:
W
wutiantian_gitee
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
modify sm2
Signed-off-by:
N
wutiantian_gitee
<
1159609162@qq.com
>
上级
491a711e
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
26 addition
and
18 deletion
+26
-18
zh-cn/application-dev/reference/apis/js-apis-cryptoFramework.md
...application-dev/reference/apis/js-apis-cryptoFramework.md
+3
-3
zh-cn/application-dev/security/cryptoFramework-overview.md
zh-cn/application-dev/security/cryptoFramework-overview.md
+23
-15
未找到文件。
zh-cn/application-dev/reference/apis/js-apis-cryptoFramework.md
浏览文件 @
3e0444dd
...
...
@@ -58,7 +58,7 @@ buffer数组。
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ---- | --------------------- | ---- | ---- | ------------------------------------------------------------ |
| iv |
[
DataBlob
](
#datablob
)
| 是 | 是 | 指明加解密参数iv。常见取值如下:
<br/>
- AES的CBC
\|
CTR
\|
OFB
\|
CFB模式:iv长度为16字节
<br/>
- 3DES的CBC
\|
OFB
\|
CFB模式:iv长度为8字节
<br/>
- SM4的CBC
\|
CTR
\|
OFB
\|
CFB模式:iv长度为16字节。 |
| iv |
[
DataBlob
](
#datablob
)
| 是 | 是 | 指明加解密参数iv。常见取值如下:
<br/>
- AES的CBC
\|
CTR
\|
OFB
\|
CFB模式:iv长度为16字节
<br/>
- 3DES的CBC
\|
OFB
\|
CFB模式:iv长度为8字节
<br/>
- SM4
<sup>
10+
</sup>
的CBC
\|
CTR
\|
OFB
\|
CFB模式:iv长度为16字节。 |
> **说明:**
>
...
...
@@ -1820,7 +1820,7 @@ Sign实例生成。<br/>支持的规格详见框架概述“[签名验签规格]
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ------ | ---- | ------------------------------------------------------------ |
| algName | string | 是 | 指定签名算法:RSA,
SM2,ECC或DSA
。使用RSA PKCS1模式时需要设置摘要,使用RSA PSS模式时需要设置摘要和掩码摘要。 |
| algName | string | 是 | 指定签名算法:RSA,
ECC,DSA或SM2
<sup>
10+
</sup>
。使用RSA PKCS1模式时需要设置摘要,使用RSA PSS模式时需要设置摘要和掩码摘要。 |
**返回值**
:
...
...
@@ -2207,7 +2207,7 @@ Verify实例生成。<br/>支持的规格详见框架概述“[签名验签规
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ------ | ---- | ------------------------------------------------------------ |
| algName | string | 是 | 指定签名算法:RSA,
SM2,ECC或DSA
。使用RSA PKCS1模式时需要设置摘要,使用RSA PSS模式时需要设置摘要和掩码摘要。 |
| algName | string | 是 | 指定签名算法:RSA,
ECC,DSA或SM2
<sup>
10+
</sup>
,
。使用RSA PKCS1模式时需要设置摘要,使用RSA PSS模式时需要设置摘要和掩码摘要。 |
**返回值**
:
...
...
zh-cn/application-dev/security/cryptoFramework-overview.md
浏览文件 @
3e0444dd
...
...
@@ -160,8 +160,7 @@
-
**非对称SM2加解密**
SM2为块加密算法,加密长度需要在固定长度进行。OpenSSL中SM2算法加解密时使用零填充模式,如果数据长度不足32字节,则需要进行填充,填充的方式是在数据后面添加若干个0x00字节,直到数据长度达到32字节为止。
SM2加密过程中,首先需要生成一个随机数k,并使用公钥对kG进行加密,得到C1。然后,将明文数据进行SM3摘要计算,得到摘要值,并将摘要值与C1进行拼接,得到C3。接着,使用k和摘要值作为参数,对明文数据进行加密,得到C2。最后,将C1、C3、C2按顺序拼接起来,得到最终的加密结果。通过加入摘要值,增强了加密结果的安全性,同时也方便了解密过程中的验证。
SM2为块加密算法,是国家密码管理局发布的椭圆曲线公钥密码算法,加密长度在固定长度进行。算法库目前支持以C1C3C2格式输出加密数据,支持对C1C3C2格式的输入数据进行解密。
### 签名验签
...
...
@@ -188,6 +187,11 @@
-
**DSA**
数字签名算法(DSA)的安全性基于整数有限域离散对数问题的困难性,这类签名标准具有较大的兼容性和适用性。
-
**SM2**
椭圆曲线数字签名算法(SM2)是基于椭圆曲线的算法,由国家密码管理局发布。
### 密钥协商
...
...
@@ -204,11 +208,6 @@
-
当输入消息的长度不一致时,生成摘要序列长度固定(摘要长度由算法决定)。
-
当输入消息不一致时,生成摘要序列几乎不会相同(依然存在相同概率,由摘要长度决定相同概率)。
消息摘要算法主要分为两类:SHA和SM3。
SM3包括MD和MAC(详见HMAC章节)。
SM3中MD算法包括MD2,MD4和MD5。
SHA算法主要包括SHA1,SHA224,SHA256,SHA384,SHA512。
### 消息验证码
HMAC(Hash-based Message Authentication Code)是一种基于密钥的消息认证码算法。HMAC通过指定摘要算法,以通信双方共享密钥与消息作为输入,生成消息认证码用于检验传递报文的完整性,HMAC生成的消息认证码为固定长度。HMAC在消息摘要算法的基础上增加了密钥的输入,确保了信息的正确性。
...
...
@@ -398,7 +397,7 @@ HMAC(Hash-based Message Authentication Code)是一种基于密钥的消息
> **说明:**
>
> 从API version 10开始, 支持
使用密钥参数来生成SM2密钥.
> 从API version 10开始, 支持
SM2密钥随机生成。
-
支持以字符串参数来生成SM2密钥,其生成参数如下表所示:
...
...
@@ -414,7 +413,7 @@ HMAC(Hash-based Message Authentication Code)是一种基于密钥的消息
> **说明:**
>
> 从API version 10开始, 支持
使用密钥参数来生成SM4密钥.
> 从API version 10开始, 支持
SM4密钥随机生成。
-
支持以字符串参数来生成SM4密钥,其生成参数如下表所示:
...
...
@@ -459,7 +458,7 @@ HMAC(Hash-based Message Authentication Code)是一种基于密钥的消息
>
> 1. []中只能任选一项。
> 2. “字符串参数”是“对称加解密算法(含密钥长度)”、“分组模式”、“填充模式”拼接而成,用于在创建对称加解密实例时,指定对称加解密算法规格。
> 3. “字符串参数”中“SM4”和密钥长度间需要添加下划线
> 3. “字符串参数”中“SM4
<sup>10+</sup>
”和密钥长度间需要添加下划线
### 非对称RSA加解密
...
...
@@ -576,7 +575,7 @@ RSA加解密时,涉及三种填充模式:NoPadding, PKCS1和PKCS1_OAEP。
> **说明:**
>
> 从API version 10开始, 支持非对称SM2加解密不带密钥长度的规格。
> 从API version 10开始, 支持非对称SM2加解密
,支持
不带密钥长度的规格。
SM2加解密时,仅支持C1C3C2密文排列组合模式。SM2非对称加密的结果由C1,C2,C3三部分组成。其中C1是根据生成的随机数计算出的椭圆曲线点,C2是密文数据,C3是通过指定摘要算法计算的值。国密新标准以C1,C3,C2顺序存放,不支持无摘要加密。
-
支持的加密算法:
...
...
@@ -584,7 +583,8 @@ SM2加解密时,仅支持C1C3C2密文排列组合模式。SM2非对称加密
| 非对称密钥类型 | 摘要 | 字符串参数 |
|---|---|---|
|SM2_256|[MD5
\|
SHA1
\|
SHA224
\|
SHA256
\|
SHA384
\|
SHA512
\|
SM3]|SM2_256
\|
[MD5
\|
SHA1
\|
SHA224
\|
SHA256
\|
SHA384
\|
SHA512
\|
SM3]|
|SM2|[MD5
\|
SHA1
\|
SHA224
\|
SHA256
\|
SHA384
\|
SHA512
\|
SM3]|SM2_256
\|
[MD5
\|
SHA1
\|
SHA224
\|
SHA256
\|
SHA384
\|
SHA512
\|
SM3]|
> **说明:**
>
> “字符串参数”是“非对称密钥类型”、“填充模式”拼接而成,用于在创建非对称加解密实例时,指定非对称加解密算法规格。
...
...
@@ -734,7 +734,7 @@ RSA签名验签时,涉及两种填充模式:PKCS1和PSS。
> **说明:**
>
> 从API version 10开始, 支持SM2签名验签
规格
。
> 从API version 10开始, 支持SM2签名验签。
-
支持的SM2参数:
...
...
@@ -777,6 +777,10 @@ RSA签名验签时,涉及两种填充模式:PKCS1和PSS。
-
加解密算法库框架当前支持的MD算法参数:
> **说明:**
>
> 从API version 10开始, 支持SM3。
|摘要算法|支持种类|
|---|---|
|HASH|SHA1|
...
...
@@ -786,7 +790,7 @@ RSA签名验签时,涉及两种填充模式:PKCS1和PSS。
|HASH|SHA512|
|HASH|MD5|
|HASH|SM3|
> **说明:**
>
> “支持种类”,用于在创建MD消息摘要时,指定MD消息摘要算法规格。
...
...
@@ -795,6 +799,10 @@ RSA签名验签时,涉及两种填充模式:PKCS1和PSS。
-
加解密算法库框架当前支持的HMAC算法参数:
> **说明:**
>
> 从API version 10开始, 支持SM3。
|摘要算法|支持种类|
|---|---|
|HASH|SHA1|
...
...
@@ -803,7 +811,7 @@ RSA签名验签时,涉及两种填充模式:PKCS1和PSS。
|HASH|SHA384|
|HASH|SHA512|
|HASH|SM3|
> **说明:**
>
> “支持种类”,用于在创建HMAC消息认证码时,指定HMAC消息认证码算法规格。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录