Design and impl review: JEP 273: DRBG-Based SecureRandom Implementations

Sean Mullan sean.mullan at oracle.com
Mon Dec 14 16:05:21 UTC 2015


The DrbgParameters class has 7 parameters, most of which are optional. A 
typical use case might involve lots of null parameters:

DrbgParameters params = new DrbgParameters(null, null, 256, false, 
false, nonce, null);

That seems awkward, and you have be overly careful to map the right 
value to each parameter.

I think this is a case where a DrbgParameters.Builder would be very useful.

--Sean

I think this is an ideal use case for the
On 11/30/2015 01:30 AM, Wang Weijun wrote:
> Minor updates:
>
> spec: http://cr.openjdk.java.net/~weijun/8051408/webrev.01/specdiff/java/security/package-summary.html
> impl: http://cr.openjdk.java.net/~weijun/8051408/webrev.01/
>        http://javaweb.us.oracle.com/~weijwan/webrev/8051408/webrev/  <<- test/closed
>
> Mostly spec. reseed() has no default implementation now (aka throws UnsupportedOperationException).
>
> Integration date is now Dec 4. Won't catch it.
>
> --Max
>
>> On Nov 23, 2015, at 3:03 PM, Wang Weijun <weijun.wang at oracle.com> wrote:
>>
>> spec: http://cr.openjdk.java.net/~weijun/8051408/webrev.00/specdiff/java/security/package-summary.html
>> impl: http://cr.openjdk.java.net/~weijun/8051408/webrev.00/
>>
>> - No more configure(), it's getInstance(alg, SecureRandomParameters) now.
>>
>> - The *Spec class names are now *Parameters.
>>
>> - Overloaded reseed() and reseed(additionalInput).
>>
>> TBD: Should nextBytes(bytes,additionalInput) throw an UnsupportedOperationException for old implementations?
>>
>> Thanks
>> Max
>>
>


More information about the security-dev mailing list