Greetings readers, this is Elettra first release.
I wish you should find this code usefull and improvement, comment and flame can
be sent to julia@winstonsmith.info, using this public key:
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.7 (GNU/Linux)
mQGiBEdqIL0RBAChcjI1XSCY6uBj8tt822t3QAIrbUgIL1f+fknclPHPQqjyv+DI
H793WaP2TlJ0mPNJqK2D8pyhO1l8MMzZIzNq+86zblogLklYUo68LbznUPJYNl0f
5Idg6DoNHO7JyXxU1aKq15sLD92izRX5g6Jx7V14DTP/gIB+vZjtcykBZwCgmqC1
YZv/KKVtoSyX/QR0YdJk5ecEAJPurJEm82wshma7RxuOL5UDBhRR4WUBquYa5L35
rTeswSZ/5MFAX4G3VWNb28RZMcDKrd2XIbPA/NI8uVNPEmtmdrF4bA7IGYYPmwuz
SsL3MN0YcDdh8slrqNBuBFNsH95xm4FQKWc+rPPYvZVSsLBosJz9OXPJJYVh61X8
KDSzA/9bovS6D8e02en5t3XScUSBdU4GCHqqgRLpbfTECSXm2KhA2TtnSQ84lqCL
eKs4i955xmF6vQ3bZIATpohSPBz/CdvVPcwNIffVxAwX4bDJDdkXkvd2prWibBJ4
VSzcNVfyvRgYGbrTjq7Aok1f3d/GCQz0oMzGLhs8ZY0xkRNJD7Q0anVsaWEgKGFu
b255bW91cyBpZGVudGl0eSkgPGp1bGlhQHdpbnN0b25zbWl0aC5pbmZvPohgBBMR
AgAgBQJHaiC9AhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQ83466PEEGF9S
BgCeIrFkSGSUlOYhXZCNcGmmMrB1h1wAnRUL6+VOQ0SxbYTnTpDIMgGwA3byuQL1
BEdqIL0QC6C3T5hpVjgCTHUjbhu/gql/hHQV0u6av5fDGAYZmQPcDRYb5FP76+Kp
6DDLsSDo95DG1STO8QjRNrrz8tOftC6+F4kMxh1KvcyWEeam8GxYMytpQwDN2Nqr
J3tV9Q24Nv4wUd7vHNqBlcJKeWyQGxBzebelBgAOyMb4YsIGEZJgR4F+o1R2jQYW
rcNPp11aJtxyl2dApaHulzEjMCIDNKnJpbi4lLuqGVaht5NMypxsRnclb1Nw87VY
jrhyJNGT4tojm7ERzJjNLUenTgda788ivWIse68t5WHh7BIGMyNiMKMGjI2R81ei
c+M+O/wL59eh6EGv7V3nZz6qB07f8i3fsNgUF1YFrB2nHtEQTWvb62oGZG+OP5Fp
tGyNhH3HN1VhBRg0eGSEZCGFHZU2chGyOPMqynfsf7o8dkNi8+Ydd0eIn3TlH6of
Xy/TqlQAWS5BUhBX7CEpiO1XPh07o2FLyRPQiElSJ3inCh4sOde/vuFp7RMAAwYL
n3i13almOtHB4qz0J4h/J8TgDaHYmAidYRpr9m6LpKysomHNrtj2U0Am2DmjI25H
LvkOECX9x9yp98WGlzOllZA++YnCSpuG4b03VsLPqmD/r/VdcXrli5cs+UB7O8L2
2P19L+RO89+SieDEKHrKbfkkM3w4OJ+5/mfxejNfoRh0/GBJgoWGj+h/dChmvE7O
alCFDJ5q8Q1QyHMNbMuZxfub+TnpINeHkwiMeaFZRcmaBtjb7T3J+EPf0dUtxXBQ
0F8RzypLEI8FLV/SU+pkynCkp2o6wnRVs8Lms6xci1WE1asr+2Xp9vLN4ppIfo6x
reYKegPcFAw21UuBx6c7OKzEwRFB0OUSGS1Mdzt0ekq2j6Axk5WVShsDcdW+SI5N
fKKqSCWSQE9dbekHUXpBkkbI85uJ2F6QOtMFEJGlw5XTAvJyuamVqXyq6SE5AyVL
bQ9bfCtizrCOn3h547m7nm6RQ+3JfnCVjJqB9eFtP6WFIsDKKIhJBBgRAgAJBQJH
aiC9AhsMAAoJEPN+OujxBBhf16YAnRJLQTTY6JiJGDJG4f2JJFUxereAAJ9hXs0P
/yO+HtkGHnfSuwoaRvSQdw==
=+vKf
-----END PGP PUBLIC KEY BLOCK-----
pub 1024D/F104185F 2007-12-20
Key fingerprint = 93DC 23EE C779 236A 1E30 BDDB F37E 3AE8 F104 185F
uid julia (anonymous identity)
sub 2976g/2481A545 2007-12-20
Julia is an anonymous collective identity used to disclose information and
software aimed at protecting human rights on the network.
We focus our work showing the lack of technical requirements in the legislation
used to regulate Internet.
Julia is the pratical demonstration that the real-security, for information and
people, is where human rights are protected and not sacrificed and it won't ever
be achieved violating the own privacy.
Some security experts can demonstrate that the tools needed to counteract
pedophilia, terrorism and other generic and common crimes in the internet era, are:
techno control for mass interception, trusted computing, user profiling, censorship,
passwords extortion.
Julia will show you a different way to fight crimes operating throughtout open source
technology world.
The hackers universe has many ways to evading those privacy-threads, but it hasn't
any effect in the real-world; For this reason, Julia discloses such informations and
softwares for everyday users, not only for the "underground". This requires kinds of
communication and organization efforts more complex than those commonly required to
realize a privacy-project.
WHAT'S ELETTRA ?
Elettra is a software providing plausible deniable cryptography. It supports
a dynamic number of files and requires a password for each file.
when you need to decrypt a file, the password is able to find in the
encrypted archive the file related to it.
the security measure is in the protection of the number of files encrypted
in the archive, because the algorithm is thought to give a plausible ammission
that the data unencrypted is simple random data, and only one file is
encrypted in it.
for more information about elettra and julia, http://www.phrack.org the
issue #65 had an article about elettra.
WHERE ARE ELETTRA ?
Internet (https) https://www.winstonsmith.info/julia/elettra
Tor (http) http://5zaspldty2calvcq.onion/julia/elettra
anyway, https://www.winstonsmith.info can be not used for further projects,
the only way for verify our source is checking the public key signature.
REQUIREMENTS:
aptitude install cmake libmhash-dev libmcrypt-dev zlib1g-dev
or, get the libraries at:
http://sourceforge.net/projects/mcrypt
http://sourceforge.net/projects/mhash
http://www.zlib.net/
http://www.cmake.org/HTML/Index.html
HOW TO COMPILE:
user@linz:~/elettra/src$ mkdir build
user@linz:~/elettra/src$ cd build/
user@linz:~/elettra/src/build$ cmake ..
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Check size of void*
-- Check size of void* - done
-- Configuring done
-- Generating done
-- Build files have been written to: /home/user/elettra/src/build
user@linz:~/elettra/src/build$ make
Scanning dependencies of target elettra
[ 16%] Building C object CMakeFiles/elettra.dir/elettra.o
[ 33%] Building C object CMakeFiles/elettra.dir/elettra_hidden.o
[ 50%] Building C object CMakeFiles/elettra.dir/elettra_seek.o
[ 66%] Building C object CMakeFiles/elettra.dir/elettra_utils.o
[ 83%] Building C object CMakeFiles/elettra.dir/elettra_zlib.o
[100%] Building C object CMakeFiles/elettra.dir/elettra_check.o
Linking C executable elettra
[100%] Built target elettra
user@linz:~/elettra/src/build$
HOW TO USE:
Elettra has five command: encrypt, decrypt, checkpass, help and example.
is executed with: elettra command [args]
we want to encrypt file /tmp/ls-manpage and /tmp/ps-manpage.
two file = two password we use "weirdness" and "foxnewsshower",
the order link:
ls-manpage (weirdness)
ps-manpage (foxnewsshower)
$ ./elettra encrypt /dev/shm/out 15% /tmp/ls-manpage::weirdness /tmp/ps-manpage::foxnewsshower
the size of our source file are:
$ ls -l /tmp/ls-manpage /tmp/ps-manpage
-rw-r--r-- 1 user user 7132 Jan 8 05:57 /tmp/ls-manpage
-rw-r--r-- 1 user user 36287 Jan 8 05:57 /tmp/ps-manpage
the command line specifies 15% of random paddinig. Required args for the
"encrypt" command, are the output file, the source files and the passwords
If passwords are not inserted via command line, they are prompted
interactively.
before the encryption gzip compression is used, the output file is:
$ ls -l /dev/shm/out
-rw-r--r-- 1 user user 42615 Jan 8 06:13 /dev/shm/out
now we have an encrypted archive. the elettra decryption routine takes a
password and, optionally, a destination directory:
$ ./elettra decrypt /dev/shm/out weirdness /dev/shm/
$ ls -l /dev/shm/
-rw-r--r-- 1 user user 7132 Jan 8 06:32 ls-manpage
-rw-r--r-- 1 user user 42615 Jan 8 06:13 out
if you want to check your passwords, use the command "checkpass":
./elettra checkpass actresss weirdness shoeless
password(s) combinations work ok, with password block of 2304 bytes, use it.
if checkpass or encrypt command receive a bad password sequence, notice
to the users.
HACKING:
Elettra actually randomize the creation time (ctime) of generated file.
If you want remove this feature, you need to recompile elettra
removing the #define at line 240 in elettra.c
THANKS TO:
All people contributing in julia identity!

for people without PGP/GPG: you can verify checksum sha256, sha1, md5: