Running a notary serviceΒΆ
At present we have several prototype notary implementations:
SimpleNotaryService
(single node) – commits the provided transaction input states without any validation.ValidatingNotaryService
(single node) – retrieves and validates the whole transaction history (including the given transaction) before committing.RaftValidatingNotaryService
(distributed) – functionally equivalent toValidatingNotaryService
, but stores the committed states in a distributed collection replicated and persisted in a Raft cluster. For the consensus layer we are using the Copycat framework.
To have a node run a notary service, you need to set appropriate configuration values before starting it (see Node configuration for reference).
For SimpleNotaryService
, simply add the following service id to the list of advertised services:
extraAdvertisedServiceIds : [ "net.corda.notary.simple" ]
For ValidatingNotaryService
, it is:
extraAdvertisedServiceIds : [ "net.corda.notary.validating" ]
Setting up a RaftValidatingNotaryService
is currently slightly more involved and is not recommended for prototyping
purposes. There is work in progress to simplify it. To see it in action, however, you can try out the Notary demo.