Где хранится закрытый ключ для контракта?

Это вопрос, который меня часто задают разработчики, которые предполагают, что контракт имеет собственный закрытый ключ для подписания любых транзакций, которые он делает.

25 голосов | спросил Joris Bontje 21 Jam1000000amThu, 21 Jan 2016 09:45:03 +030016 2016, 09:45:03

1 ответ


31

Контракты не имеют закрытых ключей таким же образом, что и ваш простой кошелек. Вместо этого у них есть программный код, написанный на языке виртуальной машины Ethereum.

Чтобы определить, что делает контракт, все члены сети Ethereum просто запускают соответствующую часть кода каждый раз, когда транзакция или другой контракт использует функцию контракта. Поскольку код и EVM тщательно определены, каждый всегда будет согласен с тем, что результат операции был . Это включает в себя, был ли договор отправлен на какой-либо другой контракт. Поскольку каждый может договориться о происхождении сообщения, не требуется дальнейшая степень проверки (например, предоставляемая сигнатурой).

ответил Jeff Coleman 21 Jam1000000amThu, 21 Jan 2016 10:05:32 +030016 2016, 10:05:32

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132