Class XAesGcmParameters

    • Method Detail

      • create

        public static XAesGcmParameters create​(XAesGcmParameters.Variant variant,
                                               int saltSizeBytes)
                                        throws java.security.GeneralSecurityException
        Creates a new XAesGcmParameters object for generating new instances of XAesGcmKey. The key size is 32 bytes and the tag size is 16 bytes. The IV size in bytes is saltSizeBytes + 12.

        create(Variant.NO_PREFIX, 12) returns XAesGcmParameters that follow the XAES-256-GCM specification.

        Parameters:
        variant - the variant of the X-AES-GCM key.
        saltSizeBytes - the size of the salt in bytes. Must be between 8 and 12 bytes.
        Throws:
        java.security.GeneralSecurityException
      • getSaltSizeBytes

        public int getSaltSizeBytes()
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • hasIdRequirement

        public boolean hasIdRequirement()
        Description copied from class: Parameters
        Returns true if a key created with the parameters in this object has to have a certain ID when it is in a keyset.

        In Tink, certain keys change their behavior depending on the key id (for example, an Aead object can prefix the ciphertext with the big endian encoding of the key id). If this is the case, such a key should require a unique id in Key.getIdRequirementOrNull() and return true here.

        Specified by:
        hasIdRequirement in class Parameters
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object