W3C home > Mailing lists > Public > public-credentials@w3.org > November 2020

Re: proofs for fragments of JSON-LD documents

From: Kyle Den Hartog <kyle.denhartog@mattr.global>
Date: Wed, 18 Nov 2020 12:35:31 +1300
Message-ID: <CAPHCqSwdViyuUL21oRD=hdULxJTZaQt+jH3Ha=5srMn75L-NWg@mail.gmail.com>
To: Ryan Grant <w3c@rgrant.org>
Cc: Manu Sporny <msporny@digitalbazaar.com>, "W3C Credentials CG (Public List)" <public-credentials@w3.org>
I'd think you could either choose to split the Verifiable credentials such
that they're signing only the data they need to, use multiple proofs as
defined in the Linked Data Security specification, or if you have a size
constraint and want to play with some fancy crypto then a BLS aggregate
signature[1] could be a good option too.

[1]: https://tools.ietf.org/html/draft-irtf-cfrg-bls-signature-04

-Kyle

On Wed, Nov 18, 2020 at 7:57 AM Ryan Grant <w3c@rgrant.org> wrote:

> When a Verifiable Credential use case (which may require one or more
> Verifiable Credentials, depending on the answer to this question)
> requires different issuers to sign the matter at hand, what is the
> appropriate method of presentation?
>
>
>
> On Sat, Nov 7, 2020 at 7:28 PM Manu Sporny <msporny@digitalbazaar.com>
> wrote:
> >
> > On 11/5/20 10:35 AM, Giuseppe Tropea wrote:
> > > In other words, would it be desirable to specify a way for the
> > > algorithms to natively operate on portions of JSON-LD documents vs.
> > > the whole?
> >
> > No, absolutely not -- this is a really dangerous idea, please don't ever
> > do it. :)
> >
> > If you can help it, you never want to digitally sign just a subset of
> > information. Linked Data Security was designed to avoid this mistake on
> > purpose.
> >
> > The issue with signing subsets of information in an otherwise digitally
> > signed document is that a significant number of developers then go on to
> > assume that /everything/ is signed, when it is not.
> >
> > Linked Data Security digitally signs everything, both the message and
> > *all* of the signing parameters. Don't want something signed? Tough, you
> > can't do it -- because it will lead to security vulnerabilities.
> >
> > The correct approach is to verify signatures for all of the pieces of
> > information you have and then merge everything together (which is one of
> > the things that Linked Data is designed to do -- easy merging).
> >
> > It is possible to create an encapsulating JSON-LD container that isn't
> > signed, but even then, important that you avoid that if you can.
> >
> > Hope that helps. :)
> >
> > -- manu
> >
> > --
> > Manu Sporny - https://www.linkedin.com/in/manusporny/
> > Founder/CEO - Digital Bazaar, Inc.
> > blog: Veres One Decentralized Identifier Blockchain Launches
> > https://tinyurl.com/veres-one-launches
> >
>
>

-- 
This communication, including any attachments, is confidential. If you are 
not the intended recipient, you should not read it - please contact me 
immediately, destroy it, and do not copy or use any part of this 
communication or disclose anything about it. Thank you. Please note that 
this communication does not designate an information system for the 
purposes of the Electronic Transactions Act 2002.
Received on Tuesday, 17 November 2020 23:35:56 UTC

This archive was generated by hypermail 2.4.0 : Tuesday, 17 November 2020 23:35:57 UTC