SubtleCrypto.encrypt()

SubtleCrypto.encrypt() 方法以算法、密钥、明文为参数返回一个包含加密数据的Promise对象。

语法

var result = crypto.encrypt(algo, key, cleartext);

属性

  • algo 是一个使用加密函数的对象或者DOMString,后者是 {"name": algo}的缩写。支持的值是:
    • {"name": "AES-CBC", iv} iv 是具有16个随机字节的 ArrayBufferArrayBufferView  (这些应该由{domxref("RandomSource.getRandomValues()")}} 生成)。
    • {"name": "AES-CTR", counter, length}
    • {"name": "AES-GCM", iv, additionalData, tagLength} (additionalDatatagLength 是可选的)
    • {"name": "RSA-OAEP", label} (label 是可选的)
  • key 是一个包含签名密钥的 CryptoKey
  • cleartext 是一个包含需要加密的明文 ArrayBuffer 或者 ArrayBufferView 对象。

返回

例外

当遇到以下异常时,promise将会返回一次错误:

  • InvalidAccessError当加密密钥不是所请求的加密算法的密钥时,或者当试图使用未知或不适合加密的算法时。

规范

Specification Status Comment
Web Cryptography API
SubtleCrypto.encrypt()
Candidate Recommendation Initial definition.

浏览器支持

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 37 34 (34) 未实现 ? 未实现
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) 37 34.0 (34) 未实现 ? 未实现

另见

文档标签和贡献者

 此页面的贡献者: Taoja
 最后编辑者: Taoja,