A node is a data point on a distributed ledger network. It is a virtual point made up of a collection of computers also known as a “highly available cluster”, such that if one computer goes down, another can take its place.

In a distributed ledger, nodes are the points through which information is sent and distributed. Each node contains a full set of relevant information from the ledger. That is to say, a single node on a network maintains a full copy of all transactions on the ledger to which they are privy – it cannot see other transactions in the network.

In a decentralized system, every node has a full copy of the blockchain. Nodes in the network can validate transactions, add them to their copy of the ledger and then broadcast these transactions to other nodes in the network. In a decentralized blockchain, nodes, rather than a trusted third party, maintain the network. In a centralized system, however, each node is privy only to transactions that are relevant.

Nodes ensure that a transaction is valid and maintain a ledger’s record of consensus. In the Bitcoin blockchain, nodes are used to confirm “blocks” and to secure the network. However, while the Bitcoin network records transaction data in blocks, these blocks are not necessary in instances where only two parties must be aware of the details of a transaction.

Even if a node is unable to see the contents of an agreement, it can independently verify that all of the required authorizations have been made in a transaction. In a given transaction, both nodes involved can ensure its validity, meaning that the content is consistent between both parties, while the finality or uniqueness of a transaction, meaning that it has not been previously spent, must be established by the “Uniqueness service”.

In Corda, a Uniqueness service is a type of node (or a collection of nodes operating under some consensus mechanism) that verifies transaction inputs have not previously been spent, thus eliminating the risk of a double-spending problem. In this sense, a uniqueness service essentially performs the function of a trusted third party. Note that in order to perform this function, the uniqueness service does not necessarily need to see all of the details of the transaction.