bluebook
========

A simple encrypted notepad application using Java Swing and GNU Crypto.

###Build

The repo contains a NetBeans project (last tested version: 7.1.2). GUI portions of the code are auto-generated by NetBeans' GUI Swing builder, Matisse. To build, open the project in NetBeans and click _Run > Build Project_. To build on the command line, type `ant jar` in the project's root directory. In either case, the runnable _bluebook.jar_ file and its associated _lib_ directory will be created in the project's _dist_ subdirectory.

###Run

To run, type `java -jar bluebook.jar`. AES-256 encrypted data are stored in the file _bluebook.data_, which will be created in the current directory if it does not already exist.

* In plaintext mode, click the notepad/pencil icon to enable editing. The text area's background color will change from grey to blue when something has been modified.

* To encrypt and save after editing, enter your password in the password field, click the lock button, then confirm your password when prompted. (NB: Since the password is never stored, bluebook will encrypt using any password you type twice!)

* To decrypt, enter your password and click the magnifying-glass button. 

###License

The original contents of this repository are released under the [Apache 2.0](http://www.apache.org/licenses/LICENSE-2.0) license. See the LICENSE file for details. The GNU Crypto library is distributed under the terms of the GPL (specifically, GPLv2 3(c) / GPLv3 6(c), allowing for distribution of object code); see the README*, LICENSE and COPYING files in the gnu-crypto-2.0.1-bin subdirectory for details and for instructions on obtaining source code.

###Thanks

Thanks to the [Tango Desktop Project](http://tango.freedesktop.org/Tango_Desktop_Project) for public-domain icons and to the [GNU Crypto](http://www.gnu.org/software/gnu-crypto) team.