RFR: 8296442: EncryptedPrivateKeyInfo can be created with an uninitialized AlgorithmParameters [v5]

Weijun Wang weijun at openjdk.org
Wed Nov 16 18:47:27 UTC 2022


> An `EncryptedPrivateKeyInfo` object can be created with an uninitialized `AlgorithmParameters`, but before you call `getEncoded` on it you need to remember to initialize the params. This is unfortunate but since this is a public API, I hesitate to make a change.
> 
> Instead, this code change fixes the much more widely used internal class `AlgorithmId` so that it cannot be created with an uninitialized `AlgorithmParameters`. `EncryptedPrivateKeyInfo` now works with both initialized and uninitialized params, and it's immutable.
> 
> No intention to make `AlgorithmId` immutable this time. It has a child class named `AlgIdDSA` which makes things complicated.

Weijun Wang has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains six additional commits since the last revision:

 - more comments
 - Merge branch 'master' into 8296442
 - comment and exception message
 - expected
 - address xuelei's comments
 - the fix

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/11067/files
  - new: https://git.openjdk.org/jdk/pull/11067/files/c32d3e7d..8f04b8a3

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=11067&range=04
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=11067&range=03-04

  Stats: 6593 lines in 389 files changed: 3724 ins; 1629 del; 1240 mod
  Patch: https://git.openjdk.org/jdk/pull/11067.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/11067/head:pull/11067

PR: https://git.openjdk.org/jdk/pull/11067


More information about the security-dev mailing list