1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
---
title: SubtleCrypto
slug: Web/API/SubtleCrypto
tags:
- API
- Interface
- NeedsTranslation
- Referencia
- TopicStub
- Web Crypto API
translation_of: Web/API/SubtleCrypto
---
<p>{{APIRef("Web Crypto API")}}</p>
<p>A interface <code><strong>SubtleCrypto</strong></code> representa um conjunto de criptografias primitivas. E está disponível via propriedades {{domxref("Crypto.subtle")}} disponíveis em uma janela de contexto (via {{domxref("Window.crypto")}}).</p>
<div class="warning">
<p>Por especificação: "Desenvolvedores fazendo uso da interface SubtleCrypto devem estar cientes das preocupações associadas com o design e a implementação de vários algoritmos providos. Os algoritmos brutos são providos em ordem para permitir aos desenvolvedores uma felixibilidade máxima na implementação de uma variedade de protocolos e aplicações, cada um deve representar a composição e os parâmetros de segurança em uma maneira única que necessita do uso de algoritmos brutos."</p>
</div>
<h2 id="Propriedades">Propriedades</h2>
<p><em>Esta interface não herda e nem implementa nenhuma propriedade.</em></p>
<h2 id="Métodos">Métodos</h2>
<p>Esta interface não herda nenhum método</p>
<dl>
<dt>{{domxref("SubtleCrypto.encrypt()")}}</dt>
<dd>Retorna uma {{jsxref("Promise")}} da informação criptografada correspondente com o texto, algoritmo e chave key dados como parâmetros.</dd>
<dt>{{domxref("SubtleCrypto.decrypt()")}}</dt>
<dd>Retorna uma {{jsxref("Promise")}} da informação correspondente ao texto encriptografado, algoritmo e key dados como parâmetros.</dd>
<dt>{{domxref("SubtleCrypto.sign()")}}</dt>
<dd>Retorna uma {{jsxref("Promise")}} de uma assinatura correspondente ao texto, algoritmo e key dados como parâmetros.</dd>
<dt>{{domxref("SubtleCrypto.verify()")}}</dt>
<dd>Retorna uma {{jsxref("Promise")}} de um valor {{jsxref("Boolean")}} indicando se a assinatura dada como parâmetro combina com o texto, algoritmo e key também dados como parâmetros.</dd>
<dt>{{domxref("SubtleCrypto.digest()")}}</dt>
<dd>Retorna uma {{jsxref("Promise")}} de um resumo gerado a partir do algoritmo e texto dados como parâmetros.</dd>
<dt>{{domxref("SubtleCrypto.generateKey()")}}</dt>
<dd>Retorna uma {{jsxref("Promise")}} de uma recentemente gerada {{domxref("CryptoKey")}}, para algoritmos simétricos, ou uma {{domxref("CryptoKeyPair")}}, contendo duas novas keys simétricas, para algoritmos assimétricos, que combina com o algoritmo, os usos e a extrabilidade dados como parâmetros.</dd>
<dt>{{domxref("SubtleCrypto.deriveKey()")}}</dt>
<dd>Retorna uma {{jsxref("Promise")}} de uma recentemente gerada {{domxref("CryptoKey")}} derivada de uma master key e um algoritmo específico dados como parâmetros.</dd>
<dt>{{domxref("SubtleCrypto.deriveBits()")}}</dt>
<dd>Retorna uma {{jsxref("Promise")}} de um buffer recentemente gerado de bits pseudo-randômicos derivados de uma master key e um algoritmo específico dados como parâmetros.</dd>
<dt>{{domxref("SubtleCrypto.importKey()")}}</dt>
<dd>Retorna uma {{jsxref("Promise")}} de uma {{domxref("CryptoKey")}} correspondente ao formato, o algoritmo, a informação da key bruta, o uso e a extrabilidade dados como parâmetros.</dd>
<dt>{{domxref("SubtleCrypto.exportKey()")}}</dt>
<dd>Retorna uma {{jsxref("Promise")}} deu uma buffer contendo a key no formato requisitado.</dd>
<dt>{{domxref("SubtleCrypto.wrapKey()")}}</dt>
<dd>Retorna uma {{jsxref("Promise")}} de uma key envolvida simetricamente para uso (transferência, armazenamento) em ambientes não seguros. O buffer envolvido retornado será no formato dado nos parâmetros, e contém a key envolvida com a key envolvendo e o algoritmo dado.</dd>
<dt>{{domxref("SubtleCrypto.unwrapKey()")}}</dt>
<dd>Retorna uma {{jsxref("Promise")}} de uma {{domxref("CryptoKey")}} correspondente à key envolvida dada como parâmetro.</dd>
</dl>
<h2 id="Especificações">Especificações</h2>
<table class="standard-table">
<tbody>
<tr>
<th scope="col">Especificação</th>
<th scope="col">Status</th>
<th scope="col">Comentário</th>
</tr>
<tr>
<td>{{ SpecName('Web Crypto API', '#subtlecrypto-interface', 'SubtleCrypto') }}</td>
<td>{{ Spec2('Web Crypto API') }}</td>
<td>Definição inicial.</td>
</tr>
</tbody>
</table>
<h2 id="Browser_compatibility">Compatibilidade com navegadores</h2>
<p>{{Compat("api.SubtleCrypto")}}</p>
<h2 id="Veja_também">Veja também</h2>
<ul>
<li>{{domxref("Crypto")}} e {{domxref("Crypto.subtle")}}.</li>
</ul>
|