安全理念 — 受 ₿itcoin 启发

密码学 + 开源

OpenNHP 的安全设计借鉴了历史上最经受考验的安全模型。

Bitcoin 的启示

Bitcoin 持有超过 1 万亿美元的价值——是地球上每个黑客最具诱惑力的目标。 然而在 15 年以上的不断攻击之后,它仍然未被攻破。传统的安全方法 早就失败了。是什么让 Bitcoin 与众不同?

🔐

密码学

密码学是网络安全的基石——建立在严格的数学证明之上, 而非假设。当安全性植根于数学时,攻击者面临的是计算上 不可能的挑战,而非巧妙的变通方法。

👁️

开源

开源实现了全球同行评审——全世界数千名开发者可以审计 每一行代码的正确性和漏洞。安全性来自透明, 而非隐蔽。

OpenNHP 应用了这个经过验证的公式: 数学上可靠的密码学完全透明的开源方式实现。

🛡️

Noise Protocol

用于双向认证和前向保密的现代密码学框架

🔍

社区审计

来自全球安全研究人员和开发者的严格同行评审

📜

Apache 2.0

宽松许可证,最大化采用率和企业信心

参考实现

OpenNHP Core

Network-Infrastructure Hiding Protocol 的官方参考实现。 使用 Go 语言编写,具备内存安全、高性能和跨平台兼容性。

13.7k Stars
🍴 2.5k Forks

组件

nhp-agent 用于发起 NHP 连接的客户端代理
nhp-server 用于认证的控制平面服务器
nhp-ac 用于策略执行的访问控制器

平台支持

Linux Windows macOS FreeBSD Android iOS
示例应用

StealthDNS

由 OpenNHP 驱动的零信任 DNS 客户端。展示了"隐身 DNS 解析" 模式,受保护的域名对未授权客户端返回 NXDOMAIN。

  • 隐身 DNS 解析 - 域名对未授权查询隐藏
  • NHP 驱动的认证先于 DNS 查询
  • 透明本地解析器 (127.0.0.1:53)
  • 跨平台:Windows、macOS、Linux、Android、iOS
查看 StealthDNS

StealthDNS 工作原理

步骤 1

应用程序对受保护的域名执行 DNS 查询

步骤 2

StealthDNS 携带身份上下文执行 NHP 敲门

步骤 3

NHP 控制器验证并返回临时地址

结果

已授权:有效的 DNS 响应
未授权:NXDOMAIN


平台支持

Windows macOS Linux Android iOS
集成

NHP-FRP

零信任反向代理,将 OpenNHP 网络隐藏功能与 frp 集成 —— 在客户端通过认证之前,服务器端口完全不可见。

  • 在反向代理隧道之前进行 NHP 驱动的认证
  • 在密码学身份验证通过之前服务器端口保持隐藏
  • 基于经过实战检验的 frp 反向代理框架构建
  • 无需开放端口即可安全暴露内部服务
查看 NHP-FRP

NHP-FRP 工作原理

步骤 1

客户端发送 NHP 敲门进行身份认证

步骤 2

NHP 服务器验证并为客户端开放 frp 代理端口

步骤 3

客户端通过 frp 隧道连接到内部服务

结果

内部服务安全可访问 — 对其他人不可见


使用场景

远程访问 NAT 穿透 内部服务 开发隧道
Web 实现

JavaScript Agent

将零信任带入浏览器。JS Agent 使 Web 应用能够直接在客户端执行 NHP 认证,实现对隐藏服务的安全访问。

  • 纯 JavaScript 实现
  • 包含 TypeScript 类型定义
  • 适用于所有现代浏览器
  • WebSocket 和 fetch 集成
查看 JS Agent

快速开始

import { NHPAgent } from '@opennhp/js-agent';

// Initialize the agent
const agent = new NHPAgent({
  server: 'nhp.example.com',
  identity: userCredentials
});

// Perform NHP knock
const access = await agent.knock({
  resource: 'api.hidden.example.com'
});

// Access granted - connect to service
const response = await fetch(access.endpoint);
加入我们

为 OpenNHP 贡献

OpenNHP 是一个开源项目,欢迎开发者、 安全研究人员和文档作者贡献力量。

🐛

报告问题

发现了 Bug 或有功能请求?在 GitHub 上提交一个包含详细信息的 Issue。

提交 Issue
🔧

提交 Pull Request

查看我们的贡献指南,Fork 仓库,然后提交您的改进。

查看 PR
📚

改善文档

通过改进指南、教程和 API 文档,帮助 OpenNHP 更易于使用。

查看文档
🔬

安全研究

审查协议,审计实现,帮助发现漏洞。

安全政策

开始使用 OpenNHP 构建

立即在您的基础设施中部署零信任网络安全。