I understand that using a putState() in a transaction would be logged in the ledger, where as putPrivateData() would result in a hash being stored on the ledger. What happens if