LoginSignup
3

More than 5 years have passed since last update.

[Android] Kotlinを使ってSHA-256 暗号化。

Posted at

以前書いたのはこちらになります。

1.Android Studioで簡単なSHA-1発給。 
https://qiita.com/Dreamwalker/items/5888bfac4bfa65d3d68e

Kotlinで簡単に発給してみました。
今回も難しくないです。簡単でしやすいです。

重要なコード。

main.kt
fun sha256(input: String) = hashString("SHA-256", input)

private fun hashString(type: String, input: String): String {
   val HEX_CHARS = "0123456789ABCDEF"
   val bytes = MessageDigest
            .getInstance(type)
            .digest(input.toByteArray())
   val result = StringBuilder(bytes.size * 2)

   bytes.forEach {
        val i = it.toInt()
        result.append(HEX_CHARS[i shr 4 and 0x0f])
        result.append(HEX_CHARS[i and 0x0f])
    }
    return result.toString()
}

使用。

main.kt

val hashs = sha256("Hello Qiita!")

Logger使用。

main.kt

val hashs = sha256("Hello Qitta!")
Logger.getLogger(this::class.java.name).warning(hashs)

結果。

image.png

hash : E863D36C24ADA694FA77454B33E8F9B9545D372AAE251E8779FC25DF16943FED

終わりに

読みいただきありがとうございました。
次のPostで会いましょう!

Dreamwalker

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3