
Ferramenta de criptografia CLI escrita em Go
./safeguard --version
1.0
Este projeto é uma ferramenta de criptografia de arquivos voltada para aprendizado.
Embora utilize primitivas criptográficas padrão da biblioteca padrão do Go (por exemplo, AES-GCM para criptografia autenticada), ela não usa uma função de derivação de chave por senha moderna e resistente a memória, como Argon2 ou scrypt.
Em vez disso, as chaves são derivadas usando um método leve, apenas com a biblioteca padrão. Isso significa:
Contribuições que melhorem a segurança preservando a usabilidade são bem-vindas.
git clone https://github.com/pingplus/SafeGuard.git
cd SafeGuard
go build
Sintaxe geral:
./safeguard <arquivo> <ação> <cifra> [opções]
Ações:
--encrypt ou e Criptografa um arquivo--decrypt ou d Descriptografa um arquivo--decrypt-directory ou de Descriptografa um diretório inteiro (descriptografar diretório ainda não disponível, desculpe :( )Opções:
--inplace descriptografar/criptografar um arquivo no local (experimental)--key adicionar chave--output especificar o nome de saídaCifras suportadas:
./safeguard --list-ciphers
[i] Available ciphers:
xor
caesar
aes
Criptografar um arquivo:
./safeguard secret.txt e aes --key "your-strong-password"
# or
./safeguard secret.txt --encrypt aes --key "your-strong-password" --output secret.txt.aes
Descriptografar um arquivo:
./safeguard secret.txt d aes --key "your-strong-password"
# or
./safeguard secret.txt --decrypt aes --key "your-strong-password" --output secret.txt.dec
./safeguard secrets.txt e aes --key "123123123123123123123123" --inplace
# -> creates secrets.txt but encrypted
./safeguard secrets.txt.aes d aes --key "123123123123123123123123" --output secrets_decrypted.txt