ConfirmationPrompt Klasse

Definition

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

[Android.Runtime.Register("android/security/ConfirmationPrompt", ApiSince=28, DoNotGenerateAcw=true)]
public class ConfirmationPrompt : Java.Lang.Object
[<Android.Runtime.Register("android/security/ConfirmationPrompt", ApiSince=28, DoNotGenerateAcw=true)>]
type ConfirmationPrompt = class
    inherit Object
Vererbung
ConfirmationPrompt
Attribute

Hinweise

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

Bestätigungsaufforderungen sind Aufforderungen, die dem Benutzer angezeigt werden, um einen bestimmten Text zu bestätigen, und werden so implementiert, dass eine positive Antwort mit hoher Zuverlässigkeit anzeigt, dass der Benutzer den angegebenen Text gesehen hat, auch wenn das Android-Framework (einschließlich des Kernels) kompromittiert wurde. Die Implementierung von Bestätigungsaufforderungen mit diesen Garantien erfordert dedizierte Hardwareunterstützung und ist möglicherweise nicht immer verfügbar.

Bestätigungsaufforderungen werden in der Regel mit einer externen Entität – der vertrauenden Seite – wie folgt verwendet. Die Einrichtungsschritte lauten wie folgt: <ul><li> Vor der ersten Verwendung generiert die Anwendung ein Schlüsselpaar mit dem android.security.keystore.KeyGenParameterSpec.Builder#setUserConfirmationRequired CONFIRMATION tag Satz. Der AndroidKeyStore-Schlüsselnachweis wird z. B. verwendet, um eine Zertifikatkette zu generieren, android.security.keystore.KeyGenParameterSpec.Builder#setAttestationChallenge(byte[]) die den öffentlichen Schlüssel (Kpub im Folgenden) des neu generierten Schlüssels enthält. <li> Die Anwendung sendet Kpub und die Zertifikatkette, die sich aus dem Gerätenachweis an die vertrauende Seite ergibt. <Li> Die vertrauende Seite überprüft die Zertifikatkette, bei der überprüft wird, ob das Stammzertifikat erwartungsgemäß ist (z. B. ein Zertifikat von Google), jedes Zertifikat signiert das nächste Zertifikat in der Kette und endet mit Kpub, und dass das Nachweiszertifikat bestätigt, dass Kpub der android.security.keystore.KeyGenParameterSpec.Builder#setUserConfirmationRequired CONFIRMATION tag festgelegt ist. Darüber hinaus speichert Kpub und ordnet die vertrauende Seite es dem Gerät zu, von dem sie empfangen wurde. </ul>

Die vertrauende Seite ist in der Regel ein externes Gerät (z. B. über Bluetooth verbunden) oder ein Anwendungsserver.

Vor dem Ausführen einer Transaktion, die eine hohe Sicherheit des Benutzerinhalts erfordert, führt die Anwendung Folgendes aus: <ul><li> Die Anwendung ruft eine kryptografische Nonce von der vertrauenden Seite ab und übergibt diese ( extraData über die Builder-Hilfsklasse) an die #presentPrompt presentPrompt() -Methode. Die vertrauende Seite speichert die Nonce lokal, da sie sie in einem späteren Schritt verwendet. <li> Wenn der Benutzer die Eingabeaufforderung genehmigt, wird im ConfirmationCallback#onConfirmed onConfirmed(byte[]) Rückruf eine Bestätigungsantwort als dataThatWasConfirmed Parameter zurückgegeben. Dieses Blob enthält den Text, der dem Benutzer angezeigt wurde, den extraData Parameter und möglicherweise andere Daten. <li> Die Anwendung signiert die Bestätigungsantwort mit dem zuvor erstellten Schlüssel und sendet das Blob und die Signatur an die vertrauende Seite. <li> Die vertrauende Seite überprüft, ob die Signatur mit Kpub erstellt wurde, und extrahiert promptText dann, was erwartet wird, und extraData entspricht der zuvor erstellten Nonce. Wenn alle Überprüfungen erfolgreich sind, wird die Transaktion ausgeführt. </ul>

Hinweis: Es ist wichtig, die promptText zu überprüfen, da dies der einzige Teil ist, den der Benutzer genehmigt hat. Um das Schreiben von Parsern für alle möglichen Gebietsschemas zu vermeiden, wird empfohlen, dass die vertrauende Seite den gleichen Zeichenfolgengenerator wie auf dem Gerät verwendet und einen einfachen Zeichenfolgenvergleich durchführt.

Java-Dokumentation für android.security.ConfirmationPrompt.

Teile dieser Seite sind Änderungen, die auf Arbeiten basieren, die vom Android Open Source Project erstellt und freigegeben wurden und gemäß den In Attribution License beschriebenen Begriffen verwendet werden.

Konstruktoren

ConfirmationPrompt(IntPtr, JniHandleOwnership)

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

Eigenschaften

Class

Gibt die Laufzeitklasse dieses Objectzurück.

(Geerbt von Object)
Handle

Das Handle für die zugrunde liegende Android-instance.

(Geerbt von Object)
JniIdentityHashCode

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

(Geerbt von Object)
JniPeerMembers

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

PeerReference

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

(Geerbt von Object)
ThresholdClass

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

ThresholdType

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

Methoden

CancelPrompt()

Bricht eine Eingabeaufforderung ab, die derzeit angezeigt wird.

Clone()

Erstellt und gibt eine Kopie dieses Objekts zurück.

(Geerbt von Object)
Dispose()

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

(Geerbt von Object)
Dispose(Boolean)

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

(Geerbt von Object)
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)
IsSupported(Context)

Überprüft, ob das Gerät Bestätigungsaufforderungen unterstützt.

JavaFinalize()

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection feststellt, dass keine Verweise mehr auf das Objekt vorhanden sind.

(Geerbt von Object)
Notify()

Aktiviert einen einzelnen Thread, der auf den Monitor dieses Objekts wartet.

(Geerbt von Object)
NotifyAll()

Aktiviert alle Threads, die auf den Monitor dieses Objekts warten.

(Geerbt von Object)
PresentPrompt(IExecutor, ConfirmationCallback)

Fordert eine Bestätigungsaufforderung an, die dem Benutzer angezeigt wird.

SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
ToArray<T>()

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolgendarstellung des Objekts zurück.

(Geerbt von Object)
UnregisterFromRuntime()

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

(Geerbt von Object)
Wait()

Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert ist, in der Regel durch <>Benachrichtigung</em> oder <em>interrupted</em>.

(Geerbt von Object)
Wait(Int64)

Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert ist, in der Regel durch>< Benachrichtigung</em> oder <em>interrupted</em>, oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64, Int32)

Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert ist, in der Regel durch>< Benachrichtigung</em> oder <em>interrupted</em>, oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

IJavaPeerable.Disposed()

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

(Geerbt von Object)
IJavaPeerable.DisposeUnlessReferenced()

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

(Geerbt von Object)
IJavaPeerable.Finalized()

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

(Geerbt von Object)
IJavaPeerable.JniManagedPeerState

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

(Geerbt von Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

(Geerbt von Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

(Geerbt von Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

(Geerbt von Object)

Erweiterungsmethoden

JavaCast<TResult>(IJavaObject)

Führt eine Typkonvertierung mit Überprüfung der Android-Laufzeit aus.

JavaCast<TResult>(IJavaObject)

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

GetJniTypeName(IJavaPeerable)

Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.

Gilt für: