palavras-chave Bitwarden EasyCrypt Formal verification Interactive theorem proving Jasmin Password manager Random password generator Security Verified compilation