commit
89947873e7
@ -1,5 +1,5 @@
|
||||
|
||||
[](https://gitlab.com/ionspin-github-ci/kotlin-multiplatform-libsodium/-/commits/master)
|
||||
[](https://gitlab.com/ionspin-github-ci/kotlin-multiplatform-libsodium/-/commits/main)
|
||||
|
||||

|
||||
|
||||
|
@ -25,7 +25,7 @@ object Versions {
|
||||
val kotlinBigNumVersion = "0.3.7"
|
||||
val jna = "5.10.0"
|
||||
val kotlinPoet = "1.6.0"
|
||||
val sampleLibsodiumBindings = "0.8.5-SNAPSHOT"
|
||||
val sampleLibsodiumBindings = "0.8.8-SNAPSHOT"
|
||||
val ktor = "1.3.2"
|
||||
val timber = "4.7.1"
|
||||
val kodeinVersion = "7.1.0"
|
||||
|
@ -566,8 +566,6 @@ kotlin {
|
||||
kotlin.srcDirs("src/jvmSpecific", "src/jvmMain/kotlin")
|
||||
dependencies {
|
||||
implementation(kotlin(Deps.Jvm.stdLib))
|
||||
implementation(kotlin(Deps.Jvm.test))
|
||||
implementation(kotlin(Deps.Jvm.testJUnit))
|
||||
|
||||
implementation(Deps.Jvm.resourceLoader)
|
||||
|
||||
|
@ -184,6 +184,7 @@ kotlin {
|
||||
implementation(kotlin(Deps.Common.stdLib))
|
||||
implementation(kotlin(Deps.Common.test))
|
||||
implementation(Deps.Common.serialization)
|
||||
// api(Deps.Common.libsodiumBindings)
|
||||
api(project(":multiplatform-crypto-libsodium-bindings"))
|
||||
implementation(Deps.Common.coroutines)
|
||||
}
|
||||
|
@ -1,5 +1,7 @@
|
||||
package com.ionspin.kotlin.crypto.sample
|
||||
|
||||
import com.ionspin.kotlin.crypto.aead.AuthenticatedEncryptionWithAssociatedData
|
||||
import com.ionspin.kotlin.crypto.aead.crypto_aead_xchacha20poly1305_ietf_NPUBBYTES
|
||||
import com.ionspin.kotlin.crypto.hash.Hash
|
||||
import com.ionspin.kotlin.crypto.util.LibsodiumRandom
|
||||
import com.ionspin.kotlin.crypto.util.encodeToUByteArray
|
||||
@ -10,10 +12,24 @@ object Sample {
|
||||
fun runSample() {
|
||||
val random = LibsodiumRandom.buf(32)
|
||||
println("Random: ${random.toHexString()}")
|
||||
println("Hashed 123 ${hashSomething()}")
|
||||
encryptThenDecrypt()
|
||||
}
|
||||
|
||||
fun hashSomething() : String {
|
||||
val hash = Hash.sha512("123".encodeToUByteArray())
|
||||
return "Hash (SHA512) of 123: ${hash.toHexString()}"
|
||||
}
|
||||
|
||||
fun encryptThenDecrypt() {
|
||||
val data = LibsodiumRandom.buf(2048)
|
||||
val associatedData = LibsodiumRandom.buf(256)
|
||||
val key = AuthenticatedEncryptionWithAssociatedData.xChaCha20Poly1305IetfKeygen()
|
||||
val nonce = LibsodiumRandom.buf(crypto_aead_xchacha20poly1305_ietf_NPUBBYTES)
|
||||
val encrypted = AuthenticatedEncryptionWithAssociatedData.xChaCha20Poly1305IetfEncrypt(data, associatedData, nonce, key)
|
||||
println("Original data ${data.toHexString()}")
|
||||
println("Encrypted ${encrypted.toHexString()}")
|
||||
val decrypted = AuthenticatedEncryptionWithAssociatedData.xChaCha20Poly1305IetfDecrypt(encrypted, associatedData, nonce, key)
|
||||
println("Decrypted ${decrypted.toHexString()}")
|
||||
}
|
||||
}
|
||||
|
@ -1,12 +1,5 @@
|
||||
import com.ionspin.kotlin.crypto.hash.blake2b.Blake2bDelegated
|
||||
import kotlin.time.ExperimentalTime
|
||||
import kotlin.time.measureTime
|
||||
|
||||
@ExperimentalTime
|
||||
import com.ionspin.kotlin.crypto.sample.Sample
|
||||
|
||||
fun main() {
|
||||
println("Test")
|
||||
// Blake
|
||||
val blake = Blake2bDelegated()
|
||||
blake.digest()
|
||||
Sample.runSample()
|
||||
}
|
||||
|
@ -1,9 +1,5 @@
|
||||
import com.ionspin.kotlin.crypto.sample.Sample
|
||||
import kotlin.time.ExperimentalTime
|
||||
|
||||
@ExperimentalTime
|
||||
fun main() {
|
||||
|
||||
Sample.runSample()
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,5 @@
|
||||
import com.ionspin.kotlin.crypto.sample.Sample
|
||||
|
||||
fun main() {
|
||||
Sample.runSample()
|
||||
}
|
@ -1,7 +1,4 @@
|
||||
import com.ionspin.kotlin.crypto.sample.Sample
|
||||
import kotlin.time.ExperimentalTime
|
||||
|
||||
@ExperimentalTime
|
||||
|
||||
fun main() {
|
||||
Sample.runSample()
|
||||
|
@ -1,5 +1,6 @@
|
||||
import com.ionspin.kotlin.crypto.sample.Sample
|
||||
|
||||
fun main() : Unit {
|
||||
Sample.runSample()
|
||||
}
|
||||
// Clashes with platform specific main()
|
||||
//fun main() : Unit {
|
||||
// Sample.runSample()
|
||||
//}
|
||||
|
Loading…
x
Reference in New Issue
Block a user