GNUnet P2P 平台 0.13 发布。 推动 GNS 成为互联网标准

开发互联网协议和架构的IETF(互联网工程任务组)已经开始对该项目开发的GNS(GNU Name System)域名系统进行标准化进程 GNU网 作为 DNS 的完全去中心化且不受审查的替代品。 现在 发表 标准的初稿,稳定后将形成 RFC,该草案将具有“拟议标准”的地位。

全球导航卫星系统 可以与 DNS 并用,并用于 Web 浏览器等传统应用程序。 通过使用加密机制来确保记录的完整性和不变性。 与 DNS 不同,GNS 使用有向图而不是服务器的树状层次结构。 名称解析与 DNS 类似,但请求和响应是以保密方式发出的——处理请求的节点不知道响应发送给谁,传输节点和第三方观察者无法解密请求和响应。

GNS 中的 DNS 区域是使用一堆公钥和私钥确定的 ECDSA 基于椭圆曲线 Curve25519。 使用 Curve25519 感知 有些人认为这是一个非常奇怪的步骤,因为对于 ECDSA,他们使用其他类型的椭圆曲线,并且当与 Curve25519 配对时,他们通常使用数字签名算法 Ed25519, 更现代,比 ECDSA 更安全、更快速。 从加密强度的角度来看,密钥大小的选择也是有问题的——32字节而不是通常用于Ed64的25519字节,以及使用 级联 CFB 模式下使用 AES 和 TwoFish 算法的对称加密。

这种方法的解释是需要实现分层密钥,从而可以利用 Curve25519 的线性属性,使用根公钥来提取子公钥。 此功能允许您在不知道根私钥的情况下获取子公钥。 这个技术也是 申请 在比特币中。 选择 32 字节密钥大小是为了让密钥适合一条 DNS 记录。

另外,还可以注意到 新发布 框架 GNUnet 0.13,专为构建安全的去中心化 P2P 网络而设计。 使用GNUnet创建的网络不存在单点故障,并且能够保证用户私人信息的不可侵犯性,包括消除情报部门和有权访问网络节点的管理员可能的滥用行为。 该版本被标记为包含重大协议更改,这些更改破坏了与版本 0.12.x 的向后兼容性。

GNUnet 支持通过 TCP、UDP、HTTP/HTTPS、蓝牙和 WLAN 创建 P2P 网络,并且可以在 F2F(Friend-to-friend)模式下运行。 支持 NAT 穿越,包括使用 UPnP 和 ICMP。 为了解决数据的放置问题,可以使用分布式哈希表(DHT)。 提供了用于部署网状网络的工具。 为了有选择地授予和撤销访问权限,使用了去中心化的身份属性交换服务 回收ID, 使用 GNS(GNU 名称系统)和基于属性的加密(基于属性的加密).

系统资源消耗低,采用多进程架构,保证组件之间的隔离。 提供了灵活的工具来维护日志和收集统计数据。 为了开发最终用途的应用程序,GNUnet 提供了 C 语言的 API 和其他编程语言的绑定。 为了简化开发,建议使用事件循环和进程来代替线程。 它包括一个测试库,用于自动部署覆盖数万个节点的实验网络。

除了 GNS 之外,还有一些基于 GNUnet 技术的现成应用程序正在开发中:

  • 匿名文件共享服务,由于仅以加密形式传输数据,因此不允许您分析信息,并且由于使用了 GAP 协议,因此不允许您跟踪谁发布、搜索和下载文件。
  • VPN 系统,用于在“.gnu”域中创建隐藏服务并通过 P4P 网络转发 IPv6 和 IPv2 隧道。 此外,还支持 IPv4 到 IPv6 和 IPv6 到 IPv4 转换方案,以及 IPv4-over-IPv6 和 IPv6-over-IPv4 隧道的创建。
  • GNUnet 对话服务,用于通过 GNUnet 进行语音呼叫。 GNS 用于识别用户;语音流量的内容以加密形式传输。 尚未提供匿名性 - 其他对等点可以跟踪两个用户之间的连接并确定他们的 IP 地址。
  • 构建去中心化社交网络的平台 塞库共享,使用协议 精神病院 支持使用端到端加密以多播模式分发通知,以便只有授权用户才能访问消息、文件、聊天和讨论(消息未发送到的用户,包括节点管理员,将无法读取它们);
  • 用于组织加密电子邮件的系统 相当简单的隐私,它使用GNUnet进行元数据保护并支持各种 密码协议 用于密钥验证;
  • 支付系统 GNU塔勒,它为买家提供匿名性,但跟踪卖家交易以提高透明度和税务报告。 它支持使用各种现有货币和电子货币,包括美元、欧元和比特币。

GNUnet 0.13 中的主要新特性:

  • 登记册已投入运行 GANA (GNUnet 号码分配机构),负责为 GNUnet 分配名称和地址。
  • 去中心化域名系统 GNS 的实施与 规格,由 IETF 提出。 NSS 插件“block”已得到改进。 为未在给定标签下显式发布但由解析器返回的记录添加了新的 SUPPLMENTAL 标志。 在条目外部添加 TLSA 或 SRV 条目时,向 gnunet-namestore 实用程序添加了警告 包装盒.
  • 在密钥撤销机制(GNS/REVOCATION)中,函数 工作完成证明 改用 Argon2 哈希算法。
  • 在去中心化身份属性交换(RECLAIM)服务中,票据大小已增加至 256 位。
  • 使用UDP协议进行数据传输的传输插件,由于稳定​​性问题已移至实验类别;
  • ECDSA密钥文件格式和私钥序列化方法与其他库统一(旧密钥将不再起作用)。
  • 该库用作基于椭圆曲线的加密算法的实现 .
  • 添加了使用 cURL 库构建实用程序的功能,与 gnutls 无关。
  • 持续集成服务器返回 建造机器人.
  • 构建依赖项包括 libmicrohttpd、libjansson 和 libsodium。

来源: opennet.ru

添加评论