Secret - Encrypt anything with a password

Secret - Encrypt anything with a password

Ever wanted to hide a file? Now you can do it really easily!

asciicast

Secret - Encrypt anything with a password. | Product Hunt

Usage

secret {-e/--encrypt | -d/--decrypt}  []
secret [-h/--help | -v/--version]

For example, run:

echo "foobardata" > foo.txt
secret --encrypt foo.txt

You will be prompted for a password that you can use to recover data later.

Password:

After you input your password, Secret will make an encrypted foo.txt.secret file.

Then, when you want to decrypt foo.txt.secret, you can run:

secret --decrypt foo.txt.secret bar.txt

You must enter the same password you had when you encrypted the data.

Secret then decrypts foo.txt.secret and writes the data to a new file, bar.txt.

If you didn't specify bar.txt, Secret would try to write to foo.txt. However, Secret will never overwrite files and so it would print an error.

Now bar.txt and foo.txt are exactly the same! (you can check this with diff)

For larger files, Secret shows progress bars that indicate how much data has been encrypted or decrypted and even provides estimates for how much time is remaining.

Decrypting  33% ████████████                    (687 MB/2.0 GB, 304.783 MB/s) [2s:4s]

You can also use pipes to specify the password (this can be useful in scripts):

echo "mypass" | secret -e foo   # use "mypass" as password and encrypt foo

Details

Options:
   -e, --encrypt   Encrypt the source file and save to destination. If no
                   destination is specified, secret makes a new file with a
                   .secret extension. This option reads for a password.
   -d, --decrypt   Decrypt the source file and save to destination. If no
                   destination is specified, secret makes a new file without
                   the .secret extension. This option reads for a password.
   -h, --help      Display this help message
   -v, --version   Show secret's version

Installing

brew install quackduck/tap/secret # works for Linuxbrew too!

or get an executable from releases.

Uninstalling

brew uninstall quackduck/tap/secret

or on Unix,

rm $(which secret)

or just delete it from wherever you installed the binary.

Implementation details

Secret uses AES, GCM, Scrypt with N = 2^15, r = 8, p = 1 and a high quality, 32 byte random salt for deriving a key.

Owner
Ishan Goel
Part of @hackclub. Commits way too rarely. Likes math, badminton and code.
Ishan Goel
Similar Resources

An end-to-end encrypted secret messaging service.

Nimie An End-to-end encrypted Anonymous Messaging Service. In a nutshell This service basically empowers you to have short anonymous conversations wit

Dec 17, 2021

Signature-server - stores transaction blobs and uses predefined secret key to sign and verify those transactions

Signature Server Signature server stores transaction blobs and uses predefined s

Feb 14, 2022

A simple and lightweight encrypted password manager written in Go.

A simple and lightweight encrypted password manager written in Go.

Osiris Password Manager A simple and lightweight encrypted password manager written in Go

Jun 16, 2022

:key: Idiotproof golang password validation library inspired by Python's passlib

passlib for go 100% modules-free. Python's passlib is quite an amazing library. I'm not sure there's a password library in existence with more thought

Dec 19, 2022

A convenience library for generating, comparing and inspecting password hashes using the scrypt KDF in Go 🔑

simple-scrypt simple-scrypt provides a convenience wrapper around Go's existing scrypt package that makes it easier to securely derive strong keys ("h

Dec 22, 2022

 🚀 cpwd is create password tool

 🚀 cpwd is create password tool

cpwd 🚀 cpwd is create password tool Install source code git clone https://github.com/songqii/cpwd_code.git cd $GOPATH/src/cpwd_code go build brew br

Dec 29, 2021

Use the HashPassword function to generate a hashed value for the provided password

hasher Use the 'HashPassword' function to generate a hashed value for the provided password. h, err := hasher.HashPassword("password") // h == XohImNo

Nov 1, 2021

Blooming Password

Blooming Password A program that implements the NIST 800-63-3b Banned Password Check using a bloom filter built from the Have I been pwned SHA1 passwo

Oct 13, 2022

eval the strength of a password

mpasswordeval eval the strength of a password 校验密码的安全性 包含以下几点校验 常规规则校验 密码长度 (必须指定) 是否包含数字 是否包含大写字母 是否包含小写字母 是否包含特殊符号 是否通过zxcvbn 是否通过pwned 是否在常用弱密码 使用示

Nov 22, 2022
Related tags
🌰 encrypt/decrypt using ssh keys

ssh-vault ?? encrypt/decrypt using ssh private keys Documentation https://ssh-vault.com Usage $ ssh-vault -h Example: $ echo "secret" | ssh-vault -u

Dec 30, 2022
`age-plugin-yubikey` implementation, encrypt things with a Yubikey/any PIV card

This is an age plugin for PIV cards/Yubikey. Your secret is kept safe on the tamperproof hardware, while letting you use the age command-line.

Aug 10, 2022
Easily encrypt data for the Adyen payment platform

adyen Encrypt secrets for the Adyen payment platform. This library uses crypto/rand to generate cryptographically secure AES keys and nonces, and re-u

Jan 2, 2023
Sign, verify, encrypt and decrypt data with GPG in your browser.
Sign, verify, encrypt and decrypt data with GPG in your browser.

keygaen Sign, verify, encrypt and decrypt data with GPG in your browser. ⚠️ keygaen has not yet been audited! While we try to make keygaen as secure a

Nov 22, 2022
A golang library to use aes encrypt easier.

Aes a golang library to use aes encrypt easier. Install go get github.com/hanson/aes Document import import github.com/hanson/aes CBC orig := "hello

Dec 8, 2022
Xk6-crypto-x509 - A k6 extension to encrypt data with a PEM Public Key

xk6-crypto-x509 A k6 extension to encrypt data with a PEM Public Key This is a k

Jan 5, 2022
Go Encrypt! Is a simple command-line encryption and decryption application using AES-256 GCM.

Go Encrypt! Go Encrypt! is a command-line application used to easily encrypt and decrypt files with the AES-256 GCM encryption algorithm. Usage Usage

Jan 5, 2022
Card-encrypt - The encryption code necessary to enroll debit cards in the Palla API

?? Card RSA Encryption Thank you for choosing Palla! ?? In this repository you'l

Jul 15, 2022
Dekripsi dari 2_Simple-Encrypt-Prima pakai golang

Dekripsi dari 2_Simple-Encrypt-Prima pakai golang

Feb 15, 2022
docker plugin use vault as secret provider.

docker plugin vault docker secret plugin for vault provider how to build docker plugin rm -fr plugin/rootfs/.dockerenv plugin/rootfs/* docker build -

Aug 12, 2022