# Everscale `drivechain`: что это такое и как это работает?
В Everscale, `workchain` для обработки данных и есть тип цепочки, который называется `drivechain`. `Drivechain` — тип децентрализованного хранилища в сети Everscale. По своей сути a `drivechain` оптимизированный `workchain` для хранения больших объемов данных. `Drivechain` имеет специальные смарт-контракты и размещен на них. Чтобы сохранить файл в `drivechain`, вам необходимо развернуть смарт-контракт «файловый индекс», который аналогичен индексу, используемому в `Unix` или `Linux`. Этот «файловый индекс» содержит определенную информацию, которая позволяет вам хранить и извлекать файлы, а также платить за это хранение.
## Каковы варианты использования?
Любой может хранить что угодно в `drivechain`. Примером идеального для них варианта является хранилище мультимедиа для `NFT`. Кроме того, одними из первых потребителей `drivechain` будут другие `workchain`, которые архивируют старые состояния Everscale.
## Давайте подробнее рассмотрим, как `drivechain` работает
Все начинается с выделенного масштабируемого количества валидаторов, которые хранят данные. Все валидаторы выбираются с помощью смарт-контракта `DeElector`. Валидаторы обязуются предоставить пространство определенного размера, отвечающего требованиям системы, на своих дисках, а также обязуются передавать эти данные в течение определенного периода. Валидаторы получают эти данные в результате синхронизации.
Если заявитель не соответствует ни одному из этих системных требований, он не может стать валидатором. Данные хранятся в зашифрованном формате. Ни один из валидаторов не может расшифровать данные и прочитать их. Все файлы хранятся в нескольких копиях для обеспечения высокой надежности, скорости и доступности.
Чтобы убедиться, что валидаторы выполняют заявленные условия, происходит следующее:
- случайная выборка фрагментов хранимых файлов, в которой детерминировано запрашиваются небольшие порции информации;
- проверка занятости диска путем записи на диск квазислучайных битов для заполнения объявленного пространства хранения и последующей замены их клиентскими файлами, если есть запрос;
- проверки передачи данных с окончательным подтверждением получения от пользователя.
Если файлы недоступны, повреждены или не передаются без предупреждения, ставка валидатора уменьшается. Когда происходит определенное количество подобных ситуаций, ответственные валидаторы в конечном итоге подвергаются сокращению (slashing).
Таким образом выстраивается прозрачная и надежная система, в которой никто не заинтересован в том, чтобы не хранить, не передавать или лгать данные.
## Reference
- [Everscale `drivechain`: what is it and how does it work?](https://hackmd.io/sXnII_TES0W2LJiWm9NtFg?view)