SealedObject 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 ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen.
[Android.Runtime.Register("javax/crypto/SealedObject", DoNotGenerateAcw=true)]
public class SealedObject : Java.Lang.Object, IDisposable, Java.IO.ISerializable
[<Android.Runtime.Register("javax/crypto/SealedObject", DoNotGenerateAcw=true)>]
type SealedObject = class
inherit Object
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- Vererbung
- Attribute
- Implementiert
Hinweise
Diese Klasse ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen.
Angesichts eines serialisierbaren Objekts kann ein SealedObject erstellt werden, das das ursprüngliche Objekt in serialisiertem Format (d. h. einer "tiefen Kopie") kapselt und seine serialisierten Inhalte verschlüsselt (verschlüsselt), indem ein kryptografischer Algorithmus wie DES verwendet wird, um seine Vertraulichkeit zu schützen. Der verschlüsselte Inhalt kann später entschlüsselt werden (mit dem entsprechenden Algorithmus mit dem richtigen Entschlüsselungsschlüssel) und de-serialisiert, was das ursprüngliche Objekt liefert.
Beachten Sie, dass das Cipher-Objekt vollständig mit dem richtigen Algorithmus, Schlüssel, Abstandsschema usw. initialisiert werden muss, bevor es auf ein SealedObject angewendet wird.
Das originale Objekt, das versiegelt wurde, kann auf zwei verschiedene Arten wiederhergestellt werden:
<Ul>
<li>mithilfe der #getObject(javax.crypto.Cipher) getObject Methode, die ein Cipher Objekt verwendet.
Diese Methode erfordert ein vollständig initialisiertes Cipher Objekt, das mit demselben Algorithmus, Schlüssel, Abstandsschema usw. initialisiert wurde, das zum Versiegeln des Objekts verwendet wurde.
Dieser Ansatz hat den Vorteil, dass die Partei, die das versiegelte Objekt entschlüsselt, keine Kenntnisse über den Entschlüsselungsschlüssel erfordert. Nachdem beispielsweise eine Partei das Chiffreobjekt mit dem erforderlichen Entschlüsselungsschlüssel initialisiert hat, könnte es das Chiffreobjekt an eine andere Partei übergeben, die das versiegelte Objekt dann entschlüsselt.
<li>mithilfe einer der #getObject(java.security.Key) getObject Methoden, die ein Key Objekt verwenden.
Bei diesem Ansatz erstellt die getObject Methode ein Chiffreobjekt für den entsprechenden Entschlüsselungsalgorithmus und initialisiert es mit dem angegebenen Entschlüsselungsschlüssel und den Algorithmusparametern (sofern vorhanden), die im versiegelten Objekt gespeichert wurden.
Dieser Ansatz hat den Vorteil, dass die Partei, die das Objekt entsperrt, die Parameter (z. B. ein IV) nicht nachverfolgen muss, die zum Versiegeln des Objekts verwendet wurden.
</ul>
In 1.4 hinzugefügt.
Java Dokumentation für javax.crypto.SealedObject.
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 |
|---|---|
| SealedObject(IntPtr, JniHandleOwnership) |
Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Laufzeit aufgerufen. |
| SealedObject(ISerializable, Cipher) |
Erstellt ein SealedObject aus jedem serialisierbaren Objekt. |
| SealedObject(SealedObject) |
Erstellt ein SealedObject -Objekt aus dem übergebenen SealedObject. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Algorithm |
Gibt den Algorithmus zurück, der zum Versiegeln dieses Objekts verwendet wurde. |
| Class |
Gibt die Laufzeitklasse dieses Werts |
| EncodedParams |
Die kryptografischen Parameter, die von der Versiegelungschiffre verwendet werden, die im Standardformat codiert sind. |
| 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 ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen. (Geerbt von JavaObject) |
| JniPeerMembers |
Diese Klasse ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen. |
| PeerReference |
Ruft den JNI-Objektverweis für diesen Java Peer ab. (Geerbt von Object) |
| 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 ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen. (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 ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen. (Geerbt von JavaObject) |
| Equals(Object) |
Diese Klasse ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen. (Geerbt von JavaObject) |
| Equals(Object) |
Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist. (Geerbt von Object) |
| GetHashCode() |
Gibt einen Hashcodewert für das Objekt zurück. (Geerbt von Object) |
| GetObject(Cipher) |
Ruft das ursprüngliche (gekapselte) Objekt ab. |
| GetObject(IKey, String) |
Ruft das ursprüngliche (gekapselte) Objekt ab. |
| GetObject(IKey) |
Ruft das ursprüngliche (gekapselte) Objekt ab. |
| 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 ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen. (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 ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen. (Geerbt von JavaObject) |
| IJavaPeerable.Finalized() |
Diese Klasse ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen. (Geerbt von JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Diese Klasse ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen. (Geerbt von JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Diese Klasse ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen. (Geerbt von JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Diese Klasse ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen. (Geerbt von JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Diese Klasse ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen. (Geerbt von JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
Diese Klasse ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen. |
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 ermöglicht es einem Programmierer, ein Objekt zu erstellen und seine Vertraulichkeit mit einem kryptografischen Algorithmus zu schützen. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Versuchen Sie, die Eingabe |