last updated on 20080323
[ links to the downloadables
are at the bottom of this page.]
`keylilla' is a keyless protocol
for secure exchange of files between two correspondents. In this
protocol, both the originator and the recipient use one single common
transmission of a
single file from the originator to the recipient requires four `runs'
`keylilla'. Each of these is called a `step'. The two
alternate to sequentially execute the 4 steps. The invocations
the four steps have identical syntax; the programme determines which
to perform during each step. The file-exchange is complete when
recipient completes the execution of step4.
the protocol, 3 transmissions
of intermediate files occur between the two correspondents. In
to intercept the message, the eavesdropping agency will have to
all three transmissions. AND they'll also need to know the
easy for each pair-of-correspondents
to keep changing the algorythm. This is done through 8 parameters in
source-code: byte[addtag], bytes nn[1-6], and word[seema].)
is not a `public
key' procedure. Nor is it a `secret key' procedure. The two
correspondents do not share any pre-arranged secret key. Also, no
keys are exchanged during the entire protocol. At each
the programme creates a (local) random key, to be used during the two
performed by that correspondent. The local key is automatically
when its owner completes her/his two steps.
is fully self-contained;
i.e. it contains its own privacy schemes, and does not need to `trust'
anyone about the un-breakability of their high-math algorythms.
local keys change with every execution of the `keylilla' protocol.
turns out to be
not quite a modification of Shamir's three-pass protocol. There
scheme here. As expected, this version will fall to a
attack (iff the attacker also has access to the particular algorythm
programmes, such as BYOP, have to face the problem of a secure
of keys. Users of BYOP, for example, will need to securely
a BYOP script. That bash-script will be their `key'.
can be useful for a secure exchange of BYOP
scripts. (BYOP -- Build Your Own Privacy -- is also licensed under the
GPL. It is available for download here).
`messagefile' being exchanged
via `keylilla' can also be a simple ascii text file, a binary, or any
kind of file. There is no restriction on the type of the
be said that `keylilla'
can be a part of a dispersed, low-intensity, 'cottage-industry' of
`keylilla' is licensed to
you under the GNU General Public Licence, GPL. The source-code is
provided in the file
The following tabulation
describes how one execution of the protocol might progress:
has an important file, `m'. She wishes to securely send `m'
to Bashir, the recipient.
outfile name @
Create messagefile 'm'
Send outfile to Bashir
Send outfile to Ayesha
Send outfile to Bashir
'm' received; end of
[`rndmj.xtj', j=1,2,3] are internally generated by the programme.
must be invoked from the directory keylilla/ , and all 4 invocations
$ ./keylilla infilename
The Name of the Programme
The name `keylilla' was formed
from a short sentence in a highly developed (and rich) regional
The sentence has two words: `keyli' and `illa'. These could be
into the English words `lock' and `none'. The name can also be
upon as a bilingual pun -- meaning `no key'.
-- Chanda Hedvikar-Hedvikar
Download : download
version 0.6g for gnu / linux
and the 84's
download version 0.6d for dos
compatible. However, the dos
version is limited to messagefile
sizes of about 60 kBytes.