Skip to content

frozen-sky/CryptoForm

 
 

Repository files navigation

CryptoForm

A product of 451Labs by Out of Bounds Technology.

Client-side PGP/Mime e-mail form Users compose e-mail in the browsers and select the addressee from a dropdown. CryptoForm supports email attachments using the Mime format and implements the PGP/Mime standard described in RFC 3156.

E-mail adddresses of addressees are never exposed to the "world". CryptoForm pulls public keys and accompanying metadata from a server. This server also transfers (using SMTP) the encrypted email content on the client's behalf. CryptoForm currently support the API exposed by keyserv. Support for HKP key servers and Keybase is on the roadmap.

CryptoForm relies on OpenPGP.js for cryptography. All cryptographic operations take place on the client (in the browser). Neither the e-mail body nor any attachments ever leave the user's computer unencrypted.


Install

Tested on the following version

# Clone project
npm install
npm install elm-github-install -g
cd app/elm
elm-install
cd ../..
npm run start

Since the outofboundstech/file-reader is on github, we must install it using elm-github-install. But the elm-package.json is located in app/elm. So any attempt to run elm-install in the project root will result in error during npm run start: Your .elm/packages directory is corrupted


No License

I'm still working out which license is the best fit for CryptoForm. Do you have advice for me on how to choose a license? Please get in touch. In the meantime, read up on the 'no license' license.


Libraries

CryptoForm relies on (and includes) the following libraries:

Javascript

  • OpenPGP.js OpenPGP JavaScript Implementation
  • base64.js Base64 encoding/decoding in pure JS
  • elm-mimetype Library to model common mime types in elm
  • file-reader Elm native bindings for HTML5 FileReader API
  • elm A delightful language for reliable webapps

CSS

  • Skeleton A dead simple, responsive boilerplate

CryptoForm © Out of Bounds – Exceptional Technology 2017.

About

Client-side PGP/Mime e-mail form

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 75.7%
  • Elm 19.6%
  • HTML 4.7%