Skip to content

cretz/rwtxt-crypt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

rwtxt-crypt

rwtxt-crypt is a version of the rwtxt CMS that adds SQLite encryption and Tor support.

Download the Latest Release

It is built as a single, self-contained executable that can be downloaded via releases. For Windows, just run the executable (you may have to click past a Windows warning). For Linux, chmod +x the file to make it executable before running. For macOS there is not a precompiled version yet so please see the build instructions.

Caveats

  • This is an early proof of concept. Bugs/feedback welcome
  • Only run the downloaded/built executable on your computer if you trust it and me
  • There are no guarantees about the security of the SQLite DB or the Tor implementation/usage

Usage

Here is the output of running the executable with --help:

Usage of rwtxt-crypt.exe:
  -db string
        name of the database (default "rwtxt-crypt.db")
  -dbPass string
        string password to encrypt DB, default dbPassFile or prompt
  -dbPassFile string
        file with string password to encrypt DB, default dbPass or prompt
  -debug
        debug mode
  -onionKeyFile string
        file to load/save PEM onion private key to, default new each time
  -torDataDir string
        path to tor data dir, default temp dir in local folder deleted on close
  -torPath string
        path to tor executable, default use embedded version

Simply executing with no parameters will prompt for a password for the DB, run with the embedded Tor version, create/use the DB in the current directory, create the Tor data directory in the current directory (and delete on close), and create a new v3 onion service address each time.

NOTE: Creating an onion service can take a minute.

Building

To build:

  • Make a note of GOPATH env var (manually set or the default in more recent Go versions as ~/go) and make sure its bin dir is on the PATH
  • Fetch it - run go get github.com/cretz/rwtxt-crypt (this will give rwtxt errors, that's ok)
  • Make rwtxt - navigate to $GOPATH/src/github.com/schollz/rwtxt and run make (must do in MinGW on Windows)
  • Remove explicit sqlite dep - navigate to $GOPATH/src/github.com/schollz/sqlite3dump and remove or comment out the _ "github.com/mattn/go-sqlite3" line (see this issue)
  • Build tor statically - navigate to $GOPATH/src/github.com/cretz/tor-static, checkout the tor-0.3.5.x branch, and follow the instructions in the README to build a statically-linkable version of Tor.
  • Build the executable - navigate to $GOPATH/src/github.com/cretz/rwtxt-crypt and run go build

About

The minimalist rwtxt CMS using encrypted SQLite and Tor

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages