انتشار پلتفرم GNUnet P2P 0.13. ارتقای GNS به عنوان استاندارد اینترنت

IETF (گروه وظیفه مهندسی اینترنت) که پروتکل‌ها و معماری اینترنت را توسعه می‌دهد، فرآیند استانداردسازی سیستم نام دامنه GNS (سیستم نام گنو) را که توسط این پروژه توسعه داده شده است، آغاز کرده است. گنو به عنوان یک جایگزین کاملا غیر متمرکز و ضد سانسور برای DNS. در حال حاضر منتشر شد اولین پیش نویس استاندارد که پس از تثبیت آن یک RFC تشکیل می شود که وضعیت "استاندارد پیشنهادی" را خواهد داشت.

جی پی اس می تواند در کنار DNS مورد استفاده قرار گیرد و در برنامه های کاربردی سنتی مانند مرورگرهای وب استفاده شود. یکپارچگی و تغییرناپذیری رکوردها از طریق استفاده از مکانیسم های رمزنگاری تضمین می شود. برخلاف DNS، GNS از یک گراف جهت دار به جای سلسله مراتب درخت مانند از سرورها استفاده می کند. وضوح نام مشابه DNS است، اما درخواست‌ها و پاسخ‌ها به شیوه‌ای محرمانه انجام می‌شوند - گرهی که درخواست را پردازش می‌کند، نمی‌داند پاسخ برای چه کسی ارسال می‌شود، و گره‌های انتقال و ناظران شخص ثالث نمی‌توانند درخواست‌ها و پاسخ‌ها را رمزگشایی کنند.

منطقه DNS در GNS با استفاده از یک دسته کلید عمومی و خصوصی تعیین می شود ECDSA بر اساس منحنی های بیضوی منحنی 25519. با استفاده از Curve25519 درک شده برخی آن را یک مرحله بسیار عجیب می دانند، زیرا برای ECDSA از انواع دیگر منحنی های بیضوی استفاده می کنند، و زمانی که با Curve25519 جفت می شوند، معمولا از الگوریتم امضای دیجیتال استفاده می کنند. ویرایش 25519, مدرن تر، ایمن تر و سریعتر از ECDSA. از نقطه نظر قدرت رمزنگاری، انتخاب اندازه کلید نیز مشکوک است - 32 بایت به جای 64 بایت، که معمولا برای Ed25519 استفاده می شود، و همچنین استفاده آبشار رمزگذاری متقارن با استفاده از الگوریتم های AES و TwoFish در حالت CFB.

این رویکرد با نیاز به پیاده‌سازی کلیدهای سلسله مراتبی توضیح داده می‌شود که استفاده از کلید عمومی ریشه برای استخراج یک کلید عمومی فرزند، با بهره‌گیری از ویژگی خطی Curve25519 را ممکن می‌سازد. این ویژگی به شما امکان می دهد تا کلیدهای عمومی فرزند را بدون اطلاع از کلیدهای ریشه خصوصی بدست آورید. این تکنیک نیز هست کاربردی در بیت کوین اندازه کلید 32 بایتی انتخاب شد تا کلید در یک رکورد DNS قرار گیرد.

علاوه بر این، می توان به آن اشاره کرد شماره جدید چارچوب گنو نت 0.13، برای ایجاد شبکه های P2P غیرمتمرکز ایمن طراحی شده است. شبکه هایی که با استفاده از گنو نت ایجاد می شوند، یک نقطه خرابی ندارند و می توانند مصون ماندن اطلاعات خصوصی کاربران، از جمله حذف سوء استفاده احتمالی توسط سرویس های اطلاعاتی و مدیران با دسترسی به گره های شبکه را تضمین کنند. این نسخه حاوی تغییرات قابل توجهی در پروتکل است که سازگاری با نسخه‌های 0.12.x را نقض می‌کند.

GNUnet از ایجاد شبکه های P2P از طریق TCP، UDP، HTTP/HTTPS، بلوتوث و WLAN پشتیبانی می کند و می تواند در حالت F2F (دوست به دوست) کار کند. پیمایش NAT از جمله استفاده از UPnP و ICMP پشتیبانی می شود. برای پرداختن به محل قرارگیری داده ها، می توان از جدول هش توزیع شده (DHT) استفاده کرد. ابزارهایی برای استقرار شبکه های مش ارائه شده است. برای اعطای انتخابی و لغو حقوق دسترسی، از یک سرویس تبادل ویژگی شناسایی غیرمتمرکز استفاده می شود شناسه بازپس گیری, استفاده كردن GNS (سیستم نام گنو) و رمزگذاری مبتنی بر ویژگی (رمزگذاری مبتنی بر ویژگی).

این سیستم دارای مصرف کم منابع است و از معماری چند فرآیندی برای ایجاد جداسازی بین اجزا استفاده می کند. ابزارهای انعطاف پذیر برای نگهداری گزارش ها و جمع آوری آمار ارائه شده است. برای توسعه برنامه های کاربردی نهایی، GNUnet یک API برای زبان C و اتصالات برای سایر زبان های برنامه نویسی ارائه می دهد. برای ساده سازی توسعه، استفاده از حلقه های رویداد و فرآیندها به جای نخ ها پیشنهاد شده است. این شامل یک کتابخانه آزمایشی برای استقرار خودکار شبکه های آزمایشی است که ده ها هزار همتا را پوشش می دهد.

علاوه بر GNS، چندین برنامه کاربردی آماده نیز بر اساس فناوری‌های GNUnet در حال توسعه هستند:

  • سرویسی برای به اشتراک گذاری فایل های ناشناس که به دلیل انتقال داده ها فقط به صورت رمزگذاری شده به شما امکان تجزیه و تحلیل اطلاعات را نمی دهد و به لطف استفاده از پروتکل GAP به شما اجازه نمی دهد که ردیابی کنید چه کسانی فایل ها را پست، جستجو و دانلود کرده اند.
  • سیستم VPN برای ایجاد سرویس های پنهان در دامنه ".gnu" و ارسال تونل های IPv4 و IPv6 از طریق یک شبکه P2P. علاوه بر این، طرح‌های ترجمه IPv4 به IPv6 و IPv6 به IPv4 و همچنین ایجاد تونل‌های IPv4-over-IPv6 و IPv6-over-IPv4 پشتیبانی می‌شوند.
  • سرویس مکالمه گنونت برای برقراری تماس صوتی از طریق گنونت. GNS برای شناسایی کاربران استفاده می شود؛ محتوای ترافیک صوتی به شکل رمزگذاری شده منتقل می شود. ناشناس بودن هنوز ارائه نشده است - سایر همتایان می توانند ارتباط بین دو کاربر را ردیابی کرده و آدرس IP آنها را تعیین کنند.
  • بستری برای ساخت شبکه های اجتماعی غیرمتمرکز Secushare، با استفاده از پروتکل روانی و پشتیبانی از توزیع اعلان‌ها در حالت چندپخشی با استفاده از رمزگذاری سرتاسر به‌گونه‌ای که فقط کاربران مجاز بتوانند به پیام‌ها، فایل‌ها، چت‌ها و بحث‌ها دسترسی داشته باشند (کسانی که پیام‌ها به آنها خطاب نمی‌شود، از جمله مدیران گره، قادر به خواندن آنها نخواهند بود. )
  • سیستم سازماندهی ایمیل های رمزگذاری شده حفظ حریم خصوصی بسیار آسان، که از GNUnet برای محافظت از ابرداده استفاده می کند و از انواع مختلف پشتیبانی می کند پروتکل های رمزنگاری برای تأیید کلید؛
  • سیستم پرداخت گیلر گنو، که ناشناس بودن را برای خریداران فراهم می کند اما معاملات فروشنده را برای شفافیت و گزارش مالیاتی ردیابی می کند. از کار با ارزهای مختلف موجود و پول الکترونیکی از جمله دلار، یورو و بیت کوین پشتیبانی می کند.

مهمترین ویژگی های جدید در GNUnet 0.13:

  • ثبت به بهره برداری رسید گانا (GNUnet Assigned Numbers Authority)، مسئول تخصیص نام و آدرس برای GNUnet.
  • اجرای سیستم نام دامنه غیرمتمرکز GNS با هم تراز است مشخصاتپیشنهاد شده توسط IETF. پلاگین NSS "block" بهبود یافته است. پرچم های تکمیلی جدید برای رکوردهایی که به صراحت تحت برچسب داده شده منتشر نشده اند، اما توسط حل کننده بازگردانده می شوند، اضافه شده است. هنگام اضافه کردن ورودی های TLSA یا SRV خارج از ورودی، یک هشدار به ابزار gnunet-namestore اضافه کرد. BOX.
  • در مکانیسم ابطال کلید (GNS/REVOCATION)، عملکرد اثبات کار انجام شده تغییر به استفاده از الگوریتم هش Argon2.
  • در سرویس تبادل غیرمتمرکز ویژگی های شناسایی (RECLAIM)، اندازه بلیط به 256 بیت افزایش یافته است.
  • افزونه حمل و نقل که از پروتکل UDP برای انتقال داده استفاده می کند، به دلیل مشکلات پایداری به دسته آزمایشی منتقل شده است.
  • فرمت فایل کلید ECDSA و روش سریال سازی کلید خصوصی با کتابخانه های دیگر یکپارچه شده است (کلیدهای قدیمی دیگر کار نمی کنند).
  • این کتابخانه به عنوان پیاده سازی الگوریتم های رمزگذاری بر اساس منحنی های بیضوی استفاده می شود لیب سدیم.
  • قابلیت ساخت ابزارهای کمکی با کتابخانه cURL اضافه شده است که به gnutls مربوط نمی شود.
  • سرور یکپارچه سازی پیوسته بازگشت Buildbot.
  • وابستگی های ساخت شامل libmicrohttpd، libjansson و libsodium هستند.

منبع: opennet.ru

اضافه کردن نظر