on_external_decrypt Event
Handles remote or external decryption.
Syntax
class PGPReaderExternalDecryptEventParams(object): @property def operation_id() -> str: ... @property def algorithm() -> str: ... @property def pars() -> str: ... @property def encrypted_data() -> str: ... @property def data() -> str: ... @data.setter def data(value) -> None: ... # In class PGPReader: @property def on_external_decrypt() -> Callable[[PGPReaderExternalDecryptEventParams], None]: ... @on_external_decrypt.setter def on_external_decrypt(event_hook: Callable[[PGPReaderExternalDecryptEventParams], None]) -> None: ...
Remarks
Assign a handler to this event if you need to delegate a low-level decryption operation to an external, remote, or custom decryption engine. The handler receives a encrypted value in the EncryptedData parameter, and is expected to decrypt it and place the decrypted value into the Data parameter.
OperationId provides a comment about the operation and its origin. It depends on the exact component being used, and may be empty. Algorithm specifies the encryption algorithm being used, and Pars contain algorithm-dependent parameters.
The component uses base16 (hex) encoding for EncryptedData, Data, and Pars parameters. If your decryption engine uses a different input and output encoding, you may need to decode and/or encode the data before and/or after the decryption.
A sample data encoded in base16: a0dee2a0382afbb09120ffa7ccd8a152 - lower case base16 A0DEE2A0382AFBB09120FFA7CCD8A152 - upper case base16