diff --git a/src/main/java/org/keepassxc/Connection.java b/src/main/java/org/keepassxc/Connection.java index 752ca6d..deaa761 100644 --- a/src/main/java/org/keepassxc/Connection.java +++ b/src/main/java/org/keepassxc/Connection.java @@ -680,7 +680,7 @@ private byte[] ramdomGenerateNonce() { * @param nonce The nonce to be incremented. * @return nonce "+1". */ - private byte[] incrementNonce(byte[] nonce) { + static byte[] incrementNonce(byte[] nonce) { var c = 1; byte[] incrementedNonce = nonce.clone(); diff --git a/src/test/java/org/keepassxc/ConnectionNonceTest.java b/src/test/java/org/keepassxc/ConnectionNonceTest.java new file mode 100644 index 0000000..4076140 --- /dev/null +++ b/src/test/java/org/keepassxc/ConnectionNonceTest.java @@ -0,0 +1,19 @@ +package org.keepassxc; + +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertArrayEquals; + +class ConnectionNonceTest { + @Test + void test() { + byte[] before = new byte[] { + -1, 89, 10, 82, -100, 105, -57, 47, 124, -69, -39, -20, 80, -2, 17, 81, -26, 38, -14, -68, -44, -58, 98, -91 + }; + byte[] expected = new byte[] { + 0, 90, 10, 82, -100, 105, -57, 47, 124, -69, -39, -20, 80, -2, 17, 81, -26, 38, -14, -68, -44, -58, 98, -91 + }; + byte[] actual = Connection.incrementNonce(before); + assertArrayEquals(expected, actual); + } +}