[ 
https://issues.apache.org/jira/browse/CRYPTO-13?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dapeng Sun updated CRYPTO-13:
-----------------------------
    Component/s: Cipher

> The API differences between apache.commons.crypto and JCE
> ---------------------------------------------------------
>
>                 Key: CRYPTO-13
>                 URL: https://issues.apache.org/jira/browse/CRYPTO-13
>             Project: Commons Crypto
>          Issue Type: Improvement
>          Components: Cipher
>    Affects Versions: 1.0.0
>            Reporter: Xianda Ke
>            Assignee: Xianda Ke
>             Fix For: 1.0.0
>
>
> Now, the API of CryptoInputStream & CryptoOutputStream are slightly different 
> from JCE.
> In JCE, the cipher must be fully initialized before being used by a 
> CipherInputStream
> {code}
> // Jce API sample
> Cipher c= Cipher.getInstance("AES/GCM/NoPadding", "SunJCE");
> c.init(Cipher.DECRYPT_MODE, key, new GCMParameterSpec(128, iv));
> CipherInputStream cin = new CipherInputStream (InputStream is, Cipher c );
> {code}
> Now, we do the initialization of cipher in the ctor of CryptoInputStream.
> {code}
> //apache.commons.crypto API:
> CryptoInputStream(CipherTransformation transformation,  Properties props, 
> InputStream in, byte[] key, byte[] iv)
> {code}
> We should add an interface with two parameters like JCE. This interface would 
> be convenient to support other mode in future such as GCM.
> And, Keeping the same API as JCE would more friendly to users.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to