KeyGenerator Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Diese Klasse stellt die Funktionalität eines geheimen (symmetrischen) Schlüsselgenerators bereit.
[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
- Vererbung
- Attribute
Hinweise
Diese Klasse stellt die Funktionalität eines geheimen (symmetrischen) Schlüsselgenerators bereit.
Schlüsselgeneratoren werden mit einer der getInstance Klassenmethoden dieser Klasse erstellt.
KeyGenerator-Objekte sind wiederverwendbar, d. h., nachdem ein Schlüssel generiert wurde, kann dasselbe KeyGenerator-Objekt erneut verwendet werden, um weitere Schlüssel zu generieren.
Es gibt zwei Möglichkeiten, einen Schlüssel zu generieren: in algorithmusunabhängiger Weise und auf algorithmusspezifische Weise. Der einzige Unterschied zwischen den beiden Ist die Initialisierung des Objekts:
<ul><li><b>Algorithmusunabhängige Initialisierung</b>
Alle Schlüsselgeneratoren teilen die Konzepte einer Schlüsselgröße und eine Quelle von Zufallszahlen. Es gibt eine #init(int, java.security.SecureRandom) init Methode in dieser KeyGenerator-Klasse, die diese beiden universell freigegebenen Typen von Argumenten verwendet. Es gibt auch eine, die nur ein keysize Argument akzeptiert und die SecureRandom-Implementierung des installierten Anbieters mit der höchsten Priorität als Quelle der Zufälligkeit verwendet (oder eine vom System bereitgestellte Quelle der Zufallssuche, wenn keiner der installierten Anbieter eine SecureRandom-Implementierung bereitstellt), und eine, die nur eine Quelle der Zufallssuche akzeptiert.
Da beim Aufrufen der oben genannten algorithmusunabhängigen init Methoden keine anderen Parameter angegeben werden, liegt es an dem Anbieter, was sie mit den algorithmusspezifischen Parametern (falls vorhanden) tun müssen, die den einzelnen Schlüsseln zugeordnet werden sollen.
<li><b>Algorithmusspezifische Initialisierung</b>
In Situationen, in denen bereits eine Reihe von algorithmusspezifischen Parametern vorhanden ist, gibt es zwei #init(java.security.spec.AlgorithmParameterSpec) init Methoden mit einem AlgorithmParameterSpec Argument. Eines hat auch ein SecureRandom Argument, während die andere die SecureRandom-Implementierung des installierten Anbieters mit der höchsten Priorität als Quelle der Zufälligkeit verwendet (oder eine vom System bereitgestellte Quelle der Zufallssuche, wenn keiner der installierten Anbieter eine SecureRandom-Implementierung bereitstellt).
</ul>
Falls der Client den KeyGenerator (über einen Aufruf einer init Methode) nicht explizit initialisiert, muss jeder Anbieter eine Standardinitialisierung bereitstellen (und dokumentieren).
Android stellt die folgenden KeyGenerator Algorithmen bereit: <Tabelle><thead><tr><th>Algorithm</th th><>Unterstützte API Levels</th></tr></thead><tbody><tr><td>AES</td td><>1+</td></tr><class="deprecated"><td>AESWRAP</td td td><>1-8</td/tr td><><><>ARC4</td td><>14+</td></tr td>BLOWFISH</td td><>10+</td></tr><><t td>ChaCha20</td><td td>28+</td></tr><><><><t td>DES</td><td>1+</td></tr><><td>DESede</td><td>1+</td/>< tr>tr class="deprecated"<>td<DESedeWRAP>/td td<><1-8>/td/tr<><>td<>< HmacMD5>/td<>td<1+>/td<>/tr<><>td<HmacSHA1>/td<>td 11+</td></tr><><t td>HmacSHA224</td td td><>1-8,22+</td td><></tr><tr><td>HmacSHA256</td><td>1+</td></tr t td>HmacSHA384</td td><>1+</td></tr><><td>HmacSHA512</td><td>1+</td></tr><><><class="deprecated"><td>RC4</td><td>10-13</Td></tr></tbody></table>
Diese Algorithmen werden im KeyGenerator-Abschnitt der Java Cryptography Architecture Standard Algorithm Name Documentation beschrieben.
In 1.4 hinzugefügt.
Java-Dokumentation für javax.crypto.KeyGenerator.
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.
Konstruktoren
| Name | Beschreibung |
|---|---|
| KeyGenerator(IntPtr, JniHandleOwnership) |
Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Laufzeit aufgerufen. |
| KeyGenerator(KeyGeneratorSpi, Provider, String) |
Erstellt ein KeyGenerator -Objekt. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Algorithm |
Gibt den Algorithmusnamen dieses |
| Class |
Gibt die Laufzeitklasse dieses Werts |
| Handle |
Das Handle für die zugrunde liegende Android-Instanz. (Geerbt von Object) |
| JniIdentityHashCode |
Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist. (Geerbt von Object) |
| JniManagedPeerState |
Diese Klasse stellt die Funktionalität eines geheimen (symmetrischen) Schlüsselgenerators bereit. (Geerbt von JavaObject) |
| JniPeerMembers |
Diese Klasse stellt die Funktionalität eines geheimen (symmetrischen) Schlüsselgenerators bereit. |
| PeerReference |
Ruft den JNI-Objektverweis für diesen Java Peer ab. (Geerbt von Object) |
| Provider |
Gibt den Anbieter dieses |
| ThresholdClass |
Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. |
| ThresholdType |
Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. |
Methoden
| Name | Beschreibung |
|---|---|
| Clone() |
Erstellt und gibt eine Kopie dieses Objekts zurück. (Geerbt von Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Diese Klasse stellt die Funktionalität eines geheimen (symmetrischen) Schlüsselgenerators bereit. (Geerbt von JavaObject) |
| Dispose() |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Object) |
| Dispose(Boolean) |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Object) |
| DisposeUnlessReferenced() |
Diese Klasse stellt die Funktionalität eines geheimen (symmetrischen) Schlüsselgenerators bereit. (Geerbt von JavaObject) |
| Equals(Object) |
Diese Klasse stellt die Funktionalität eines geheimen (symmetrischen) Schlüsselgenerators bereit. (Geerbt von JavaObject) |
| Equals(Object) |
Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist. (Geerbt von Object) |
| GenerateKey() |
Generiert einen geheimen Schlüssel. |
| GetHashCode() |
Gibt einen Hashcodewert für das Objekt zurück. (Geerbt von Object) |
| GetInstance(String, Provider) |
Gibt ein |
| GetInstance(String, String) |
Gibt ein |
| GetInstance(String) |
Gibt ein |
| Init(IAlgorithmParameterSpec, SecureRandom) |
Initialisiert diesen Schlüsselgenerator mit dem angegebenen Parametersatz und einer vom Benutzer bereitgestellten Zufallsquelle. |
| Init(IAlgorithmParameterSpec) |
Initialisiert diesen Schlüsselgenerator mit dem angegebenen Parametersatz. |
| Init(Int32, SecureRandom) |
Initialisiert diesen Schlüsselgenerator für eine bestimmte Schlüsselgröße, wobei eine vom Benutzer bereitgestellte Zufallsquelle verwendet wird. |
| Init(Int32) |
Initialisiert diesen Schlüsselgenerator für eine bestimmte Schlüsselgröße. |
| Init(SecureRandom) |
Initialisiert diesen Schlüsselgenerator. |
| JavaFinalize() |
Veraltet.
Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind. (Geerbt von Object) |
| Notify() |
Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet. (Geerbt von Object) |
| NotifyAll() |
Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten. (Geerbt von Object) |
| SetHandle(IntPtr, JniHandleOwnership) |
Legt die Handle-Eigenschaft fest. (Geerbt von Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Diese Klasse stellt die Funktionalität eines geheimen (symmetrischen) Schlüsselgenerators bereit. (Geerbt von JavaObject) |
| ToArray<T>() |
Erstellt ein verwaltetes Array aus diesem Java Arraywrapper. (Geerbt von Object) |
| ToString() |
Gibt eine Zeichenfolgendarstellung des Objekts zurück. (Geerbt von Object) |
| UnregisterFromRuntime() |
Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf. (Geerbt von Object) |
| Wait() |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em< oder >em<unterbrochen>/em<.><> (Geerbt von Object) |
| Wait(Int64, Int32) |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
| Wait(Int64) |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
| Name | Beschreibung |
|---|---|
| IJavaPeerable.Disposed() |
Diese Klasse stellt die Funktionalität eines geheimen (symmetrischen) Schlüsselgenerators bereit. (Geerbt von JavaObject) |
| IJavaPeerable.Finalized() |
Diese Klasse stellt die Funktionalität eines geheimen (symmetrischen) Schlüsselgenerators bereit. (Geerbt von JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Diese Klasse stellt die Funktionalität eines geheimen (symmetrischen) Schlüsselgenerators bereit. (Geerbt von JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Diese Klasse stellt die Funktionalität eines geheimen (symmetrischen) Schlüsselgenerators bereit. (Geerbt von JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Diese Klasse stellt die Funktionalität eines geheimen (symmetrischen) Schlüsselgenerators bereit. (Geerbt von JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Diese Klasse stellt die Funktionalität eines geheimen (symmetrischen) Schlüsselgenerators bereit. (Geerbt von JavaObject) |
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Ruft den JNI-Namen des Typs der Instanz |
| JavaAs<TResult>(IJavaPeerable) |
Versuchen Sie, die Eingabe |
| JavaCast<TResult>(IJavaObject) |
Führt eine android-laufzeitgecheckte Typkonvertierung aus. |
| JavaCast<TResult>(IJavaObject) |
Diese Klasse stellt die Funktionalität eines geheimen (symmetrischen) Schlüsselgenerators bereit. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Versuchen Sie, die Eingabe |