Home >> All >> cryptix >> jce >> provider >> [ cipher Javadoc ] |

**•**

**cryptix.jce.provider.cipher**: Javadoc index of package cryptix.jce.provider.cipher.

**Package Samples:**

**•**cryptix.jce.provider.cipher

**Classes:**

**•**CAST5: CAST5 (a.k.a. CAST-128) in Java, as per RFC 2144. The author, Carlisle Adams (the CA in CAST, ST standing for Stafford Tavares) describes CAST5 as: "...a DES-like Substitution-Permutation Network (SPN) cryptosystem which appears to have good resistance to differential cryptanalysis, linear cryptanalysis, and related-key cryptanalysis. This cipher also possesses a number of other desirable cryptographic properties, including avalanche, Strict Avalanche Criterion (SAC), Bit Independence Criterion (BIC), no complementation property, and an absence of weak and semi-weak keys." CAST5 is a symmetric ...

**•**ModeOpenpgpCFB: This mode implements the special CFB mode used by the OpenPGP standard (RFC 2440) Due to the design of the JCE, it is not completely the OpenPGP CFB mode though. OpenPGP specifies that blocksize+2 bytes need to be prefixed to the encrypted data, consisting of blocksize bytes of random data and then repeating the last two bytes of this random data to make it possible to check whether we're decrypting with the right key. Now the question is, where should this data be added and thus also where should this check be done. Inside this mode object would be the obvious choice, such that applications need ...

**•**Blowfish: This class implements the Blowfish algorithm (standard, 16 round version). Blowfish is a symmetric block cipher, with a 64-bit blocksize and a variable key length (between 40 and 448 bits inclusive, in 8-bit increments). References: Bruce Schneier, "Section 14.3 Blowfish," Applied Cryptography, 2nd edition, John Wiley & Sons, 1996 Bruce Schneier, Description of a New Variable-Length Key, 64-Bit Cipher (Blowfish) , Fast Software Encryption Cambridge Security Workshop Proceedings, Springer-Verlag, 1004, pp 191-204. http://www.counterpane.com/blowfish.html The implementation is heavily optimized ...

**•**DES: DES is a block cipher with an 8 byte block size. The key length is 8 bytes, but only 56 bits are used as the parity bit in each byte is ignored. This algorithm has been seriously analysed over the last 30 years, and no significant weaknesses have been reported. Its only known flaw is that the key length of 56 bits makes it relatively easy to brute-force it. To overcome this near-fatal flaw, it is recommended that DES be used in Triple DES mode. The JCA algorithm name for the recommended form of Triple DES is "DES-EDE3". DES was invented by IBM and first released in 1976. The algorithm is freely ...

**•**RC2: RC2 TM The source code (C version) from which this port was done, and (most of) the programming notes, are by P. Gutmann (pgut01@cs.auckland.ac.nz) -- as obtained from Usenet. Eric Young (eay@mincom.oz.au) implementation, also based on Gutmann's work, and included in Eric's colossal SSL library ver 0.6.6 14 Jan 1997, was also used for the initial key data and the computation of the session key schedule. Code to tailor the session key for a specified length in bits is included in this Java implementation but is crippled (commented out). The current code behaves as if the session key is fixed at ...

**•**BlockCipher: A fully constructed Cipher instance looks like this: +------------------------------------------+ | CipherSpi (API methods) | | | | +--------------------------------------+ | | | Padding | | | | | | | | +----------------------------------+ | | | | | Mode | | | | | | | | | | | | +------------------------------+ | | | | | | | CipherSpi | | | | | | | | (blockcipher implementation) | | | | | | | | | | | | | | | +------------------------------+ | | | | | | | | | | | +----------------------------------+ | | | | | | | +--------------------------------------+ | | | +----------------------------------- ...

**•**Mode: A fully constructed Cipher instance looks like this: +------------------------------------------+ | CipherSpi (API methods) | | | | +--------------------------------------+ | | | Padding | | | | | | | | +----------------------------------+ | | | | | Mode | | | | | | | | | | | | +------------------------------+ | | | | | | | CipherSpi | | | | | | | | (blockcipher implementation) | | | | | | | | | | | | | | | +------------------------------+ | | | | | | | | | | | +----------------------------------+ | | | | | | | +--------------------------------------+ | | | +----------------------------------- ...

**•**Padding: A fully constructed Cipher instance looks like this: +------------------------------------------+ | CipherSpi (API methods) | | | | +--------------------------------------+ | | | Padding | | | | | | | | +----------------------------------+ | | | | | Mode | | | | | | | | | | | | +------------------------------+ | | | | | | | CipherSpi | | | | | | | | (blockcipher implementation) | | | | | | | | | | | | | | | +------------------------------+ | | | | | | | | | | | +----------------------------------+ | | | | | | | +--------------------------------------+ | | | +----------------------------------- ...

**•**TripleDES: This class implements Triple DES EDE encryption with three independent keys. DES-EDE3 acts as a block cipher with an 8 byte block size. The encoded form of the Triple DES key should be a 24-byte array, consisting of three 8-byte single DES keys in order - K1, K2 and K3. Encryption and decryption are done as follows: C = E K3 (D K2 (E K1 (P))) P = D K1 (E K2 (D K3 (C))) The alternating encryption and decryption was designed by IBM to enable compatibility with single DES, when all three keys are equal (although it is now rare for Triple DES to be used in that way). When DES-EDE3 is used with the ...

**•**Twofish: Twofish is an AES candidate algorithm. It is a balanced 128-bit Feistel cipher, consisting of 16 rounds. In each round, a 64-bit S-box value is computed from 64 bits of the block, and this value is xored into the other half of the block. The two half-blocks are then exchanged, and the next round begins. Before the first round, all input bits are xored with key- dependent "whitening" subkeys, and after the final round the output bits are xored with other key-dependent whitening subkeys; these subkeys are not used anywhere else in the algorithm. Twofish was submitted by Bruce Schneier, Doug Whiting, ...

**•**RC4: This class implements the RC4 TM stream cipher. The source code (C version) from which this port was done, is the one posted to the sci.crypt, alt.security, comp.security.misc, and alt.privacy newsgroups on Wed, 14 Sep 1994 06:35:31 GMT by "David Sterndark" <sterndark@netcom.com> (Message-ID: <sternCvKL4B.Hyy@netcom.com>) RC4 (TM) was designed by Ron Rivest, and was previously a trade secret of RSA Data Security, Inc. The algorithm is now in the public domain. The name "RC4" is a trademark of RSA Data Security, Inc. References: Bruce Schneier, "Section 17.1 RC4," Applied Cryptography, ...

**•**Serpent: A bit-slice implementation in Java of the Serpent cipher. Serpent is a 128-bit 32-round block cipher with variable key lengths, including 128-, 192- and 256-bit keys conjectured to be at least as secure as three-key triple-DES. Serpent was designed by Ross Anderson, Eli Biham and Lars Knudsen as a candidate algorithm for the NIST AES Quest. References: Serpent: A New Block Cipher Proposal. This paper was published in the proceedings of the "Fast Software Encryption Workshop No. 5" held in Paris in March 1998. LNCS, Springer Verlag. Reference implementation of the standard Serpent cipher written ...

**•**Square: The Square algorithm. Square is a cipher algorithm developed by Joan Daemen and Vincent Rijmen References: The Square home page has up-to-date comments, implementations, and certification data. J. Daemen, L.R. Knudsen, V. Rijmen, " The block cipher Square ," Fast Software Encryption , LNCS 1267, E. Biham, Ed., Springer-Verlag, 1997, pp. 149-165.

**•**IDEA: IDEA is a block cipher with a key length of 16 bytes and a block length of 8 bytes. It is highly popular, being the original cipher in PGP, and has received a lot of cryptanalytic attention. IDEA was written by Dr. X. Lai and Prof. J. Massey. References: See the IDEA page for more details The algorithm is patented by Ascom Systec Ltd (applied for May 1991), and is licensable

**•**PaddingPKCS5: This class implements generalized PKCS#5 padding. PKCS#5 padding is described in RSA Labs' PKCS#5 document. Their version is defined for 8 byte (64 bit) blocksizes only. This implementation handles blocksizes up to 255 bytes, hence 'Generalized PKCS#5'. This generalization is completely compatible with the original 8-byte-only PKCS#5. http://www.rsasecurity.com/rsalabs/pkcs/pkcs-5/index.html

**•**MARS: MARS is an AES candidate submitted by IBM. MARS was designed by Carolynn Burwick, Don Coppersmith, Edward D'Avignon, Rosario Gennaro, Shai Halevi, Charanjit Jutla, Stephen M. Matyas Jr., Luke O'Connor, Mohammad Peyravian, David Safford, and Nevenko Zunic. Please note that this is the 'amended' 2nd round version.

**•**Rijndael: Rijndael --pronounced Reindaal-- is a symmetric cipher with a 128-bit block size and variable key-size (128-, 192- and 256-bit). Rijndael was designed by Vincent Rijmen and Joan Daemen .

**•**RC6: Simple implementation of Ron Rivest's RC6 cipher. Use of this algorithm may be subject to licensing restrictions imposed by the RC6 inventor. http://www.rsa.com/rsalabs/aes/

**•**ModeCBC: Please read the comments in the source.

**•**ModeECB: Please read the comments in the source.

**•**ModeOFB: Please read the comments in the source.

**•**Null: Null cipher (identity transformation).

**•**SKIPJACK: SKIPJACK

**•**ModeCFB

**•**TripleDESInnerCBC

Home | Contact Us | Privacy Policy | Terms of Service |