diff options
Diffstat (limited to 'java_src/src/main/java/com/google/crypto/tink/JsonKeysetReader.java')
-rw-r--r-- | java_src/src/main/java/com/google/crypto/tink/JsonKeysetReader.java | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/java_src/src/main/java/com/google/crypto/tink/JsonKeysetReader.java b/java_src/src/main/java/com/google/crypto/tink/JsonKeysetReader.java index dd5dcbcc8..eb4934078 100644 --- a/java_src/src/main/java/com/google/crypto/tink/JsonKeysetReader.java +++ b/java_src/src/main/java/com/google/crypto/tink/JsonKeysetReader.java @@ -187,10 +187,16 @@ public final class JsonKeysetReader implements KeysetReader { } else { encryptedKeyset = Base64.decode(json.get("encryptedKeyset").getAsString()); } - return EncryptedKeyset.newBuilder() - .setEncryptedKeyset(ByteString.copyFrom(encryptedKeyset)) - .setKeysetInfo(keysetInfoFromJson(json.getAsJsonObject("keysetInfo"))) - .build(); + if (json.has("keysetInfo")) { + return EncryptedKeyset.newBuilder() + .setEncryptedKeyset(ByteString.copyFrom(encryptedKeyset)) + .setKeysetInfo(keysetInfoFromJson(json.getAsJsonObject("keysetInfo"))) + .build(); + } else { + return EncryptedKeyset.newBuilder() + .setEncryptedKeyset(ByteString.copyFrom(encryptedKeyset)) + .build(); + } } private Keyset.Key keyFromJson(JsonObject json) { |