From: adacrypt on

This cryptography is based entirely on a piece of applied modular
arithmetic. The recent reference by me to the Vigenere square being
the inspiration for this cryptography is a personal anecdotal
connection that should be forgotten now, there is no mathematical or
scientific reason for continuing it any other connection in the
future.

The presentation of this cipher algorithm stakes out the bounds of the
operators that may be used on a configured set of data that enables
encryption transformations to be done on plaintext data. These
transformations are selectively reversible by the entities alone due
to the fact of they alone being privy to trapdoor information that
makes it possible to decrypt the cipher text that represents a
message.

I want to stress that the constants in the algorithm are peculiar to
the dedicated set of ASCII code points and will change in other
languages that have a different representation and a different set of
code points.

Recapping on ASCII.
Highest code point (in terms of information character representation)
= 126
Lowest code point = 32.

Lowest useful value of N to catch all pairings of (Plaintext + Key) =
126 +1 = 127

Lower bound of the range of N = (X + 127)
Upper bound of N = 2(X +32)

Minimum useful value that X may take is the value of X that produces a
range of just 1 only modulus ‘N’.

So, “ 2(X +32) – (X +127) = 0 => 1 (NB. 0 => 1 when both ends are
inclusive)

The lowest value of X (minimum X) is the root of this equation (the
value of X that makes it equal to 0).

2X + 64 –X –127 = 0
X – 63 = 0
X = 63.

Again, to consolidate,

The range of N’s that may be used in the encryption algorithm,

[(Plaintext + X) + ( Key + X)] (modulo N) = a residue (modulo N) is,

Lower Bound = (X +127)
Upper Bound = 2(X + 32) => X >= 63

To configure a specific key length (key size),

Suppose a key length of 12500 is needed so as to be able to encrypt
messages of that length in one go,

Increment X by that number on top of the minimum X (63) + ASCII cipher
constants of 127 and 32.

Then,

Lower bound of N = (63 +127 + 12500) = 12690
Upper bound = 2 (63 + 32 + 12500) = 25190
Message length < = Key length = 25190 – 12690 = 12500
Any message less than and within 12500 is automatically covered by
this same key size of course.

These parameters must be calculated for other languages in Unicode but
that is a small matter when you consider the power of being able to
encrypt all of the Unicode languages on a home computer or even a hand
held computer.

I want to do that next using the Balinese Language as an example but
at another time so as not to overpower readers.

Digressing for a moment, it is hard to detach from it all and to see
ASCII simply as coming under the general umbrella of Unicode. I
envisage ASCII always remaining ‘ASCII’ as we now know it in the
Western world. I cannot see western keyboard operatives being able to
handle Eastern languages directly without some preparation of the
plaintext by an expert in that language. I envisage a state whereby a
Unicode message for encryption will be presented to the Western
keyboard operator as a string of integer code points when it can then
be treated by normal keying methods for subsequent encryption by Alice
in New York or Alice in London. – I am proceeding here on that premise
- Anybody on this? - adacrypt
From: WTShaw on
On Dec 30 2009, 6:47 am, adacrypt <austin.oby...(a)hotmail.com> wrote:
at another time so as not to overpower readers.
>
> Digressing for a moment, it is hard to detach from it all and to see
> ASCII simply as coming under the general umbrella of Unicode.  I
> envisage ASCII always remaining ‘ASCII’ as we now know it in the
> Western world.

To allow for character sets even larger than we are accustomed to
makes the same mistake as trying to use binary ASCII values in
encryption, there is just too much dead space. It's like looking for
whether a key is like another key as you can visually see whether a
particular tumbler position has any cut at all. An effective number
of even fewer likely unused characters also reduces dead space with
different sized sets within limits, strength of particular set sizes
being a factor.

> I cannot see western keyboard operatives being able to
> handle Eastern languages directly without some preparation of the
> plaintext by an expert in that language.  I envisage a state whereby a
> Unicode message for encryption will be presented to the Western
> keyboard operator as a string of integer code points when it can then
> be treated by normal keying methods for subsequent encryption by Alice
> in New York or Alice in London. – I am proceeding here on that premise
> - Anybody on this? - adacrypt

Preserve what they have but many should also respect our sophisticated
culture. Learn a language like ours, simple reasonable compatible
character set, as the burden of universal communications in not merely
on us.

Automatic translation is an oxymoron, or best acting like a
hyperventilated dullard. And, something is always lost in a
translation as well as even communication between native speakers of
any language. There are limits and always will be between those with
different values and identities. Individuals differ, and, so be it.