MD5 en Kotlin

[crayon-6a617b4aa5966527561703/]

Explicación línea por línea:

  1. import java.math.BigInteger y import java.security.MessageDigest: Importa las clases necesarias para trabajar con la operación MD5 y representar números en formato hexadecimal.
  2. fun calcularMD5(texto: String): String { ... }: Define una función calcularMD5 que toma una cadena de texto como parámetro y devuelve su hash MD5 como una cadena hexadecimal.
  3. val md = MessageDigest.getInstance("MD5"): Obtiene una instancia del algoritmo MD5.
  4. val byteArray = md.digest(texto.toByteArray()): Convierte la cadena de texto en un array de bytes y calcula el hash MD5.
  5. val numeroEnHexadecimal = BigInteger(1, byteArray): Convierte el array de bytes en un número hexadecimal.
  6. var hashMD5 = numeroEnHexadecimal.toString(16): Convierte el número hexadecimal a una cadena de texto.
  7. while (hashMD5.length < 32) { ... }: Asegura que la cadena del hash MD5 tenga una longitud de 32 caracteres agregando ceros a la izquierda si es necesario.
  8. return hashMD5: Devuelve la cadena que representa el hash MD5.