Because sometimes they are after you.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Quickie Install

npm -g install Haraka
haraka -i haraka-server-config
cd ./haraka-server-config
npm install snoj/haraka-secwrap

#enable secwrap
echo haraka-secwrap >> config/plugins

#create and edit config/secwrap. Urls can be whatever you want them to be. (Uses lodash _.template().)
  "userlookup": "http://localhost:8025/from/${ mail_from }/to/${ rcpt_to }"
  ,"storage": "http://localhost:8025/mailbox/${ mailbox }"
  ,"local": { //for self contained setups
    "": {
      "key": "====KEY==== blahblahblahblahblahblah =====END KEY===="
      ,"forward": ""
      ,"hidesender": true
    ,"": {
      "key": "====KEY==== blahblahblahblahblahblah =====END KEY===="
      ,"forward": ""
      ,"hidesender": true

#create http(s) server using express or restify to handle urls from config/secwrap

haraka -c .

REST Server

User Lookup, must return status code 200

  "key": "user's public PGP/GPG key",
  "mailbox": "optional. if set, secwrap will use the storage url. can be any sort of identifying string.",
  "forward": "optional. if set, encrypted mail will be sent to this address."
  "hidesender": "optional. truthy. hides the address the original email was sent from."


JSON sent to the REST server

  "mailbox": "id given by the user lookup data"
  "mail_from": "either the actual sender or gibberish depending on hidesender"
  "rcpt_to": "the email address of the recipient"
  "message": "encrypted message"
  "keythumbprint": "Thumbprint of the key used to encrypt the message"

Other interesting stuff

Mailvelope Chrome/Firefox addon to encrypt/decrypt text in the browser.