KNX Data Secure protège les télégrammes KNX de bout en bout. L'appareil émetteur chiffre et authentifie chaque télégramme ; seuls les appareils possédant la bonne clé peuvent le lire ou agir en conséquence, qu'il passe par une paire torsadée, la RF ou IP. SharKNX peut déchiffrer, afficher et envoyer des télégrammes de groupe KNX Data Secure, ainsi que gérer les appareils Data Secure.
Cette page explique le fonctionnement de KNX Data Secure et son utilisation dans SharKNX. Pour suivre la procédure pas à pas, voir Comment configurer KNX Data Secure.
Pourquoi KNX Data Secure existe
Un télégramme KNX standard peut être lu par tout appareil connecté à la même ligne et n'importe quel appareil peut en envoyer un. Une personne ayant accès à un câble bus, à un bouton-poussoir exposé ou à une interface non protégée peut observer l'installation et envoyer ses propres commandes. KNX Data Secure rétablit la confiance pour certaines adresses de groupe et certains appareils, même sur un bus qu'il est impossible de protéger physiquement.
Chaque télégramme sécurisé est chiffré avec AES-128 (mode CCM) et contient :
- un code d'authentification de message (MAC), qui permet de détecter toute modification ;
- un numéro de séquence de 48 bits, qui doit toujours augmenter afin d'empêcher la réutilisation ultérieure d'un télégramme enregistré.
Contrairement à KNX IP Secure, qui protège uniquement la connexion IP, Data Secure protège le télégramme de son émetteur jusqu'à son récepteur.
Fonctionnement
Clés de groupe
Chaque adresse de groupe sécurisée possède sa propre clé de groupe, générée par ETS. ETS la télécharge dans chaque appareil lié à cette adresse. Seuls les appareils qui possèdent cette clé peuvent lire le télégramme chiffré ; les autres voient une charge utile chiffrée.
Qui peut envoyer : la table de sécurité
Le chiffrement ne suffit pas. Chaque appareil Data Secure conserve aussi une table de sécurité qui répertorie les adresses physiques acceptées comme émetteurs et le dernier numéro de séquence reçu de chacune. Un numéro de séquence est stocké par adresse d'émetteur - pas par adresse de groupe - et chaque émetteur utilise un seul compteur pour tous ses télégrammes sécurisés. Un télégramme est accepté uniquement si :
- il est correctement déchiffré avec la clé de groupe ;
- l'adresse physique de son émetteur figure dans la table du récepteur ;
- son numéro de séquence est supérieur au dernier numéro reçu de cet émetteur.
Si une vérification échoue, le récepteur ignore le télégramme sans le signaler. Cela signifie que :
- pour lire les télégrammes sécurisés, les clés de groupe suffisent ;
- pour envoyer des télégrammes sécurisés auxquels les appareils réagiront, vous devez aussi utiliser une adresse physique approuvée par les récepteurs.
Gestion des appareils et clés d'outil
Les appareils Data Secure protègent aussi leur configuration. L'accès de gestion - par exemple la lecture des propriétés d'un appareil ou la modification de réglages - est protégé par une clé d'outil propre à chaque appareil, définie par ETS lors de la mise en service. Sans cette clé, un appareil sécurisé refuse ces opérations.
Lire les télégrammes Data Secure dans SharKNX
SharKNX installe automatiquement les clés de groupe lorsque vous chargez :
- votre projet ETS (
.knxproj) dans la page Projet ; ou - un trousseau de clés (
.knxkeys) ou un projet dans l'onglet Sécurité de la page Connecter.
Ensuite, les télégrammes sécurisés du Moniteur sont déchiffrés en temps réel et affichés avec leur nom, leur type de point de données et leur valeur décodée, comme les autres télégrammes. La surveillance ne nécessite rien d'autre - aucune configuration d'émetteur.
Sans la clé - ou si un télégramme sécurisé échoue à une vérification, par exemple à cause d'un MAC incorrect ou d'un numéro de séquence rejoué - SharKNX l'affiche comme un télégramme sécurisé non ouvert. La raison précise figure dans l'Formats d'exportation (data_secure_status et data_secure_rejection), ce qui permet de distinguer une clé manquante d'une répétition.
Envoyer des télégrammes Data Secure dans SharKNX
Pour envoyer, chaque adresse de groupe sécurisée doit utiliser une adresse physique d'émetteur approuvée par les appareils récepteurs. Configurez-la sur la page Expéditeurs KNX Secure, accessible depuis la bannière sous les onglets de la page Projet ou depuis le badge Data Secure de la page Moniteur.
Le badge du Moniteur indique l'état : gris si le projet ne contient aucune adresse de groupe sécurisée, ambre s'il en contient mais que les émetteurs ne sont pas configurés, et vert lorsque les émetteurs sont configurés.
La page comporte trois parties :
- Émetteur par défaut - adresse physique utilisée pour chaque adresse de groupe sécurisée sans entrée spécifique. Laissez Auto pour utiliser l'adresse de la connexion à la passerelle.
- Auto-génération - attribue à chaque adresse sécurisée un émetteur issu du projet : l'appareil qui y transmet et qui possède l'adresse physique la plus basse. Ce sont des adresses de vrais appareils - lisez l'avertissement avant d'utiliser cette option.
- Configuration manuelle - paires adresse de groupe sécurisée → émetteur qui remplacent la valeur par défaut.
Choisir une adresse d'émetteur
Envoyez toujours depuis une adresse physique utilisée par aucun appareil réel et approuvée par les récepteurs. La méthode habituelle consiste à en créer une dans ETS :
- Ajoutez au projet un appareil de réserve - par exemple une interface IP Secure utilisée uniquement comme substitut - et attribuez-lui une adresse physique libre.
- Liez-lui les adresses de groupe sécurisées que vous voulez utiliser, afin qu'ETS ajoute son adresse aux tables de sécurité des récepteurs.
- Téléchargez les récepteurs concernés, puis définissez cette adresse comme Émetteur par défaut dans SharKNX.
Avertissement : n'envoyez jamais comme un appareil réel. Si une entrée d'émetteur - générée automatiquement ou ajoutée manuellement - utilise l'adresse d'un appareil réel en fonctionnement, une seule commande de SharKNX peut suffire à empêcher le reste de l'installation de réagir à cet appareil.
Conformément à la norme KNX pour les outils, SharKNX numérote ses télégrammes sécurisés en fonction de l'heure actuelle : le nombre de millisecondes écoulées depuis le 5 janvier 2018. Un appareil, lui, commence à l'heure de sa mise en service avec ETS et n'incrémente son compteur que d'une unité par télégramme ; son compteur est donc bien inférieur. Lorsque SharKNX envoie sous l'adresse de cet appareil, chaque récepteur qui lui fait confiance enregistre le nombre beaucoup plus élevé de SharKNX et ignore ensuite les télégrammes de l'appareil réel comme des répétitions - pour toutes ses adresses de groupe sécurisées, pas seulement celle utilisée pour l'envoi. Le compteur de l'appareil ne peut jamais le rattraper. Il faut généralement télécharger de nouveau les récepteurs concernés depuis ETS pour rétablir la situation.
Envoyer via un tunnel KNX IP Secure
Sur un tunnel KNX IP Secure, l'interface envoie toujours vos télégrammes sur le bus avec l'adresse physique propre au tunnel et ignore toute autre adresse d'émetteur. Les réglages Expéditeurs KNX Secure n'ont aucun effet dans ce cas ; SharKNX vous en informe lors de l'envoi.
Pour envoyer des télégrammes sécurisés via un tunnel sécurisé, liez les adresses de groupe sécurisées à l'interface du tunnel dans ETS afin que son adresse figure dans les tables de sécurité des récepteurs, puis téléchargez ces récepteurs.
Gérer les appareils Data Secure
Pour lire ou gérer un appareil Data Secure - par exemple depuis la page Outils - SharKNX a besoin de sa clé d'outil. Chargez le trousseau de clés de l'installation (.knxkeys) ou le projet ETS dans l'onglet Sécurité de la page Connecter ; SharKNX récupère automatiquement les clés d'outil. Les appareils Data Secure sont identifiés comme tels et SharKNX vous avertit lorsqu'une clé manque.
KNX Data Secure ou KNX IP Secure
| KNX Data Secure | KNX IP Secure | |
|---|---|---|
| Protection | Télégrammes individuels, de bout en bout, sur tout support | Connexion IP : tunnel ou backbone de routage |
| Clés | Une clé de groupe par adresse de groupe sécurisée ; une clé d'outil par appareil | Mots de passe des utilisateurs de tunnel ; clé backbone |
| Vérification de l'émetteur | Les récepteurs acceptent uniquement les adresses d'émetteur répertoriées | Seuls les clients authentifiés peuvent se connecter |
| Utilisation dans SharKNX | Lire et envoyer des télégrammes de groupe sécurisés ; gérer les appareils sécurisés | Se connecter à une interface ou un backbone sécurisé |
Les deux mécanismes sont indépendants. Une installation peut utiliser l'un, les deux ou aucun - voir KNX IP Secure.
Dépannage
Les télégrammes sécurisés affichent une charge utile chiffrée. SharKNX ne possède pas la clé de groupe pour cette adresse. Chargez le projet ETS ou le trousseau de cette installation.
Ma commande est envoyée, mais l'appareil ne réagit pas. Le récepteur ne fait pas confiance à l'adresse de l'émetteur. Vérifiez l'adresse utilisée (sur la page Expéditeurs KNX Secure ou celle du tunnel KNX IP Secure) et assurez-vous qu'ETS la répertorie comme émetteur pour cette adresse de groupe.
Un appareil ne réagit plus après que j'ai envoyé une commande avec SharKNX. SharKNX a utilisé l'adresse physique de cet appareil ; les récepteurs ignorent donc maintenant ses vrais télégrammes (voir l'avertissement ci-dessus). Retirez cette adresse de la page Expéditeurs KNX Secure et utilisez une adresse dédiée. Pour que les récepteurs acceptent de nouveau l'appareil réel, téléchargez-les depuis ETS.
Un appareil refuse les opérations de gestion. Sa clé d'outil manque. Chargez le trousseau ou le projet dans l'onglet Sécurité.
Pour aller plus loin
- Comment configurer KNX Data Secure - procédure de configuration dans SharKNX
- KNX IP Secure - protection de la connexion IP
- La documentation KNX Secure de KNX Association et les notes d'application des fabricants (par exemple la note KNX Data Secure d'ABB) détaillent le protocole et sa configuration dans ETS.