Added seal box test, fxed seal box jvm implementation

This commit is contained in:
Ugljesa Jovanovic committed 2020-09-10 20:50:14 +02:00
1 parent 7a8640638c
commit 25fcd0cae2
4 files changed
+28 -13

No files matched your search

@@ -329,12 +329,10 @@ actual object Box {
}
actual fun sealOpen(ciphertext: UByteArray, recipientsSecretKey: UByteArray): UByteArray {
actual fun sealOpen(ciphertext: UByteArray, recipientsPublicKey: UByteArray, recipientsSecretKey: UByteArray): UByteArray {
val message = UByteArray(ciphertext.size - crypto_box_SEALBYTES)
val senderPublicKey = UByteArray(crypto_box_SEALBYTES) {
message[ciphertext.size - crypto_box_SEALBYTES + it - 1]
}
val senderPublicKeyPinned = senderPublicKey.pin()
val recipientsPublicKeyPinned = recipientsPublicKey.pin()
val messagePinned = message.pin()
val ciphertextPinned = ciphertext.pin()
val recipientsSecretKeyPinned = recipientsSecretKey.pin()
@@ -343,13 +341,13 @@ actual object Box {
messagePinned.toPtr(),
ciphertextPinned.toPtr(),
ciphertext.size.convert(),
senderPublicKeyPinned.toPtr(),
recipientsPublicKeyPinned.toPtr(),
recipientsSecretKeyPinned.toPtr()
)
messagePinned.unpin()
ciphertextPinned.unpin()
senderPublicKeyPinned.unpin()
recipientsPublicKeyPinned.unpin()
recipientsSecretKeyPinned.unpin()
if (validationResult != 0) {