I am trying to get a better understanding of how the IC works.
My question is concerning calls to canisters:
On eth when someone calls a contract with an update method, everyone can see it (on ethscan for example).
On the IC there is the reverse gas model so is there some way of keeping track of the update calls ? Do I have to implement a “log” canister ? Isn’t it bad for a blockchain to don’t keep the track of transactions which from my understanding is a basic feature of blockchains ?
Thanks for your answers !
Hey @0rions,
the IC does a lot things differently in comparison to other blockchains and of course there are tradeoffs. The IC forgets the transactions after finalization to not have ever increasing storage, but the IC is still a reliable and tamper-proof computer (for the typical requirement that enough nodes are honest).
So the first question you need to ask yourself is if you really need an audit trail for your application. If so, you need to take care of that yourself as you realized yourself. However, there might also be services on the IC that you can use. A simple example (without cryptographic chaining) is the following GitHub - ninegua/ic-logger: Motoko library to help create an append-only logger actor . A more complete solution is https://cap.ooo/.
Hope this helps