Packages

class TinkPureCrypto extends CryptoPureApi

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TinkPureCrypto
  2. CryptoPureApi
  3. RandomOps
  4. HashOps
  5. HkdfOps
  6. HmacOps
  7. SigningOps
  8. EncryptionOps
  9. AnyRef
  10. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def build(purpose: HashPurpose, algorithm: HashAlgorithm = defaultHashAlgorithm): HashBuilder

    Creates a HashBuilder for computing a hash with the given purpose.

    Creates a HashBuilder for computing a hash with the given purpose. For different purposes purpose1 and purpose2, all implementations must ensure that it is computationally infeasible to find a sequence bs of com.google.protobuf.ByteStrings such that bs.foldLeft(hashBuilder(purpose1))((b, hb) => hb.add(b)).finish and bs.foldLeft(hashBuilder(purpose2))((b, hb) => hb.add(b)).finish yield the same hash.

    Definition Classes
    HashOps
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  7. def computeHkdf(keyMaterial: ByteString, outputBytes: Int, info: HkdfInfo, salt: ByteString = ByteString.EMPTY, algorithm: HmacAlgorithm = defaultHmacAlgorithm): Either[HkdfError, SecureRandomness]

    Produce a new secret from the given key material using the HKDF from RFC 5869 with both extract and expand phases.

    Produce a new secret from the given key material using the HKDF from RFC 5869 with both extract and expand phases.

    keyMaterial

    Input key material from which to derive another key.

    outputBytes

    The length of the produced secret. May be at most 255 times the size of the output of the selected hashing algorithm. If you need to derive multiple keys, set the info parameter to different values, for each key that you need.

    info

    Specify the purpose of the derived key (optional). Note that you can derive multiple independent keys from the same key material by varying the purpose.

    salt

    Optional salt. Should be set if the input key material is not cryptographically secure, uniformly random.

    algorithm

    The hash algorithm to be used for the HKDF construction

    Definition Classes
    HkdfOps
  8. def computeHkdfInternal(keyMaterial: ByteString, outputBytes: Int, info: HkdfInfo, salt: ByteString, algorithm: HmacAlgorithm): Either[HkdfError, SecureRandomness]
    Attributes
    protected
    Definition Classes
    TinkPureCryptoHkdfOps
  9. def createSymmetricKey(bytes: SecureRandomness, scheme: SymmetricKeyScheme): Either[EncryptionKeyCreationError, SymmetricKey]

    Creates a symmetric key with the specified scheme for the given randomness.

    Creates a symmetric key with the specified scheme for the given randomness.

    Definition Classes
    TinkPureCryptoEncryptionOps
  10. def decryptWith[M](encrypted: Encrypted[M], symmetricKey: SymmetricKey)(deserialize: (ByteString) => Either[DeserializationError, M]): Either[DecryptionError, M]

    Decrypts a message encrypted using encryptWith

    Decrypts a message encrypted using encryptWith

    Definition Classes
    TinkPureCryptoEncryptionOps
  11. def decryptWith[M](encrypted: AsymmetricEncrypted[M], privateKey: EncryptionPrivateKey)(deserialize: (ByteString) => Either[DeserializationError, M]): Either[DecryptionError, M]

    Decrypts a message encrypted using encryptWith

    Decrypts a message encrypted using encryptWith

    Definition Classes
    EncryptionOps
  12. def decryptWithInternal[M](encrypted: AsymmetricEncrypted[M], privateKey: EncryptionPrivateKey)(deserialize: (ByteString) => Either[DeserializationError, M]): Either[DecryptionError, M]
    Attributes
    protected
    Definition Classes
    TinkPureCryptoEncryptionOps
  13. val defaultHashAlgorithm: HashAlgorithm
    Definition Classes
    TinkPureCryptoHashOps
  14. def defaultHmacAlgorithm: HmacAlgorithm
    Definition Classes
    HmacOps
  15. val defaultSymmetricKeyScheme: SymmetricKeyScheme
    Definition Classes
    TinkPureCryptoEncryptionOps
  16. def digest(purpose: HashPurpose, bytes: ByteString, algorithm: HashAlgorithm = defaultHashAlgorithm): Hash

    Convenience method for build(purpose).addWithoutLengthPrefix(bytes).finish

    Convenience method for build(purpose).addWithoutLengthPrefix(bytes).finish

    Definition Classes
    HashOps
  17. def encryptWith[M <: HasVersionedToByteString](message: M, publicKey: EncryptionPublicKey, version: ProtocolVersion): Either[EncryptionError, AsymmetricEncrypted[M]]

    Encrypts the given message using the given public key.

    Encrypts the given message using the given public key.

    Definition Classes
    TinkPureCryptoEncryptionOps
  18. def encryptWith[M <: HasVersionedToByteString](message: M, symmetricKey: SymmetricKey, version: ProtocolVersion): Either[EncryptionError, Encrypted[M]]

    Encrypts the given bytes with the given symmetric key

    Encrypts the given bytes with the given symmetric key

    Definition Classes
    TinkPureCryptoEncryptionOps
  19. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  21. def generateRandomByteString(length: Int): ByteString
    Definition Classes
    RandomOps
  22. def generateRandomBytes(length: Int): Array[Byte]
    Attributes
    protected
    Definition Classes
    TinkPureCryptoRandomOps
  23. def generateSecureRandomness(length: Int): SecureRandomness
    Definition Classes
    RandomOps
  24. def generateSymmetricKey(scheme: SymmetricKeyScheme = defaultSymmetricKeyScheme): Either[EncryptionKeyGenerationError, SymmetricKey]

    Generates a random symmetric key

    Generates a random symmetric key

    Definition Classes
    TinkPureCryptoEncryptionOps
  25. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  26. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  27. def hkdfExpand(keyMaterial: SecureRandomness, outputBytes: Int, info: HkdfInfo, algorithm: HmacAlgorithm = defaultHmacAlgorithm): Either[HkdfError, SecureRandomness]

    Produce a new secret from the given secret and purpose.

    Produce a new secret from the given secret and purpose. Only performs the expand step of the HKDF from RFC 5869.

    keyMaterial

    Cryptographically secure, uniformly random initial key material. Must be at least as long as the length of the hash function chosen for the HMAC scheme.

    outputBytes

    The length of the produced secret. May be at most 255 times the size of the output of the selected hashing algorithm. If you need to derive multiple keys, set the info parameter to different values, for each key that you need.

    info

    Specify the purpose of the derived key (optional). Note that you can derive multiple independent keys from the same key material by varying the purpose.

    algorithm

    The hash algorithm to be used for the HKDF construction

    Definition Classes
    HkdfOps
  28. def hkdfExpandInternal(keyMaterial: SecureRandomness, outputBytes: Int, info: HkdfInfo, algorithm: HmacAlgorithm): Either[HkdfError, SecureRandomness]
    Attributes
    protected
    Definition Classes
    TinkPureCryptoHkdfOps
  29. def hmacWithSecret(secret: HmacSecret, message: ByteString, algorithm: HmacAlgorithm = defaultHmacAlgorithm): Either[HmacError, Hmac]
    Definition Classes
    HmacOps
  30. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  31. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  32. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  33. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  34. def sign(bytes: ByteString, signingKey: SigningPrivateKey): Either[SigningError, Signature]
    Attributes
    protected[crypto]
    Definition Classes
    TinkPureCryptoSigningOps
  35. def sign(hash: Hash, signingKey: SigningPrivateKey): Either[SigningError, Signature]

    Signs the given hash using the private signing key.

    Signs the given hash using the private signing key.

    Definition Classes
    SigningOps
  36. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  37. def toString(): String
    Definition Classes
    AnyRef → Any
  38. def verifySignature(bytes: ByteString, publicKey: SigningPublicKey, signature: Signature): Either[SignatureCheckError, Unit]

    Confirms if the provided signature is a valid signature of the payload using the public key.

    Confirms if the provided signature is a valid signature of the payload using the public key. Will always deem the signature invalid if the public key is not a signature key.

    Definition Classes
    TinkPureCryptoSigningOps
  39. def verifySignature(hash: Hash, publicKey: SigningPublicKey, signature: Signature): Either[SignatureCheckError, Unit]

    Confirms if the provided signature is a valid signature of the payload using the public key

    Confirms if the provided signature is a valid signature of the payload using the public key

    Definition Classes
    SigningOps
  40. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  41. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  42. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from CryptoPureApi

Inherited from RandomOps

Inherited from HashOps

Inherited from HkdfOps

Inherited from HmacOps

Inherited from SigningOps

Inherited from EncryptionOps

Inherited from AnyRef

Inherited from Any

Ungrouped