Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
ec800506
D
Docs
项目概览
OpenHarmony
/
Docs
大约 2 年 前同步成功
通知
161
Star
293
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看板
未验证
提交
ec800506
编写于
2月 07, 2023
作者:
胡
胡啸天
提交者:
Gitee
2月 07, 2023
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update zh-cn/application-dev/reference/apis/js-apis-cryptoFramework.md. to modify algName
Signed-off-by:
N
胡啸天
<
huxiaotian2@huawei.com
>
上级
733c630f
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
33 addition
and
33 deletion
+33
-33
zh-cn/application-dev/reference/apis/js-apis-cryptoFramework.md
...application-dev/reference/apis/js-apis-cryptoFramework.md
+33
-33
未找到文件。
zh-cn/application-dev/reference/apis/js-apis-cryptoFramework.md
浏览文件 @
ec800506
...
@@ -918,10 +918,10 @@ rand.generateRandom(12, (err, randData) => {
...
@@ -918,10 +918,10 @@ rand.generateRandom(12, (err, randData) => {
| 名称 | 类型 | 可读 | 可写 | 说明 |
| 名称 | 类型 | 可读 | 可写 | 说明 |
| -------- | ------ | ---- | ---- | ----------------------- |
| -------- | ------ | ---- | ---- | ----------------------- |
| alg
o
Name | string | 是 | 是 | 指明对称加解密参数的算法模式。可选值如下:
<br/>
- "IvParamsSpec": 适用于CBC
\|
CTR
\|
OFB
\|
CFB模式
<br/>
- "GcmParamsSpec": 适用于GCM模式
<br/>
- "CcmParamsSpec": 适用于CCM模式 |
| algName | string | 是 | 是 | 指明对称加解密参数的算法模式。可选值如下:
<br/>
- "IvParamsSpec": 适用于CBC
\|
CTR
\|
OFB
\|
CFB模式
<br/>
- "GcmParamsSpec": 适用于GCM模式
<br/>
- "CcmParamsSpec": 适用于CCM模式 |
> **说明:**
> **说明:**
> 由于[init()](#init-2)的params参数是ParamsSpec类型(父类),而实际需要传入具体的子类对象(如IvParamsSpec),因此在构造子类对象时应设置其父类ParamsSpec的alg
o
Name参数,使算法库在init()时知道传入的是哪种子类对象。
> 由于[init()](#init-2)的params参数是ParamsSpec类型(父类),而实际需要传入具体的子类对象(如IvParamsSpec),因此在构造子类对象时应设置其父类ParamsSpec的algName参数,使算法库在init()时知道传入的是哪种子类对象。
## IvParamsSpec
## IvParamsSpec
...
@@ -934,7 +934,7 @@ rand.generateRandom(12, (err, randData) => {
...
@@ -934,7 +934,7 @@ rand.generateRandom(12, (err, randData) => {
| iv |
[
DataBlob
](
#datablob
)
| 是 | 是 | 指明加解密参数iv。常见取值如下:
<br/>
- AES的CBC
\|
CTR
\|
OFB
\|
CFB模式:iv长度为16字节
<br/>
- 3DES的CBC
\|
OFB
\|
CFB模式:iv长度为8字节 |
| iv |
[
DataBlob
](
#datablob
)
| 是 | 是 | 指明加解密参数iv。常见取值如下:
<br/>
- AES的CBC
\|
CTR
\|
OFB
\|
CFB模式:iv长度为16字节
<br/>
- 3DES的CBC
\|
OFB
\|
CFB模式:iv长度为8字节 |
> **说明:**
> **说明:**
> 传入[init()](#init-2)方法前需要指定其alg
o
Name属性(来源于父类[ParamsSpec](#paramsspec))。
> 传入[init()](#init-2)方法前需要指定其algName属性(来源于父类[ParamsSpec](#paramsspec))。
## GcmParamsSpec
## GcmParamsSpec
...
@@ -949,7 +949,7 @@ rand.generateRandom(12, (err, randData) => {
...
@@ -949,7 +949,7 @@ rand.generateRandom(12, (err, randData) => {
| authTag |
[
DataBlob
](
#datablob
)
| 是 | 是 | 指明加解密参数authTag,长度为16字节。
<br/>
采用GCM模式加密时,需要获取
[
doFinal()
](
#dofinal-2
)
输出的
[
DataBlob
](
#datablob
)
,取出其末尾16字节作为解密时
[
init()
](
#init-2
)
方法的入参
[
GcmParamsSpec
](
#gcmparamsspec
)
中的的authTag |
| authTag |
[
DataBlob
](
#datablob
)
| 是 | 是 | 指明加解密参数authTag,长度为16字节。
<br/>
采用GCM模式加密时,需要获取
[
doFinal()
](
#dofinal-2
)
输出的
[
DataBlob
](
#datablob
)
,取出其末尾16字节作为解密时
[
init()
](
#init-2
)
方法的入参
[
GcmParamsSpec
](
#gcmparamsspec
)
中的的authTag |
> **说明:**
> **说明:**
> 传入[init()](#init-2)方法前需要指定其alg
o
Name属性(来源于父类[ParamsSpec](#paramsspec))。
> 传入[init()](#init-2)方法前需要指定其algName属性(来源于父类[ParamsSpec](#paramsspec))。
## CcmParamsSpec
## CcmParamsSpec
...
@@ -964,7 +964,7 @@ rand.generateRandom(12, (err, randData) => {
...
@@ -964,7 +964,7 @@ rand.generateRandom(12, (err, randData) => {
| authTag |
[
DataBlob
](
#datablob
)
| 是 | 是 | 指明加解密参数authTag,长度为12字节。
<br/>
采用CCM模式加密时,需要获取
[
doFinal()
](
#dofinal-2
)
输出的
[
DataBlob
](
#datablob
)
,取出其末尾12字节作为解密时
[
init()
](
#init-2
)
方法的入参
[
CcmParamsSpec
](
#ccmparamsspec
)
中的authTag |
| authTag |
[
DataBlob
](
#datablob
)
| 是 | 是 | 指明加解密参数authTag,长度为12字节。
<br/>
采用CCM模式加密时,需要获取
[
doFinal()
](
#dofinal-2
)
输出的
[
DataBlob
](
#datablob
)
,取出其末尾12字节作为解密时
[
init()
](
#init-2
)
方法的入参
[
CcmParamsSpec
](
#ccmparamsspec
)
中的authTag |
> **说明:**
> **说明:**
> 传入[init()](#init-2)方法前需要指定其alg
o
Name属性(来源于父类[ParamsSpec](#paramsspec))。
> 传入[init()](#init-2)方法前需要指定其algName属性(来源于父类[ParamsSpec](#paramsspec))。
## CryptoMode
## CryptoMode
...
@@ -1228,8 +1228,8 @@ generateSymKey(callback : AsyncCallback\<SymKey>) : void
...
@@ -1228,8 +1228,8 @@ generateSymKey(callback : AsyncCallback\<SymKey>) : void
```
js
```
js
import
cryptoFramework
from
'
@ohos.security.cryptoFramework
'
;
import
cryptoFramework
from
'
@ohos.security.cryptoFramework
'
;
let
symAlg
o
Name
=
'
3DES192
'
;
let
symAlgName
=
'
3DES192
'
;
let
symKeyGenerator
=
cryptoFramework
.
createSymKeyGenerator
(
symAlg
o
Name
);
let
symKeyGenerator
=
cryptoFramework
.
createSymKeyGenerator
(
symAlgName
);
symKeyGenerator
.
generateSymKey
((
err
,
symKey
)
=>
{
symKeyGenerator
.
generateSymKey
((
err
,
symKey
)
=>
{
if
(
err
)
{
if
(
err
)
{
console
.
error
(
`Generate symKey failed,
${
err
.
code
}
,
${
err
.
message
}
`
);
console
.
error
(
`Generate symKey failed,
${
err
.
code
}
,
${
err
.
message
}
`
);
...
@@ -1263,8 +1263,8 @@ generateSymKey() : Promise\<SymKey>
...
@@ -1263,8 +1263,8 @@ generateSymKey() : Promise\<SymKey>
```
js
```
js
import
cryptoFramework
from
'
@ohos.security.cryptoFramework
'
;
import
cryptoFramework
from
'
@ohos.security.cryptoFramework
'
;
let
symAlg
o
Name
=
'
AES128
'
;
let
symAlgName
=
'
AES128
'
;
let
symKeyGenerator
=
cryptoFramework
.
createSymKeyGenerator
(
symAlg
o
Name
);
let
symKeyGenerator
=
cryptoFramework
.
createSymKeyGenerator
(
symAlgName
);
symKeyGenerator
.
generateSymKey
()
symKeyGenerator
.
generateSymKey
()
.
then
(
symKey
=>
{
.
then
(
symKey
=>
{
console
.
info
(
`Generate symKey success, algName:
${
symKey
.
algName
}
`
);
console
.
info
(
`Generate symKey success, algName:
${
symKey
.
algName
}
`
);
...
@@ -1308,8 +1308,8 @@ function genKeyMaterialBlob() {
...
@@ -1308,8 +1308,8 @@ function genKeyMaterialBlob() {
return
{
data
:
keyMaterial
};
return
{
data
:
keyMaterial
};
}
}
let
symAlg
o
Name
=
'
3DES192
'
;
let
symAlgName
=
'
3DES192
'
;
let
symKeyGenerator
=
cryptoFramework
.
createSymKeyGenerator
(
symAlg
o
Name
);
let
symKeyGenerator
=
cryptoFramework
.
createSymKeyGenerator
(
symAlgName
);
let
keyMaterialBlob
=
genKeyMaterialBlob
();
let
keyMaterialBlob
=
genKeyMaterialBlob
();
symKeyGenerator
.
convertKey
(
keyMaterialBlob
,
(
err
,
symKey
)
=>
{
symKeyGenerator
.
convertKey
(
keyMaterialBlob
,
(
err
,
symKey
)
=>
{
if
(
err
)
{
if
(
err
)
{
...
@@ -1360,8 +1360,8 @@ function genKeyMaterialBlob() {
...
@@ -1360,8 +1360,8 @@ function genKeyMaterialBlob() {
return
{
data
:
keyMaterial
};
return
{
data
:
keyMaterial
};
}
}
let
symAlg
o
Name
=
'
3DES192
'
;
let
symAlgName
=
'
3DES192
'
;
let
symKeyGenerator
=
cryptoFramework
.
createSymKeyGenerator
(
symAlg
o
Name
);
let
symKeyGenerator
=
cryptoFramework
.
createSymKeyGenerator
(
symAlgName
);
let
keyMaterialBlob
=
genKeyMaterialBlob
();
let
keyMaterialBlob
=
genKeyMaterialBlob
();
symKeyGenerator
.
convertKey
(
keyMaterialBlob
)
symKeyGenerator
.
convertKey
(
keyMaterialBlob
)
.
then
(
symKey
=>
{
.
then
(
symKey
=>
{
...
@@ -1597,10 +1597,10 @@ createCipher(transformation : string) : Cipher
...
@@ -1597,10 +1597,10 @@ createCipher(transformation : string) : Cipher
```
javascript
```
javascript
import
cryptoFramework
from
"
@ohos.security.cryptoFramework
"
import
cryptoFramework
from
"
@ohos.security.cryptoFramework
"
let
cipherAlg
o
Name
=
'
3DES192|ECB|PKCS7
'
;
let
cipherAlgName
=
'
3DES192|ECB|PKCS7
'
;
var
cipher
;
var
cipher
;
try
{
try
{
cipher
=
cryptoFramework
.
createCipher
(
cipherAlg
o
Name
);
cipher
=
cryptoFramework
.
createCipher
(
cipherAlgName
);
console
.
info
(
`cipher algName:
${
cipher
.
algName
}
`
);
console
.
info
(
`cipher algName:
${
cipher
.
algName
}
`
);
}
catch
(
error
)
{
}
catch
(
error
)
{
console
.
error
(
`createCipher failed,
${
error
.
code
}
,
${
error
.
message
}
`
);
console
.
error
(
`createCipher failed,
${
error
.
code
}
,
${
error
.
message
}
`
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录