Solidity

合約消息呼叫是否需要發送者的簽名?

  • March 15, 2016

例如說你有這個簡單的契約:

contract Example {
  function sayHello() constant returns (string msg) {
     return "hello";
}

我打了一個資訊電話:

exampleContract.sayHello.call();

由於它是一個常量(只讀)消息呼叫,根據文件,發件人地址是可選的。由於不需要from ,這是否意味著任何人都可以呼叫該函式 - 不執行簽名驗證?

您是對的,任何人都可以呼叫該函式並且不執行簽名驗證。

它們在本地執行而不廣播到任何其他節點。這些持續的消息呼叫似乎也沒有出現在核心協議本身中,也沒有在黃皮書中提及。如果需要,很高興更正這部分,另一個例子是pyethereum 沒有實現 eth_call。

引用自:https://ethereum.stackexchange.com/questions/1639