密碼學 + 開源
OpenNHP 的安全設計靈感來自歷史上最經過實戰考驗的安全模型。
Bitcoin 的啟示
Bitcoin 持有超過 1 兆美元的價值——是地球上每個駭客最誘人的目標。 然而在 15 年以上的持續攻擊下,它依然未被攻破。傳統的安全方法 早就失敗了。是什麼讓 Bitcoin 與眾不同?
密碼學
密碼學是網路安全的基石——建立在嚴謹的數學證明之上, 而非假設。當安全性植根於數學時,攻擊者面臨的是計算上 不可能的挑戰,而非巧妙的變通方法。
開源
開源實現了全球同儕審查——全世界數千名開發者可以審計 每一行程式碼的正確性和漏洞。透過透明度而非隱匿性來實現安全。
OpenNHP 應用了這個經過驗證的公式: 數學上可靠的密碼學以完全透明的開源方式實現。
Noise Protocol
用於雙向驗證和前向保密的現代密碼學框架
社群審計
來自全球安全研究人員和開發者的嚴格同儕審查
Apache 2.0
寬鬆授權以實現最大化採用和企業信心
OpenNHP Core
Network-Infrastructure Hiding Protocol 的官方參考實作。 以 Go 語言撰寫,具備記憶體安全、高效能和跨平台相容性。
元件
nhp-agent
用於發起 NHP 連線的用戶端代理nhp-server
用於身份驗證的控制平面伺服器nhp-ac
用於策略執行的存取控制器平台支援
StealthDNS
由 OpenNHP 驅動的零信任 DNS 用戶端。展示了「隱形 DNS 解析」 模式,受保護的網域對未授權用戶端回傳 NXDOMAIN。
- ✓ 隱形 DNS 解析 - 網域對未授權查詢隱藏
- ✓ NHP 驅動的 DNS 查詢前身份驗證
- ✓ 透明本地解析器 (127.0.0.1:53)
- ✓ 跨平台:Windows、macOS、Linux、Android、iOS
StealthDNS 運作方式
應用程式對受保護的網域執行 DNS 查詢
StealthDNS 攜帶身份上下文執行 NHP 敲門
NHP 控制器驗證並回傳臨時位址
已授權:有效的 DNS 回應
未授權:NXDOMAIN
平台支援
NHP-FRP
零信任反向代理,將 OpenNHP 網路隱藏功能與 frp 整合—— 讓伺服器連接埠在用戶端通過驗證之前完全隱形。
- ✓ 反向代理通道建立前的 NHP 驅動身份驗證
- ✓ 在密碼學身份驗證通過前,伺服器連接埠保持隱藏
- ✓ 建構在久經考驗的 frp 反向代理框架之上
- ✓ 無需開放連接埠即可安全暴露內部服務
NHP-FRP 運作方式
用戶端發送 NHP 敲門以驗證身份
NHP 伺服器驗證並為用戶端開放 frp 代理連接埠
用戶端透過 frp 通道連線到內部服務
內部服務可安全存取——對其他所有人隱形
使用場景
JavaScript Agent
將零信任帶入瀏覽器。JS Agent 使網頁應用程式能夠直接從用戶端執行 NHP 身份驗證,實現對隱藏服務的安全存取。
- ✓ 純 JavaScript 實作
- ✓ 內含 TypeScript 型別定義
- ✓ 適用於所有現代瀏覽器
- ✓ WebSocket 和 fetch 整合
快速開始
import { NHPAgent } from '@opennhp/js-agent';
// 初始化代理
const agent = new NHPAgent({
server: 'nhp.example.com',
identity: userCredentials
});
// 執行 NHP 敲門
const access = await agent.knock({
resource: 'api.hidden.example.com'
});
// 存取已授予 - 連線到服務
const response = await fetch(access.endpoint);