diff --git a/build.gradle.kts b/build.gradle.kts index 014871c..c8c1c91 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -22,6 +22,7 @@ kotlin { commonMain.dependencies { implementation(libs.mac) implementation(libs.hash) + implementation(libs.bytearray) } } } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index aa2fdd9..a088456 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,7 +1,8 @@ [versions] kotlin = "2.1.20" -mac = "1.1.0" -hash = "1.2.0" +mac = "1.1.2" +hash = "1.2.2" +bytearray = "1.1.1" [plugins] multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" } @@ -9,3 +10,4 @@ multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotl [libraries] mac = { module = "com.infendro:mac", version.ref = "mac" } hash = { module = "com.infendro:hash", version.ref = "hash" } +bytearray = { module = "com.infendro:bytearray", version.ref = "bytearray" } diff --git a/src/commonMain/kotlin/com/infendro/kdf/PBKDF2.kt b/src/commonMain/kotlin/com/infendro/kdf/PBKDF2.kt index 95f4625..37fe773 100644 --- a/src/commonMain/kotlin/com/infendro/kdf/PBKDF2.kt +++ b/src/commonMain/kotlin/com/infendro/kdf/PBKDF2.kt @@ -1,9 +1,9 @@ package com.infendro.kdf +import com.infendro.bytearray.addAll +import com.infendro.bytearray.toByteArray +import com.infendro.bytearray.xor import com.infendro.hash.HashFunction -import com.infendro.kdf.util.addAll -import com.infendro.kdf.util.toByteArray -import com.infendro.kdf.util.xor import com.infendro.mac.HMAC class PBKDF2( diff --git a/src/commonMain/kotlin/com/infendro/kdf/util/ByteArray.kt b/src/commonMain/kotlin/com/infendro/kdf/util/ByteArray.kt deleted file mode 100644 index 09aaaeb..0000000 --- a/src/commonMain/kotlin/com/infendro/kdf/util/ByteArray.kt +++ /dev/null @@ -1,26 +0,0 @@ -package com.infendro.kdf.util - -import kotlin.experimental.xor - -internal infix fun ByteArray.xor( - that: ByteArray, -): ByteArray { - if (this.size != that.size) throw Exception() - - return ByteArray(size) { i -> - this[i] xor that[i] - } -} - -internal fun MutableCollection.addAll( - bytes: ByteArray, -): Boolean { - return addAll(bytes.toList()) -} - -internal fun UInt.toByteArray(): ByteArray { - return ByteArray(4) { i -> - val offset = (3 - i) * 8 - (this shr offset).toByte() - } -}