Перейти к основному содержимому

What is DigStore?

DigStore — это зашифрованный, контентно-адресуемый проект в стиле Git, который компилируется в единый самозащищённый модуль WebAssembly.

Вы получаете команды в стиле Git — init, add, commit, log, clone, push, pull — для проекта, который зашифрован в состоянии покоя и компилируется в один файл .wasm. Этот единственный файл одновременно является и вашими данными, и сервером, контролирующим доступ к ним. Хост, который хранит или ретранслирует его, видит только шифротекст, адресованный по хешам; он не может прочитать то, что несёт.

Вы адресуете контент через URN, и URN является ключом: он одновременно и находит, и расшифровывает. Дайте кому-то URN — и он сможет прочитать этот ресурс; без него — не сможет. Отдельного пароля или списка доступа вести не нужно.

В отличие от Git, DigStore создан для результата сборки, а не исходного кода репозитория. Вы указываете проект на директорию вроде dist/, и он фиксирует то, что там есть.

Зачем он существует

ПроблемаОтвет DigStore
Хосты могут читать / сканировать то, что вы публикуетеКонтент зашифрован в состоянии покоя; хост хранит только шифротекст, ключ к которому — хеши
Контроль доступа означает пароли и ACLURN является правом доступа — поделитесь им, чтобы дать чтение, придержите — чтобы запретить
Приходится доверять серверу в том, что он отдаёт подлинные байтыclone/pull проверяют store id модуля, подписанный корень издателя и on-chain корень синглтона перед установкой — при неудаче отказывает
«Насколько велика эта нагрузка?» раскрывается через размер файлаКаждый проект — это один .wasm, дополненный до единого размера, который не раскрывает ничего о содержимом
Логика обслуживания живёт отдельно от данныхДанные и код, контролирующий доступ к ним, компилируются в один и тот же модуль

Как читать эту документацию

  • Формат DigStore — концепции: проекты, деплои, модуль .wasm, URN, шифрование и доказательства. Начните здесь, если хотите понять, что такое DigStore.
  • CLI-туториал — установите CLI и используйте его в реальном проекте: инициализируйте проект, зафиксируйте директорию сборки, коммитьте деплои, делитесь через remote и стримьте контент обратно.

Если вы просто хотите попробовать, переходите сразу к Quickstart (бесплатный, ориентированный на веб путь) или к CLI-туториалу.

примечание

DigStore — часть DIG Network. Полная техническая архитектура описана в разделе Протокол — контентно-адресуемый формат store на WASM.