:336.187KB : :1 :2020-07-08 14:09:03
其中在telegram登录首页就在使用该算法 应该让不少哥们头疼
其实这个加密常见于浏览器内置接口 window.crypto.subtle
该接口不仅支持该类型的加密 且支持非常多的算法加密如RSA DES 等等 这里就演示AES-GCM-128这个类型。
format 是一个字符串,描述要导入的密钥的数据格式。可以是以下之一:
----------raw:原始格式。
----------pkcs8:PKCS#8格式。
----------spki:SubjectPublicKeyInfo格式。
----------jwk:JSON Web密钥格式。
keyData是ArrayBuffer,TypedArray,a DataView或JSONWebKey包含给定格式的键的对象。
algorithm 是一个字典对象,用于定义要导入的密钥的类型并提供额外的算法特定参数。
对于RSASSA-PKCS1-v1_5, RSA-PSS或 RSA-OAEP:传递RsaHashedImportParams对象。
对于ECDSA或ECDH:传递 EcKeyImportParams对象。
对于HMAC:传递一个HmacImportParams对象。
对于AES-CTR,AES-CBC,AES-GCM或AES-KW:传递标识算法的字符串或形式为的对象{ "name": ALGORITHM },其中ALGORITHM 是算法的名称。
对于PBKDF2 :传递字符串PBKDF2。
extractable是Boolean表明它是否将有可能使用到导出密钥SubtleCrypto.exportKey()或SubtleCrypto.wrapKey()。
keyUsages是Array指示可以用钥匙做什么的指示。可能的数组值为:
----------encrypt:该键可用于发送encrypt消息。
----------decrypt:该键可用于发送decrypt消息。
----------sign:该键可用于发送sign消息。
----------verify:该密钥可用于verify签名。
----------deriveKey:可以在中使用密钥deriving a new key。
----------deriveBits:可以在中使用密钥deriving bits。
----------wrapKey:该键可能用于wrap a key。
----------unwrapKey:该键可能用于unwrap a key。
crypto.subtle.encrypt
const result = crypto.subtle.encrypt(algorithm,key,data);
algorithm是一个对象,用于指定要使用的算法以及所需的任何其他参数:
------------要使用RSA-OAEP,请传递一个RsaOaepParams对象。
------------要使用AES-CTR,请传递一个AesCtrParams对象。
------------要使用AES-CBC,请传递一个AesCbcParams对象。
------------要使用AES-GCM,请传递一个AesGcmParams对象。
02-17PGE游戏引擎写个半即时回合制游戏
02-17PGE引擎半即时回合制游戏战斗系统雏形
02-17轻量级的json解析器,基于V8引擎
02-15易语言调用Python[模块]
02-09结构组比易语言数据类型调用更加高效、灵
02-05直接加载支持库fne,调用接口创建组件
10-03EXCEL快速调用日期快捷键方法图解
11-11WPS出现宏功能不可调用的处理方法
10-23word表格将默认搜索引擎换成百度
08-29AMD采用X3D封装的旗舰EPYC处理器
09-07自身调用来实现Less循环
09-07js引擎对数据存储,栈内存和堆内存
11-15用量产工具来修复黑胶体封装的U盘教程