diff --git a/README.md b/README.md index 353e9ad..39a0cfe 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ position in the second keyed alphabet, DRACONDI achieves the following improvements: - the initial offset is now affecting the rest of the ciphertext; -- the keyspace size has been increased to about 225 bits; +- the keyspace size has been increased to about 176 bits; - repeated plaintext digraphs no longer encrypt into the same ciphertext; - repeated letters in the keyphrase now affect the keyed alphabet; - the ciphertext is (optionally) divided into the groups of 5 that no longer @@ -40,6 +40,22 @@ The entire DRACONDI cipher can be described in three sections: key preparation, encryption and decryption. Additionally, all key and message material which is alphabetical must first undergo the sanitization part (i.e. lowercasing it and removing all non-alphabetical characters not belonging to the `[a-z]` range). +Unlike the original CONDI, all insignificant whitespace is to be removed in the +plaintext message, and all significant whitespace is to be replaced with any +rarely used letter, like `x`, `z` or `q`. + +### Numeric information encoding (optional) + +It is recommended, although not required (even for software implementations), +that the numeric digits from 0 to 9 are encoded with `a` to `j` respectively +and the numbers are framed within `xn` and `nx` digraphs. If the literal +spelling of a number is shorter, it is preferred to this representation. +For example, while 2 can be encoded as `xncnx`, the word `two` is just shorter +and is preferred. However, 13 is preferred to be encoded as `xnbdnx`, as the +word `thirteen` already is longer than this encoding. In case the length is +the same, the general recommendation is not to use any encoding. So, as an +example, the number 11 is just written as `eleven` as opposed to `xnbbnx` that +has the same 6-character length. Same for 20: `twenty` instead of `xncanx`. ### Key preparation