From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.107.135.73 with SMTP id j70mr2532626iod.29.1437207621832; Sat, 18 Jul 2015 01:20:21 -0700 (PDT) X-Received: by 10.140.109.132 with SMTP id l4mr383625qgf.15.1437207621705; Sat, 18 Jul 2015 01:20:21 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!mx02.eternal-september.org!feeder.eternal-september.org!news.glorb.com!pg9no1794421igb.0!news-out.google.com!b31ni62qge.0!nntp.google.com!69no408758qgl.1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Sat, 18 Jul 2015 01:20:21 -0700 (PDT) Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=86.176.54.101; posting-account=pmkN8QoAAAAtIhXRUfydb0SCISnwaeyg NNTP-Posting-Host: 86.176.54.101 User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <03ee7d85-aac9-4f74-86e1-72538ece4173@googlegroups.com> Subject: ShuttlePads Cryptology - Comprehension. From: Austin Obyrne Injection-Date: Sat, 18 Jul 2015 08:20:21 +0000 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Xref: news.eternal-september.org comp.lang.ada:26866 Date: 2015-07-18T01:20:21-07:00 List-Id: Comp.Lang.Ada readers please understand why this seemingly intrusive topic = in cryptography is being posted here. Synopsis. (with sci crypt readers in mind) This post has a lot of subject matter in it that may be of interest also to= Comp.Lang.Ada readers so I am cross-posting this article from Sci Crypt ne= ws group to that group also for that reason. May I explain to those readers= over there that I am making a claim that cryptology belongs in computer sc= ience and not in mathematics as has quite wrongly and for a long time being= held to be the case by the cryptology establishment.=20 The ground work to date in my researches is programmed in Ada-95. I am saying that it was a huge misadventure to go down the road of mathemat= ics as the platform for cryptography for so long for the obvious reason tha= t cryptographers and enemy cryptanalysts supped from the same bowl so to sp= eak when they both used the same number system in mathematics i.e. the arbi= trary number system of number theory to perform encryptions of so-called se= cure information. The advent of computers intensified the error way back i= n the seventies. It is very understandable why it happened but it was a mi= stake none the less that needs to be rectified now. Alice and Eve are the participants of the mutual and hugely transparent num= ber system that has been used in cryptography for ages past - 'Alice' is th= e industry standard pseudonym in this article for the sending cryptographer= and Eve is the adversary who is always going to try and steal the secured = information by decrypting Alice's ciphertext. =20 Up to now Eve has had a huge advantage in that she always knows what number= system Alice is using and can make some very telling assumptions because o= f that - Alice on the other hand must try and camouflage her encryption tra= nsformations so well that Eve does not succeed in this - but that is an imp= ossible task for Alice - it's a bit like a tragedy in the Greek Classics by= analogy and it is all brought about by using the same numbers system. It is difficult to understand how this has gone on for so long unnoticed i= .e. cryptographers using a number system that is notoriously good at what i= s was intended to do first day but totally unsuited to cryptography because= of the indelible foot prints it leaves in the ciphertext. It should have = been stopped long ago but instead has gone on as the longest-running mistak= e in mathematics. My conjecture is that cryptographers of the day (in the = seventies) were so beguiled by the huge new computing power that they thoug= ht they could apply it to enhance their existing ciphers unbreakably withou= t realising that they were basically going down a wrong road with already d= efunct cryptography. Having made this damning indictment of the status quo it behoves me to demo= nstrate something better so here goes. =20 I have invented cryptography that I am calling "ShuttlePads". The salient = thing about this cryptography is that it is best effected in practice as a = computer program and in general, cryptanalysis by any methodical means (apa= rt from brute force) is impossible. I have written a cipher program in Ada-95 that delivers on this claim. Comment, Cryptography in mathematics using the raw traditional number system that ma= y be modelled as an arbitrary straight line that may have any direction and= any unitary periodicity is like trying to hide behind the curtains in an e= mpty room so transparent is it to cryptanalysis. It is incredible that it = has gone on for so long unnoticed. ShuttlePads. A 'Pad' by definition here is a scrambled permutation of the 95 code-point = set of ASCII i.e. the set of positive integers 32 to 126 inclusive. The po= ssibility space of all such permutations is 95!(factorial) or 10 ^148 in nu= mber - a colossal number of pads. A pad is indeed an ordinary computer array having the usual set of contiguo= us cells that have addresses that are called 'indexes' and a set of element= s that populate the cells. The cells may be called for use in any order by= the indexes for whatever purpose that may arise. Only the set of elements= ( column on RHS in the Ada package model below) are scrambled - the LHS co= lumn of integers are left as standard i.e. in the unaltered ASCII order. A 'shuttle' per se is a unique subset of this pad (to be described here). = =20 Each plaintext character for encryption in this crypto scheme has associate= d with it a unique subset of the ASCII numbers that is called a 'shuttle'. = A shuttle is so called because of the continuous reciprocating path of the= numbers by the cipher program i.e. from the entry point at Alice's end to = the terminating point at Bob's end, back and forth rather like a single li= ne railway system. Encryption Alice encrypts by forward-indexing the shuttle from the entry point at "Ent= ryNum" ( a variable name) which is the codepoint of the plaintext for immed= iate encryption in hand until after an agreed number of iterations (*ANY* p= ositive integer agreed with Bob may be used) it leaves the shuttle at a nu= mber called "ExitNum". This exit number becomes the code point of the ciph= ertext and is realised as the ASCII character it represents for public tran= sporting to Bob as ciphertext. Decryption. Bob goes back along the shuttle by entering at the codepoint value of the c= iphertext to be decrypted and reverse-indexes it back all the way along the= same line for the agreed number of iterations until Alice's original entry= point is reached. The exit number is then the same as the entry number i.= e. the same point at which Alice came in and is the code point value of the= plaintext (as message-text now) having been inductively pinpointed by symm= etric decryption. In practice the entities do not do any computations that might seem to be s= uggested here by this description - the cipher algorithm and the computer s= cience does it all. The entities just thoughtlessly submit plaintext or ci= phertext items as the case may be for processing by the cipher computer pr= ogram either as prepared read-in batch files or interactive emails in real-= time. There is no need for them to do anything but the more discerning reader wil= l want to know what happens under the bonnet (hood) inside the computer at = runtime just the same. Lemma. *The Ada programming language has a data structure package called "The Case= Statement" and this is used throughout this cryptology. The Case Statemen= t package is used here as the demonstration model. A sample Pad_165 is used as the discussion model. Let the reader please note well that the entities do not go into any of mod= ular arithmetic described next when they use the cipher. This bit of theor= y is being expounded here only to show the algebraic analysis of the encryp= tion for readers who are interested and the total impossibility at the same= time of any methodical cryptanalysis by adversaries. Example: Let the plaintext be the capital letter 'P' say which has the code-point va= lue in ASCII of 80 The Ada "Case Statement" Package being used as the discussion model:- WITH Ada.Text_IO; PACKAGE BODY Pad_165 IS ------------------------------------------------------------------------ --| Contains the body of the function "Get_Num" that is provided --| by the package called "Pad_165". --| Copyright =A9 2015 Austin O' Byrne --| Last Modified January 2015 ------------------------------------------------------------------------- FUNCTION GetNum (NumIn: Integer) RETURN Integer IS CharOut: Integer; BEGIN CASE NumIn IS WHEN 032 =3D> CharOut:=3D 117; WHEN 033 =3D> CharOut:=3D 121; WHEN 034 =3D> CharOut:=3D 108; WHEN 035 =3D> CharOut:=3D 45; WHEN 036 =3D> CharOut:=3D 41; WHEN 037 =3D> CharOut:=3D 35; WHEN 038 =3D> CharOut:=3D 82; WHEN 039 =3D> CharOut:=3D 62; WHEN 040 =3D> CharOut:=3D 100; WHEN 041 =3D> CharOut:=3D 37; WHEN 042 =3D> CharOut:=3D 44; WHEN 043 =3D> CharOut:=3D 72; WHEN 044 =3D> CharOut:=3D 113; WHEN 045 =3D> CharOut:=3D 61; WHEN 046 =3D> CharOut:=3D 110; =20 WHEN 047 =3D> CharOut:=3D 68; WHEN 048 =3D> CharOut:=3D 99; WHEN 049 =3D> CharOut:=3D 97; WHEN 050 =3D> CharOut:=3D 33; WHEN 051 =3D> CharOut:=3D 74; WHEN 052 =3D> CharOut:=3D 119; WHEN 053 =3D> CharOut:=3D 40; WHEN 054 =3D> CharOut:=3D 120; WHEN 055 =3D> CharOut:=3D 64; WHEN 056 =3D> CharOut:=3D 67; WHEN 057 =3D> CharOut:=3D 109; WHEN 058 =3D> CharOut:=3D 69; WHEN 059 =3D> CharOut:=3D 106; WHEN 060 =3D> CharOut:=3D 102; WHEN 061 =3D> CharOut:=3D 114; WHEN 062 =3D> CharOut:=3D 59; WHEN 063 =3D> CharOut:=3D 92; WHEN 064 =3D> CharOut:=3D 70; WHEN 065 =3D> CharOut:=3D 94; WHEN 066 =3D> CharOut:=3D 89; WHEN 067 =3D> CharOut:=3D 103; WHEN 068 =3D> CharOut:=3D 34; WHEN 069 =3D> CharOut:=3D 123; WHEN 070 =3D> CharOut:=3D 107; WHEN 071 =3D> CharOut:=3D 104; WHEN 072 =3D> CharOut:=3D 86; WHEN 073 =3D> CharOut:=3D 32; WHEN 074 =3D> CharOut:=3D 60; WHEN 075 =3D> CharOut:=3D 43; WHEN 076 =3D> CharOut:=3D 93; WHEN 077 =3D> CharOut:=3D 78; WHEN 078 =3D> CharOut:=3D 79; WHEN 079 =3D> CharOut:=3D 125; WHEN 080 =3D> CharOut:=3D 54; WHEN 081 =3D> CharOut:=3D 47; WHEN 082 =3D> CharOut:=3D 111; WHEN 083 =3D> CharOut:=3D 80; WHEN 084 =3D> CharOut:=3D 66; WHEN 085 =3D> CharOut:=3D 116; WHEN 086 =3D> CharOut:=3D 105; WHEN 087 =3D> CharOut:=3D 112; WHEN 088 =3D> CharOut:=3D 90; WHEN 089 =3D> CharOut:=3D 77; WHEN 090 =3D> CharOut:=3D 65; WHEN 091 =3D> CharOut:=3D 38; WHEN 092 =3D> CharOut:=3D 42; WHEN 093 =3D> CharOut:=3D 98; WHEN 094 =3D> CharOut:=3D 76; WHEN 095 =3D> CharOut:=3D 85; WHEN 096 =3D> CharOut:=3D 36; WHEN 097 =3D> CharOut:=3D 46; WHEN 098 =3D> CharOut:=3D 87; WHEN 099 =3D> CharOut:=3D 48; WHEN 100 =3D> CharOut:=3D 57; WHEN 101 =3D> CharOut:=3D 71; WHEN 102 =3D> CharOut:=3D 101; WHEN 103 =3D> CharOut:=3D 118; WHEN 104 =3D> CharOut:=3D 55; WHEN 105 =3D> CharOut:=3D 81; WHEN 106 =3D> CharOut:=3D 95; WHEN 107 =3D> CharOut:=3D 96; WHEN 108 =3D> CharOut:=3D 115 WHEN 109 =3D> CharOut:=3D 122; WHEN 110 =3D> CharOut:=3D 49; WHEN 111 =3D> CharOut:=3D 56; WHEN 112 =3D> CharOut:=3D 124; WHEN 113 =3D> CharOut:=3D 53; WHEN 114 =3D> CharOut:=3D 84; WHEN 115 =3D> CharOut:=3D 91; WHEN 116 =3D> CharOut:=3D 126; WHEN 117 =3D> CharOut:=3D 63; WHEN 118 =3D> CharOut:=3D 75; WHEN 119 =3D> CharOut:=3D 58; WHEN 120 =3D> CharOut:=3D 50; WHEN 121 =3D> CharOut:=3D 73; WHEN 122 =3D> CharOut:=3D 39; WHEN 123 =3D> CharOut:=3D 51; WHEN 124 =3D> CharOut:=3D 83; WHEN 125 =3D> CharOut:=3D 88; WHEN 126 =3D> CharOut:=3D 52; WHEN OTHERS =3D> Ada.Text_IO. Put (Item =3D> "Forget this one - out of bounds "); END CASE; RETURN CharOut; END GetNum; END Pad_165; ---------------------------- = Discussion. =20 About the shuttle demonstrated later (Please see the Index-A) - it has 70 e= lements and that is for the seed element 80 only on the LHS of this particu= lar pad. The shuttle is complete when the seed element has migrated to the= RHS , denoted here by '83 Indexes 80' from having started at the line at '= 80 Indexes 54'. A similar shuttle can be demonstrated by readers for every one of the remai= ning 94 elements in Pad_165. Pads are constructed initially by manual configuring - scrambling by hand. = A run-time scrambling process can be parameterised for the computer to do i= nterim programmed scrambling at each session if that is required ( every se= ssion might be a bit too much but it is there for periodic use if the user = decides to use it). The effect of this interim computer-driven scrambling is profound - the sma= llest change completely changes the entire shuttle.. *Warning - an accidentally repeated number during the manual construction o= f a pad can have very unwelcome effects for the knock-on reason of a propa= gated error . Comment. The reader who has any design instinct will clearly realise the enormous po= ssibilities of contrived entanglement that this has piece of computer scien= ce has for cryptography. =20 (That potential has been realised in an up-and-running cipher program to ha= nd that is written in Ada-95 - the cipher name is simply "ShuttlePads" ) The applications to cryptography to date =3D> Comment. The ciphertext item for a particular plaintext is always within the associa= ted shuttle i.e. it cannot be outside of the shuttle.- another stumbling bl= ock to cryptanalysis. Only one circuit of the shuttle has been demonstrated here but a user my g= o on and on with many more repeats of the same shuttle (for whatever design= reason that may exist apart from the obvious one of extra 'entanglement' )= in each encryption of a plaintext character. These repeats may be impleme= nted by the users applying extra 'iterations' that may be encapsulated in t= he program source code at the touch of a key. Comment. Let the number of iterations be any positive integer, N. Let 'n' be the number of elements in a particular shuttle. Then, the position of the ciphertext code point in the shuttle is (N mod (n= )) counting from the start of the shuttle for whatever use that information= may be (can't see any at the moment - just comment from an algebraic overv= iew). Cryptanalysis. A cryptanalyst would need to know, 1) The Pad(s) being used by Alice. 2) Details of the shuttle elements. 3) The number of iterations (N) being deployed by Alice. Since 2) requires knowledge of the plaintext there would be no need to pro= ceed any further if that was the case. Comments. Dry-run testing by the reader of other plaintext items in this pad should s= how similar results. Comment. *What is known to an adversary about the algorithm, It uses the ASCII code point set. The cipher text string may be scrambled after creation. What is not provided because of being key information, 1)The number of Pads being used in any cipher by the entities. 2)The number of iterations being used by the entities during encryptions. 3) Details of any Pads. 4) Details of any scrambling parameters of arrays of data. Comment. (The Ada package used here is adapted from some other use in previous priva= te work hence the anachronism 'Charout' as a variable name in the table). Tests and challenges. These, when they occur in any post from me, are not some kind of benign tab= le game with rules of fair play. They are meant to simulate a serious brea= ch of security in that a batch of ciphertext has been aggressively purloine= d by an enemy who is trying very hard to decrypt it. There are no clues fo= r the asking like "How many pads are being used" or "How many iterations pe= r pad". Alice's mobile number? --------------------------------------------------------------- Index - A - The Shuttle. (the plaintext being encrypted is capital 'P' that has code point 80 in ASC= II Then, Shuttle <=3D 80 80 Indexes 54 54 Indexes 120 120 Indexes 50 50 Indexes 33 33 Indexes 121 121 Indexes 73 73 indexes 32 32 Indexes 117 117 Indexes 63 63 Indexes 92 92 Indexes 42 42 Indexes 44 44 Indexes 113 113 Indexes 53 53 Indexes 40 40 Indexes 100 100 Indexes 57 57 Indexes 109 109 Indexes 122 122 Indexes 39 39 Indexes 62 62 Indexes 59 59 Indexes 106 106 Indexes 95 95 Indexes 85 85 Indexes 116 116 Indexes 126 126 Indexes 52 52 Indexes 119 119 Indexes 58 58 Indexes 69 69 Indexes 123 123 Indexes 51 51 Indexes 74 74 Indexes 60=20 60 Indexes 102 102 Indexes 101 101 Indexes 71 71 Indexes 104 104 Indexes 55 55 Indexes 64 64 Indexes 70 70 Indexes 107 107 Indexes 96 96 Indexes 36 36 Indexes 41 41 Indexes 37 37 Indexes 35 35 Indexes 45 45 Indexes 61=20 61 Indexes 114 114 Indexes 84 84 Indexes 66 66 Indexes 89 89 Indexes 77 77 Indexes 78 78 Indexes 79 79 Indexes 125 125 Indexes 88 88 Indexes 90 90 Indexes 65 65 Indexes 94 94 Indexes 76 76 Indexes 93 93 Indexes 98 98 Indexes 87 87 Indexes 112 112 Indexes 124 124 Indexes 83 83 Indexes 80. -------------------- Thats's it - the shuttle is complete - it has 70 elements. adacrypt