As it was announced by Iris Gastañaga we are contributing the packages javax.crypto and java.math on behalf of ITC (Córdoba Technolgy Institute). We have been developing this code for several months and we believe it is a valid contribution. Our code not only implements the full 5.0 API but also uses 5.0 features and syntax. As 5.0 is a stated goal of Harmony we hope that a 5.0 VM will be available soon. We are also contributing a set of test cases for both packages.
Below there is a short description of the contribution. We will soon contribute also an implementation of java.rmi. *Package name* **javax.crypto * Package Description* This is a clean room implementation of the package javax.crypto as specified in the JDK 5.0. It requires the existence of other java packages, in particular java.security and java.util. It can be used to replace jce.jar in the jdk. *Current Status* The package is almost fully implemented. It does not implement the ExemptionMechanism logic. *Testing * Unit and integration tests (and their documentation) are provided with the code.* * *Implementation Notes The code uses heavily J2SE 5.0 features, such as generics, so it requires 5.0 VM and libraries (for instance java.security). It has been tested against Sun SDK, removing the original jce.jar and replacing it by ours. * *Package name* **java.math *Package Description* This is a clean room implementation of the package java.math as specified in JDK 5.0. *Current Status* The package is fully implemented. Some methods are fairly optimized (for example multiplication combines paper-and-pencil and Karatsuba algorithms). *Testing * Unit and integration tests (and their documentation) are provided with the code.* * *Implementation Notes The internal representation for BigInteger is two-complement (this is different from the sign-magnitude implementation already donated to Harmony). BigDecimal uses only BigInteger's public interface and implements the full 5.0 specification (which has about twice as many methods as in 1.4). The code uses J2SE 5.0 features, so it requires 5.0 VM. It has been tested against Sun SDK. * ** -- Miguel Montes
