IPFS: различия между версиями

UnWikipedian (обсуждение | вклад)
Нет описания правки
UnWikipedian (обсуждение | вклад)
Нет описания правки
Строка 8: Строка 8:
Другой интересной особенностью IPFS является тот факт, что во многих облаках файлы не хранятся собственно как файлы; они, скорее, представляют собой ссылки на скачивание этих самых файлов. Это было проверено экспериментальным путём — при использовании ссылки на файл конфигурации [[ZeroOmega]] в обычном облаке (гугл драйв и яндекс диск), расширение не могло прочитать его, так как имелась ссылка только на скачивание файла человеком, но не сам файл. В случае со ссылкой на IPFS расширение спокойно читает его. Именно этот фактор делает IPFS таким популярным среди разработчиков, так как позволяет читать файлы программам, что широко используется в браузерных расширениях.
Другой интересной особенностью IPFS является тот факт, что во многих облаках файлы не хранятся собственно как файлы; они, скорее, представляют собой ссылки на скачивание этих самых файлов. Это было проверено экспериментальным путём — при использовании ссылки на файл конфигурации [[ZeroOmega]] в обычном облаке (гугл драйв и яндекс диск), расширение не могло прочитать его, так как имелась ссылка только на скачивание файла человеком, но не сам файл. В случае со ссылкой на IPFS расширение спокойно читает его. Именно этот фактор делает IPFS таким популярным среди разработчиков, так как позволяет читать файлы программам, что широко используется в браузерных расширениях.


Для тех, кто впервые слышит об IPFS, его структура может показаться очень непривычной: файлы в системе обозначаются через CID (Content IDentifier), начинающийся на bafy. Каждый файл имеет только одно обозначение CID, навсегда остающееся неизменным, невозможно заменить один файл другим через обновление, что является нормой в других облаках. Даже после удаления и повторной заливки файла его идентификатор, а значит и ссылка на него в шлюзах, никак не изменится; вот пример такого [https://ipfs.io/ipfs/bafybeiejkem2yl6qbdfl5oeypcm3p4z2nvvqrbzwjtcf622f3x3zygagoa/ файла]. Это обеспечивает постоянство всей информации, которая содержится в базе данных. Для изменения файлов используется не менее сложная система — IPNS (InterPlanetary Naming System), смысл которой заключается в том, чтобы вернуть отнятую возможность обновлять файлы, не изменяя при этом саму суть IPFS (что иронично: ведь суть IPFS это хранить все файлы неизменными). В отличие от IPFS, ссылки IPNS, указывающие на файлы в сети, не являются вечными, имея период валидности, который пользователь назначает самостоятельно (тот, впрочем, может длиться достаточно долго, например 30 лет).
Для тех, кто впервые слышит об IPFS, его структура может показаться очень непривычной: файлы в системе обозначаются через CID (Content IDentifier), начинающийся на bafy. Каждый файл имеет только одно обозначение CID, навсегда остающееся неизменным, невозможно заменить один файл другим через обновление, что является нормой в других облаках. Даже после удаления и повторной заливки файла (что имеет значение для консолей взаимодействия с сетью, но не для самой сети), его идентификатор, а значит и ссылка на него в шлюзах, никак не изменится; вот пример такого [https://ipfs.io/ipfs/bafybeiejkem2yl6qbdfl5oeypcm3p4z2nvvqrbzwjtcf622f3x3zygagoa/ файла]. Это обеспечивает постоянство всей информации, которая содержится в базе данных. Для изменения файлов используется не менее сложная система — IPNS (InterPlanetary Naming System), смысл которой заключается в том, чтобы вернуть отнятую возможность обновлять файлы, не изменяя при этом саму суть IPFS (что иронично: ведь суть IPFS это хранить все файлы неизменными). В отличие от IPFS, ссылки IPNS, указывающие на файлы в сети, не являются вечными, имея период валидности, который пользователь назначает самостоятельно (тот, впрочем, может длиться достаточно долго, например 30 лет).


Из-за такой громоздкой структуры в IPFS/IPNS может быть трудно разобраться новичкам. Тем же, кто напротив хочет разобраться больше всех остальных, [https://github.com/ipfs/kubo стоит установить IPFS в виде официальной программы kubo], позволяющей открыть и поддерживать собственный узел, а также продвинуто взаимодействовать с сетью.
Из-за такой громоздкой структуры в IPFS/IPNS может быть трудно разобраться новичкам. Тем же, кто напротив хочет разобраться больше всех остальных, [https://github.com/ipfs/kubo стоит установить IPFS в виде официальной программы kubo], позволяющей открыть и поддерживать собственный узел, а также продвинуто взаимодействовать с сетью.
Источник — https://wiki.malw.lol/IPFS