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 secreta (simétrica).
[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 secreta (simétrica).
Geradores de chave 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 é gerada, o mesmo objeto KeyGenerator pode ser reutilizado para gerar mais chaves.
Há duas maneiras de gerar uma chave: de maneira independente de algoritmo e de maneira específica do algoritmo. A única diferença entre os dois é a inicialização do objeto:
<ul><li><b>Algorithm-Independent Initialization</b>
Todos os geradores de chave compartilham os conceitos de um keysize e uma fonte de aleatoriedade. Há um #init(int, java.security.SecureRandom) init método nessa 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 origem da aleatoriedade (ou uma fonte de aleatoriedade fornecida pelo sistema se nenhum dos provedores instalados fornecer uma implementação SecureRandom) e uma que usa 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>Algorithm-Specific Initialization</b>
Para situações em que já existe um conjunto de parâmetros específicos do algoritmo, 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 origem da 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: <tabela><thead><tr><th>Algorithm</th th th><>Supported API Levels</th></tr></thead><tbody><tr><td>AES</td td><>1+</td></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/td 1+</td><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><td><>HmacSHA512</td td><>1+</td></tr><tr class="deprecated"><td>RC4</td><td>10-13</td></tr></tbody></table>
Esses algoritmos são descritos na seção KeyGenerator da documentação Java Cryptography Architecture Standard Algorithm Name Documentation.
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 Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.
Construtores
| Nome | Description |
|---|---|
| KeyGenerator(IntPtr, JniHandleOwnership) |
Um construtor usado ao criar representações gerenciadas de objetos JNI; chamado pelo runtime. |
| KeyGenerator(KeyGeneratorSpi, Provider, String) |
Cria um objeto KeyGenerator. |
Propriedades
| Nome | Description |
|---|---|
| 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 |
Obtém o código de hash de identidade atribuído a esse par Java pelo runtime de interoperabilidade. (Herdado de Object) |
| JniManagedPeerState |
Essa classe fornece a funcionalidade de um gerador de chave secreta (simétrica). (Herdado de JavaObject) |
| JniPeerMembers |
Obtém os metadados JNI usados para acessar membros dessa associação Java. |
| PeerReference |
Obtém a referência de objeto JNI para este par Java. (Herdado de Object) |
| Provider |
Retorna o provedor desse |
| ThresholdClass |
Essa API é compatível com a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código. |
| ThresholdType |
Essa API é compatível com a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código. |
Métodos
| Nome | Description |
|---|---|
| Clone() |
Cria e retorna uma cópia desse objeto. (Herdado de Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Essa classe fornece a funcionalidade de um gerador de chave secreta (simétrica). (Herdado de JavaObject) |
| Dispose() |
Libera os recursos mantidos por esse par Java. (Herdado de Object) |
| Dispose(Boolean) |
Libera os recursos mantidos por esse par Java. (Herdado de Object) |
| DisposeUnlessReferenced() |
Essa classe fornece a funcionalidade de um gerador de chave secreta (simétrica). (Herdado de JavaObject) |
| Equals(Object) |
Essa classe fornece a funcionalidade de um gerador de chave secreta (simétrica). (Herdado de JavaObject) |
| 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, Provider) |
Retorna um |
| GetInstance(String, String) |
Retorna um |
| GetInstance(String) |
Retorna um |
| 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(IAlgorithmParameterSpec) |
Inicializa esse gerador de chaves com o conjunto de parâmetros especificado. |
| Init(Int32, SecureRandom) |
Inicializa esse gerador de chaves para um determinado keysize, usando uma fonte de aleatoriedade fornecida pelo usuário. |
| Init(Int32) |
Inicializa esse gerador de chave para um determinado keyize. |
| Init(SecureRandom) |
Inicializa esse gerador de chave. |
| JavaFinalize() |
Obsoleto.
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 desse 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) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Essa classe fornece a funcionalidade de um gerador de chave secreta (simétrica). (Herdado de JavaObject) |
| ToArray<T>() |
Cria uma matriz gerenciada com base nesse wrapper de matriz Java. (Herdado de Object) |
| ToString() |
Retorna uma representação de cadeia de caracteres do objeto. (Herdado de Object) |
| UnregisterFromRuntime() |
Cancela o registro desse par Java do runtime de interoperabilidade. (Herdado de Object) |
| Wait() |
Faz com que o thread atual aguarde até que seja despertado, normalmente sendo <notificado></em> ou <em>interrompido</em>. (Herdado de Object) |
| Wait(Int64, Int32) |
Faz com que o thread atual aguarde até que seja ativado, normalmente sendo <notificado></em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido. (Herdado de Object) |
| Wait(Int64) |
Faz com que o thread atual aguarde até que seja ativado, normalmente sendo <notificado></em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido. (Herdado de Object) |
Implantações explícitas de interface
| Nome | Description |
|---|---|
| IJavaPeerable.Disposed() |
Essa classe fornece a funcionalidade de um gerador de chave secreta (simétrica). (Herdado de JavaObject) |
| IJavaPeerable.Finalized() |
Essa classe fornece a funcionalidade de um gerador de chave secreta (simétrica). (Herdado de JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Essa classe fornece a funcionalidade de um gerador de chave secreta (simétrica). (Herdado de JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Essa classe fornece a funcionalidade de um gerador de chave secreta (simétrica). (Herdado de JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Essa classe fornece a funcionalidade de um gerador de chave secreta (simétrica). (Herdado de JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Essa classe fornece a funcionalidade de um gerador de chave secreta (simétrica). (Herdado de JavaObject) |
Métodos de Extensão
| Nome | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtém o nome JNI do tipo da instância |
| JavaAs<TResult>(IJavaPeerable) |
Tente coagir a digitar |
| JavaCast<TResult>(IJavaObject) |
Executa uma conversão de tipo verificada pelo tempo de execução do Android. |
| JavaCast<TResult>(IJavaObject) |
Essa classe fornece a funcionalidade de um gerador de chave secreta (simétrica). |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Tente coagir a digitar |