How does party discovery work in a multi node setup? If we had Alice, Bob and Charlie where:
Alice lives on participant node 1
Bob and Charlie live on participant node 2
Both participants node have the same DAR/templates uploaded
If Bob wishes to add Charlie to a contract (e.g. an offer for change of ownership) they can discover them as they live on the same node. How would Alice offer a change of ownership to either Bob or Charlie if she doesn’t know about them (on the platform)?
But to answer your question in short: the Canton protocol requires that all participants have the same view on the “topology state” for the given point in time. Therefore, they learn about the parties hosted on other participants and so, you can actually learn about the parties existing on other participants by using the parties.list() command.
A Canton party-id like abcdef::12206d331bb505f9b… is an identity within the Canton system that can not be impersonated. However, establishing that the party is actually “Alice Ltd”, a legal entity in the real world, is something that you would do as part of a KYC workflow on ledger.