| README or Readme Src or Readme Bin Frequently Asked Questions API index Documentation Java Cryptography Extension Specification AES Utility scripts Native Copyright and License |  | Cryptix Development Team

Cryptix TM README

## Introduction

This library contains a suite of cryptographic classes for Java. See the package documentation for information on the API, as well as the FAQ for frequently asked questions.

Cryptix implements the International Java Cryptographic Extension, a cleanroom version of the early-access release of JavaSoft's cryptographic environment. This allows cryptographic extensions -- providers -- to be plugged in by users.

The IJCE is a clean-room implementation based only on the early-access specification. There should be no legal problems with using it freely.

Cryptix also includes its own provider, including many popular cryptographic algorithms.

Version 3.1 is a stable release which reflects the early-access JCE specification. It is a maintenance release, following on from Version 3.0, but separated by 18 months or so. The next major change is a move to the JCE 1.2 specification.

## Benefits over previous releases of the Cryptix library

- RC2 bug fix.
- SHA1 bug fix

## Supported algorithms

In general, Cryptix supports many algorithms. See Supported Algorithms for the full list, and for the support level of each algorithm.

With any particular distribution, there will be variations. See the individual READMEs within the source distribution and binary distribution for the specific inclusions or exclusions.

## Bugs

Many apparent bugs are installation problems, especially see points 2, 3, 4 in the Installation instructions below.

Real bugs are documented in the FAQ, in the release READMEs for Source Distribution and Binary Distribution, and on the mail group.

Please send bug reports to users@cryptix.org

Please include

- the Cryptix version number
- the type of distribution (src, bin or possibly doc),
- your JDK version and supplier,
- the platform

and of course a description of the problem including exceptions, output and example programs as applicable.

Note that if you are not subscribed, you should do so. The users list is where you will see all announcements of new versions and bug fixes. It is also your channel to the development team.

Regardless, if you are not subscribed, send bug reports to bugs@cryptix.org and it will be sent to an appropriate Cryptix Development Team member. However any reply will be sent to users.

Bugs are the only thing that we especially look out for, other mail will probably be ignored, as the list manager has many other things to do than chase bounced posts and redirect mail.

## Mailing list

A mailing list exists for the users of this library. This list is currently generating about one post per day. It can be joined by sending

> subscribe users

in the body of a message to majordomo@cryptix.org.

See the FAQ for more detailed instructions and some variations.

## Installation

How to get Cryptix installed and tested.

1. Download and unzip the archive(s) from the mirror site nearest to you (you have probably already done this).

2. One time only, the Cryptix provider must be installed as a valid alternative to the SUN provider. This change should work for all future versions as well, and can be left in place, although it will be need to be done for every new release of the JDK (or other Java VM) that is installed on your machine.

   System | Binary Distribution | Source Distribution
   Unix Shell | CLASSPATH=<full path to Cryptix.jar> export CLASSPATH | cd src javac -d . cryptix/provider/Install.java
   DOS Batch | set CLASSPATH=<full path to Cryptix.jar> | cd src javac -d . cryptix\provider\Install.java

   Table 1: Preliminary Preparations to Running Install

   Conduct the preliminary preparations in Table 1 (you might need to adjust the detail). Then run the Install program:

             java cryptix.provider.Install

   which will add something like:

             # Added by Cryptix V3 installation program:
             security.provider.2=cryptix.provider.Cryptix

   at the end of the file `lib/security/java.security` in your JDK. If you don't do this, Java will not be able to find the additional provider, and will complain that algorithms are not available, for example:

             java.security.NoSuchProviderException: provider Cryptix is not available.

   The added line says that the 2nd priority provider will be based on the class mentioned. (The 1st priority one can be left as the Sun class). If you had already changed your `java.security` file, these priority numbers may be different.

   Note that on Unix systems, you may have to change the permissions of the `java.security` file so that it can be written to (this is only needed during installation). Consult the administrator of your JDK setup if necessary. Changing the file by hand will work just as well as running the Install program, if you prefer not to run Java as a privileged user.

3. To compile and test for the Source distribution, see the instructions in the Compilation Guide and any special instructions for this release in the Source Release README.

4. To test the binary distribution, see the instructions in the Testing Guide which also includes troubleshooting notes. Also, any special instructions for this release are in the Binary Release README.

## Copyright and License

All contents of this distribution are Copyright © 1995 - 1999 Systemics Ltd on behalf of the Cryptix Development Team. All rights reserved.

This release of Cryptix is covered by the Cryptix General License.

All contents of this distribution are
Copyright © 1995 - 1999 Systemics Ltd
on behalf of the Cryptix Development Team.
All rights reserved.
Cryptix is a trademark of Systemics Ltd.