packed nonce is now unsigned
This commit is contained in:
parent
3dd1654f70
commit
ae624ee051
@ -3,6 +3,7 @@ package net.sergeych.kiloparsec
|
|||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
import net.sergeych.bintools.toDataSource
|
import net.sergeych.bintools.toDataSource
|
||||||
import net.sergeych.bipack.BipackDecoder
|
import net.sergeych.bipack.BipackDecoder
|
||||||
|
import net.sergeych.bipack.Unsigned
|
||||||
import net.sergeych.crypto2.*
|
import net.sergeych.crypto2.*
|
||||||
import net.sergeych.synctools.ProtectedOp
|
import net.sergeych.synctools.ProtectedOp
|
||||||
import net.sergeych.synctools.invoke
|
import net.sergeych.synctools.invoke
|
||||||
@ -28,6 +29,7 @@ data class KiloParams<S>(
|
|||||||
) {
|
) {
|
||||||
@Serializable
|
@Serializable
|
||||||
data class Package(
|
data class Package(
|
||||||
|
@Unsigned
|
||||||
val nonce: ULong,
|
val nonce: ULong,
|
||||||
val encryptedMessage: UByteArray,
|
val encryptedMessage: UByteArray,
|
||||||
)
|
)
|
||||||
|
@ -1,11 +1,15 @@
|
|||||||
|
import kotlinx.coroutines.runBlocking
|
||||||
import kotlinx.coroutines.test.runTest
|
import kotlinx.coroutines.test.runTest
|
||||||
import kotlinx.datetime.Instant
|
import kotlinx.datetime.Instant
|
||||||
|
import net.sergeych.bipack.BipackEncoder
|
||||||
import net.sergeych.crypto2.initCrypto
|
import net.sergeych.crypto2.initCrypto
|
||||||
|
import net.sergeych.kiloparsec.KiloParams
|
||||||
import net.sergeych.kiloparsec.Transport
|
import net.sergeych.kiloparsec.Transport
|
||||||
import net.sergeych.utools.nowToSeconds
|
import net.sergeych.utools.nowToSeconds
|
||||||
import net.sergeych.utools.pack
|
import net.sergeych.utools.pack
|
||||||
import net.sergeych.utools.unpack
|
import net.sergeych.utools.unpack
|
||||||
import kotlin.test.Test
|
import kotlin.test.Test
|
||||||
|
import kotlin.test.assertContentEquals
|
||||||
import kotlin.test.assertEquals
|
import kotlin.test.assertEquals
|
||||||
import kotlin.time.Duration.Companion.microseconds
|
import kotlin.time.Duration.Companion.microseconds
|
||||||
|
|
||||||
@ -40,4 +44,10 @@ class PackTest {
|
|||||||
val b2 = unpack<Transport.Block>(p1)
|
val b2 = unpack<Transport.Block>(p1)
|
||||||
assertEquals(b1,b2)
|
assertEquals(b1,b2)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun packPackage() = runBlocking {
|
||||||
|
val x = BipackEncoder.encode(KiloParams.Package(1u, ubyteArrayOf()))
|
||||||
|
assertContentEquals(byteArrayOf(4, 0), x)
|
||||||
|
}
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user