elocrypt: Generate easy-to-remember, hard-to-guess passwords

[ cryptography, library, program ] [ Propose Tags ]

Generates pronounceable, hard-to-guess passwords--as hard as Vince Carter's knee cartilage is.


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.3.0, 0.3.1, 0.3.2, 0.4.0, 0.4.1, 0.6.0, 1.0.0, 2.0.0, 2.0.1, 2.1.0
Dependencies base (>=4.7 && <5), elocrypt, MonadRandom, random [details]
License LicenseRef-OtherLicense
Copyright Copyright: (c) 2017 Sean Gillespie
Author Sean Gillespie
Maintainer sean@mistersg.net
Category Cryptography
Home page https://www.github.com/sgillespie/elocrypt
Source repo head: git clone https://github.com/sgillespie/elocrypt.git
this: git clone https://github.com/sgillespie/elocrypt.git(tag v1.0.0)
Uploaded by sgillespie at 2017-11-27T02:44:46Z
Distributions
Reverse Dependencies 1 direct, 1 indirect [details]
Executables elocrypt
Downloads 7130 total (28 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2017-11-27 [all 1 reports]

Readme for elocrypt-2.0.0

[back to package description]

Elocrypt

Build Status

Elocrypt generates pronounceable, easy-to-remember, hard-to-guess passwords... as hard as Vince Carter's knee cartilage is. Elocrypt includes a Haskell library and program.

Prerequisites

In order to build or install you will need

  • GHC (tested on 8.0)
  • cabal-install (tested on 1.24)

Installing

Elocrypt is on Hackage. Installation is as easy as:

cabal install elocrypt

Binaries are also available:

Running

Generate a list passwords:

elocrypt [length]

You can also generate random phrases (1 per line):

elocrypt --passphrases [min-length] [max-length]

Obtaining the source

Elocrypt sources can be found

Building

In order to build or install you will need

Build elocrypt:

stack setup
stack build

Then, install (if desired):

stack install

API Documentation

The full API documentation is on hackage @ https://hackage.haskell.org/package/elocrypt/docs. To build the documentation yourself, run

stack haddock

API Examples

You can use elocrypt to generate words in any Haskell code, so long as you have installed elocrypt. Generate a word by using Data.Elocrypt.newPassword

import Data.Elocrypt
...
-- Generate a word of length 10
fooGen :: IO String
fooGen = newPassword 10 `liftM` getStdGen

Alternatively, you can use Data.Elocrypt.mkPassword if you want to complete control of the random monad

import Data.Elocrypt
import Control.Monad.Random
...
-- Generate a word of length 10
fooGen' :: IO String
fooGen' = evalRand (mkPassword 10) `liftM` getStdGen

Authors

Sean Gillespie sean@mistersg.net

Credits

Thanks to Tom Van Vleck for creating a 3rd order english approximation password generator. Elocrypt is based on his javascript generator @ http://www.multicians.org/thvv/gpw-js.html

Copying

You can use this source for any reason, provided that you:

Please see LICENSE for all details