IPFS: проверяемые выпуски учебных материалов
Курс ведёт от байтов выпуска Markdown до проверяемого манифеста, хранения у независимых участников и переносимого архива. Общий пример — материалы курса 17; SHA-256 точных сохранённых байтов манифеста связывается с CourseCatalog, а CID хранится отдельно.
Для начала достаточно знакомства с веб-приложением, JSON и чтением небольших команд. Новые понятия вводятся по порядку. Теоретические схемы и исходники рассчитаны на последующую самостоятельную лабораторию; реальные ключи, адреса и хеши не подставлены выдуманными значениями.
Все тридцать уроков опубликованы. Учебные программы, узлы, кошельки, проверки и сетевые транзакции не запускались; ожидаемое поведение отделено от фактических наблюдений.
Последовательность уроков
| № | Урок | Результат |
|---|---|---|
| 1 | IPFS: выпуск и адресация по содержимому | Различение URL, байтов и версии |
| 2 | IPFS: CID, multihash и codec | Чтение структуры идентификатора |
| 3 | IPFS: UnixFS и дерево блоков | Модель файла и каталога |
| 4 | IPFS: профиль повторяемого импорта | Фиксация параметров структуры DAG |
| 5 | IPFS: каталог выпуска и относительные ссылки | Переносимый статический набор материалов |
| 6 | IPFS: манифест учебного выпуска | Описание файлов, версий и контрольных сумм |
| 7 | IPFS: канонические байты JSON | Единая сериализация подписываемого документа |
| 8 | IPFS: манифест и CourseCatalog | Связь bytes32 commitment с полным CID |
| 9 | IPFS: Helia и жизненный цикл клиента | Выбор блокового хранилища и модулей |
| 10 | IPFS: постоянное хранилище блоков | Разделение memory, disk и браузерного хранения |
| 11 | IPFS: обнаружение провайдеров | Граница DHT, Bitswap и доступности |
| 12 | IPFS в браузере | Ограничения транспортов и доверия |
| 13 | IPFS: Pinning и удержание DAG | Граница закрепления и сборки мусора |
| 14 | IPFS: независимые копии выпуска | План двух хранителей и собственного архива |
| 15 | IPFS: асинхронное закрепление у поставщика | Состояния запроса и подтверждение готовности |
| 16 | IPFS: HTTP-шлюз и собственная проверка | Путь получения без обещания доверия |
| 17 | IPFS: поддомены, origin и активный контент | Изоляция выпусков в браузере |
| 18 | IPFS: Trustless gateway и CAR-ответ | Проверка блоков перед показом файла |
| 19 | IPFS: кэширование неизменных выпусков | Разделение CID и изменяемого имени |
| 20 | IPFS: IPNS и подписанная изменяемая запись | Связь текущего имени с выпуском |
| 21 | IPFS: DNSLink и домен библиотеки | Перенос доменного указателя на CID |
| 22 | IPFS: выпуск, обновление и откат | Управление публикацией без перезаписи CID |
| 23 | IPFS: публичность запросов и метаданных | Модель утечек при распространении |
| 24 | IPFS: шифрование до добавления | Разделение контейнера и выдачи ключа |
| 25 | IPFS: доступ по оплате и ключам | Граница права доступа и копирования |
| 26 | IPFS: CAR и переносимость DAG | Архив блоков с указанным корнем |
| 27 | IPFS: полнота и долговременное хранение | Проверяемая опись выпуска |
| 28 | IPFS: восстановление у другого хранителя | Повторное предоставление тех же блоков |
| 29 | IPFS: зависимости и активное содержимое | Фиксация сборки и политики исполнения |
| 30 | IPFS: выпуск библиотеки от Markdown до архива | Законченная модель проверяемой публикации |
Профиль и ограничения
Профиль API Helia 7 по актуальному Upgrade guide: синхронное создание остановленного объекта и явный старт; конкретные версии пакетов/lockfile ещё не установлены. Предусмотрен отдельный профиль импорта library-unixfs-v1. CourseCatalog объявляет SHA-256 точных байтов манифеста; CID манифеста и каталога отдельные, не усечены до bytes32. Хранилища, сеть, криптография и архивные процедуры не исполнялись.
Обзор всей ветки Web3 помогает сопоставить этот маршрут с другими курсами. Оглавление перечисляет все уроки; навигация между ними формируется общей последовательностью курса.