diff options
Diffstat (limited to 'java_src/src/main/java/com/google/crypto/tink/testing/HpkeTestUtil.java')
-rw-r--r-- | java_src/src/main/java/com/google/crypto/tink/testing/HpkeTestUtil.java | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/java_src/src/main/java/com/google/crypto/tink/testing/HpkeTestUtil.java b/java_src/src/main/java/com/google/crypto/tink/testing/HpkeTestUtil.java index 790884aa9..17c293dd7 100644 --- a/java_src/src/main/java/com/google/crypto/tink/testing/HpkeTestUtil.java +++ b/java_src/src/main/java/com/google/crypto/tink/testing/HpkeTestUtil.java @@ -53,8 +53,9 @@ public final class HpkeTestUtil { testObject.get("kdf_id").getAsInt(), testObject.get("aead_id").getAsInt()); // Filter out test vectors for unsupported modes and/or KEMs. - if (Arrays.equals(testId.mode, HpkeUtil.BASE_MODE)) { - HpkeTestSetup testSetup = + if (Arrays.equals(testId.mode, HpkeUtil.BASE_MODE) + || Arrays.equals(testId.mode, HpkeUtil.AUTH_MODE)) { + HpkeTestSetup.Builder testSetupBuilder = HpkeTestSetup.builder() .setInfo(testObject.get("info").getAsString()) .setSenderEphemeralPublicKey(testObject.get("pkEm").getAsString()) @@ -66,8 +67,14 @@ public final class HpkeTestUtil { .setKeyScheduleContext(testObject.get("key_schedule_context").getAsString()) .setSecret(testObject.get("secret").getAsString()) .setKey(testObject.get("key").getAsString()) - .setBaseNonce(testObject.get("base_nonce").getAsString()) - .build(); + .setBaseNonce(testObject.get("base_nonce").getAsString()); + if (Arrays.equals(testId.mode, HpkeUtil.AUTH_MODE)) { + testSetupBuilder = + testSetupBuilder + .setSenderPublicKey(testObject.get("pkSm").getAsString()) + .setSenderPrivateKey(testObject.get("skSm").getAsString()); + } + HpkeTestSetup testSetup = testSetupBuilder.build(); JsonArray encryptionsArray = testObject.get("encryptions").getAsJsonArray(); List<HpkeTestEncryption> testEncryptions = new ArrayList<>(); for (JsonElement encryptionElement : encryptionsArray) { |