Task #1410
closedChanging semantic of default identity in KeyChain
Description
In KeyChain, there is a default identity which is used when no certificate or identity is supplied in signing process.
However, there are two types of default identities: one called "system default identity" which is independent from any application; one called "application default identity" which might be different from one application to another.
Current KeyChain::getDefaultIdentity returns the first one (system default identity). But compared to system default identity, application default identity is more useful. When creating an KeyChain instance, the application can set a default identity whose lifetime is the same as the KeyChain instance.
The plan is to change the semantic of KeyChain::getDefaultIdentity, so that it returns the application default identity rather than the system default identity.
And the system default identity is returned by another method KeyChain::getSystemDefaultIdentity
Updated by Junxiao Shi over 10 years ago
If application does not set an application default identity after creating a KeyChain
instance, should KeyChain::getDefaultIdentity()
return the system default identity, or should it raise an error?
If system default identity is returned, is it guaranteed that the private key is accessible?
OS X by default does not allow an application to access a private key not created by itself.
Updated by Yingdi Yu over 10 years ago
If application does not set an application default identity, an identity with the name "/localhost/tmp-id-" will be created for the application. We should not allow application to access the system default identity unless application explicitly requires the identity and the application must have permission to access the system default identity.
Updated by Yingdi Yu over 10 years ago
- Category set to Security
- Target version set to v0.2
Updated by Junxiao Shi over 10 years ago
- Status changed from New to Abandoned
- Start date deleted (
03/26/2014)
This Task is superseded by #1529.