Blockchain 黑客是否可以在一个智能合约中更改数据,而不使用out call合约功能?

Blockchain 黑客是否可以在一个智能合约中更改数据,而不使用out call合约功能?,blockchain,ethereum,smartcontracts,Blockchain,Ethereum,Smartcontracts,考虑合同: Contract Example{ uint array[]; address owner; function Example(){ owner = msg.sender } function setArray(uint index, uint value) public { if (msg.sender == owner){ array[index] = value; }

考虑合同:

Contract Example{
    uint array[];
    address owner;
    function Example(){
        owner = msg.sender
    }
    function setArray(uint index, uint value) public {
        if (msg.sender == owner){
            array[index] = value;
        }
    }
}
黑客是否有可能通过生成特定块直接更新数组[]。(避免出现“只有所有者才能更新阵列”的情况)

一切皆有可能


但假设区块链的基本安全性完好无损,不,除了智能合约本身,其他任何东西都不允许修改其存储。

Hi@smarx我的问题基本上是:是否有任何机制让miner意识到合约内容被非法更改?合约存储只能通过交易进行更改。网络中的所有节点都会检查所有事务的有效性。(它们都会检查每个事务的签名,并重新运行每个块中的所有事务。)