KeyPairGenerator 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.
Die KeyPairGenerator-Klasse wird verwendet, um Paare von öffentlichen und privaten Schlüsseln zu generieren.
[Android.Runtime.Register("java/security/KeyPairGenerator", DoNotGenerateAcw=true)]
public abstract class KeyPairGenerator : Java.Security.KeyPairGeneratorSpi
[<Android.Runtime.Register("java/security/KeyPairGenerator", DoNotGenerateAcw=true)>]
type KeyPairGenerator = class
inherit KeyPairGeneratorSpi
- Vererbung
- Attribute
Hinweise
Die KeyPairGenerator-Klasse wird verwendet, um Paare von öffentlichen und privaten Schlüsseln zu generieren. Schlüsselpaargeneratoren werden mithilfe der getInstance Factorymethoden erstellt (statische Methoden, die Instanzen einer bestimmten Klasse zurückgeben).
Ein Schlüsselpaargenerator für einen bestimmten Algorithmus erstellt ein öffentliches/privates Schlüsselpaar, das mit diesem Algorithmus verwendet werden kann. Außerdem werden algorithmusspezifische Parameter jedem der generierten Schlüssel zugeordnet.
Es gibt zwei Möglichkeiten, ein Schlüsselpaar zu generieren: in algorithmusunabhängiger Weise und auf algorithmusspezifische Weise. Der einzige Unterschied zwischen den beiden Ist die Initialisierung des Objekts:
<ul><li><b>Algorithm-Independent Initialisierung</b>
Alle Schlüsselpaargeneratoren teilen die Konzepte einer Schlüsselgröße und einer Quelle der Zufallslosigkeit. Die Schlüsselgröße wird für verschiedene Algorithmen unterschiedlich interpretiert (z. B. im Fall des DSA-Algorithmus entspricht die Schlüsselgröße der Länge des Moduls). Es gibt eine #initialize(int, java.security.SecureRandom) initialize Methode in dieser KeyPairGenerator-Klasse, die diese beiden universell freigegebenen Typen von Argumenten verwendet. Es gibt auch eine, die nur ein keysize Argument akzeptiert und die Implementierung des installierten Anbieters mit der SecureRandom höchsten Priorität als Quelle der Zufälligkeit verwendet. (Wenn keiner der installierten Anbieter eine Implementierung SecureRandombereitstellt, wird eine vom System bereitgestellte Zufallsquelle verwendet.)
Da beim Aufrufen der oben genannten algorithmusunabhängigen initialize Methoden keine anderen Parameter angegeben werden, liegt es an dem Anbieter, was sie mit den algorithmusspezifischen Parametern (falls vorhanden) tun müssen, die mit den einzelnen Schlüsseln verknüpft werden sollen.
Wenn der Algorithmus der DSA-Algorithmus ist und die Schlüsselgröße (Modulgröße) 512, 768, 1024 oder 2048 ist, verwendet der Sun-Anbieter eine Reihe vordefinierter Werte für die p, qund g Parameter. Wenn die Modulgröße nicht einer der oben genannten Werte ist, erstellt der Sun-Anbieter einen neuen Satz von Parametern. Andere Anbieter verfügen möglicherweise über vorkompilierte Parametersätze für mehr als nur die oben genannten Modulgrößen. Andere haben möglicherweise keine Liste mit vorkompilierten Parametern und erstellen stattdessen immer neue Parametersätze.
<li><b>Algorithm-Specific Initialisierung</b>
In Situationen, in denen bereits eine Reihe von algorithmusspezifischen Parametern vorhanden ist (z. B. sogenannte Communityparameter in DSA), gibt es zwei #initialize(java.security.spec.AlgorithmParameterSpec) initialize Methoden, die ein AlgorithmParameterSpec Argument aufweisen. Eines hat auch ein SecureRandom Argument, während die andere die Implementierung des Anbieters mit der SecureRandom höchsten Priorität als Quelle der Zufallszufälligkeit verwendet. (Wenn keiner der installierten Anbieter eine Implementierung SecureRandombereitstellt, wird eine vom System bereitgestellte Zufallsquelle verwendet.) </ul>
Falls der Client den KeyPairGenerator (über einen Aufruf einer initialize Methode) nicht explizit initialisiert, muss jeder Anbieter eine Standardinitialisierung bereitstellen (und dokumentieren). Der Sun-Anbieter verwendet z. B. eine Standardmodulusgröße (Keysize) von 1024 Bits.
Beachten Sie, dass diese Klasse aus historischen Gründen abstrakt ist und sich aus KeyPairGeneratorSpi historischen Gründen erstreckt. Anwendungsentwickler sollten nur die in dieser KeyPairGenerator Klasse definierten Methoden beachten. Alle Methoden in der Superklasse sind für kryptografische Dienstanbieter vorgesehen, die ihre eigenen Implementierungen von Schlüsselpaargeneratoren bereitstellen möchten.
Android stellt die folgenden KeyPairGenerator Algorithmen bereit: <Tabelle><thead><tr><th>Algorithm</th th><>Unterstützte API Levels</th></tr></thead><tbody><tr><td>DH</td td td><>1+</td></tr><><td>DSA</td><td>1+</td></tr><td><>EC/td EC</td><td>11+</td></tr><><td>RSA</td td><td>1+</td></tr><td><>XDH</td><td td>33+</td></tr></tbody></table>
Diese Algorithmen werden im Abschnitt "KeyPairGenerator" der Java Dokumentation zum Standardalgorithmus der Kryptografiearchitektur beschrieben.
In 1.1 hinzugefügt.
Java Dokumentation für java.security.KeyPairGenerator.
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.
Konstruktoren
| Name | Beschreibung |
|---|---|
| KeyPairGenerator(IntPtr, JniHandleOwnership) |
Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Laufzeit aufgerufen. |
| KeyPairGenerator(String) |
Erstellt ein KeyPairGenerator -Objekt für den angegebenen Algorithmus. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Algorithm |
Gibt den Standardnamen des Algorithmus für diesen Schlüsselpaargenerator zurück. |
| 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 |
Die KeyPairGenerator-Klasse wird verwendet, um Paare von öffentlichen und privaten Schlüsseln zu generieren. (Geerbt von JavaObject) |
| JniPeerMembers |
Die KeyPairGenerator-Klasse wird verwendet, um Paare von öffentlichen und privaten Schlüsseln zu generieren. |
| PeerReference |
Ruft den JNI-Objektverweis für diesen Java Peer ab. (Geerbt von Object) |
| Provider |
Gibt den Anbieter dieses Schlüsselpaargeneratorobjekts zurück. |
| 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) |
Die KeyPairGenerator-Klasse wird verwendet, um Paare von öffentlichen und privaten Schlüsseln zu generieren. (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() |
Die KeyPairGenerator-Klasse wird verwendet, um Paare von öffentlichen und privaten Schlüsseln zu generieren. (Geerbt von JavaObject) |
| Equals(Object) |
Die KeyPairGenerator-Klasse wird verwendet, um Paare von öffentlichen und privaten Schlüsseln zu generieren. (Geerbt von JavaObject) |
| Equals(Object) |
Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist. (Geerbt von Object) |
| GenerateKeyPair() |
Generiert ein Schlüsselpaar. |
| GenKeyPair() |
Generiert ein Schlüsselpaar. |
| GetHashCode() |
Gibt einen Hashcodewert für das Objekt zurück. (Geerbt von Object) |
| GetInstance(String, Provider) |
Gibt ein KeyPairGenerator -Objekt, das öffentliche/private Schlüsselpaare für den angegebenen Algorithmus generiert. |
| GetInstance(String, String) |
Gibt ein KeyPairGenerator -Objekt, das öffentliche/private Schlüsselpaare für den angegebenen Algorithmus generiert. |
| GetInstance(String) |
Gibt ein KeyPairGenerator -Objekt, das öffentliche/private Schlüsselpaare für den angegebenen Algorithmus generiert. |
| Initialize(IAlgorithmParameterSpec, SecureRandom) |
Initialisiert den Schlüsselpaargenerator mithilfe des angegebenen Parametersatzes und der vom Benutzer bereitgestellten Zufallsquelle. (Geerbt von KeyPairGeneratorSpi) |
| Initialize(IAlgorithmParameterSpec) |
Initialisiert den Schlüsselpaargenerator mithilfe des angegebenen Parametersatzes und der Implementierung des anbieters mit der |
| Initialize(Int32, SecureRandom) |
Initialisiert den Schlüsselpaargenerator für eine bestimmte Schlüsselgröße mit der angegebenen Zufallsquelle (und einem Standardparametersatz). |
| Initialize(Int32) |
Initialisiert den Schlüsselpaargenerator für eine bestimmte Schlüsselgröße mithilfe eines Standardparametersatzes und der |
| JavaFinalize() |
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) |
Die KeyPairGenerator-Klasse wird verwendet, um Paare von öffentlichen und privaten Schlüsseln zu generieren. (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() |
Die KeyPairGenerator-Klasse wird verwendet, um Paare von öffentlichen und privaten Schlüsseln zu generieren. (Geerbt von JavaObject) |
| IJavaPeerable.Finalized() |
Die KeyPairGenerator-Klasse wird verwendet, um Paare von öffentlichen und privaten Schlüsseln zu generieren. (Geerbt von JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Die KeyPairGenerator-Klasse wird verwendet, um Paare von öffentlichen und privaten Schlüsseln zu generieren. (Geerbt von JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Die KeyPairGenerator-Klasse wird verwendet, um Paare von öffentlichen und privaten Schlüsseln zu generieren. (Geerbt von JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Die KeyPairGenerator-Klasse wird verwendet, um Paare von öffentlichen und privaten Schlüsseln zu generieren. (Geerbt von JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Die KeyPairGenerator-Klasse wird verwendet, um Paare von öffentlichen und privaten Schlüsseln zu generieren. (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) |
Die KeyPairGenerator-Klasse wird verwendet, um Paare von öffentlichen und privaten Schlüsseln zu generieren. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Versuchen Sie, die Eingabe |