Re: SACRED Protocol (long!)
Magnus Nystrom <[email protected]> Fri, 7 Dec 2001 18:08:16 -0500 (Eastern Standard Time)
| Newsgroups | gmane.ietf.sacred |
|---|---|
| Message-ID | <Pine.WNT.4.31.0112071627580.1180-100000@mnystrom-lap> |
Hi again Marshall, What I am trying to say is that our proposal already re-uses the SASL framework and integrates SASL into SACRED for a very small cost, namely two extra messages. Not too complicated. Sure, a mapping is needed. But the way the mapping is done in the current draft is making it really hard to define SACRED for other protocols that do not support SASL. One would even have to define new SACRED PDUs for some mappings, thereby changing the protocol itself. And, since there are other constituencies that are aiming to make use of SACRED, e.g. the W3C XKMS WG, whose charter explicitly states that one of the objectives is harmonization with SACRED, and who are using other transports (in the case of XKMS SOAP), a tight binding to BEEP could be counterproductive. My suggestion is therefore to map to SOAP (and SOAP in turn has mappings to BEEP (soon, at least) and http). Speaking of charters, SACRED's own charter states: "Credentials must be available to many different types of clients with different characteristics in terms of processing power, storage and network connectivity." Binding SACRED tightly to BEEP, and therfore requiring constrained devices to implement BEEP when they already have to implement SOAP and/or HTTP, does not, IMHO, really match well with this statement. Finally, my understanding of BEEP is that it is a protocol framework, and as such suitable as a basis for a wide range of application protocols having certain characteristics. As far as I understood from your "On the design of application protocols" RFC, one of those characteristics was asynchronous messaging, and BEEP therefore handles asynchronous message exchanges. Since SACRED, has a clean request-response, synchronous situation that does not appear to need BEEP's support of these exchanges, and we, as our current proposal aims to demonstrate, also are able to handle the security context establishment ourselves in a simple manner, I feel that this tight binding to BEEP is not optimal. -- Magnus On Fri, 7 Dec 2001, Marshall T. Rose wrote: > > I certainly agree with you that we need to be thoughtful on security > > issues - and that's why we are specifying the use of a security > > framework (SASL, so far) and strong mechanisms within that framework > > (SRP, so far). There are no differencies between us there, AFAICT. > > > > SACRED in the form proposed this week by me is quite self-sufficient > > and puts very few requirements on the protocol it runs on top of. > > Compare once again with OCSP. The authors of OCSP wanted it to be > > possible to run OCSP over a variety of protocols, including http, > > smtp, and ldap. By making sure that OCSP could protect its own > > exchanges and minimizing the requirements on underlying protocols they > > achieved this. There are other examples of this, as I mentioned in my > > previous posting. > > we just aren't communicating here... > > the basic problem is this: if you write a protocol that both: > > - maps onto multiple underlying protocols, and > - protects its own exchanges > > then you are reinventing the wheel, spending more > design/implementation/review time on administrative overhead and less on the > application domain that you're trying to deal with. > > in other words, you've managed to maximize the pain and focus all the > engineering energy on the non-essential parts of the system. probably not a > good trade-off. > > > > The fact is, BEEP is not universally implemented. We should allow for > > other bindings too, and make the work to do those mappings as simple > > as possible. > > it's true that beep isn't universally implemented. > > it's also true that do the other bindings, you'll have to complicate sacred > in order to make up for the fact that all these other mappings are on top of > transports that don't adequately deal with security, asynchrony, etc., etc. > > and all for the benefit of fragmenting the marketplace, reducing the amount > of interoperability between implementations, promoting vendor lock-in, etc, > etc. > > just because you can do it this way, doesn't mean you should.