Projet / Code source

Tout est sur GitHub

KalderaShield est open source sous licence Apache-2.0 : l’application de bureau, l’application Android, l’extension de navigateur, l’hôte de messagerie native et ce site. Chaque affirmation de sécurité sur ce site peut être reliée à du code ou à un test qui s’exécute dans une CI publique.

Ce qu’est la base de code

Quatre projets, un dépôt

L’application de bureau associe une interface React et TypeScript à un noyau Rust via Tauri 2 : l’interface s’affiche dans le WebView du système, la partie native gère le programme de mise à jour, le pont de l’extension et les intégrations de plateforme. La persistance du coffre fonctionne sur wa-sqlite avec une enveloppe de schéma versionnée.

L’extension de navigateur est un build TypeScript Manifest V3 pour Chromium et Firefox, et l’application Android est un projet Tauri Android avec liaison biométrique AndroidKeyStore. L’hôte de messagerie native et le pont IPC résident dans l’espace de travail Rust, où la logique du jeton d’appairage, du bail et du chiffrement des trames est la plus aisée à auditer.

Le site lui-même est du HTML simple validé dans le dépôt — pas d’étape de build pour le déploiement — avec des scripts générateurs et des garde-fous de qualité archivés à côté des pages qu’ils produisent.

Les garde-fous que chaque changement franchit

Vérification des types et 2204 tests unitaires

248 fichiers de tests avec des seuils de couverture imposés : 90 % de lignes, 90 % d’instructions, 85 % de fonctions, 80 % de branches. Une régression sous le seuil fait échouer la compilation, pas un tableau de bord.

Garde-fous de fuzzing, de mutation et de sécurité

Des tests de propriétés avec fast-check martèlent l’importateur, les sauvegardes et les pièces jointes avec des entrées malformées. Les tests de mutation avec Stryker évaluent la qualité des tests. Des garde-fous dédiés contrôlent le durcissement de la CSP, les artefacts de version, les marqueurs de débogage et les secrets.

Analyse de la chaîne d’approvisionnement en CI

CodeQL analyse le code, OpenSSF Scorecard note la posture du dépôt, gitleaks bloque les secrets validés, et la politique de dépendances échoue sur toute alerte haute ou critique, les autres étant acceptées avec une justification documentée.

Architecture de Sécurité

Ce que l’open source signifie ici — et ne signifie pas

Une affirmation avec sa frontière

L’open source permet à quiconque de lire le code ; il ne prouve pas par lui-même que quelqu’un l’a fait. Lire est tout l’objet : le modèle de menace, les registres d’acceptation et le périmètre d’audit sont dans le dépôt pour que les relecteurs partent de la même carte. Un audit indépendant n’a pas été achevé — la page d’état de l’audit le dit directement.

TypeScript

Interface et extension

Interface React, extension et logique de coffre partagée, strictement typées ; pas de styles inline React, imposé par le garde-fou CSP.

Rust

Noyau natif

Commandes Tauri 2, hôte de messagerie native, pont IPC en loopback et mécanique du programme de mise à jour ; cargo fmt et des tests ciblés d’écriture atomique filtrent chaque version.

Apache-2.0

Licence

Tout le projet plus un fichier de licences tierces pour les composants regroupés. Aucun blob propriétaire dans les installateurs.

Foire Aux Questions

Contribuer et signaler

Comment signaler une vulnérabilité de sécurité ?

En privé, jamais comme issue publique : signalement privé de vulnérabilités GitHub ou l’adresse électronique dans SECURITY.md. Accusé de réception sous 48 heures, triage sous 7 jours, divulgation coordonnée sous 90 jours.

Puis-je contribuer du code ?

Oui — par des pull requests GitHub. Les garde-fous décrits ci-dessus s’exécutent à chaque changement, si bien que la meilleure façon d’aider est un changement qui les garde au vert et inclut ses propres tests.

Puis-je compiler les installateurs moi-même ?

Oui. Le guide de version locale documente les commandes exactes par plateforme, et le script de version collecte les artefacts avec leurs sommes de contrôle SHA-256 dans release-local/<platform>/.

Pages liées

Télécharger l'installateur