Enabling double-spending detection in a pair-based ledger