web3j - получает детали транзакции (количество, цена на газ, лимит газа) из подписанной транзакции - PullRequest
0 голосов
/ 02 июля 2019

У меня есть фронтенд в javascript и бэкэнд в Java. Я позволил пользователю подписать необработанную транзакцию с его закрытым ключом в веб-интерфейсе с помощью web3js. После этого подписанная транзакция возвращается в бэкэнд Java, а бэкэнд транслирует транзакцию через экземпляр четности.

Мой вопрос: Я боюсь хакеров, которые могут манипулировать необработанной транзакцией в своем браузере в javascript, прежде чем подписать ее. Таким образом, они могут изменить сумму, которую отправляют Есть ли способ извлечь сумму, которая будет отправлена ​​из подписанной транзакции с web3j? Если да, я мог бы проверить это значение еще раз перед трансляцией подписанной транзакции.

Кстати: если это так или иначе важно, это транзакция с токеном, а не транзакция ETH.

Спасибо!

1 Ответ

0 голосов
/ 04 июля 2019

Ну, это требует немного понимания криптографии.

В парной криптографии с секретным / открытым ключом «подписывание» в основном является единственным случаем, когда вы шифруете с помощью закрытого ключа и дешифруете с помощью ключа pub. Если вам удастся расшифровать, это означает, что подпись действительна, потому что кому бы ни принадлежал этот ключ публикации, это, безусловно, тот, кто подписал содержимое.

Итак, если у вас есть ключ pub, вы можете расшифровать «подписанную» транзакцию.

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

...