Return-Path: Delivered-To: apmail-directory-commits-archive@www.apache.org Received: (qmail 11858 invoked from network); 5 Dec 2010 10:55:50 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 5 Dec 2010 10:55:50 -0000 Received: (qmail 44333 invoked by uid 500); 5 Dec 2010 10:55:49 -0000 Delivered-To: apmail-directory-commits-archive@directory.apache.org Received: (qmail 44276 invoked by uid 500); 5 Dec 2010 10:55:49 -0000 Mailing-List: contact commits-help@directory.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@directory.apache.org Delivered-To: mailing list commits@directory.apache.org Received: (qmail 44269 invoked by uid 99); 5 Dec 2010 10:55:48 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 05 Dec 2010 10:55:48 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 05 Dec 2010 10:55:47 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 5E13C23889E7; Sun, 5 Dec 2010 10:55:27 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1042311 - /directory/apacheds/branches/apacheds-kerberos-codec-2.0/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/CipherTextHandler.java Date: Sun, 05 Dec 2010 10:55:27 -0000 To: commits@directory.apache.org From: kayyagari@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20101205105527.5E13C23889E7@eris.apache.org> Author: kayyagari Date: Sun Dec 5 10:55:27 2010 New Revision: 1042311 URL: http://svn.apache.org/viewvc?rev=1042311&view=rev Log: o removed unused methods and updated javadoc o added generics to the default ciphers' map Modified: directory/apacheds/branches/apacheds-kerberos-codec-2.0/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/CipherTextHandler.java Modified: directory/apacheds/branches/apacheds-kerberos-codec-2.0/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/CipherTextHandler.java URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-kerberos-codec-2.0/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/CipherTextHandler.java?rev=1042311&r1=1042310&r2=1042311&view=diff ============================================================================== --- directory/apacheds/branches/apacheds-kerberos-codec-2.0/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/CipherTextHandler.java (original) +++ directory/apacheds/branches/apacheds-kerberos-codec-2.0/kerberos-shared/src/main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/CipherTextHandler.java Sun Dec 5 10:55:27 2010 @@ -21,17 +21,12 @@ package org.apache.directory.server.kerberos.shared.crypto.encryption; -import java.io.IOException; import java.nio.ByteBuffer; import java.util.Collections; import java.util.HashMap; import java.util.Map; -import org.apache.directory.server.i18n.I18n; import org.apache.directory.server.kerberos.shared.exceptions.KerberosException; -import org.apache.directory.server.kerberos.shared.io.decoder.Decoder; -import org.apache.directory.server.kerberos.shared.io.decoder.DecoderFactory; -import org.apache.directory.server.kerberos.shared.messages.Encodable; import org.apache.directory.shared.asn1.AbstractAsn1Object; import org.apache.directory.shared.asn1.codec.EncoderException; import org.apache.directory.shared.kerberos.codec.types.EncryptionType; @@ -41,30 +36,19 @@ import org.apache.directory.shared.kerbe /** - * A Hashed Adapter encapsulating ASN.1 encoders and decoders and cipher text engines to - * perform seal() and unseal() operations. A seal() operation performs an encode and an - * encrypt, while an unseal() operation performs a decrypt and a decode. + * A Hashed Adapter encapsulating ASN.1 cipher text engines to + * perform encrypt() and decrypt() operations. * * @author Apache Directory Project */ public class CipherTextHandler { - /** a map of the default encodable class names to the decoder class names */ - private static final Map DEFAULT_DECODERS; - /** a map of the default encryption types to the encryption engine class names */ - private static final Map DEFAULT_CIPHERS; + private static final Map> DEFAULT_CIPHERS; static { - Map map = new HashMap(); - - DEFAULT_DECODERS = Collections.unmodifiableMap( map ); - } - - static - { - Map map = new HashMap(); + Map> map = new HashMap>(); map.put( EncryptionType.DES_CBC_MD5, DesCbcMd5Encryption.class ); map.put( EncryptionType.DES3_CBC_SHA1_KD, Des3CbcSha1KdEncryption.class ); @@ -104,34 +88,6 @@ public class CipherTextHandler } - /** - * Perform a decrypt and a decode. - * - * @param hint The class the encrypted data is expected to contain. - * @param key The key to use for decryption. - * @param data The data to decrypt. - * @param usage The key usage. - * @return The Kerberos object resulting from a successful decrypt and decode. - * @throws KerberosException - */ - public Encodable decrypt( Class hint, EncryptionKey key, EncryptedData data, KeyUsage usage ) - throws KerberosException - { - try - { - return decode( hint, decrypt( key, data, usage ) ); - } - catch ( IOException ioe ) - { - throw new KerberosException( ErrorType.KRB_AP_ERR_BAD_INTEGRITY, ioe ); - } - catch ( ClassCastException cce ) - { - throw new KerberosException( ErrorType.KRB_AP_ERR_BAD_INTEGRITY, cce ); - } - } - - public EncryptedData encrypt( EncryptionKey key, byte[] plainText, KeyUsage usage ) throws KerberosException { EncryptionEngine engine = getEngine( key ); @@ -157,36 +113,6 @@ public class CipherTextHandler } - private Encodable decode( Class encodable, byte[] plainText ) throws IOException - { - Class clazz = ( Class ) DEFAULT_DECODERS.get( encodable ); - - if ( clazz == null ) - { - throw new IOException( I18n.err( I18n.ERR_600, encodable ) ); - } - - DecoderFactory factory = null; - - try - { - factory = ( DecoderFactory ) clazz.newInstance(); - } - catch ( IllegalAccessException iae ) - { - throw new IOException( I18n.err( I18n.ERR_601, encodable ) ); - } - catch ( InstantiationException ie ) - { - throw new IOException( I18n.err( I18n.ERR_602, encodable ) ); - } - - Decoder decoder = factory.getDecoder(); - - return decoder.decode( plainText ); - } - - private EncryptionEngine getEngine( EncryptionKey key ) throws KerberosException { EncryptionType encryptionType = key.getKeyType();