corda / net.corda.core.identity

Package net.corda.core.identity

Types

AbstractParty

An AbstractParty contains the common elements of Party and AnonymousParty, specifically the owning key of the party. In most cases Party or AnonymousParty should be used, depending on use-case.

abstract class AbstractParty : Destination

AnonymousParty

The AnonymousParty class contains enough information to uniquely identify a Party while excluding private information such as name. It is intended to represent a party on the distributed ledger.

class AnonymousParty : Destination, AbstractParty

CordaX500Name

X.500 distinguished name data type customised to how Corda uses names. This restricts the attributes to those Corda supports, and requires that organisation, locality and country attributes are specified. See also RFC 4519 for the underlying attribute type definitions

data class CordaX500Name

Party

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.

class Party : Destination, AbstractParty

PartyAndCertificate

A full party plus the X.509 certificate and path linking the party back to a trust root. Equality of PartyAndCertificate instances is based on the party only, as certificate and path are data associated with the party, not part of the identifier themselves.

class PartyAndCertificate

Functions

excludeHostNode

Remove this node from a map of well known Partys.

fun <T> excludeHostNode(serviceHub: ServiceHub, map: Map<Party, T>): Map<Party, T>

excludeNotary

Remove the Party associated with the notary of a SignedTransaction from the a map of Partys. It is a no-op if the notary is null.

fun <T> excludeNotary(map: Map<Party, T>, stx: SignedTransaction): Map<Party, T>

groupAbstractPartyByWellKnownParty

Group each AbstractParty by the well known party using the ServiceHub.identityService, in preparation for creating FlowSessions, for example.

fun groupAbstractPartyByWellKnownParty(serviceHub: ServiceHub, parties: Collection<AbstractParty>, ignoreUnrecognisedParties: Boolean): Map<Party, List<AbstractParty>>

Group each AbstractParty by the well known party using the ServiceHub.identityService, in preparation for creating FlowSessions, for example. Throw an exception if some of the AbstractPartys cannot be mapped to a Party.

fun groupAbstractPartyByWellKnownParty(serviceHub: ServiceHub, parties: Collection<AbstractParty>): Map<Party, List<AbstractParty>>

groupPublicKeysByWellKnownParty

Group each PublicKey by the well known party using the ServiceHub.identityService, in preparation for creating FlowSessions, for example.

fun groupPublicKeysByWellKnownParty(serviceHub: ServiceHub, publicKeys: Collection<PublicKey>, ignoreUnrecognisedParties: Boolean): Map<Party, List<PublicKey>>

Group each PublicKey by the well known party using the ServiceHub.identityService, in preparation for creating FlowSessions, for example. Throw an exception if some of the PublicKeys cannot be mapped to a Party.

fun groupPublicKeysByWellKnownParty(serviceHub: ServiceHub, publicKeys: Collection<PublicKey>): Map<Party, List<PublicKey>>

x500Matches

Check if x500name matches the query.

fun x500Matches(query: String, exactMatch: Boolean, x500name: CordaX500Name): Boolean