A tool for generating keys using a CSPRNG.
PHP
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
src/Command Initial commit Dec 14, 2015
tests Initial commit Dec 14, 2015
.gitignore Initial commit Dec 14, 2015
.scrutinizer.yml Trimmed scrutinizer config Dec 14, 2015
.travis.yml Initial commit Dec 14, 2015
LICENSE Initial commit Dec 14, 2015
README.md Update README.md Jan 22, 2016
composer.json Update composer.json Apr 24, 2017
cryptokey Initial commit Dec 14, 2015
phpunit.xml.dist Initial commit Dec 14, 2015

README.md

CryptoKey

Latest Stable Version Build Status Code Coverage Scrutinizer Code Quality Total Downloads License

A tool for generating keys using a CSPRNG.

If you have OpenSSL installed read below, as you probably do not need to install this tool.

By AndrewCarterUK (Twitter)

How To Install

composer global require andrewcarteruk/cryptokey

Make sure you have added your global composer binary directory to the PATH in your ~/.bash_profile (or ~/.bashrc) file:

export PATH=~/.composer/vendor/bin:$PATH

This blog explains the process of global composer installs in more detail.

Usage

$ cryptokey generate
bGS6lzFqvvSQ8ALbOxatm7/Vk7mLQyzqaS34Q4oR1ew=

$ cryptokey generate --format=hex
531a5187f08846a40ab6a9f9c651831bdd188e84b026804039773ef0aa51e500

$ cryptokey generate --entropy=64
ladkecOLF7RvMl/J5EGr/SMz5InfSyX+DA9CvecE/OiVFndnMqgvfLofNGO6/Gc5P1Io+eHYhcJphIRHCB9Kpg==

You can use the --format option to switch between base64 (default) and hex output.

You can use the --entropy option to select the number of bytes of entropy. The default is 32 bytes (256 bits).

An Alternative: OpenSSL

If you have OpenSSL installed, you may find that the command(s) below are sufficient for your needs:

$ openssl rand -base64 32
3cDyOf7I6P4sU+ImVmIJW8k/IzGyoCACaJi+PbVY+I8=

$ openssl rand -hex 32
78a59462d4264e29be184226e7a46de0df96f97682963977fe61970b632d9faa

The OpenSSL command has -base64 and -hex options for switching between base64 and hex output.

The final argument is the number of bytes of entropy to draw. The number of bits of entropy is this number multiplied by 8.