Langage

MessageDigest Classe

Définition

Cette classe MessageDigest fournit aux applications les fonctionnalités d’un algorithme de synthèse de message, comme SHA-1 ou SHA-256.

[Android.Runtime.Register("java/security/MessageDigest", DoNotGenerateAcw=true)]
public abstract class MessageDigest : Java.Security.MessageDigestSpi
[<Android.Runtime.Register("java/security/MessageDigest", DoNotGenerateAcw=true)>]
type MessageDigest = class
    inherit MessageDigestSpi
Héritage
Attributs

Remarques

Cette classe MessageDigest fournit aux applications les fonctionnalités d’un algorithme de synthèse de message, comme SHA-1 ou SHA-256. Les synthèses de message sont des fonctions de hachage unidirectionnel sécurisées qui prennent des données de taille arbitraire et génèrent une valeur de hachage de longueur fixe.

Un objet MessageDigest démarre initialisé. Les données sont traitées à l’aide des #update(byte) update méthodes. À tout moment #reset() reset , vous pouvez appeler pour réinitialiser le digest. Une fois toutes les données à mettre à jour, l’une des #digest() digest méthodes doit être appelée pour effectuer le calcul de hachage.

La digest méthode peut être appelée une seule fois pour un certain nombre de mises à jour. Une fois digest appelé, l’objet MessageDigest est réinitialisé à son état initialisé.

Les implémentations sont gratuites pour implémenter l’interface cloneable. Les applications clientes peuvent tester la cloneabilité en tentant de cloner et d’intercepter cloneNotSupportedException :

{@code
            MessageDigest md = MessageDigest.getInstance("SHA-256");

            try {
                md.update(toChapter1);
                MessageDigest tc1 = md.clone();
                byte[] toChapter1Digest = tc1.digest();
                md.update(toChapter2);
                ...etc.
            } catch (CloneNotSupportedException cnse) {
                throw new DigestException("couldn't make digest of partial content");
            }
            }

Notez que si une implémentation donnée n’est pas clonable, il est toujours possible de calculer des synthèses intermédiaires en instanciant plusieurs instances, si le nombre de synthèses est connu à l’avance.

Notez que cette classe est abstraite et s’étend pour des MessageDigestSpi raisons historiques. Les développeurs d’applications doivent uniquement prendre connaissance des méthodes définies dans cette MessageDigest classe ; toutes les méthodes de la superclasse sont destinées aux fournisseurs de services de chiffrement qui souhaitent fournir leurs propres implémentations d’algorithmes de synthèse des messages.

Android fournit les algorithmes suivants MessageDigest : <table><thead><tr><th>Algorithm</th th><>Supported API Levels</th></tr/thead><tbody><tr><>< td>MD5</td td><>1+</td></tr tr><tr><td>SHA-1</td td>1+/td<>td 1+</td></tr><td><>SHA-224</td><td>1-8,22+</td></tr tr><><td>SHA-256</td><td>1+</td></tr><tr><sha-384></td td><>1+</td/td><>< tr><SHA-512>/td td<><>1+/td/tr td 1+</td></tr/tbody><></table>

Ces algorithmes sont décrits dans la section MessageDigest de la documentation relative au nom de l’algorithme standard de l’architecture de chiffrement Java.

Ajouté dans la version 1.1.

Java documentation pour java.security.MessageDigest.

Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.

Constructeurs

Nom Description
MessageDigest(IntPtr, JniHandleOwnership)

Constructeur utilisé lors de la création de représentations managées d’objets JNI ; appelée par le runtime.

MessageDigest(String)

Crée un digest de message avec le nom d’algorithme spécifié.

Propriétés

Nom Description
Algorithm

Retourne une chaîne qui identifie l’algorithme, indépendamment des détails de l’implémentation.

Class

Retourne la classe runtime de ce Object.

(Hérité de Object)
DigestLength

Retourne la longueur de la synthèse en octets, ou 0 si cette opération n’est pas prise en charge par le fournisseur et que l’implémentation n’est pas cloneable.

Handle

Handle de l’instance Android sous-jacente.

(Hérité de Object)
JniIdentityHashCode

Obtient le code de hachage d’identité affecté à cet homologue Java par le runtime d’interopérabilité.

(Hérité de Object)
JniManagedPeerState

Cette classe MessageDigest fournit aux applications les fonctionnalités d’un algorithme de synthèse de message, comme SHA-1 ou SHA-256.

(Hérité de JavaObject)
JniPeerMembers

Cette classe MessageDigest fournit aux applications les fonctionnalités d’un algorithme de synthèse de message, comme SHA-1 ou SHA-256.

PeerReference

Obtient la référence d’objet JNI pour cet homologue Java.

(Hérité de Object)
Provider

Retourne le fournisseur de cet objet de synthèse de message.

ThresholdClass

Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code.

ThresholdType

Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code.

Méthodes

Nom Description
Clone()

Retourne un clone si l’implémentation est cloneable.

(Hérité de MessageDigestSpi)
Construct(JniObjectReference, JniObjectReferenceOptions)

Cette classe MessageDigest fournit aux applications les fonctionnalités d’un algorithme de synthèse de message, comme SHA-1 ou SHA-256.

(Hérité de JavaObject)
Digest()

Termine le calcul de hachage en effectuant des opérations finales telles que le remplissage.

Digest(Byte[], Int32, Int32)

Termine le calcul de hachage en effectuant des opérations finales telles que le remplissage.

Digest(Byte[])

Effectue une mise à jour finale sur le digest à l’aide du tableau d’octets spécifié, puis termine le calcul de synthèse.

Dispose()

Libère les ressources détenues par cet homologue Java.

(Hérité de Object)
Dispose(Boolean)

Libère les ressources détenues par cet homologue Java.

(Hérité de Object)
DisposeUnlessReferenced()

Cette classe MessageDigest fournit aux applications les fonctionnalités d’un algorithme de synthèse de message, comme SHA-1 ou SHA-256.

(Hérité de JavaObject)
EngineDigest()

Termine le calcul de hachage en effectuant des opérations finales telles que le remplissage.

(Hérité de MessageDigestSpi)
EngineDigest(Byte[], Int32, Int32)

Termine le calcul de hachage en effectuant des opérations finales telles que le remplissage.

(Hérité de MessageDigestSpi)
EngineGetDigestLength()

Retourne la longueur de synthèse en octets.

(Hérité de MessageDigestSpi)
EngineReset()

Réinitialise la synthèse pour une utilisation ultérieure.

(Hérité de MessageDigestSpi)
EngineUpdate(Byte[], Int32, Int32)

Met à jour le digest à l’aide du tableau d’octets spécifié, en commençant à l’offset spécifié.

(Hérité de MessageDigestSpi)
EngineUpdate(ByteBuffer)

Mettez à jour le digest à l’aide du byteBuffer spécifié.

(Hérité de MessageDigestSpi)
EngineUpdate(SByte)

Met à jour le digest à l’aide de l’octet spécifié.

(Hérité de MessageDigestSpi)
Equals(Object)

Cette classe MessageDigest fournit aux applications les fonctionnalités d’un algorithme de synthèse de message, comme SHA-1 ou SHA-256.

(Hérité de JavaObject)
Equals(Object)

Indique si un autre objet est « égal à » celui-ci.

(Hérité de Object)
GetHashCode()

Retourne une valeur de code de hachage pour l’objet.

(Hérité de Object)
GetInstance(String, Provider)

Retourne un objet MessageDigest qui implémente l’algorithme digest spécifié.

GetInstance(String, String)

Retourne un objet MessageDigest qui implémente l’algorithme digest spécifié.

GetInstance(String)

Retourne un objet MessageDigest qui implémente l’algorithme digest spécifié.

IsEqual(Byte[], Byte[])

Compare deux synthèses pour l’égalité.

JavaFinalize()

Appelé par le garbage collector sur un objet lorsque le garbage collection détermine qu’il n’y a plus de références à l’objet.

(Hérité de Object)
Notify()

Réveille un thread unique qui attend le moniteur de cet objet.

(Hérité de Object)
NotifyAll()

Réveille tous les threads qui attendent le moniteur de cet objet.

(Hérité de Object)
Reset()

Réinitialise la synthèse pour une utilisation ultérieure.

SetHandle(IntPtr, JniHandleOwnership)

Définit la propriété Handle.

(Hérité de Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Cette classe MessageDigest fournit aux applications les fonctionnalités d’un algorithme de synthèse de message, comme SHA-1 ou SHA-256.

(Hérité de JavaObject)
ToArray<T>()

Crée un tableau managé à partir de ce wrapper de tableau Java.

(Hérité de Object)
ToString()

Retourne une représentation sous forme de chaîne de l’objet.

(Hérité de Object)
UnregisterFromRuntime()

Annule l’inscription de cet homologue Java à partir du runtime d’interopérabilité.

(Hérité de Object)
Update(Byte[], Int32, Int32)

Met à jour le digest à l’aide du tableau d’octets spécifié, en commençant à l’offset spécifié.

Update(Byte[])

Met à jour le digest à l’aide du tableau d’octets spécifié.

Update(ByteBuffer)

Mettez à jour le digest à l’aide du byteBuffer spécifié.

Update(SByte)

Met à jour le digest à l’aide de l’octet spécifié.

Wait()

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti par em ou><em>interrompu</em>.<>

(Hérité de Object)
Wait(Int64, Int32)

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée.

(Hérité de Object)
Wait(Int64)

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée.

(Hérité de Object)

Implémentations d’interfaces explicites

Nom Description
IJavaPeerable.Disposed()

Cette classe MessageDigest fournit aux applications les fonctionnalités d’un algorithme de synthèse de message, comme SHA-1 ou SHA-256.

(Hérité de JavaObject)
IJavaPeerable.Finalized()

Cette classe MessageDigest fournit aux applications les fonctionnalités d’un algorithme de synthèse de message, comme SHA-1 ou SHA-256.

(Hérité de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Cette classe MessageDigest fournit aux applications les fonctionnalités d’un algorithme de synthèse de message, comme SHA-1 ou SHA-256.

(Hérité de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Cette classe MessageDigest fournit aux applications les fonctionnalités d’un algorithme de synthèse de message, comme SHA-1 ou SHA-256.

(Hérité de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Cette classe MessageDigest fournit aux applications les fonctionnalités d’un algorithme de synthèse de message, comme SHA-1 ou SHA-256.

(Hérité de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Cette classe MessageDigest fournit aux applications les fonctionnalités d’un algorithme de synthèse de message, comme SHA-1 ou SHA-256.

(Hérité de JavaObject)

Méthodes d’extension

Nom Description
GetJniTypeName(IJavaPeerable)

Obtient le nom JNI du type de l’instance self.

JavaAs<TResult>(IJavaPeerable)

Essayez de forcer self le typeTResult, en vérifiant que le forçage est valide côté Java.

JavaCast<TResult>(IJavaObject)

Effectue une conversion de type vérifiée par le runtime Android.

JavaCast<TResult>(IJavaObject)

Cette classe MessageDigest fournit aux applications les fonctionnalités d’un algorithme de synthèse de message, comme SHA-1 ou SHA-256.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Essayez de forcer self le typeTResult, en vérifiant que le forçage est valide côté Java.

S’applique à