From 4f742e9235e35d5c0655fca4e1f432b81b752930 Mon Sep 17 00:00:00 2001 From: Alexander Buntakov Date: Sun, 20 Jun 2021 15:36:57 +0300 Subject: [PATCH 1/2] add hash utils --- .../kotlin/ru/touchin/common/byte/ByteUtils.kt | 11 +++++++++++ .../touchin/common/security/hash/HashUtils.kt | 17 +++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 common/src/main/kotlin/ru/touchin/common/byte/ByteUtils.kt create mode 100644 common/src/main/kotlin/ru/touchin/common/security/hash/HashUtils.kt diff --git a/common/src/main/kotlin/ru/touchin/common/byte/ByteUtils.kt b/common/src/main/kotlin/ru/touchin/common/byte/ByteUtils.kt new file mode 100644 index 0000000..3a7e7fd --- /dev/null +++ b/common/src/main/kotlin/ru/touchin/common/byte/ByteUtils.kt @@ -0,0 +1,11 @@ +package ru.touchin.common.byte + +object ByteUtils { + + fun ByteArray.toHex(): String { + return joinToString(separator = "") { byte -> + "%02x".format(byte) + } + } + +} diff --git a/common/src/main/kotlin/ru/touchin/common/security/hash/HashUtils.kt b/common/src/main/kotlin/ru/touchin/common/security/hash/HashUtils.kt new file mode 100644 index 0000000..b8b4635 --- /dev/null +++ b/common/src/main/kotlin/ru/touchin/common/security/hash/HashUtils.kt @@ -0,0 +1,17 @@ +package ru.touchin.common.security.hash + +import java.nio.charset.StandardCharsets.UTF_8 +import java.security.MessageDigest + +object HashUtils { + + enum class HashAlgorithm { + MD5 + } + + fun String.calcHash(algorithmName: HashAlgorithm): ByteArray { + return MessageDigest.getInstance(algorithmName.name) + .digest(this.toByteArray(UTF_8)) + } + +} From be38ebf4515c059bd11ea319bc5310fbed46de91 Mon Sep 17 00:00:00 2001 From: Alexander Buntakov Date: Sun, 20 Jun 2021 15:40:00 +0300 Subject: [PATCH 2/2] Update common/src/main/kotlin/ru/touchin/common/security/hash/HashUtils.kt Co-authored-by: TonCherAmi --- .../main/kotlin/ru/touchin/common/security/hash/HashUtils.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/src/main/kotlin/ru/touchin/common/security/hash/HashUtils.kt b/common/src/main/kotlin/ru/touchin/common/security/hash/HashUtils.kt index b8b4635..0d37187 100644 --- a/common/src/main/kotlin/ru/touchin/common/security/hash/HashUtils.kt +++ b/common/src/main/kotlin/ru/touchin/common/security/hash/HashUtils.kt @@ -9,7 +9,7 @@ object HashUtils { MD5 } - fun String.calcHash(algorithmName: HashAlgorithm): ByteArray { + fun String.calculateHash(algorithmName: HashAlgorithm): ByteArray { return MessageDigest.getInstance(algorithmName.name) .digest(this.toByteArray(UTF_8)) }