@FindThomas

Digital Identity, Trust and Privacy on the open Internet

Archive for the ‘Trustworthy Computing’ Category

Blockchains: Evidence of Mediated Computation

without comments

In writing of the report of the Kantara BSC group (Blockchain and Smart Contracts) – a group that has been meeting bi-weekly for the past 7 months – we have come across numerous use-cases proposed by members who are looking closely at blockchain technology (or more generally from distributed ledger technology).

To enable classification of these use-cases,  some criteria were agree upon that  would highlight the features of blockchain systems. Since the attraction of blockchain technology (and more generally of distributed ledgers) lies in its empowering parties to transact without the need for a single (or few) intermediary, the following criteria has helped the team classify the received use-cases:

  • Individuals controlling their own data: Does the use-case seek to empower individuals to begin with, and does blockchain technology help to achieve that goal.
  • Individuals rising to the level of a “peer” in transactions with others: Does the use-case require individuals to function at a peer-level (or can the same outcome be achieved using other paradigms), and does blockchain technology help to achieve that goal.
  • Evidence of mediated computation: Does the use-case require immutable evidence that a neutral third party (e.g. some computer, somewhere) mediated the transaction, without which the transaction outcome would be worthless to the transacting parties.

The last criterion points to a feature of blockchain technology that is often overlooked. In many discourses regarding applications of blockchain technology, authors assume (forget) that the blockchain system consists of a network of peer-to-peer nodes which perform some computation (e.g. proof or work mining) towards the completion of a transaction. As such, one or more of these nodes are in fact performing mediated computation (to some degree) and at the same time provide evidence of this mediated act.

If evidence of mediated computation is crucial to the acceptance of a transaction, it implies that stronger forms of technical-trust must be produced by the entity (i.e. node; server; device) that is performing the computation. New forms of remote attestation may need to be devised, something along the lines of the SGX architecture that provide evidence that a given computation was performed within a secure enclave.

This raises another prospect: different nodes on a blockchain system may offer different levels of trustworthy computation, each with an associated cost (i.e. tiers of trusted computation services on the P2P network).

 

 

 

Written by thomas

April 2nd, 2017 at 2:56 pm

Atmel to support EPID from Intel

without comments

One important news item this week from the IoT space is the support by Atmel of Intel’s EPID technology.

Enhanced Privacy ID (EPID) grew from the work of Ernie Brickell and Jiangtao Li based on previous work on Direct Anonymous Attestations (DAA).  DAA is very relevant because it is built-in into the TPM1.2 chip (of which there are several hundred million in PC machines).

Here is a quick summary of EPID:

  • EPID is a special digital signature scheme.
  • One public key corresponds to multiple private keys.
  • Private key generates a EPID signature.
  • EPID signature can be verified using the public key.

Interesting Security Properties:

  • Anonymous/Unlinkable: Given two EPID signatures one cannot determine whether they are generated from one or two private keys.
  • Unforgeable: Without a private key one cannot create a valid signature.

 

Written by thomas

August 24th, 2015 at 10:33 pm

Towards a Trustworthy Digital Infrastructure for Core Identities and Personal Data Stores

without comments

So that was the title of my paper at the ID360 conference at UTexas in April. A copy of the PDF paper is here: hardjono-greenwood-coreid04C-ID360

 

 

Written by admin

May 22nd, 2013 at 5:42 pm

Technical Trust

without comments

 

So the topic of “trust” always generates a million emails on various lists.  Rather than rolling-up my own definition, I thought I’d borrow a good definition from the Trusted Computing Group community (courtesy of Graeme Proudler of HP Labs, UK).

It is safe to trust something when:

  1. It can be unambiguously identified.
  2. It operates unhindered.
  3. The user has first hand experience of consistent, good, behavior.

The definition is that of “technical trust”, namely “trust” in the mechanics of some computation (e.g. cryptographic computation, etc). In this case it refers to the TPM hardware. Note that “unhindered operation” is paramount for technical trust.  This is still somewhat of a challenge for software (eg. think multi-tenant clouds and VMs).

 

Written by thomas

March 14th, 2012 at 4:17 pm