Peter 的个人资料Peter's ruminations照片日志列表更多 ![]() | 帮助 |
|
10月12日 Transnational Shibboleth communities move against PKI - in favor of validationFrom Status to ValidityIn an earlier post, I wrote about some of the material we didn’t include in our book on the basics of PKI. It was not included because the notion of the “Validation Authority” had yet to evolve out of one of the technologies we did discuss: OCSP. As conceived by VeriSign and Microsoft initially, OCSP was involved with the revocation of certificates and otherwise delivering “status” information. The key word here was “status”. It can mean almost anything and can specifically mean "validity' – a subjective evaluation at best. And it is in validity that we find a story to tell; one far more interesting than the issues of revocation and compromise of certified public keys! Validity lies at the heart of a mindshare war going on between the Shibboleth and OpenID communities - 2 approaches addressing single signon.
From what I can tell, the thought-leaders of the SAML world are in a battle to the death with the thought-leaders of the OpenID2 protocol world. Both communities focus on single signon for the web, but their models of administration and management of communities could not be further apart. Grass roots OpenID wants you to be in charge of your own critical infrastructure. The Shibboleth group within the SAML world believe in the Trusted Third Party model, where you are merely a subject about which statements are made by others. You never speak for yourself. What matters is those who will act for you, in your security interests. The Controlling Nature of MetadataThe issue at stake for the warring parties concerns the role of metadata – and its role in enforcing security policies. Though SAML2 standards have long had an excellent metadata model to ease the setup of websso links, it is optional. It is poorly supported by commercial vendors, and except in the Shibboleth sub-community it is not viewed as security critical. For Shibboleth folk, metadata is the whole world : the means of orchestrating the security of a web-centric distributed system, controlling the runtimes of many remote computers acting in loosly or tightly coupled meshes, including those formal high-performance computing clusters known as grids. To use terms from networking, its the "control plane" which manages the "data plane". In the core of the Internet, the Shibboleth conception of metadata is the analog of the routing algorithm that controls the convergence of the routing tables in all the reachable cooperating routers – deciding how and if packets are forwarded in a packet switched network. Just as routing protocols communicate metadata about subnets rather than hosts (normally), Shibboleth metadata describes the trustees of security policy: the IDPs and SPs of the SAML2 world (rather than the subject users). OpenID2 is heavily invested in metadata. Its mandatory and security critical. Without going into much detail, the authority that will speak for you in any given use of the web is nominated by you, and you maintain one or more metadata files containing your "XRDS" instructions reflecting your choice of alternative providers. By your act of pointing to a particular file stored at a URL (or by using XRI name resolution to generate the "XRDS stream" on the fly), the OpenID protocols wrap themselves around your wishes and the wishes of your communicants to create a semi-secure cryptographic channel over which SSO assertions are exchanged. In a Web2.0 world, this is particularly useful as you wander through yet another enrollment for a service, which demands registration details. As you act to bind your openid to this new service provider, you also get to form fill the usual answers to the usual member registration form. Kept at one of your authorities, these attributes flow over the semi secure channel. Now, being only semi-secure and given the access to metadata is so security critical, OpenID standards recommend the use of https channels – thereby availing OpenId of the assurances that https can bring: its SSL handshake, its reliance on PKI ciphersuites, and the warranties and other financial assurances that the better CA deliver to the parties subscribing to their dispute resolution services. This "built-in" governance model for OpenID2 is delivered via the parties subscription to the relying party services of the medium assurance level, commercial CAs – TTPs that leverage the trust model known as the “freedom to contract” – a leverage that is expected to serve OpenID as well as it evidently served e-commerce in the 1990s. What Happens to the Metadata known as PKI?Now, OpenID is indirectly promoting PKI-based trust networks – as an adjunct to its own metadata -- where the PKI built into https brings assurance and governance by the SSL CAs. And that is a problem for those elements of the SAML community that essentially deny PKI has any role to play in those areas. In fact, that which high-end PKI does in this area of assuring and governing asserters and consumers is that which SAML2 metadata management is viewed as more properly doing. And, there is only room for one sheriff in town. The Shibboleth communities learn-ed view on “go” (signed) metadata and “down with” PKI can be read at http://xml.coverpages.org/Cantor-SAML-v20-MetadataInteroperabilityProfile-WD01.pdf. For me, what is interesting is not the attack on PKI (which I find timely), but the rationale concerning why Shibboleth metadata can play PKI’s erstwhile role as a framework for trust networking. And there, finally, we get back to validity. Assertions vs Certifications vs ValidityAny computer scientist learning formal logic learns to distinguish truthful assertions from questions about the validity of theorems linking several true statements into an argument about topic X. Students learn that two models can both be valid at the same time, given some contextual assumptions. Even in core science, high school students learn that what is true at the macro scale and expressible with Newton’s differential formulas from the 17th century is not true at the micro scale, where an entirely different branch of mathematics not only expresses the peculiar laws concerning the world of micro forces … but proves that Newton’s laws do not hold. The Newtonian calculation, even one formally certified as correct by a national observatory, simply produces the wrong answer given actual obsevations. That is, the notion of limits in conventional calculus does not necessarily extend from the world of macro forces to the world of micro forces, given actual observations by physicists! Yet, both sets of laws are "valid" – in their respective context. In the world of SSO, validity is more mundane than in physics – but no less interesting. For the very cryptographic keys that secure and assure the actors doing their SSO thing have a lifecycle. They must be generated (ideally in a secure manner, to create a secure initial condition), they must be used, and given their nature they must be revoked - when no longer bound to some person - or they must be quickly flashed to the world as compromised (because someone published the keying secret, or the consequences of the loss of secrecy goes beyond some tolerance for risk taking). But beyond lifecycle, certified public keys also bear value judgments. In particular, the critical element of any PKI – the signed public key – bears the judgment of its issuer, but contemplates that others will also pass meta-judgment during an act of “reliance” on the issuer. That meta-judgment is nothing more that a use of validity, acting as a metric for the user's acceptance of the issuer's original judgment. When I wrote my PhD dissertation on validation, I tried to argue that third parties should exist to support relying parties accepting certificates issued by CAs. Known as Validation Authorities, they would apply some or other validation model to a certificate, and let the relying party know their opinion. For example, I the Validation Authority consider a public key certificate within 6 months of its expiry date as too risky for your use. I hereby give it a status of “invalid” and recommend you treat it as unreliable (for your purposes). Oh, and Ill use the IETF-standardized OCSP response data structure to communicate this status value to you, signing it even – to express my ”authority”. Since OCSP also involves you sending a request message, I'll even let you specify which validity model you want applied: mine, yours, or that community of interest over there! The more validity models the merrier! Now, Validity as ControlThe problem with the validity thesis concerns its applicability to the control sphere. Once the relying party is applying a validity model other than that of the issuer, the issuer “loses control” -- particularly if another third party is advising the end user. And, that means loss of economic value of the management service being provided by the issuer - to that other third party closer to the user. One quickly arrives at the ludicrous American situation that one can be authoritatively certified as married… but the certificate may be designated invalid depending on who applies which model of validity. You can be both married and not married, at the same time. In one state you need to rent two hotels rooms; in another, only one. In the Shibboleth community leadership's proposal, there is a triple denial ongoing – which is radical. Not only is the certificate issuer's validity model to be ignored, not only is the third party's validity model to be ignored even if delivered by OCSP and CRLs/CKLs (or ARLs/AKLs), even the relying party's own validity model MUST be ignored. The only model that matters is that of the maintainer of the Shib metadata, as expressed in signed XML. (Note: A private memo I received states that the control characterization of the Shibboleth leadership's proposal - the final MUST clause, in particular - is far too strong.) From Full Control to Full DistributionThe nice thing for the OpenID world is that this control paradigm is not a threat to its model of metadata, if one thinks liberally. Its an endorsement of OpenID, in fact. Nothing stops anyone assuming the role of being a "maintainer" of SAML2 (signed) metadata - which contrasts with a worldview in which only “the” maintainer (whoever that one entity may be) gets to speak authoritatively on questions of validity. In fact, that is really only what OpenID already does, in allowing me and you to publish any one of n metadata files about ourselves, and direct the SSO protocol to use a particular one. We can now conclude. OpenID relies on metadata, and Shibboileth leadership folk are proposing the SAML world moves metadata into the same seat of power. The Shibboleth notion of shifting responsibility for expressing the validity model into a metadata "maintainer" is identical with the older Validation Authority model. My own thesis in my abortive PhD dissertation (which I did actually get formally examined by UK academics ...whereupon it recveived a "total utter fail" grade, note very well) recommended that a properly conceived infrastructure for validation would operate at the level of the individual - which aligns nicely with what the OpenID movement finds itself doing in practice and what the Shibboleth team's technical proposal can actually support. Finally, the Shibboleth leadership team's proposal recognizes that the distribution of signed metadata itself depends ultimately on PKI to verify metadata own signature, - which must be then validated using PKI-centric validity constructs. Considering earlier efforts in the same topic area, just as the IETF specified that a CA might sign a cert "authorizing" a Validation Authority to make validity statements using an OCSP responder, so a CA might issue a certificate that authorizes a Shib-styled metadata maintainer to use its certified signing key to digitally sign “SAML2 metadata”. * * * *Postscript. The nice thing about all this world of validity… is that its carefully and properly patented in embodiment-free language, awaiting the market to develop to the point where it calls for the work that Validation Authorities do! As for my PhD dissertation? Oh well, it got a fail! I’m sure it was a well deserved fail, given academic standards for doctoral degrees. If I consider its thesis though (validity, and who can be an authority performing validation) perhaps I should just publish it myself! 评论 (3)
引用通告此日志的引用通告 URL 是: http://yorkporc.spaces.live.com/blog/cns!5061D4609325B60!317.trak 引用此项的网络日志
|
|
|