Greetings all,

In order to make the client check signatures by default, we need a way for existing clients (and future clients) to know what certificates a publisher uses, and to be aware when those certificates change.

The proposal is for clients to refresh the publisher metadata when they refresh the publisher's catalog. While the proposal creates the mechanism to refresh any and all publisher information, for now, only the certificate information and information needed to verify the metadata will be updated in the client. The certificate information has been designed so that updates to the publisher's automatic information will not effect any user specified changes (such as approving or revoking a certificate).

To offset the potential for a man-in-the-middle attack which changed publisher metadata, there will be a capacity for the repo admin to sign publisher responses. Publisher meta data updates will only be allowed for signed responses. The information needed to validate the response (like intermediate cert, encoding, algorithm, etc...) will be included in the response. The response will have to validate against either a trust anchor on the system, or a manually approved certificate for that publisher.

To sign publisher responses, the repo admin will run a command like 'pkgrepo sign-pub-responses' (exact command name tbd) which will take (roughly) the same arguments as pkgsign. Whenever a publisher property is changed, the administrator will have to resign responses for that publisher and will be reminded of this. In the future, there's potential for optionally storing a key location somewhere which would be used to update the publisher response when a property is changed.

Thoughts and comments appreciated.

Thanks,
Brock
_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss

Reply via email to