GNUnet P2P платформасынын релизи 0.13. GNSти Интернет стандарты катары жайылтуу

Комитет IETF (Internet Engineering Task Force), занимающийся развитием протоколов и архитектуры Интернет, начал процесс стандартизации системы доменных имён GNS (GNU Name System), развиваемой проектом GNUnet в качестве полностью децентрализованной и недоступной для цензуры замены DNS. В настоящий момент жарыяланган первый черновой вариант стандарта, после стабилизации которого будет сформирован RFC, имеющий статус «Предложенного стандарта».

GNS может применяться бок о бок с DNS и использоваться в традиционных приложениях, таких как web-браузеры. Целостность и неизменность записей обеспечивается за счёт использования криптографических механизмов. В отличие от DNS в GNS вместо древовидной иерархии серверов применяется направленный граф. Преобразование имён сходно с DNS, но запросы и ответы выполняются с сохранением конфиденциальности — обрабатывающий запрос узел не знает кому отдаётся ответ, а транзитные узлы и сторонние наблюдатели не могут расшифровать запросы и ответы.

DNS-зона в GNS определяется при помощи связки из открытого и закрытого ключей ECDSA на основе эллиптических кривых Curve25519. Использование Curve25519 кабыл алынган некоторыми как весьма странный шаг, так как для ECDSA применяют другие типы эллиптических кривых, а в паре с Curve25519 обычно используют алгоритм цифровых подписей Ed25519, заманбапраак, более безопасный и более быстрый, чем ECDSA. С точки зрения криптостойкости также вызывает сомнение выбор размера ключа — 32 байта вместо 64 байт, обычно используемых для Ed25519, а также применение каскадного симметричного шифрования, используя алгоритмы AES и TwoFish в режиме CFB.

Подобный подход объясняется необходимостью реализации иерархических ключей, дающих возможность использовать корневой открытый ключ для извлечения дочернего открытого ключа, пользуясь свойством линейности кривой Curve25519. Данная особенность позволяет получать дочерние открытые ключи без знания закрытых корневых ключей. Указанная техника также колдонулат в Bitcoin. 32-байтовый размер ключа выбран для того чтобы ключ вмещался в одну запись DNS.

Мындан тышкары, белгилей кетүү керек жаңы чыгарылыш алкак GNUnet 0.13, коопсуз борбордон ажыратылган P2P тармактарын куруу үчүн иштелип чыккан. GNUnet аркылуу түзүлгөн түйүндөр бир эле катачылыкка ээ эмес жана колдонуучулардын жеке маалыматынын кол тийбестигине кепилдик бере алат, анын ичинде чалгындоо кызматтары жана тармак түйүндөрүнө кирүү мүмкүнчүлүгү бар администраторлор тарабынан мүмкүн болгон кыянаттыктарды жоюу. Релиз 0.12.x версиялары менен артка карай шайкештикти бузган олуттуу протоколдук өзгөрүүлөрдү камтыган деп белгиленет.

GNUnet TCP, UDP, HTTP/HTTPS, Bluetooth жана WLAN аркылуу P2P тармактарын түзүүнү колдойт жана F2F (Дос-дос) режиминде иштей алат. NAT өтүү колдоого алынат, анын ичинде UPnP жана ICMP колдонуу. Маалыматтарды жайгаштыруу маселесин чечүү үчүн бөлүштүрүлгөн хэш таблицасын (DHT) колдонсо болот. Тор тармактарын жайылтуу үчүн куралдар берилген. Кирүү укуктарын тандап берүү жана жокко чыгаруу үчүн борбордон ажыратылган идентификациялык атрибуттарды алмаштыруу кызматы колдонулат ID кайра алуу, колдонуу GNS (GNU Name System) жана атрибутка негизделген шифрлөө (Атрибутка негизделген шифрлөө).

Система аз ресурс керектөөсүн жана компоненттердин ортосундагы обочолонууну камсыз кылуу үчүн көп процесстик архитектураны колдонот. Журналдарды жүргүзүү жана статистиканы чогултуу үчүн ийкемдүү инструменттер берилген. Акыркы колдонуу тиркемелерин иштеп чыгуу үчүн, GNUnet C тили үчүн API жана башка программалоо тилдери үчүн байланыштарды камсыз кылат. Иштеп чыгууну жөнөкөйлөтүү үчүн жиптердин ордуна окуя циклдерин жана процесстерин колдонуу сунушталат. Ал он миңдеген теңтуштарды камтыган эксперименталдык тармактарды автоматтык түрдө жайылтуу үчүн тесттик китепкананы камтыйт.

Кроме GNS на базе технологий GNUnet также развивается несколько готовых приложений:

  • Маалыматтарды шифрленген түрдө гана өткөрүп берүүнүн эсебинен маалыматты анализдөөгө мүмкүндүк бербеген жана GAP протоколун колдонуунун аркасында файлдарды ким жайгаштырганын, издегенин жана жүктөп алганын көзөмөлдөөгө мүмкүндүк бербеген файлдарды жашыруун бөлүшүү кызматы.
  • ".gnu" доменинде жашыруун кызматтарды түзүү жана IPv4 жана IPv6 туннелдерин P2P тармагы аркылуу жөнөтүү үчүн VPN системасы. Кошумча, IPv4-то-IPv6 жана IPv6-to-IPv4 которуу схемалары, ошондой эле IPv4-over-IPv6 жана IPv6-over-IPv4 туннелдерин түзүү колдоого алынат.
  • GNUnet аркылуу үн чалууларды жасоо үчүн GNUnet сүйлөшүү кызматы. GNS колдонуучуларды аныктоо үчүн колдонулат; үн трафигинин мазмуну шифрленген түрдө берилет. Анонимдүүлүк азырынча бериле элек - башка курбулар эки колдонуучунун ортосундагы байланышка көз салып, алардын IP даректерин аныктай алышат.
  • Борбордон ажыратылган социалдык тармактарды куруу үчүн платформа Secushare, протоколду колдонуу PSYC жана билдирүүлөрдү, файлдарга, чаттарга жана талкууларга ыйгарым укуктуу колдонуучулар гана кире алгыдай (билдирүүлөр жөнөтүлбөгөндөр, анын ичинде түйүн администраторлору, аларды окуй алышпайт) үчтөн аягына чейин шифрлөөнүн жардамы менен мультикаст режиминде эскертмелерди таратууну колдоо );
  • Шифрленген электрондук почтаны уюштуруу системасы абдан жеңил купуялык, ал метаберилиштерди коргоо үчүн GNUnet колдонот жана ар кандай колдойт криптографиялык протоколдор ачкыч текшерүү үчүн;
  • Төлөм тутуму GNU семинары, ал сатып алуучулар үчүн анонимдүүлүктү камсыз кылат, бирок ачыктык жана салык отчеттуулугу үчүн сатуучунун транзакцияларына көз салат. Бул ар кандай учурдагы валюталар жана электрондук акчалар, анын ичинде доллар, евро жана биткойндор менен иштөөнү колдойт.

GNUnet 0.13тин негизги жаңы функциялары:

  • Введён в строй реестр ГАНА (GNUnet Assigned Numbers Authority), отвечающий за назначение имён и адресов для GNUnet.
  • Реализация децентрализованной системы доменных имён GNS приведена в соответствие со спецификация, предложенной в IETF. Налажена работа NSS-плагина «block». Добавлены новые флаги SUPPLEMENTAL для записей, которые явно не опубликованы под заданной меткой, но возвращаются резолвером. В утилиту gnunet-namestore добавлен вывод предупреждения при добавлении записей TLSA или SRV вне записи BOX.
  • В механизме отзыва ключей (GNS/REVOCATION) функция доказательства выполненной работы переведена на использование алгоритма хэширования Argon2.
  • В сервисе децентрализованного обмена атрибутами идентификации (RECLAIM) размер тикета увеличен до 256 бит.
  • Транспортный плагин, использующий для передачи данных протокол UDP, перемещён в категорию экспериментальных из-за наличия проблем со стабильностью;
  • Формат файла ключей и метод сериализации закрытых ключей ECDSA унифицирован с другими библиотеками (старые ключи перестанут работать).
  • В качестве реализации алгоритмов шифрования на основе эллиптических кривых задействована библиотека либсодий.
  • Добавлена возможность сборки утилит с библиотекой cURL, не связанной с gnutls.
  • Возвращён сервер непрерывной интеграции Buildbot.
  • В сборочные зависимости включены библиотеки libmicrohttpd, libjansson и libsodium.

Source: opennet.ru

Комментарий кошуу