KeyGenerator Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico).
[Android.Runtime.Register("javax/crypto/KeyGenerator", DoNotGenerateAcw=true)]
public class KeyGenerator : Java.Lang.Object
[<Android.Runtime.Register("javax/crypto/KeyGenerator", DoNotGenerateAcw=true)>]
type KeyGenerator = class
inherit Object
- Herança
- Atributos
Comentários
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico).
Os geradores de chaves são construídos usando um dos getInstance
métodos de classe dessa classe.
Os objetos KeyGenerator são reutilizáveis, ou seja, depois que uma chave foi gerada, o mesmo objeto KeyGenerator pode ser reutilizado para gerar mais chaves.
Há duas maneiras de gerar uma chave: de uma maneira independente de algoritmo e de uma maneira específica de algoritmo. A única diferença entre os dois é a inicialização do objeto:
<><ul li><b>Inicialização< independente de algoritmo/b>
Todos os geradores de chaves compartilham os conceitos de um tamanho de chave e uma fonte de aleatoriedade. Há um #init(int, java.security.SecureRandom) init
método nesta classe KeyGenerator que usa esses dois tipos universalmente compartilhados de argumentos. Há também um que usa apenas um keysize
argumento e usa a implementação SecureRandom do provedor instalado de prioridade mais alta como a fonte de aleatoriedade (ou uma fonte de aleatoriedade fornecida pelo sistema se nenhum dos provedores instalados fornecer uma implementação SecureRandom), e um que leva apenas uma fonte de aleatoriedade.
Como nenhum outro parâmetro é especificado quando você chama os métodos independentes init
de algoritmo acima, cabe ao provedor o que fazer sobre os parâmetros específicos do algoritmo (se houver) a serem associados a cada uma das chaves.
<li><b>Inicialização específica do< algoritmo/b>
Para situações em que um conjunto de parâmetros específicos do algoritmo já existe, há dois #init(java.security.spec.AlgorithmParameterSpec) init
métodos que têm um AlgorithmParameterSpec
argumento. Um também tem um SecureRandom
argumento, enquanto o outro usa a implementação SecureRandom do provedor instalado de prioridade mais alta como a fonte de aleatoriedade (ou uma fonte de aleatoriedade fornecida pelo sistema se nenhum dos provedores instalados fornecer uma implementação SecureRandom). </ul>
Caso o cliente não inicialize explicitamente o KeyGenerator (por meio de uma chamada para um init
método), cada provedor deve fornecer (e documentar) uma inicialização padrão.
O Android fornece os seguintes KeyGenerator
algoritmos: <table<>thead><tr<>th>Algorithm</th>><th Supported API Levels</th<>/tr></thead<>tbody<>tr><td>AES</td><td>1+</td></tr<>tr class="deprecated"><td>AESWRAP</td><td>1-8</td<>/tr<>tr><td>ARC4</td><td>14+</td></tr><tr<>td>BLOWFISH</td<>td>10+</td<>/tr<>tr td>><ChaCha20</td><td>28+</td<>/tr><tr td>><DES</td<>td>1+</td<>/tr<>tr><td>DESede</td><td>1+</td/>< tr tr class="preterido"><td>DESedeWRAP</td<>td>1-8</td></tr<>tr><td>HmacMD5</td><td>1+</td></tr><tr td>><HmacSHA1</td<>td>11+</td<>/tr<>tr<>td>HmacSHA224</td<>td>1-8,22+</td><></tr<>tr><td>HmacSHA256</td<>td>1+</td<>/tr><tr<>td>HmacSHA384</td><td>1+</td<>/tr<>tr td><>HmacSHA512</td<>td>1+</td<>/tr><tr class="preterido"<>td>RC4</td><td>10-13</Td></tr></tbody></tabela>
Esses algoritmos são descritos na seção KeyGenerator da Documentação do Nome do Algoritmo Padrão da Arquitetura de Criptografia Java.
Adicionado em 1.4.
Documentação Java para javax.crypto.KeyGenerator
.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.
Construtores
KeyGenerator(IntPtr, JniHandleOwnership) |
Um construtor usado ao criar representações gerenciadas de objetos JNI; chamado pelo tempo de execução. |
KeyGenerator(KeyGeneratorSpi, Provider, String) |
Cria um objeto KeyGenerator. |
Propriedades
Algorithm |
Retorna o nome do algoritmo desse |
Class |
Retorna a classe de tempo de execução deste |
Handle |
O identificador para a instância subjacente do Android. (Herdado de Object) |
JniIdentityHashCode |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). (Herdado de Object) |
JniPeerMembers |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). |
PeerReference |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). (Herdado de Object) |
Provider |
Retorna o provedor deste |
ThresholdClass |
Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código. |
ThresholdType |
Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código. |
Métodos
Clone() |
Cria e retorna uma cópia desse objeto. (Herdado de Object) |
Dispose() |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). (Herdado de Object) |
Dispose(Boolean) |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). (Herdado de Object) |
Equals(Object) |
Indica se algum outro objeto é "igual" a este. (Herdado de Object) |
GenerateKey() |
Gera uma chave secreta. |
GetHashCode() |
Retorna um valor de código hash para o objeto. (Herdado de Object) |
GetInstance(String) |
Retorna um |
GetInstance(String, Provider) |
Retorna um |
GetInstance(String, String) |
Retorna um |
Init(IAlgorithmParameterSpec) |
Inicializa esse gerador de chaves com o conjunto de parâmetros especificado. |
Init(IAlgorithmParameterSpec, SecureRandom) |
Inicializa esse gerador de chaves com o conjunto de parâmetros especificado e uma fonte de aleatoriedade fornecida pelo usuário. |
Init(Int32) |
Inicializa este gerador de chaves para um determinado tamanho de chave. |
Init(Int32, SecureRandom) |
Inicializa esse gerador de chaves para um determinado tamanho de chave, usando uma fonte de aleatoriedade fornecida pelo usuário. |
Init(SecureRandom) |
Inicializa este gerador de chaves. |
JavaFinalize() |
Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto. (Herdado de Object) |
Notify() |
Ativa um único thread que está aguardando no monitor deste objeto. (Herdado de Object) |
NotifyAll() |
Ativa todos os threads que estão aguardando no monitor deste objeto. (Herdado de Object) |
SetHandle(IntPtr, JniHandleOwnership) |
Define a propriedade Handle. (Herdado de Object) |
ToArray<T>() |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). (Herdado de Object) |
ToString() |
Retorna uma representação de cadeia de caracteres do objeto. (Herdado de Object) |
UnregisterFromRuntime() |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). (Herdado de Object) |
Wait() |
Faz com que o thread atual aguarde até que ele seja ativado, normalmente sendo <em notificado</em> ou <em>interrompido</em>>. (Herdado de Object) |
Wait(Int64) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido. (Herdado de Object) |
Wait(Int64, Int32) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido. (Herdado de Object) |
Implantações explícitas de interface
IJavaPeerable.Disposed() |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). (Herdado de Object) |
IJavaPeerable.DisposeUnlessReferenced() |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). (Herdado de Object) |
IJavaPeerable.Finalized() |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). (Herdado de Object) |
IJavaPeerable.JniManagedPeerState |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). (Herdado de Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). (Herdado de Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). (Herdado de Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). (Herdado de Object) |
Métodos de Extensão
JavaCast<TResult>(IJavaObject) |
Executa uma conversão de tipo verificada em tempo de execução do Android. |
JavaCast<TResult>(IJavaObject) |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). |
GetJniTypeName(IJavaPeerable) |
Essa classe fornece a funcionalidade de um gerador de chave secreto (simétrico). |