Last week at the 7th Collaborative Workshop on Evolution and Maintenance of Long-Living Systems, together with Sven Peldszus, I presented a paper regarding the Maintenance of Long-Living Smart Contracts.
Lohr, M., & Peldszus, S. (2020). Maintenance of long-living smart contracts. CEUR Workshop Proceedings, 2581.
After the presentation, we had a very interesting discussion about Software Security (as everybody desires to have) and Software Immutability (as the Ethereum blockchain promotes). The essence of the discussion was that there is a need of further investigation about this conflict and how it can be solved.
As outcome of the presentation and the discussion, my best idea would be some kind of smart contract update support provided by Ethereum. For example, this could be done by introducing a successor field when a smart contract selfdestruct method is called. The successor field should then contain the address of the updated, succeeding smart contract.