W3C home > Mailing lists > Public > w3c-ietf-xmldsig@w3.org > July to September 1999

Re: Understanding what Signed XML is used for - Was: Re: importi

From: tog <todd.glassey@www.meridianus.com>
Date: Thu, 29 Jul 1999 07:54:54 -0700
Message-ID: <012a01bed9d2$5214d890$0b0aff0c@lab.gmtsw.com>
To: "Richard Himes" <rhimes@nmcourt.fed.us>, "tog" <todd.glassey@www.meridianus.com>
Cc: <w3c-ietf-xmldsig@w3.org>

> The envelope discussion is occurring within the legal-XML effort, and I'm
not
> trying to generalize it for the DSig standard.  I don't have a mental
construct
> for your term "use-model", but if it involves information (context)
transfer,
> XML is probably more than adequate.

Yes but is it anything more than content transfer, that is the question.

>If it means legacy formats, then this
> information will have to be hacked in, perhaps as binary data.  If it goes
> beyond information, I'm lost.
>
> > This 'encapsulating PDF files in XML structure' thread illustrates this
> > exactly. The point of XML is to make the content "hot" or easily acted
upon.
> > If we embed a PDF structure inside this document, then how is it still a
PDF
> > document, and what is the cross-over between PDF and XML  (Verity?...
> > Someone from Adobe want to jump in here?) - also don't forget the
> > timestamping. Its important.
>
> I don't have a problem base64-encoding the PDF document.  Keeps it cool.
We can
> easily make it "hot" when we need to display it.

Except that the PDF viewer has to be fired up every time to interpret the
PDF object. Inline, every time. This is clearly about "lets look at it" XML,
and not XML - the do it for everything solution. I want to use XML to encase
a transaction processing stream that will never see a browser.

>
> > Bluntly, my biggest concern here is that I think that the XML thing is
being
> > spread too thin, that there are some protocol based service models that
> > would be better done other ways like as applications for instance. Also
that
> > we don't have clearly defined service models yet that make sense in the
real
> > world.  So what do we do? - My first thing is that we should come to an
> > immediate understanding what we are trying to do explicitly, and for
what
> > purpose it is supposed to serve. If our goal is an interoperable set of
> > methods for authenticating XML borne structures? - OK - then what are
the
> > use models for these authentications:
> >
>
> We allow non-XML structures (PDF, GIF, MPEG) to be embedded within XML and
> signed.  Application designers decide if this or some other standard best
fits
> their needs.  If this standard adds value (flexibility, information,
> standardization, etc.) in the eye of the designer, then the tool can be
used to
> help solve yet another problem.
>
> There are (at least) three potential ways to sign this data:
> 1.  Include the hash of the (canonicalized) <Package> element and its
contents
> in
>      the manifest.  This means the hash computation is based on the
> base64-encoded
>      binary data and the surrounding elements.  Sign
(canonicalize/hash/sign)
> the
>      resulting manifest.  This is my understanding of the current Brown
> proposal.
> 2.  Include the hash of the unencoded document in the manifest and sign
the
>      manifest.
> 3.  Include the algorithms used in the manifest, but carry the signature
of the
>      unencoded document ("imported" signature).
>
> I believe we should have the second approach as an option at a minimum.
I'm
> still trying to convince myself that this would be sufficient.  For
example, an
> imported signature could perhaps be validated and converted back into a
hash for
> manifest signature.  If I have become misled as to the current situation,
I
> would appreciate clarification.

That seems reasonable to me...

>
> > 1)    The first model is I think as Barb Fox so rightly pointed out, is
a
> > document that is ready for its final processing instance. That is to say
it
> > is presented to the end-user (or consumer) as a conceptually flattened
> > structure, and then the somehow each signature process further layers
> > another flattened structure atop the previous one. BTW - I am beginning
to
> > think that the idea that a DigSig should be an inline structure is
> > potentially a shortcoming and that we should allow the user to say where
the
> > signatures are to be stored as part of the tag structure itself.
>
> This went over me or by me or something.  Suppose we have embedded a
base64
> encoded PDF in XML.  Is the final processing instance the unencoded PDF?
Is it
> the presentation bitmap on the screen or piece of paper?   Is a flattened
> structure  the surface string?  I believe we should be able to sign a PDF
in its
> unencoded format as an option, as I stated above.

Signing the PDF file is a no-brianer, its being able to use the contents of
the PDF file that is the win here.

>
> > 2)   The second is a little more insidious than Barb lead on though I
think,
> > This is a 'document' that is a recurring process, and as such is likely
to
> > be repeatedly opened and closed, edited, signed, and resigned... and
this
> > may not be such a great thing to do in pure XML without the envelope
> > framework.
>
> I think you pay for this somewhere (regardless of whether you use XML or
not.)
> A signed document freezes that document.  A modified document breaks the
> existing signature, and it can be resigned.  This is as it should be.  I
think a
> cool way  around it would be to separate the new changes from the document
(sort
> of like a database transaction log) and each modifier can sign their
document
> version.  This would make it possible to walk historically backward
through the
> changes, verifying each signed version along the way.

Actually that doesn't sound out of line.

>
> > So if we are just doing #1 then what are the uses? - A digital contract
in
> > its final form, I send it to you already containing my initial signature
of
> > the terms and conditions and you sign it in return. The two tokens are
> > maintained in several structure perhaps to prove who signed first and
when,
> > also there are the attendant timestamps with the signature blobs... The
> > auditor's, if we have a trusted third party can be done as layered on
ours
> > or as a side-by-side process, depending on the audit models, but both
are
> > supportable at the application level I think.
> >
> > Lets look at a contract-envelope in particular, as a process for doing a
> > recurring or repetitive negotiations process, the envelope that the
contract
> > core sits in will have to support some reliable type of journaling.
While
> > for the instance where the contract type is specific to humans, they
don't
> > necessarily need to resign the changing terms and conditions in a
contract
> > until they came to terms, but take the humans and our cognoscente out of
the
> > picture and then the model must support journaling and the audit trail
it
> > mandates.
>
> Agreed.

But that is the point. I think that what you and the other core XML team
have done is really fantastic. I just want it to do more than  be a
presentation language. I don't know if you ever had any experience with
TECO, and old DEC Text editor, but it was so powerful I could write TECO
macros faster than Fortran code. My point in bring up this arcane analog is
that XML has a real potential to support some really interesting transaction
processes as the transport and framework for the event and proofing
services.

To do this we need to address the timestamping, signature, and timebase
services models so that the system, has a credible proofing system inherent
with its design. Also that these models are available to all processes. To
limit the scope of the intended use to presetnation instruments is, well
shooting just a tad bit low IMHO.

>
> > Because of these use criteria and limitations generic digitally signed
XML
> > may actually be somewhat limited in its use scope because it was
designed
> > with the idea that one of the partners was alive.
> >
> > I propose that perhaps what we may really need is a digital-envelope
> > standard that we can pour XML into. The envelope could address the
> > persistence of the XML objects and would likely solve a number of other
> > E-Commerce related enveloping issues if we were to take this on. The
idea is
> > that maybe core XML is ok just the way it is, and that the admin
functions,
> > that is to say the envelope control, the signing process, should be a
> > separate framework form the content itself - or it may be deferred to
the
> > application's use of the Core XML standard.
>
> Again, these conclusions escape me, and appear to add more darkness than
light
> to the problem IMO.  XML documents can be enclosed in an XML envelope for
this
> purpose, seems to me, but this may not work in a general sense (e.g. there
is a
> problem with doctypes, but namespaces help.)
>
> > This is very important since it directly conflicts with the existing XML
> > belief that these authentication structures all need to be inline in the
XML
> > Source Stream.
>
> I thought inline authentication (for a particular application) was an
option,
> not a requirement.
>
> > Just my 2 cents...
> >
> > Todd
>
> Thanks,
> Rich
>
> P.S. - I took the liberty of including the list in distribution, because
it
> looked to me
> as if that was your original intent.

Actually it wasn't but what th heck, I would have said these things sooner
or later...

>
> > ----- Original Message -----
> > From: Richard Himes <rhimes@nmcourt.fed.us>
> > To: <w3c-ietf-xmldsig@w3.org>
> > Sent: Sunday, July 25, 1999 2:48 PM
> > Subject: Re: importing terminology in "XML-Signature Requirements"
> >
> > > Todd,
> > >
> > > These are good examples of the general problem I was trying to
address,
> > that is,
> > > if you have an existing signature and the signed document (perhaps
legacy
> > data),
> > > would it be possible to embed both in an XML document (with internal
> > reference),
> > > within the documented framework of the DSig spec?  I don't think it is
> > possible
> > > without using local extensions, which will lead to incompatible
> > implementation
> > > by those of us facing this problem.  The recent discussions about the
> > problems
> > > with external references only magnify my concerns.  We have legacy
signed
> > PDF
> > > documents now (signed by the court).
> > >
> > > I don't know anything about the format of the signatures you refer to,
and
> > I
> > > don't know if they have any manifest data.  If they do, I can see that
it
> > could
> > > be difficult to map the manifest data in a general sense.  I gather
from
> > > Richard's previous comments that there are security problems with a
> > signature
> > > that has no manifest, so this may be an issue.  I believe the same
problem
> > would
> > > be encountered with e-mail signatures, and I suspect that packaging
these
> > and
> > > pre-signed PDF (etc.) in XML for search engines sounds like a
reasonable
> > thing
> > > to do.
> > >
> > > I would be interested in more discussion as to the general difficulty,
if
> > any,
> > > of wrapping existing signatures (along with algorithm descriptions,
> > certificate
> > > references, etc.) and also embedding the base64-encoded source
document.
> > >
> > > Thanks,
> > > Rich
> > >
> > > w3c-ietf-xmldsig@w3.org wrote:
> > >
> > > > How will you address digitally signed PDF files that were signed by
any
> > of
> > > > the commercially available signing engines, Adobe's, Verisign's or
> > either of
> > > > the other two commercial ones included on the Acrobat4 Distribution
Kit
> > CD.
> > > >
> > > > Todd
> > > > ----- Original Message -----
> > > > From: Richard Himes <rhimes@nmcourt.fed.us>
> > > > To: <w3c-ietf-xmldsig@w3.org>
> > > > Cc: 'IETF/W3C XML-DSig WG' <w3c-ietf-xmldsig@w3.org>
> > > > Sent: Friday, July 23, 1999 3:33 PM
> > > > Subject: Re: importing terminology in "XML-Signature Requirements"
> > > >
> > > > >
> > > > >
> > > > > rdbrown@Globeset.com wrote:
> > > > >
> > > > > > > This also touches on the issue of being able to sign
> > > > > > > the original content (the PDF file) instead of the encoded
> > > > > > > and attached version of the original content.
> > > > > > > Richard: how did you propose to do this?
> > > > > >
> > > > > > If you refer to the proposal I did to Richard Himes, it consists
of
> > > > > > packaging the encoded content of the resource and the detached
> > signature
> > > > in
> > > > > > a single XML document. The encoded content is encapsulated in an
XML
> > > > element
> > > > > > that displays the encoding scheme as well as the 'Web locator'
> > > > associated
> > > > > > with the resource, whose content is being encapsulated. This
> > proposal
> > > > > > assumed that the application would decode and 'cache' the
packaged
> > > > resources
> > > > > > (or at least emulate such behaviors) before verification of the
> > Resource
> > > > > > elements contained in the signature Manifest. Notice that this
> > proposal
> > > > has
> > > > > > been made in the context of a specific application and did not
try
> > to
> > > > > > address the problem in general.
> > > > >
> > > > > I don't know what you mean by the general problem, Richard.  Would
the
> > > > "general"
> > > > > solution be intractable or would it be a significant diversion?
Or
> > would
> > > > it be
> > > > > cleaner?  I was wondering if it would be reasonable to use an
internal
> > > > link, and
> > > > > describe the situation in the manifest (i.e. the hash is on the
> > unencoded
> > > > > content of the thing pointed to by the locator) rather than using
a
> > common
> > > > > origin/href value.
> > > > >
> > > > > Thanks,
> > > > > Rich
> > > > >
> > > > >
> > > > >
> > >
> > >
>
>
Received on Thursday, 29 July 1999 10:41:01 GMT

This archive was generated by hypermail 2.2.0 + w3c-0.29 : Thursday, 13 January 2005 12:10:07 GMT