ການປ່ອຍແພລະຕະຟອມ 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 ບໍ່ມີຈຸດດຽວຂອງຄວາມລົ້ມເຫລວແລະສາມາດຮັບປະກັນການ inviolability ຂອງຂໍ້ມູນສ່ວນຕົວຂອງຜູ້ໃຊ້, ລວມທັງການລົບລ້າງການລ່ວງລະເມີດທີ່ເປັນໄປໄດ້ໂດຍການບໍລິການທາງປັນຍາແລະຜູ້ບໍລິຫານທີ່ມີການເຂົ້າເຖິງ nodes ເຄືອຂ່າຍ. ການປ່ອຍດັ່ງກ່າວຖືກໝາຍວ່າມີການປ່ຽນໂປຣໂຕຄໍທີ່ສຳຄັນທີ່ທຳລາຍຄວາມເຂົ້າກັນໄດ້ກັບເວີຊັນ 0.12.x.

GNUnet ຮອງຮັບການສ້າງເຄືອຂ່າຍ P2P ຜ່ານ TCP, UDP, HTTP/HTTPS, Bluetooth ແລະ WLAN, ແລະສາມາດເຮັດວຽກໃນໂໝດ F2F (Friend-to-friend). NAT traversal ແມ່ນສະຫນັບສະຫນູນ, ລວມທັງການນໍາໃຊ້ UPnP ແລະ ICMP. ເພື່ອແກ້ໄຂການຈັດວາງຂໍ້ມູນ, ມັນເປັນໄປໄດ້ທີ່ຈະໃຊ້ຕາຕະລາງ hash ແຈກຢາຍ (DHT). ເຄື່ອງມືສໍາລັບການນໍາໃຊ້ເຄືອຂ່າຍຕາຫນ່າງແມ່ນສະຫນອງໃຫ້. ເພື່ອເລືອກສິດ ແລະຖອນສິດການເຂົ້າເຖິງ, ການບໍລິການແລກປ່ຽນຄຸນສົມບັດການລະບຸຕົວຕົນແບບແບ່ງຂັ້ນຄຸ້ມຄອງແມ່ນໃຊ້. ຂໍ ID ຄືນ, ການ​ນໍາ​ໃຊ້ GNS (GNU Name System) ແລະການເຂົ້າລະຫັດຕາມຄຸນລັກສະນະ (ການເຂົ້າລະຫັດຕາມຄຸນສົມບັດ).

ລະບົບມີລັກສະນະການບໍລິໂພກຊັບພະຍາກອນຕ່ໍາແລະນໍາໃຊ້ສະຖາປັດຕະຍະກໍາຫຼາຍຂະບວນການເພື່ອສະຫນອງການໂດດດ່ຽວລະຫວ່າງອົງປະກອບ. ເຄື່ອງມືທີ່ມີຄວາມຍືດຫຍຸ່ນໄດ້ຖືກສະຫນອງໃຫ້ສໍາລັບການຮັກສາບັນທຶກແລະການລວບລວມສະຖິຕິ. ເພື່ອພັດທະນາແອັບພລິເຄຊັນທີ່ໃຊ້ສິ້ນສຸດ, GNUnet ໃຫ້ API ສໍາລັບພາສາ C ແລະການຜູກມັດສໍາລັບພາສາການຂຽນໂປຼແກຼມອື່ນໆ. ເພື່ອເຮັດໃຫ້ການພັດທະນາງ່າຍດາຍ, ມັນໄດ້ຖືກສະເຫນີໃຫ້ໃຊ້ loops ເຫດການແລະຂະບວນການແທນທີ່ຈະເປັນກະທູ້. ມັນປະກອບມີຫ້ອງສະຫມຸດການທົດສອບສໍາລັບການນໍາໃຊ້ອັດຕະໂນມັດຂອງເຄືອຂ່າຍທົດລອງທີ່ກວມເອົາຫລາຍສິບພັນຄົນ.

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

  • ການບໍລິການສໍາລັບການແບ່ງປັນໄຟລ໌ທີ່ບໍ່ເປີດເຜີຍຊື່, ເຊິ່ງບໍ່ອະນຸຍາດໃຫ້ທ່ານສາມາດວິເຄາະຂໍ້ມູນເນື່ອງຈາກການໂອນຂໍ້ມູນພຽງແຕ່ໃນຮູບແບບທີ່ຖືກເຂົ້າລະຫັດແລະບໍ່ອະນຸຍາດໃຫ້ທ່ານຕິດຕາມຜູ້ທີ່ຂຽນ, ຊອກຫາແລະດາວໂຫລດໄຟລ໌ຍ້ອນການນໍາໃຊ້ໂປໂຕຄອນ GAP.
  • ລະບົບ VPN ເພື່ອສ້າງການບໍລິການທີ່ເຊື່ອງໄວ້ໃນໂດເມນ “.gnu” ແລະສົ່ງຕໍ່ອຸໂມງ IPv4 ແລະ IPv6 ຜ່ານເຄືອຂ່າຍ P2P. ນອກຈາກນັ້ນ, ລະບົບການແປພາສາ IPv4-to-IPv6 ແລະ IPv6-to-IPv4 ໄດ້ຮັບການສະຫນັບສະຫນູນ, ເຊັ່ນດຽວກັນກັບການສ້າງອຸໂມງ IPv4-over-IPv6 ແລະ IPv6-over-IPv4.
  • ບໍລິການສົນທະນາ GNUnet ສໍາລັບການໂທສຽງຜ່ານ GNUnet. GNS ຖືກນໍາໃຊ້ເພື່ອກໍານົດຜູ້ໃຊ້; ເນື້ອໃນຂອງການຈະລາຈອນສຽງຖືກສົ່ງໃນຮູບແບບທີ່ຖືກເຂົ້າລະຫັດ. ການປິດບັງຊື່ຍັງບໍ່ໄດ້ສະຫນອງໃຫ້ - ມິດສະຫາຍອື່ນໆສາມາດຕິດຕາມການເຊື່ອມຕໍ່ລະຫວ່າງສອງຜູ້ໃຊ້ແລະກໍານົດທີ່ຢູ່ IP ຂອງເຂົາເຈົ້າ.
  • ເວທີການສ້າງເຄືອຂ່າຍສັງຄົມແບບກະຈາຍ Secushare, ການນໍາໃຊ້ອະນຸສັນຍາ PSYC ແລະສະຫນັບສະຫນູນການແຈກຢາຍການແຈ້ງເຕືອນໃນຮູບແບບ multicast ໂດຍໃຊ້ການເຂົ້າລະຫັດແບບ end-to-end ເພື່ອໃຫ້ຜູ້ໃຊ້ທີ່ໄດ້ຮັບອະນຸຍາດເທົ່ານັ້ນສາມາດເຂົ້າເຖິງຂໍ້ຄວາມ, ໄຟລ໌, ການສົນທະນາແລະການສົນທະນາ (ຜູ້ທີ່ຂໍ້ຄວາມບໍ່ໄດ້ຖືກກ່າວເຖິງ, ລວມທັງຜູ້ບໍລິຫານ node, ຈະບໍ່ສາມາດອ່ານພວກມັນໄດ້. );
  • ລະບົບຈັດລະບຽບອີເມລ໌ເຂົ້າລະຫັດ pretty ຄວາມເປັນສ່ວນຕົວງ່າຍ, ເຊິ່ງໃຊ້ GNUnet ສໍາລັບການປົກປ້ອງ metadata ແລະສະຫນັບສະຫນູນຕ່າງໆ ໂປໂຕຄອນການເຂົ້າລະຫັດລັບ ສໍາລັບການຢັ້ງຢືນທີ່ສໍາຄັນ;
  • ລະບົບການຈ່າຍເງິນ ກອງປະຊຸມ GNU, ເຊິ່ງສະຫນອງການປິດບັງຊື່ສໍາລັບຜູ້ຊື້ແຕ່ຕິດຕາມທຸລະກໍາຂອງຜູ້ຂາຍເພື່ອຄວາມໂປ່ງໃສແລະການລາຍງານພາສີ. ມັນສະຫນັບສະຫນູນການເຮັດວຽກກັບສະກຸນເງິນທີ່ມີຢູ່ແລະເງິນເອເລັກໂຕຣນິກຕ່າງໆ, ລວມທັງເງິນໂດລາ, ເອີໂຣແລະ bitcoins.

ຄຸນນະສົມບັດໃຫມ່ທີ່ສໍາຄັນໃນ GNUnet 0.13:

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

ແຫຼ່ງຂໍ້ມູນ: opennet.ru

ເພີ່ມຄວາມຄິດເຫັນ