2
votes

Corda doc says "If a transaction is not checked for validity (non-validating notary), it creates the risk of “denial of state” attacks, where a node knowingly builds an invalid transaction consuming some set of existing states and sends it to the notary cluster, causing the states to be marked as consumed"

In this case, does "invaid transaction" include simply mistaking transaction such as passing too high value input by type mistakes and invalidated by flow step?

How denial of state attacks could be caused.

1

1 Answers

5
votes

"Denial of State" could be caused if a rogue node builds a transaction and consumes a state which is shared between multiple parties. This is a trade-off of using non-validating notary as it doesn't validate the transaction against the contract code. The other parties would not be able to use the state anymore as it would already be consumed.