telegram.EncryptedCredentials

class telegram.EncryptedCredentials(*args, **kwargs)[source]

Bases: telegram.TelegramObject

Contains data required for decrypting and authenticating EncryptedPassportElement. See the Telegram Passport Documentation for a complete description of the data decryption and authentication processes.

Objects of this class are comparable in terms of equality. Two objects of this class are considered equal, if their data, hash and secret are equal.

Note

This object is decrypted only when originating from telegram.PassportData.decrypted_credentials.

Parameters
  • data (telegram.Credentials or str) – Decrypted data with unique user’s nonce, data hashes and secrets used for EncryptedPassportElement decryption and authentication or base64 encrypted data.

  • hash (str) – Base64-encoded data hash for data authentication.

  • secret (str) – Decrypted or encrypted secret used for decryption.

  • **kwargs (dict) – Arbitrary keyword arguments.

data[source]

Decrypted data with unique user’s nonce, data hashes and secrets used for EncryptedPassportElement decryption and authentication or base64 encrypted data.

Type

telegram.Credentials or str

hash[source]

Base64-encoded data hash for data authentication.

Type

str

secret[source]

Decrypted or encrypted secret used for decryption.

Type

str

property decrypted_data[source]
Lazily decrypt and return credentials data. This object

also contains the user specified nonce as decrypted_data.nonce.

Raises

telegram.error.PassportDecryptionError – Decryption failed. Usually due to bad private/public key but can also suggest malformed/tampered data.

Type

telegram.Credentials

property decrypted_secret[source]

Lazily decrypt and return secret.

Raises

telegram.error.PassportDecryptionError – Decryption failed. Usually due to bad private/public key but can also suggest malformed/tampered data.

Type

str