JWallet

A program to keep private data safe
Download

JWallet Ranking & Summary

Advertisement

  • Rating:
  • License:
  • GPL
  • Publisher Name:
  • Dan Fulea
  • Operating Systems:
  • Windows All
  • File Size:
  • 77 KB

JWallet Tags


JWallet Description

The JWallet application was developed to be a program to keep private data safe. Just type your data and choose to save it! Program encrypts the data and only user password can reveal it! User password is transformed into an valid key for the encryption / decryption algorithm. The application encryption / decryption algorithm is AES / CBC / PKCS5Padding and it is considered the best available! It uses a default 256 bits key, which is strong enough for any purpose. This 256 bits key is generated by using a message digest SHA-256 algorithm on user input password! This application uses the advanced SecureRandom class for random number generator. For training purpose only (can be considered redundant), it is used an 8 bytes salt and it is performed 1000 iterations in order to derive the 'fingerprints' of initial user password using the message digest algorithm. However, initial 'fingerprints' (without using the salt and iterations) should be enough because: THE ENCRYPTION KEY IS NEVER STORED BY THIS APPLICATIONS! IT EXISTS ONLY IN THE MIND OF THE USER AND IT IS DERIVED AT RUNTIME FROM THE USER PASSWORD! THEREFORE ANY ATTEMPT OF REVERSE ENGINEERING THE ENCRYPTION KEY WILL FAIL! Default JRE provided by Sun Java does not work with 256 bits AES encryption key, so if user plans to use this JRE, he can only use the MD5 message digest algorithms which generates an 128 bits AES encryption key. In order to run the SHA-256 hash algorithm which generates an 256 bits AES encryption key, the user must download unlimited encryprion policy jars and override the default jars in JAVA_HOME folder. A weak password can easily be broken! Best scenario: use a strong password (10 characters minimum) and 256 bits AES encryption key (or 128 bits if standard JRE is installed) which means using SHA-256 algorithm (or MD5 if standard JRE is installed) for message digest.


JWallet Related Software