Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
Reviewed
-
HDFS now supports the option to configure AES encryption for block data transfer. AES offers improved cryptographic strength and performance over the prior options of 3DES and RC4.
Description
In HDFS-3637, atm added support for encrypting the DataTransferProtocol, it was a great work.
It utilizes SASL Digest-MD5 mechanism (use Qop: auth-conf), it supports three security strength:
- high 3des or rc4 (128bits)
- medium des or rc4(56bits)
- low rc4(40bits)
3des and rc4 are slow, only tens of MB/s,
http://www.javamex.com/tutorials/cryptography/ciphers.shtml
http://www.cs.wustl.edu/~jain/cse567-06/ftp/encryption_perf/
I will give more detailed performance data in future. Absolutely it’s bottleneck and will vastly affect the end to end performance.
AES(Advanced Encryption Standard) is recommended as a replacement of DES, it’s more secure; with AES-NI support, the throughput can reach nearly 2GB/s, it won’t be the bottleneck any more, AES and CryptoCodec work is supported in HADOOP-10150, HADOOP-10603 and HADOOP-10693 (We may need to add a new mode support for AES).
This JIRA will use AES with AES-NI support as encryption algorithm for DataTransferProtocol.
Attachments
Attachments
Issue Links
- is related to
-
HDFS-7313 Support optional configuration of AES cipher suite on DataTransferProtocol.
- Closed
-
HADOOP-10768 Optimize Hadoop RPC encryption performance
- Patch Available
- relates to
-
HDFS-9899 The implication of auth-conf is not followed in optimized HDFS data transfer encryption
- Open
-
HBASE-16633 Optimize HBase RPC Encryption Performance
- Resolved
-
HDFS-3637 Add support for encrypting the DataTransferProtocol
- Closed
-
HDFS-2856 Fix block protocol so that Datanodes don't require root or jsvc
- Closed