Я с трудом могу создавать транзакции размером более 100 КБ. Мне интересно, можно ли хранить огромные файлы (несколько МиБ или ГиБ) в блокчейне?
Если да, то как?
Нет, вам придется хранить свои данные где-то еще и хранить хэш этих данных и их местоположение в блокчейне. У вас должно быть достаточно места для его хранения, но помните, чем короче ваши данные, тем меньше газа вам нужно. Поэтому используйте сокращатели URL.
Хранение данных в транзакции стоит газа, а блоки имеют динамический лимит газа. Вам придется увеличить лимит газа, отправляя все больше и больше данных, чтобы заставить сеть адаптироваться. Но при каждой транзакции вы будете ограничены фиксированным количеством газа и, следовательно, фиксированным объемом данных. В феврале 2016 года лимит газа составлял около 3 миллионов, то есть блок был ограничен примерно 89 КБ данных. (см. Есть ли ограничение на размер транзакции? ):
ограничение размера транзакции в настоящее время составляет около 89 КБ (3 миллиона газа). Но читайте дальше.
Нет прямого или фиксированного ограничения ни на размер транзакций, ни на размер блока. Это сильная сторона сети Etherem, она действительно масштабируется.
Это не значит, что нет ограничений. В настоящее время существует лимит газа на блок, равный 3 141 592 газа, который можно потратить максимум на блок.
На момент написания статьи лимит газа составляет около 4712388 газа, что должно ограничивать данные примерно до 140 КБ. См. https://ethstats.net/
Вскоре мы ожидаем, что некоторые децентрализованные безопасные хранилища, такие как swarm или IPFS, будут легко использоваться. Посмотрите https://github.com/ethereum/go-ethereum/wiki/Swarm---distributed-preimage-archive , где вы также найдете список альтернатив в конце страницы.
никсмак
is it possible to store huge files
, а вы говорите сохранить его где-нибудь еще? Ваш ответ на вопрос будет «Нет», если да, пожалуйста, подтвердите его фактами, источниками и т. д.dc7a9163d9
dc7a9163d9
Николя Массар