<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>tag:blogger.com,1999:blog-3944976411672994427.post8121243526914363270..comments</id><updated>2007-10-11T08:28:27.746+07:00</updated><category term='M'/><category term='xml'/><category term='Open source'/><category term='Oslo'/><category term='ES4'/><category term='REST'/><category term='security'/><category term='mac'/><category term='RELAX NG'/><category term='jing-trang'/><category term='xml:id'/><category term='Type systems'/><category term='ECMAScript'/><category term='I18N'/><category term='JSON'/><category term='Thailand'/><category term='schemas'/><category term='HTTP'/><title type='text'>Comments on James Clark's Random Thoughts: Integrity without confidentiality</title><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.jclark.com/feeds/8121243526914363270/comments/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/8121243526914363270/comments/default'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2007/10/integrity-without-confidentiality.html'/><author><name>James Clark</name><uri>http://www.blogger.com/profile/08445951113700394609</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>4</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-7034870355906481880</id><published>2007-10-11T08:28:00.000+07:00</published><updated>2007-10-11T08:28:00.000+07:00</updated><title type='text'>Digest authentication has an optional integrity ch...</title><content type='html'>Digest authentication has an optional integrity check. However, you still need to provide a password, so it's integrity without confidentiality, but not without authentication. Also, caching is still problematic (while you could associate CC: public with it, checking integrity from a cached copy wouldn't be possible), and persisting it would still be a problem.&lt;BR/&gt;&lt;BR/&gt;How about a new header, something like&lt;BR/&gt;&lt;BR/&gt;Content-HMAC: hash="..."; key="http://example.org/key"&lt;BR/&gt;&lt;BR/&gt;(where people who really care will protect the key with https)&lt;BR/&gt;&lt;BR/&gt;The issue with this approach is that you have to buffer the whole response before signing it. Two approaches to that are using a HTTP trailer (easy to persist, but not well-supported), and using a chunk-ext (which *may* be easier to support, but harder to persist, and probably even more streaming-friendly).</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/8121243526914363270/comments/default/7034870355906481880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/8121243526914363270/comments/default/7034870355906481880'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2007/10/integrity-without-confidentiality.html?showComment=1192066080000#c7034870355906481880' title=''/><author><name>Mark Nottingham</name><uri>http://www.mnot.net/</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2007/10/integrity-without-confidentiality.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-8121243526914363270' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/8121243526914363270' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1014329371'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.displayTime' value='October 11, 2007 8:28 AM'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-495163059635525574</id><published>2007-10-09T20:04:00.000+07:00</published><updated>2007-10-09T20:04:00.000+07:00</updated><title type='text'>Return &lt;b&gt;multipart/signed&lt;/b&gt; content where one p...</title><content type='html'>Return &lt;B&gt;multipart/signed&lt;/B&gt; content where one part is the response (eg &lt;B&gt;text/css&lt;/B&gt;) and a second part is a &lt;B&gt;application/pkcs7-signature&lt;/B&gt; digital signature.&lt;BR/&gt;&lt;BR/&gt;&lt;A HREF="http://www.ietf.orf/rfc/rfc1847.txt" REL="nofollow"&gt;RFC 1847&lt;/A&gt; Secure Multiparts for MIME&lt;BR/&gt;&lt;A HREF="http://www.ietf.orf/rfc/rfc3851.txt" REL="nofollow"&gt;RFC 3851&lt;/A&gt; S/MIME v3.1 message specification&lt;BR/&gt;&lt;A HREF="http://www.ietf.orf/rfc/rfc4134.txt" REL="nofollow"&gt;RFC 4134&lt;/A&gt; Examples of S/MIME Messages&lt;BR/&gt; (section 4.8)&lt;BR/&gt;&lt;BR/&gt;Now... do you know how to get browsers to support this?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/8121243526914363270/comments/default/495163059635525574'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/8121243526914363270/comments/default/495163059635525574'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2007/10/integrity-without-confidentiality.html?showComment=1191935040000#c495163059635525574' title=''/><author><name>James Manger</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2007/10/integrity-without-confidentiality.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-8121243526914363270' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/8121243526914363270' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-301418756'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.displayTime' value='October 9, 2007 8:04 PM'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-5918988819998034065</id><published>2007-10-08T23:12:00.000+07:00</published><updated>2007-10-08T23:12:00.000+07:00</updated><title type='text'>A similar requirement for "message-based" integrit...</title><content type='html'>A similar requirement for "message-based" integrity was discovered when the Atom Syntax RFC was being drafted. Syndication feeds are frequently composed of entries that are extracted from a variety of other feeds and aggregated together. Of course, one is then left wondering if an aggregated entry is, in fact, a faithful copy of the original. Thus, Atom provides for signing not only an entire Atom feed but also signing of the individual entries within the feed. Thus, when a signed entry is aggregated into another feed, it maintains the signature it was given in its "source" feed. &lt;BR/&gt;This ability to aggregate signed entries will become very important when syndication feeds are used to aggregate event information, offers-to-buy, offers-to-sell, etc. whose integrity must be established before they can be relied upon. Supporting such aggregation without loss of integrity is only one of many ways that Atom supports application models that are far more useful than what RSS can support...&lt;BR/&gt;&lt;BR/&gt;bob wyman</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/8121243526914363270/comments/default/5918988819998034065'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/8121243526914363270/comments/default/5918988819998034065'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2007/10/integrity-without-confidentiality.html?showComment=1191859920000#c5918988819998034065' title=''/><author><name>Bob Wyman</name><uri>http://www.blogger.com/profile/09394365216950330549</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2007/10/integrity-without-confidentiality.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-8121243526914363270' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/8121243526914363270' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1454013668'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.displayTime' value='October 8, 2007 11:12 PM'/></entry><entry><id>tag:blogger.com,1999:blog-3944976411672994427.post-1550915200311562212</id><published>2007-10-07T22:45:00.000+07:00</published><updated>2007-10-07T22:45:00.000+07:00</updated><title type='text'>Technically, TLS (SSL) does support null encryptio...</title><content type='html'>Technically, TLS (SSL) does support null encryption which is a signing-only mode.  See the TLS_RSA_WITH_NULL_MD5 and TLS_RSA_WITH_NULL_SHA algorithms in RFC 2246.&lt;BR/&gt;&lt;BR/&gt;However it's still not practical because almost no web browsers or servers support the null encryption modes (at least in their default configurations), and the HTTP caching techniques used today are not quite good enough, because even in signing-only mode TLS still employees a handshake.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/8121243526914363270/comments/default/1550915200311562212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3944976411672994427/8121243526914363270/comments/default/1550915200311562212'/><link rel='alternate' type='text/html' href='http://blog.jclark.com/2007/10/integrity-without-confidentiality.html?showComment=1191771900000#c1550915200311562212' title=''/><author><name>Deron Meranda</name><uri>http://deron.meranda.us/</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jclark.com/2007/10/integrity-without-confidentiality.html' ref='tag:blogger.com,1999:blog-3944976411672994427.post-8121243526914363270' source='http://www.blogger.com/feeds/3944976411672994427/posts/default/8121243526914363270' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-780406829'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.displayTime' value='October 7, 2007 10:45 PM'/></entry></feed>
