I'm confused by the wording of the PKCS#11 v2.40 specification in terms of when CKA_TRUSTED
can be set to true on a public key certificate object:
The CKA_TRUSTED attribute cannot be set to CK_TRUE by an application. It MUST be set by a token initialization application or by the token’s SO. Trusted certificates cannot be modified.
I'm trying to reconcile "cannot be set to CK_TRUE by an application" and "It MUST be set [...] by the token's SO". Does this mean a R/W SO session can create (or update) a Public Key Certificate Object (e.g. CKC_WTLS
) with CKA_TRUSTED
set to CK_TRUE
? I feel this doesn't jive well with "cannot be set [...] by an application".