private static AesEaxParameters parseParameters(ProtoParametersSerialization serialization)
      throws GeneralSecurityException {
    if (!serialization.getKeyTemplate().getTypeUrl().equals(TYPE_URL)) {
      throw new IllegalArgumentException(
          "Wrong type URL in call to AesEaxProtoSerialization.parseParameters: "
              + serialization.getKeyTemplate().getTypeUrl());
    }
    com.google.crypto.tink.proto.AesEaxKeyFormat format;
    try {
      format =
          com.google.crypto.tink.proto.AesEaxKeyFormat.parseFrom(
              serialization.getKeyTemplate().getValue(), ExtensionRegistryLite.getEmptyRegistry());
    } catch (InvalidProtocolBufferException e) {
      throw new GeneralSecurityException("Parsing AesEaxParameters failed: ", e);
    }
    return AesEaxParameters.builder()
        .setKeySizeBytes(format.getKeySize())
        .setIvSizeBytes(format.getParams().getIvSize())
        /** Subtle implementation currently restricts tag size to 16 bytes. */
        .setTagSizeBytes(16)
        .setVariant(toVariant(serialization.getKeyTemplate().getOutputPrefixType()))
        .build();
  }
Current implementation restricts to 16-byte tag value
java_src/src/main/java/com/google/crypto/tink/aead/internal/AesEaxProtoSerialization.java