Издаване на глобалната децентрализирана файлова система IPFS 0.6

Публикувано издаване на децентрализирана файлова система IPFS 0.6 (InterPlanetary File System), създаваща глобално версионирано хранилище на файлове, разгръщано под формата на P2P мрежа, образувана от системите на участниците. IPFS комбинира идеи, вече реализирани в такива системи като Git, BitTorrent, Kademlia, SFS и Web, и наподобява един „рой“ BitTorrent (пиронове, участващи в раздаването), обменящи Git-обекти. IPFS се отличава с адресиране по съдържание, а не по място на съхранение и произволни имена. Кодът на еталонната реализация е написан на език Go и се разпространява под лицензите Apache 2.0 и MIT.

Новата версия е забележителна с включването по подразбиране на транспорт, базиран на протокол QUIC, който представлява надстройка над протокола UDP, поддържащ множествено свързване и осигуряващ методи за криптиране, еквивалентни на TLS/SSL. В IPFS сокетът за приемане на UDP свързвания автоматично се стартира на същия адрес и мрежов порт, на който е обработчикът на транспорта, базиран на TCP. QUIC се използва както за входящи, така и за изходящи свързвания, като при свързване с нови възли, в случай на недостъпност на QUIC, се извършва откат към TCP.

Второто важно нововъведение е поддръжката на защитен транспорт NOISE, базиран на протокола Noise и развиван в рамките на libp2p, модулна мрежова структура за P2P приложения. След началното съгласуване на връзката, целият последващ обмен на данни между участниците е криптиран и защитен от подслушване.
NOISE замени транспорта SECIO, но като приоритетен метод за криптиране на връзките между възлите все още се прилага TLS 1.3. NOISE е достатъчно прост за реализация и се позиционира като универсален крос-платформен транспорт, който може да бъде реализиран на различни програмни езици.

В новото издание също е предоставена възможността за добавяне на собствени страници „404 Not Found“ и е добавена опционална поддръжка на метода за кодиране Base36, който е оптимален за алфа-цифрови данни без разлика в регистъра на символите, като например домейни (при използване на Base32 ключовете Ed25519 IPNS надвишават лимита за размер на поддомейна с два байта, а при Base36 попадат в лимита). Освен това в настройките е добавена опцията
«peering„, която определя списъка с възли за свързване, поддържане на връзката и повторно свързване с цел определяне на „липките“ връзки между често използваните пирати.

Напомняме, че в IPFS линкът за достъп до файла е пряко свързан с неговото съдържание и включва криптографски хеш на съдържанието. Адресът на файла не може да се преименува произволно, той може да се промени единствено след промяна на съдържанието. Аналогично, не е възможно да се направи промяна във файла, без да се промени адресът (старата версия ще остане на предишния адрес, а новата ще бъде достъпна на друг адрес, тъй като хешът на съдържанието на файла ще се промени). С оглед на това, че идентификаторът на файла се променя при всяка промяна, за да не се предават нови линкове всеки път, се предоставят услуги за свързване на постоянни адреси, отчитат различни версии на файла (IPNS), или закрепване на псевдоним, подобно на традиционните ФС и DNS (MFS (Mutable File System) и DNSLink).

Подобно на BitTorrent, данните се съхраняват пряко на системите на участниците, които обменят информация в P2P режим, без привързване към централизирани възли. При необходимост за получаване на файл с определено съдържание, системата намира участници, които имат този файл и го предоставя от техните системи на части в няколко потока. След като участникът е изтеглил файла на своята система, той автоматично става една от точките за разпространение. За определяне на участниците в мрежата, на възлите които присъства интересното съдържание, се използва разпределена хеш таблица (DHT). За достъп до глобалната ФС IPFS може да се използва протокол HTTP или да се монтира виртуална ФС /ipfs с помощта на модула FUSE.

IPFS помага за решаване на проблеми като надеждно съхранение (ако основното хранилище спре да работи, файлът може да бъде изтеглен от системите на други потребители), противодействие на цензурирането на съдържанието (за да се блокира, е необходимо да се блокират всички системи на потребители, на които има копия на данните) и организация на достъпа в отсъствие на директна интернет връзка или при лошо качество на канала (данните могат да бъдат изтеглени чрез най-близките участници в локалната мрежа). Освен съхранението на файлове и обмена на данни, IPFS може да се използва и като основа за създаване на нови услуги, например, за организиране на работата на сайтове, не свързани със сървъри, или за създаване на разпределени приложения.

Издаване на глобалната децентрализирана файлова система IPFS 0.6

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster