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

Yi Liu updated HADOOP-10693:
----------------------------

    Attachment: HADOOP-10693.7.patch

[~cmccabe], thank you for the review. I update the patch based on your new 
comments and the discussion which we talked offline.
{quote}
I guess my question here is, if I compile against openssl 1.0.0 and run against 
1.0.1, does AES-CTR work? My understanding is that it does. So we should not 
fail the build just because the compiler has version 1.0.0.
{quote}
In the new patch, I remove openssl version (1.0.0 or 1.0.1) check in 
CMakeLists.txt, now it can be compiled against openssl 1.0.0 and run against 
1.0.1.

{quote}
As we talked about, we should fail the tests when buildSupportsOpenssl is true 
but openssl is not working (that way, we will know we have a configuration 
problem on Jenkins or any other build system.)
{quote}
Yes, this has been included. 

{quote}
Specifically, we should call const char *SSLeay_version(int t); here and throw 
an exception if the number is too low. We should not use the #define, since 
that is the version we compiled with, which may not be the same as the version 
we're running with. (In fact, it rarely will be the same, due to the security 
and export control difficulties associated with bundling openssl.)
{quote}

Basically dlsym for aes-ctr related symbols will fail if the Openssl version is 
not new enough, so we don’t need to check the version specifically. And I 
refine the error message to:
{{Cannot find AES-CTR support, is your version of Openssl new enough?}}


> Implementation of AES-CTR CryptoCodec using JNI to OpenSSL
> ----------------------------------------------------------
>
>                 Key: HADOOP-10693
>                 URL: https://issues.apache.org/jira/browse/HADOOP-10693
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: security
>    Affects Versions: fs-encryption (HADOOP-10150 and HDFS-6134)
>            Reporter: Yi Liu
>            Assignee: Yi Liu
>             Fix For: fs-encryption (HADOOP-10150 and HDFS-6134)
>
>         Attachments: HADOOP-10693.1.patch, HADOOP-10693.2.patch, 
> HADOOP-10693.3.patch, HADOOP-10693.4.patch, HADOOP-10693.5.patch, 
> HADOOP-10693.6.patch, HADOOP-10693.7.patch, HADOOP-10693.patch
>
>
> In HADOOP-10603, we have an implementation of AES-CTR CryptoCodec using Java 
> JCE provider. 
> To get high performance, the configured JCE provider should utilize native 
> code and AES-NI, but in JDK6,7 the Java embedded provider doesn't support it.
>  
> Considering not all hadoop user will use the provider like Diceros or able to 
> get signed certificate from oracle to develop a custom provider, so this JIRA 
> will have an implementation of AES-CTR CryptoCodec using JNI to OpenSSL 
> directly.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to