PFex JavaScript Encryption
The PFex, or Pontifex algorithm, otherwise known as the Solitaire encryption algorithm was
designed by Bruce Schneier and
featured in Neal Stephenson's Cryptonomicon.
'Solitaire gets its security from the inherent randomness in a shuffled deck of cards.
By manipulating this deck, a communicant can create a string of "random" letters that he
then combines with his message. Of course Solitaire can be simulated on a computer, but
it is designed to be implemented by hand.
...Solitaire is an output-feedback mode stream cipher. Sometimes this is called key-generator
(KG in U.S. military speak).'
This open source implementation of the algorithm is written in JavaScript, using Microsoft
JScript 5.5, and 'evolves the keystream' using XML nodes.
Within the keystream the card are represented by five letters according to their suit, followed
by their number ( 01-13, e.g. h08 = eight of hearts; c13 = king of clubs).
Keystream Letter Values:
- c : clubs
- s : spades
- d : diamonds
- h : hearts
- j : jokers
Click Here for a Demo