Skip to content

UNL Report

(Added by the Hooks amendment.)

A UNLReport object describes a report of the Unique Node List (UNL) which is a list of validator nodes that are trusted by the network to validate transactions.

{
"LedgerEntryType": "UNLReport",
"PreviousTxnID": "5463C6E08862A1FAE5EDAC12D70ADB16546A1F674930521295BC082494B62924",
"PreviousTxnLgrSeq": 6,
"ImportVLKeys": [
{
"ImportVLKey": {
"PublicKey": "ED264807102805220DA0F312E71FC2C69E1552C9C5790F6C25E3729DEB573D5860"
}
}
],
"ActiveValidators": [
{
"ActiveValidator": {
"PublicKey": "EDE1B9A9BFD788736AD9B6A42883E6E0151F82C9276FF57F229A7AF6083A759674",
"Account": "rUn84CUYbNjRoTQ6mSW7BVJPSVJNLb1QLo"
}
}
],
"index": "61E32E7A24A238F1C619D5F9DDCC41A94B33B66C0163F7EFCC8A19C9FD6F28DC"
}

A UNLReport object has the following fields:

FieldJSON TypeInternal TypeRequired?Description
LedgerEntryTypeStringUInt16YesThe value 0x0052, mapped to the string UNLReport, indicates that this object is a UNLReport object.
PreviousTxnIDStringHash256YesThe identifying hash of the transaction that most recently modified this object.
PreviousTxnLgrSeqNumberUInt32YesThe index of the ledger that contains the transaction that most recently modified this object.
ImportVLKeysArrayArrayNoValidator-list publishing keys trusted to verify Import proofs (XPOPs) from other chains. Each entry is an ImportVLKey object. These are list publishers, not validators of this network.
ActiveValidatorsArrayArrayNoThis network’s active validators, identified by master public key. Each entry is an ActiveValidator object.

In JSON, each array entry is wrapped in an object named for its type (ImportVLKey or ActiveValidator), and PublicKey is a blob rendered as hex, not a Base58 node public key.

FieldJSON TypeInternal TypeRequired?Description
PublicKeyStringVLYesThe validator-list publisher’s public key, as hex.
AccountStringAccountNoThe account associated with the key. This field is optional.
FieldJSON TypeInternal TypeRequired?Description
PublicKeyStringVLYesThe active validator’s master public key, as hex.
AccountStringAccountNoThe account associated with the active validator. This field is optional.

An account-owned ExportCommittee stores a canonical list of validator master public keys. When an Export intent is admitted, every committee member must appear in the exact parent ledger’s pre-NegativeUNL ActiveValidators set. If any member is absent, the intent returns tecEXPORT_COMMITTEE_UNAVAILABLE.

The UNLReport does not store Export committees or current validator signing keys. It anchors validator master identities; during live share processing, xahaud resolves each selected master to its current signing key through the manifest system.

The UNLReport object ID is the hash of the UNLReport space key (0x0052) only. This means that the ID of the UNLReport object in a ledger is always:

61E32E7A24A238F1C619D5F9DDCC41A94B33B66C0163F7EFCC8A19C9FD6F28DC