Andrew Purtell created HBASE-14089:
--------------------------------------

             Summary: Remove unused draw of system entropy from 
RecoverableZooKeeper
                 Key: HBASE-14089
                 URL: https://issues.apache.org/jira/browse/HBASE-14089
             Project: HBase
          Issue Type: Bug
            Reporter: Andrew Purtell
            Assignee: Andrew Purtell
            Priority: Minor
             Fix For: 2.0.0, 0.98.14, 1.2.0, 1.1.2, 1.3.0, 1.0.3


I had a look at instances where we use SecureRandom, which could block if 
insufficient entropy, in the 0.98 and master branch code. (Random in contrast 
is a PRNG seeded by System#nanoTime, it doesn't draw from system entropy.) Most 
uses are in encryption related code, our native encryption and SSL, but we do 
also use SecureRandom for salting znode metadata in 
RecoverableZooKeeper#appendMetadata, which is called whenever we do setData. 
Conceivably we could block unexpectedly when constructing data to write out to 
a znode if entropy gets too low until more is available. Those salt values are 
never used and so appear to serve no purpose. We should remove the use of 
SecureRandom here and just pad with zeros for backwards compatibility.



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

Reply via email to