Share via


MessageDigest Clase

Definición

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o 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
Herencia
Atributos

Comentarios

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256. Los resúmenes de mensajes son funciones hash unidireccionales seguras que toman datos de tamaño arbitrario y generan un valor hash de longitud fija.

Se inicia un objeto MessageDigest. Los datos se procesan mediante los #update(byte) update métodos . En cualquier momento #reset() reset se puede llamar a para restablecer el resumen. Una vez actualizados todos los datos que se van a actualizar, se debe llamar a uno de los #digest() digest métodos para completar el cálculo de hash.

Se digest puede llamar al método una vez para un número determinado de actualizaciones. Después digest de llamar a , el objeto MessageDigest se restablece a su estado inicializado.

Las implementaciones son gratuitas para implementar la interfaz clonable. Las aplicaciones cliente pueden probar la clonación intentando clonar y detectar 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");
            }
            }

Tenga en cuenta que si una implementación determinada no se puede clonar, todavía es posible calcular resúmenes intermedios mediante la creación de instancias de varias instancias, si el número de resúmenes se conoce de antemano.

Tenga en cuenta que esta clase es abstracta y se extiende desde MessageDigestSpi por motivos históricos. Los desarrolladores de aplicaciones solo deben tener en cuenta los métodos definidos en esta MessageDigest clase; todos los métodos de la superclase están destinados a proveedores de servicios criptográficos que desean proporcionar sus propias implementaciones de algoritmos de resumen de mensajes.

Android proporciona los siguientes MessageDigest algoritmos: <tablaad>><<tr><th>Algorithm</th>Supported API Levels</th<>/<>tr<>/thead><tbody><tr><td>MD5</td td<>>1+</td></tr tr><><td>SHA-1</td td td<>>1+</td/tr><<>td td td<>> SHA-224</td><td>1-8,22+</td<>/tr tr<><>td>SHA-256</td<>td>1+/td<>/tr tr><><td>SHA-384</td td>><1+</td></tr tr<<>>td>SHA-512</td td td>><1+<</td<>/tr/tbody><></table>

Estos algoritmos se describen en la sección MessageDigest de la documentación del nombre del algoritmo estándar de arquitectura criptográfica de Java.

Se agregó en la versión 1.1.

Documentación de Java para java.security.MessageDigest.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código y se usan según los términos descritos en la creative Commons 2.5.

Constructores

MessageDigest(IntPtr, JniHandleOwnership)

Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el entorno de ejecución.

MessageDigest(String)

Crea un resumen de mensaje con el nombre de algoritmo especificado.

Propiedades

Algorithm

Devuelve una cadena que identifica el algoritmo, independientemente de los detalles de implementación.

Class

Devuelve la clase en tiempo de ejecución de este Objectobjeto .

(Heredado de Object)
DigestLength

Devuelve la longitud del resumen en bytes o 0 si el proveedor no admite esta operación y la implementación no se puede clonar.

Handle

Identificador de la instancia de Android subyacente.

(Heredado de Object)
JniIdentityHashCode

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

(Heredado de Object)
JniPeerMembers

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

PeerReference

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

(Heredado de Object)
Provider

Devuelve el proveedor de este objeto de resumen de mensaje.

ThresholdClass

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

ThresholdType

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

Métodos

Clone()

Devuelve un clon si la implementación se puede clonar.

(Heredado de MessageDigestSpi)
Digest()

Completa el cálculo de hash realizando operaciones finales, como el relleno.

Digest(Byte[])

Realiza una actualización final en el resumen mediante la matriz especificada de bytes y, a continuación, completa el cálculo del resumen.

Digest(Byte[], Int32, Int32)

Completa el cálculo de hash realizando operaciones finales, como el relleno.

Dispose()

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

(Heredado de Object)
Dispose(Boolean)

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

(Heredado de Object)
EngineDigest()

Completa el cálculo de hash realizando operaciones finales, como el relleno.

(Heredado de MessageDigestSpi)
EngineDigest(Byte[], Int32, Int32)

Completa el cálculo de hash realizando operaciones finales, como el relleno.

(Heredado de MessageDigestSpi)
EngineGetDigestLength()

Devuelve la longitud del resumen en bytes.

(Heredado de MessageDigestSpi)
EngineReset()

Restablece el resumen para su uso posterior.

(Heredado de MessageDigestSpi)
EngineUpdate(Byte[], Int32, Int32)

Novedades el resumen utilizando la matriz especificada de bytes, empezando por el desplazamiento especificado.

(Heredado de MessageDigestSpi)
EngineUpdate(ByteBuffer)

Actualice el resumen con el byteBuffer especificado.

(Heredado de MessageDigestSpi)
EngineUpdate(SByte)

Novedades el resumen con el byte especificado.

(Heredado de MessageDigestSpi)
Equals(Object)

Indica si algún otro objeto es "igual a" este.

(Heredado de Object)
GetHashCode()

Devuelve un valor de código hash del objeto.

(Heredado de Object)
GetInstance(String)

Devuelve un objeto MessageDigest que implementa el algoritmo de resumen especificado.

GetInstance(String, Provider)

Devuelve un objeto MessageDigest que implementa el algoritmo de resumen especificado.

GetInstance(String, String)

Devuelve un objeto MessageDigest que implementa el algoritmo de resumen especificado.

IsEqual(Byte[], Byte[])

Compara dos resúmenes de igualdad.

JavaFinalize()

Llamado por el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto.

(Heredado de Object)
Notify()

Activa un único subproceso que está esperando en el monitor de este objeto.

(Heredado de Object)
NotifyAll()

Activa todos los subprocesos que están esperando en el monitor de este objeto.

(Heredado de Object)
Reset()

Restablece el resumen para su uso posterior.

SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
ToArray<T>()

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

(Heredado de Object)
ToString()

Devuelve una representación de cadena del objeto.

(Heredado de Object)
UnregisterFromRuntime()

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

(Heredado de Object)
Update(Byte[])

Novedades el resumen mediante la matriz especificada de bytes.

Update(Byte[], Int32, Int32)

Novedades el resumen utilizando la matriz especificada de bytes, empezando por el desplazamiento especificado.

Update(ByteBuffer)

Actualice el resumen con el byteBuffer especificado.

Update(SByte)

Novedades el resumen con el byte especificado.

Wait()

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser em notificado/em> o <em>interrumpido</em>.<><

(Heredado de Object)
Wait(Int64)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <notificado<>/em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)
Wait(Int64, Int32)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <notificado<>/em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)

Implementaciones de interfaz explícitas

IJavaPeerable.Disposed()

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

(Heredado de Object)
IJavaPeerable.DisposeUnlessReferenced()

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

(Heredado de Object)
IJavaPeerable.Finalized()

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

(Heredado de Object)
IJavaPeerable.JniManagedPeerState

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

(Heredado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

(Heredado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

(Heredado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

(Heredado de Object)

Métodos de extensión

JavaCast<TResult>(IJavaObject)

Realiza una conversión de tipos comprobados en tiempo de ejecución de Android.

JavaCast<TResult>(IJavaObject)

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

GetJniTypeName(IJavaPeerable)

Esta clase MessageDigest proporciona a las aplicaciones la funcionalidad de un algoritmo de resumen de mensajes, como SHA-1 o SHA-256.

Se aplica a