On Thu, 10 Jun 2021 06:59:25 GMT, Dongbo He <dongb...@openjdk.org> wrote:

>> src/java.base/share/classes/sun/security/util/DisabledAlgorithmConstraints.java
>>  line 130:
>> 
>>> 128:             AlgorithmDecomposer decomposer) {
>>> 129:         super(decomposer);
>>> 130:         List<String> disabledAlgorithmsList = 
>>> getAlgorithms(propertyName);
>> 
>> Is it doable to have the getAlgorithms() method return a Set?
>
> The collection required when new Constraints() should retain the default case 
> of the elements, because some code will depend on this, for example, .
> [entry.startsWith("keySize")](https://github.com/openjdk/jdk/blob/dd1cbadc82bcecf718b96c833a5845fde79db061/src/java.base/share/classes/sun/security/util/DisabledAlgorithmConstraints.java#L383).
> But the set required by the permits should unify the case of the elements, 
> because algorithm may be uppercase or lowercase, but the Set:contains() 
> cannot handle this situation.
> So we need to create a new Set that ignores the default case of elements.

For the entry.startsWith("keySize") example, I don't think keySize is an 
algorithm that could be listed individually in the list.  The "keySize" may be 
just a part one algorithm, for example "RSA keySize < 1024".

It's a good point about the lowercase and upper case.  Did you check how 
constraints like the "keySize" are expressed in the list or set?

-------------

PR: https://git.openjdk.java.net/jdk/pull/4424

Reply via email to