Выполнить некоторые функции умного контракта ethereum, используя ТОЛЬКО мой сайт - PullRequest
1 голос
/ 20 июня 2019

Я хочу, чтобы пользователь мог выполнять некоторые функции моего умного контракта ethereum, используя ТОЛЬКО мой сайт через MetaMask. Нет возможности выполнять функции, не используя мой сайт. Как это реализовать? Спасибо!

1 Ответ

1 голос
/ 21 июня 2019

На первый взгляд, это будет выглядеть так: пользователь с вашего сайта отправляет запрос через metamask на ваш backend, который шифрует запрос пользователя с помощью secret key (назовем его hash) и отправляет его с body request к вашему смарт-контракту (так sendToContract({hash, body})).После этого смарт-контракт шифрует body с помощью secret key (назовем его hash2) и сравнивает hash2 с hash

Таким образом, смарт-контракт должен хранить secret key, но невозможно хранить секретные данные в умном контракте .

Да, вы можете попытаться как-то скрыть это secret key, но в конечном итоге вы не можете иметь 100% гарантию, что только ваши backend и smart-contract знать secret key

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...