Criptografia é a área da computação que aplica algorítimos matemáticos visando transformar um conjunto de bytes identificável para um conjunto de bytes codificado.
A criptografia ela é two-way isso significa que após o texto ser codificado ele pode voltar ao seu estado original, desde que tenhamos a chave usada na codificação.
O que é diferente do processo de hash, as hashs são one-way já que após a execução do algorítimo já não é mais possível ter acesso ao conteúdo original.
Esse processo é comumente utilizado em autenticação de usuários, onde nem mesmo os programadores e gestores da aplicação vão conseguir ter acesso a senha original do cliente.
No caso da aplicação usada em aula, usamos o processo de criptografia já que a aplicação roda localmente na máquina de cada usuário e ele precisa da senha original para usar em suas aplicações.
Aqui o usuário escolhe um conjunto de bytes (chave) e utiliza ele para codificar a mensagem e somente com essa chave a mensagem poderá ser descodificada.

Esse foi o método utilizado em aula no desenvolvimento do projeto, usamos a classe Fernet da biblioteca cryptography do Python. Que implementa o algorítimo mais comum de chave simétrica o AES (Advanced Encryption Standard) com chave de 128 bits no modo Cipher Block Chaining (https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation)