corda / net.corda.core.identity / Party

Party

class Party : AbstractParty

The Party class represents an entity on the network, which is typically identified by a legal name and public key that it can sign transactions under. As parties may use multiple keys for signing and, for example, have offline backup keys, the "public key" of a party can be represented by a composite construct – a CompositeKey, which combines multiple cryptographic public key primitives into a tree structure.

For example: Alice has two key pairs (pub1/priv1 and pub2/priv2), and wants to be able to sign transactions with either of them. Her advertised Party then has a legal X.500 name "CN=Alice Corp,O=Alice Corp,L=London,C=GB" and an owningKey "pub1 or pub2".

Party is also used for service identities. E.g. Alice may also be running an interest rate oracle on her Corda node, which requires a separate signing key (and an identifying name). Services can also be distributed – run by a coordinated cluster of Corda nodes. A Party representing a distributed service will use a composite key containing all individual cluster nodes' public keys. Each of the nodes in the cluster will advertise the same group Party.

Note that equality is based solely on the owning key.

See Also

CompositeKey

Constructors

<init>

Party(certificate: X509Certificate)Party(name: CordaX500Name, owningKey: PublicKey)

The Party class represents an entity on the network, which is typically identified by a legal name and public key that it can sign transactions under. As parties may use multiple keys for signing and, for example, have offline backup keys, the "public key" of a party can be represented by a composite construct – a CompositeKey, which combines multiple cryptographic public key primitives into a tree structure.

Properties

name

val name: CordaX500Name

Inherited Properties

owningKey

val owningKey: PublicKey

Functions

anonymise

fun anonymise(): AnonymousParty

nameOrNull

fun nameOrNull(): CordaX500Name

ref

fun ref(bytes: OpaqueBytes): PartyAndReference

Build a reference to something being stored or issued by a party e.g. in a vault or (more likely) on their normal ledger.

toString

fun toString(): String

Inherited Functions

equals

open fun equals(other: Any?): Boolean

Anonymised parties do not include any detail apart from owning key, so equality is dependent solely on the key

hashCode

open fun hashCode(): Int

ref

fun ref(vararg bytes: Byte): PartyAndReference

Build a reference to something being stored or issued by a party e.g. in a vault or (more likely) on their normal ledger.

Extension Functions

contextLogger

fun Any.contextLogger(): Logger

When called from a companion object, returns the logger for the enclosing class.