Skip to content

AntonioPCruz/see-u-l4ter

Repository files navigation

TODO readme file

  • por exemplos da cli e tirar os curls
  • agradecimentos ao prof

server

  • Logging
  • TLS
  • RSA
  • Routes
    • Login
    • Register
    • Old
      • Gen (key generation for previous times)
    • Now
      • Encrypt
      • Decrypt
    • Later
      • Encrypt

cli

  • Subcommands
    • Login
    • Register
    • Old
    • Watch
    • Encrypt
    • Decrypt

website

TODO

main

  • gerar chaves pseudo-aleatorias com uma cifra, dependentes do email, password, dia e hora (por exemplo SHA256) -> mostrar na pagina/cli
  • gerar chaves para uma determinada hora tambem dependentes do mesmo, para cifrar um ficheiro com essa chave -> gerar codigo HMAC-SHA256 ligado à chave
  • cifrar com essas chaves e devolver o ficheiro e o hmac do ficheiro ao utilizador
  • permitir tentar decifrar um criptograma com uma chave que o utilizador da -> o sistema verifica o codigo HMAC ligado ao ficheiro e avisa o utilizador se nao estiver certo

extra

  • escolher entre varios tipos de cifra
  • escolher HMAC entre 256 e 512
  • keypairs RSA
  • signup por email e password no cli
  • signup por email e password no site
  • permitir um user aceder qualquer chave que tenha usado no passado
  • logs de atividade
  • SSL/TLS ou LetsEncrypt para a ligacao do cli/site com o backend

Running

# Server
cargo run --bin server

# Cli
cargo run --bin see-u-l4ter

# Example encrypt
cargo run --bin see-u-l4ter encrypt Cargo.lock -c 2 -m 1 -t 2024-05-13-21:47

# Example decrypt
cargo run --bin see-u-l4ter decrypt Cargo.lock.zip

Building with Nix

nix build --impure