Где в блокчейне Ethereum записываются детали транзакции смарт-контракта?

Я читал о блокчейне и эфириуме, но не могу понять пару концепций.

Во-первых, где в блокчейне хранится вновь созданная транзакция? Итак, если блокчейн существует уже некоторое время, и, допустим, мы сейчас находимся на блоке X. Если я разверну свой контракт сегодня, и он будет выполнен, будут ли данные моей транзакции находиться в каждом блоке после блока X или только в блоке X + 1? И будут ли сведения о моей транзакции единственными подробностями в этом блоке, или этот блок будет содержать все транзакции, произошедшие в течение этого периода времени? Опять же, все ли транзакции предыдущих блоков также записываются в последующие блоки? Что произойдет, если из одного и того же контракта будет выполнено более 1 транзакции, записанной как 2 разных блока или в одном блоке?

Во-вторых, при разработке контракта я заметил, что он обычно ограничен двумя сторонами, которые заключают его, и для других людей, чтобы использовать контракт, должен быть создан новый экземпляр контракта, правильно ли это понимание? Или 1 контракт должен быть разработан таким образом, чтобы его использовали все и когда-либо создавался только один его экземпляр?


person John    schedule 11.09.2017    source источник


Ответы (1)


где в блокчейне хранится вновь созданная транзакция?

В блоках, которые хранит каждый узел.

будут ли данные моей транзакции находиться в каждом блоке после блока X или только в блоке X + 1?

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

И будут ли сведения о моей транзакции единственными подробностями в этом блоке, или этот блок будет содержать все транзакции, произошедшие в течение этого периода времени?

Это зависит от реализации блокчейна. Например, блоки биткойнов хранят все транзакции, которые были отправлены в течение 10 минут, потому что каждый блок добывается каждые 10 минут (более или менее).

Второй

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

Для каждого блокчейна у вас может быть более одного контракта. Но я объясню это попроще. Смарт-контракт - это код, который установлен на всех узлах цепочки блоков, и каждый запрос выполняется против него. Итак, у каждого узла / члена должно быть то же самое.

person Urko    schedule 13.09.2017