Cryptographie + open source
La conception de sécurité d'OpenNHP s'inspire du modèle de sécurité le plus éprouvé de l'histoire.
L'inspiration Bitcoin
Bitcoin détient plus de 1 000 milliards de dollars de valeur — la cible la plus tentante pour chaque pirate de la planète. Pourtant, après plus de 15 ans d'attaques incessantes, il reste inviolé. Les approches de sécurité traditionnelles auraient échoué depuis longtemps. Qu'est-ce qui rend Bitcoin différent ?
Cryptographie
La cryptographie est le socle de la cybersécurité — bâtie sur des preuves mathématiques rigoureuses, et non sur des hypothèses. Lorsque la sécurité est enracinée dans les mathématiques, les attaquants se heurtent à des défis computationnellement impossibles, et non à de simples contournements astucieux.
Open source
L'open source permet une relecture par les pairs à l'échelle mondiale — des milliers de développeurs du monde entier peuvent auditer chaque ligne de code pour en vérifier la justesse et détecter les vulnérabilités. La sécurité par la transparence, et non par l'obscurité.
OpenNHP applique cette formule éprouvée : une cryptographie mathématiquement solide mise en œuvre dans un open source totalement transparent.
Noise Protocol
Cadre cryptographique moderne pour l'authentification mutuelle et la confidentialité persistante
Audit communautaire
Relecture rigoureuse par des chercheurs et développeurs en sécurité du monde entier
Apache 2.0
Licence permissive pour une adoption maximale et la confiance des entreprises
OpenNHP Core
L'implémentation officielle de référence du Network-Infrastructure Hiding Protocol. Écrite en Go pour la sûreté mémoire, les hautes performances et la compatibilité multiplateforme.
Composants
nhp-agent
Agent côté client pour initier les connexions NHPnhp-server
Serveur du plan de contrôle pour l'authentificationnhp-ac
Contrôleur d'accès pour l'application des politiquesPlateformes prises en charge
StealthDNS
Un client DNS Zero Trust propulsé par OpenNHP. Il illustre le modèle de « résolution DNS invisible » où les domaines protégés renvoient NXDOMAIN aux clients non autorisés.
- ✓ Résolution DNS invisible — domaines dissimulés aux requêtes non autorisées
- ✓ Authentification propulsée par NHP avant la recherche DNS
- ✓ Résolveur local transparent (127.0.0.1:53)
- ✓ Multiplateforme : Windows, macOS, Linux, Android, iOS
Comment fonctionne StealthDNS
L'application effectue une recherche DNS pour un domaine protégé
StealthDNS effectue un knock NHP avec le contexte d'identité
Le contrôleur NHP valide et renvoie une adresse éphémère
Autorisé : réponse DNS valide
Non autorisé : NXDOMAIN
Plateformes prises en charge
NHP-FRP
Reverse proxy Zero Trust qui intègre la dissimulation réseau d'OpenNHP avec frp — rendant les ports du serveur totalement invisibles tant que le client n'est pas authentifié.
- ✓ Authentification propulsée par NHP avant le tunnel du reverse proxy
- ✓ Ports du serveur dissimulés jusqu'à preuve de l'identité cryptographique
- ✓ Construit sur le framework de reverse proxy frp, éprouvé au combat
- ✓ Exposez des services internes en toute sécurité sans ouvrir de ports
Comment fonctionne NHP-FRP
Le client envoie un knock NHP pour authentifier son identité
Le serveur NHP vérifie et ouvre le port du proxy frp pour le client
Le client se connecte via le tunnel frp au service interne
Services internes accessibles en toute sécurité — invisibles à tous les autres
Cas d'usage
JavaScript Agent
Apportez le Zero Trust dans le navigateur. Le JS Agent permet aux applications web d'effectuer une authentification NHP directement depuis le client, rendant possible un accès sécurisé aux services dissimulés.
- ✓ Implémentation pur JavaScript
- ✓ Types TypeScript inclus
- ✓ Fonctionne dans tous les navigateurs modernes
- ✓ Intégration WebSocket et fetch
Démarrage rapide
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);Contribuer à OpenNHP
OpenNHP est un projet open source qui accueille les contributions de développeurs, chercheurs en sécurité et rédacteurs de documentation.
Signaler des problèmes
Bug découvert ou demande de fonctionnalité ? Ouvrez une issue sur GitHub avec des informations détaillées.
Ouvrir une issueSoumettre des pull requests
Consultez notre guide de contribution, forkez le dépôt et soumettez vos améliorations.
Voir les PRAméliorer la documentation
Aidez à rendre OpenNHP plus accessible en améliorant les guides, tutoriels et docs d'API.
Voir la documentationRecherche en sécurité
Relisez le protocole, auditez l'implémentation et aidez à identifier les vulnérabilités.
Politique de sécuritéCommencez à construire avec OpenNHP
Déployez dès aujourd'hui une sécurité réseau Zero Trust dans votre infrastructure.