Phát hành nền tảng GNUnet P2P 0.13. Quảng bá GNS như một tiêu chuẩn Internet

IETF (Lực lượng đặc nhiệm kỹ thuật Internet), cơ quan phát triển các giao thức và kiến ​​trúc Internet, đã bắt đầu quá trình chuẩn hóa hệ thống tên miền GNS (GNU Name System) do dự án phát triển GNUnet như một sự thay thế hoàn toàn phi tập trung và không bị kiểm duyệt cho DNS. Hiện tại xuất bản dự thảo đầu tiên của tiêu chuẩn, sau khi ổn định sẽ hình thành RFC, sẽ có trạng thái là “Tiêu chuẩn được đề xuất”.

GPS có thể được sử dụng song song với DNS và được sử dụng trong các ứng dụng truyền thống như trình duyệt web. Tính toàn vẹn và bất biến của hồ sơ được đảm bảo thông qua việc sử dụng các cơ chế mật mã. Không giống như DNS, GNS sử dụng biểu đồ có hướng thay vì hệ thống phân cấp máy chủ dạng cây. Việc phân giải tên tương tự như DNS, nhưng các yêu cầu và phản hồi được thực hiện một cách bí mật—nút xử lý yêu cầu không biết phản hồi đang được gửi đến ai và các nút chuyển tuyến cũng như bên quan sát bên thứ ba không thể giải mã các yêu cầu và phản hồi.

Vùng DNS trong GNS được xác định bằng cách sử dụng nhiều khóa chung và khóa riêng ECDSA dựa trên đường cong elip Curve25519. Sử dụng Curve25519 nhận thức một số người coi đây là một bước đi rất kỳ lạ, vì đối với ECDSA, họ sử dụng các loại đường cong elip khác và khi kết hợp với Curve25519, họ thường sử dụng thuật toán chữ ký số Ed25519, hiện đại hơn, an toàn hơn và nhanh hơn ECDSA. Từ quan điểm về sức mạnh mật mã, việc lựa chọn kích thước khóa cũng là vấn đề - 32 byte thay vì 64 byte, thường được sử dụng cho Ed25519, cũng như việc sử dụng thác nước mã hóa đối xứng bằng thuật toán AES và TwoFish ở chế độ CFB.

Cách tiếp cận này được giải thích là do nhu cầu triển khai các khóa phân cấp, giúp có thể sử dụng khóa chung gốc để trích xuất khóa chung con, tận dụng thuộc tính tuyến tính của Curve25519. Tính năng này cho phép bạn lấy khóa chung con mà không cần biết khóa gốc riêng. Kỹ thuật này cũng đã áp dụng bằng Bitcoin. Kích thước khóa 32 byte đã được chọn để cho phép khóa phù hợp với một bản ghi DNS.

Ngoài ra, có thể ghi nhận vấn đề mới khuôn khổ GNUnet 0.13, được thiết kế để xây dựng mạng P2P phi tập trung an toàn. Các mạng được tạo bằng GNUnet không có một điểm lỗi nào và có thể đảm bảo tính bất khả xâm phạm thông tin cá nhân của người dùng, bao gồm loại bỏ khả năng lạm dụng của các dịch vụ tình báo và quản trị viên có quyền truy cập vào các nút mạng. Bản phát hành bị gắn cờ vì chứa những thay đổi quan trọng về giao thức làm phá vỡ khả năng tương thích ngược với các phiên bản 0.12.x.

GNUnet hỗ trợ tạo mạng P2P qua TCP, UDP, HTTP/HTTPS, Bluetooth và WLAN và có thể hoạt động ở chế độ F2F (Bạn bè với bạn bè). Hỗ trợ truyền tải NAT, bao gồm sử dụng UPnP và ICMP. Để giải quyết vị trí của dữ liệu, có thể sử dụng bảng băm phân tán (DHT). Các công cụ để triển khai mạng lưới được cung cấp. Để cấp và thu hồi quyền truy cập có chọn lọc, dịch vụ trao đổi thuộc tính nhận dạng phi tập trung được sử dụng lấy lại ID, sử dụng GNS (Hệ thống tên GNU) và mã hóa dựa trên thuộc tính (Mã hóa dựa trên thuộc tính).

Hệ thống có mức tiêu thụ tài nguyên thấp và sử dụng kiến ​​trúc đa quy trình để cung cấp sự cách ly giữa các thành phần. Các công cụ linh hoạt được cung cấp để duy trì nhật ký và thu thập số liệu thống kê. Để phát triển các ứng dụng dành cho người dùng cuối, GNUnet cung cấp API cho ngôn ngữ C và các ràng buộc cho các ngôn ngữ lập trình khác. Để đơn giản hóa việc phát triển, người ta đề xuất sử dụng các vòng lặp và quy trình sự kiện thay vì các luồng. Nó bao gồm một thư viện thử nghiệm để triển khai tự động các mạng thử nghiệm bao gồm hàng chục nghìn mạng ngang hàng.

Ngoài GNS, một số ứng dụng làm sẵn cũng đang được phát triển dựa trên công nghệ GNUnet:

  • Dịch vụ chia sẻ tệp ẩn danh, không cho phép bạn phân tích thông tin do chỉ truyền dữ liệu ở dạng mã hóa và không cho phép bạn theo dõi ai đã đăng, tìm kiếm và tải xuống tệp nhờ sử dụng giao thức GAP.
  • Hệ thống VPN để tạo các dịch vụ ẩn trong miền “.gnu” và chuyển tiếp các đường hầm IPv4 và IPv6 qua mạng P2P. Ngoài ra, các sơ đồ dịch thuật IPv4-sang-IPv6 và IPv6-to-IPv4 cũng được hỗ trợ, cũng như tạo các đường hầm IPv4-qua-IPv6 và IPv6-qua-IPv4.
  • Dịch vụ hội thoại GNUnet để thực hiện cuộc gọi thoại qua GNUnet. GNS được sử dụng để nhận dạng người dùng; nội dung lưu lượng thoại được truyền dưới dạng mã hóa. Tính ẩn danh chưa được cung cấp - những người ngang hàng khác có thể theo dõi kết nối giữa hai người dùng và xác định địa chỉ IP của họ.
  • Nền tảng xây dựng mạng xã hội phi tập trung Secushare, sử dụng giao thức PSYC và hỗ trợ phân phối thông báo ở chế độ phát đa hướng bằng cách sử dụng mã hóa đầu cuối để chỉ những người dùng được ủy quyền mới có thể truy cập tin nhắn, tệp, cuộc trò chuyện và thảo luận (những người mà tin nhắn không được đề cập đến, bao gồm cả quản trị viên nút, sẽ không thể đọc chúng );
  • Hệ thống tổ chức email được mã hóa quyền riêng tư khá dễ dàng, sử dụng GNUnet để bảo vệ siêu dữ liệu và hỗ trợ nhiều giao thức mật mã để xác minh khóa;
  • Hệ thống thanh toán Hội thảo GNU, cung cấp tính năng ẩn danh cho người mua nhưng theo dõi các giao dịch của người bán để đảm bảo tính minh bạch và báo cáo thuế. Nó hỗ trợ làm việc với nhiều loại tiền tệ và tiền điện tử hiện có, bao gồm đô la, euro và bitcoin.

Các tính năng mới chính trong GNUnet 0.13:

  • Sổ đăng ký đã được đưa vào hoạt động GANA (Cơ quan cấp số GNUnet), chịu trách nhiệm gán tên và địa chỉ cho GNUnet.
  • Việc triển khai hệ thống tên miền phi tập trung GNS phù hợp với sự chỉ rõ, do IETF đề xuất. “Khối” plugin NSS đã được cải thiện. Đã thêm cờ BỔ SUNG mới cho các bản ghi không được xuất bản rõ ràng dưới nhãn đã cho nhưng được trình phân giải trả về. Đã thêm cảnh báo vào tiện ích gnunet-namestore khi thêm các mục TLSA hoặc SRV bên ngoài mục nhập BOX.
  • Trong cơ chế thu hồi khóa (GNS/REVOCATION), chức năng bằng chứng công việc đã hoàn thành chuyển sang sử dụng thuật toán băm Argon2.
  • Trong dịch vụ trao đổi phi tập trung các thuộc tính nhận dạng (RECLAIM), kích thước vé đã được tăng lên 256 bit.
  • Plugin vận chuyển sử dụng giao thức UDP để truyền dữ liệu đã được chuyển sang danh mục thử nghiệm do vấn đề về độ ổn định;
  • Định dạng tệp khóa ECDSA và phương thức tuần tự hóa khóa riêng được hợp nhất với các thư viện khác (các khóa cũ sẽ không còn hoạt động).
  • Thư viện được sử dụng như một triển khai các thuật toán mã hóa dựa trên các đường cong elip libnatri.
  • Đã thêm khả năng xây dựng tiện ích với thư viện cURL, không liên quan đến gnutls.
  • Máy chủ tích hợp liên tục trở lại Buildbot.
  • Các phần phụ thuộc của bản dựng bao gồm libmicrohttpd, libjansson và libsodium.

Nguồn: opennet.ru

Thêm một lời nhận xét