Add AnonymousParty superclass of Party

Add AnonymousParty superclass of Party in preparation for anonymising parties stored in
contract states.

Signed-off-by: Ross Nicoll <ross.nicoll@r3.com>
This commit is contained in:
Ross Nicoll
2017-02-02 16:56:25 +00:00
committed by Chris Rankin
parent aae8256041
commit 521994ce23
20 changed files with 115 additions and 54 deletions

View File

@ -87,14 +87,15 @@ Party and CompositeKey
Entities using the network are called *parties*. Parties can sign structures using keys, and a party may have many
keys under their control.
Parties may sometimes be identified pseudonymously. For example, in a transaction sent to your node as part of a
chain of custody it is important you can convince yourself of the transaction's validity, but equally important that
you don't learn anything about who was involved in that transaction. In these cases a public key may be present
without any identifying information about who owns it.
Parties can be represented either in full (including name) or pseudonymously, using the ``Party`` or ``AnonymousParty``
classes respectively. For example, in a transaction sent to your node as part of a chain of custody it is important you
can convince yourself of the transaction's validity, but equally important that you don't learn anything about who was
involved in that transaction. In these cases ``AnonymousParty`` should be used, which contains a composite public key
without any identifying information about who owns it. In contrast, for internal processing where extended details of
a party are required, the ``Party`` class should be used. The identity service provides functionality for resolving
anonymous parties to full parties.
Identities of parties involved in signing a transaction can be represented simply by a ``CompositeKey``, or by further
information (such as name) using the ``Party`` class. An ``AuthenticatedObject`` represents an object (like a command)
that has been signed by a set of parties.
An ``AuthenticatedObject`` represents an object (like a command) that has been signed by a set of parties.
.. note:: These types are provisional and will change significantly in future as the identity framework becomes more fleshed out.

View File

@ -3,6 +3,13 @@ Release notes
Here are brief summaries of what's changed between each snapshot release.
Milestone 9
-----------
* API:
* Pseudonymous ``AnonymousParty`` class added as a superclass of ``Party``.
Milestone 8
-----------