I am not quite sure to understand the motivations and
goals for the ASN.1 changes because the result seems
still somewhat strange.
Either one should use context specific tags in all sequences/choices
or a minimal set
instead of
Query ::= SEQUENCE {
queriedCerts CertReferences,
checks CertChecks,
wantBack WantBack,
validationPolicy ValidationPolicy,
responseFlags ResponseFlags OPTIONAL,
serverContextInfo [2] OCTET STRING OPTIONAL,
validationTime [3] GeneralizedTime OPTIONAL,
intermediateCerts [4] CertBundle OPTIONAL,
revInfos [5] RevocationInfos OPTIONAL,
producedAt [6] GeneralizedTime OPTIONAL,
queryExtensions [7] Extensions OPTIONAL }
Why not starting with [4711] (followed by [48] as you might know)?
one could have
Query ::= SEQUENCE {
queriedCerts CertReferences,
checks CertChecks,
wantBack WantBack,
validationPolicy ValidationPolicy,
responseFlags ResponseFlags OPTIONAL,
serverContextInfo OCTET STRING OPTIONAL,
validationTime GeneralizedTime OPTIONAL,
intermediateCerts [0] CertBundle OPTIONAL,
revInfos [1] RevocationInfos OPTIONAL,
producedAt [2] GeneralizedTime OPTIONAL,
queryExtensions [3] Extensions OPTIONAL }