aboutsummaryrefslogtreecommitdiff
path: root/files/pt-br/web/api/subtlecrypto/importkey/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'files/pt-br/web/api/subtlecrypto/importkey/index.html')
-rw-r--r--files/pt-br/web/api/subtlecrypto/importkey/index.html169
1 files changed, 169 insertions, 0 deletions
diff --git a/files/pt-br/web/api/subtlecrypto/importkey/index.html b/files/pt-br/web/api/subtlecrypto/importkey/index.html
new file mode 100644
index 0000000000..15c4102162
--- /dev/null
+++ b/files/pt-br/web/api/subtlecrypto/importkey/index.html
@@ -0,0 +1,169 @@
+---
+title: SubtleCrypto.importKey()
+slug: Web/API/SubtleCrypto/importKey
+tags:
+ - API
+ - Criptografía
+ - Referencia
+ - SubtleCrypto
+ - Web Crypto API
+ - metodo
+translation_of: Web/API/SubtleCrypto/importKey
+---
+<p>{{APIRef("Web Crypto API")}}</p>
+
+<p>O método <code><strong>SubtleCrypto.importKey()</strong></code> retorna como {{jsxref("Promise")}} de uma {{domxref("CryptoKey")}} de uma informção dada como parâmetro.</p>
+
+<h2 id="Sintaxe">Sintaxe</h2>
+
+<pre class="syntaxbox">var <em>result</em> = <em>crypto</em><code>.subtle.importKey(<em>format</em>, <em>keyData</em>, <em>algo</em>, <em>extractable</em>, <em>usages</em>)</code>;
+</pre>
+
+<h3 id="Parâmetros">Parâmetros</h3>
+
+<ul>
+ <li><em><code>format</code></em> é um valor enumerado descrevendo o formato de informação da key exportada. Podendo ser um dos seguintes:
+
+ <ul>
+ <li><code>"raw"</code>, a key como um conjunto de bytes, normalmente uma key secreta.</li>
+ <li><code>"pkcs8"</code> uma key privada, no <a href="http://tools.ietf.org/html/rfc5208">IETF Public Key-Cryptographic Standard Encryption #8</a>.</li>
+ <li><code>"spki"</code>, normalmente uma key pública, no <a href="http://en.wikipedia.org/wiki/Simple_public-key_infrastructure">Simple public key infrastructure</a> padrão.</li>
+ <li><code>"jwk"</code>, a key no formato <a href="https://tools.ietf.org/html/draft-ietf-jose-json-web-key-41">JSON Web Key</a>.</li>
+ </ul>
+ </li>
+ <li><code><em>keyData</em></code> é uma {{domxref("ArrayBuffer")}} ou uma {{domxref("JSONWebKey")}} contendo uma key no formato dado.</li>
+ <li><em><code>algo</code></em> é um objeto de dicionário que define o algoritmo que foi utilizado para gerar a key que está sendo importada.</li>
+ <li><code><em>extractable</em></code> é um {{jsxref("Boolean")}} indicando se a key pode ser extraída de um objeto {{domxref("CryptoKey")}} em um estágio mais tardio.</li>
+ <li><code><em>usages</em></code> é um {{jsxref("Array")}} que indica o que pode ser feito com a key. Valores possíveis do array são:
+ <ul>
+ <li><code>"encrypt"</code>, permitindo que a key seja utilizada para {{glossary("encryption", "encrypting")}} mensagens.</li>
+ <li><code>"decrypt"</code>, permitindo que a key seja utilizada para {{glossary("decryption", "decrypting")}} mensagens.</li>
+ <li><code>"sign"</code>, permitindo que a key seja utilizada para {{glossary("signature", "signing")}} mensagens.</li>
+ <li><code>"verify"</code>, permitindo que a key seja utilizada para {{glossary("verification", "verifying the signature")}} de mensagens.</li>
+ <li><code>"deriveKey"</code>, permitindo que a key seja utilizada como uma key base na derivação de uma nova key.</li>
+ <li><code>"deriveBits"</code>, permitindo que a key seja utilizada como key base na derivação de bits de informação para uso em criptografias primitivas.</li>
+ <li><code>"wrapKey"</code>, permitindo que a key envolva uma key simétrica para uso (transferência, armazenamento) em ambientes não seguros.</li>
+ <li><code>"unwrapKey"</code>, permitindo que a key se desvincule de uma key simétrica para uso (transferência, armazenamento) em ambientes não seguros.</li>
+ </ul>
+ </li>
+</ul>
+
+<h3 id="Valor_de_retorno">Valor de retorno</h3>
+
+<ul>
+ <li><code><em>result</em></code> é uma {{jsxref("Promise")}} que retorna a {{domxref("CryptoKey")}} gerada.</li>
+</ul>
+
+<h3 id="Exceções">Exceções</h3>
+
+<p>A promise é rejeitada quando umas das seguintes exceções é encontrada:</p>
+
+<ul>
+ <li>{{exception("SyntaxError")}} quando <em><code>keyUsages</code></em> está vazia mas a key desvinculada é do tipo <code>"secret"</code> ou <code>"private"</code>.</li>
+ <li>{{jsxref("TypeError")}} quando tentando utilizar um formato invalido ou se a <em><code>keyData</code></em> não é adequada para este formato.</li>
+</ul>
+
+<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', '#dfn-SubtleCrypto-method-importKey', 'SubtleCrypto.importKey()') }}</td>
+ <td>{{ Spec2('Web Crypto API') }}</td>
+ <td>Definição inicial.</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Compatibilidade_de_Browser">Compatibilidade de Browser</h2>
+
+<p>{{ CompatibilityTable() }}</p>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Características</th>
+ <th>Chrome</th>
+ <th>Edge</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari</th>
+ </tr>
+ <tr>
+ <td>Suporte básico</td>
+ <td>{{ CompatChrome(37) }}</td>
+ <td>{{CompatVersionUnknown}}</td>
+ <td>{{ CompatGeckoDesktop(34) }}</td>
+ <td>{{ CompatNo() }}</td>
+ <td>{{ CompatUnknown() }}</td>
+ <td>{{ CompatNo }}</td>
+ </tr>
+ <tr>
+ <td><code>ECDH</code></td>
+ <td>{{ CompatUnknown() }}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{ CompatGeckoDesktop(41) }}</td>
+ <td>{{ CompatUnknown() }}</td>
+ <td>{{ CompatUnknown() }}</td>
+ <td>{{ CompatUnknown() }}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Características</th>
+ <th>Android</th>
+ <th>Chrome for Android</th>
+ <th>Edge</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ </tr>
+ <tr>
+ <td>Suporte básico</td>
+ <td>{{CompatVersionUnknown}}</td>
+ <td>37</td>
+ <td>{{CompatVersionUnknown}}</td>
+ <td>{{ CompatGeckoMobile(34) }}</td>
+ <td>{{ CompatNo }}</td>
+ <td>{{ CompatUnknown() }}</td>
+ <td>{{ CompatNo }}</td>
+ </tr>
+ <tr>
+ <td><code>ECDH</code></td>
+ <td>{{ CompatUnknown() }}</td>
+ <td>{{ CompatUnknown() }}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{ CompatGeckoDesktop(41) }}</td>
+ <td>{{ CompatUnknown() }}</td>
+ <td>{{ CompatUnknown() }}</td>
+ <td>{{ CompatUnknown() }}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="Veja_também">Veja também</h2>
+
+<ul>
+ <li>{{domxref("Crypto")}} e {{domxref("Crypto.subtle")}}.</li>
+ <li>{{domxref("SubtleCrypto")}}, a interface a qual ele pertence.</li>
+</ul>
+
+<h3 id="Dicionário">Dicionário:</h3>
+
+<p>"Key" = "Chave"</p>
+
+<p> </p>