1 - the GMU ECE Department

advertisement
1. Input/Output
input:
- a mle widget where a user can either type or cut 'n paste plaintext
-TIME PERMITTING the ablitiy to download plaintext files lagre files
- TIME PERMITTING the ability to enter plaintext in hex notation
Output:
- a mle widget where a user can read hex code output in dump format ( 20
characters of hex followed by 10 characters of ascii).
- TIME PERMITTING a url which the user can upload the cipher text.
2. Libraries used:
- The tool will be able to use different USER specified implementation class
libraries, written both in Java and C, for the encryption and decryption phases.
3. There will be the ability to statically copy or, TIME PERMITTING, download, other
java crypto class libraries
We will start with the Sun JCE libraries and then, TIME PERMITTING, move onto
the Bouncy Castle provider and then, TIME PERMITTING, the IALK provider.
-TIME PERMITTING There will be the ability to download and implement ANSI
C libraries with other, perhaps faster then java, crypto implementations and algorithms.
4. The keys generated for a user will only last for the duration of a session the user is
responsible for cutting / pasting into their favorite editor and saving on their local
machine the results of any keys generated. TIME PERMITING the keys generated will
be saved in a database.
5. There will be two classes of users
- regular users
- TIME PERMITTING Admin users who can modify the xml files that do such
things as control the Java Crypto class and the ANSI C Crypto libraries.
6. Recent release of java (1.4.2) will be used.
7. Will use the Oracle 9.2 OC4J servlet container on a Windows XP pro
-TIME PERMITING the Tomcat J2EE servlet Container <Apache Jakarta Tomcat 5.5> r
running on a Linux server.
8. Will support the latest IE browser 6.0.2 and
- TIME PERMITING the latest Mozillia firefox browser ( 1.5)
9. CPU cycles for the JVM also seconds
The current desktop implementation looks like this:
Status: Sender
Operation:Encryt
ALGORITHM :
DES
IDEA
MARS
RC5
RC5
AES
Serpent
Triple Des
TwoFish
Operation: Public key Encrypt
ALGORITHM : RSA/OAEP-MGFI/SHA1
RSA/PKCS1V15/SHA1
RSA/RAW/SHA1
Operation: Sign
ALGORITHM :DSA/ 512 - 1024
RSA/PKCS1V15/MD2
RSA/PKCS1V15/MD5
RSA/PKCS1V15/SHA1
Operation: Hash Generate
ALGORITHM: HAVAL
MD2
MD4
MD5
PanamaHash
RIPEMD160
SHA-1
SHA-256
SHA-384
SHA-512
TIGER
Operation: Mac Generate
ALGORITHM: MD5MAC
HMAC
Status: Receiver
Operation: decrypt
ALGORITHM: Symmetric KEY Block Cipher DES IDEA
MARS RC5 RC6 AES SERPENT TRIPLE DES TWOFISH
Operation: public key decrypt
ALGORITHM: Asymmetric Cipher RSA/OAEP-MGF1/SHA-1 --pkcs1v5/No Hash---raw/ No hash
Operation: verify
ALGORITHM: DSA RSA ECRSA/PKCS1v!5/ad nauseum
Operation: hash verify
ALGORITHM: HAVAL
MD2
MD4
MD5
PanamaHash
RIPEMD160
SHA-1
SHA-256
SHA-384
SHA-512
TIGER
Operation: Mac verify
ALGORITHM: MD5MAC
HMAC
Download