Kingdom

Simple ruby ssl encrypting, decrypting, signing, and validation.

Installation

bundle add kingdom
gem install kingdom

Usage

require "kingdom"
# ssl key size can be changed (default 1042)
#  Kingdom.size 4096
#  Kingdom.size 512
#
# user's kingdom
@king = Kingdom['user id']
# if new, peek at the newly created key accordingly.
@king.peek { |k| @key = k }
@key = @king.peek
# set user's key
@king.key = @key
# if necessary, you can match the private key
@king.private?(@key) ? "match" : "no"
# encrypt plaintext
@encrypted = @king << "plaintext"
# decrypt encrypted text
@decrypted = @king[@encrypted] #=> "plaintext"
# sign plaintext
@signature = @king.sign(@plain)
# verify signature of plaintext
@king.sign?(@signature, @plain) #=> true