Je travaille sur un projet légèrement ésotérique où nous devons implémenter une authentification de base dans un micro embarqué petit/lent (sans système d'exploitation). L'appareil sert un couple de pages Web via son port série qui est ensuite injecté sur le réseau IP par un peu de matériel sur lequel nous n'avons aucun contrôle.Authentification Web légère pour système embarqué
Le code du serveur, tel qu'il est (pensez nweb sur un régime de famine), prend en requêtes HTTP GET/POST et crache les pages & modifie ses paramètres en conséquence.
Nous avons besoin d'un moyen d'authentifier une connexion/session d'utilisateur afin de ne pas permettre aux utilisateurs de voir les données ou de modifier les paramètres qu'ils ne devraient pas.
L'appareil n'est pas destiné à être directement exposé à Internet ou à être totalement imprenable à un piratage sérieux (la sécurité du réseau est la question du client *), l'exigence de sécurité consiste à empêcher les rangs inférieurs de toucher les lumières clignotantes. En raison du manque d'espace/de puissance de traitement (supposons que nous ayons ~ 2k d'espace de code et pas beaucoup de MHz) nous ne pouvons pas implémenter des choses comme le SSL, mais ce serait bien d'en faire au moins un de mieux que la norme de tourbière HTTP access control.
Nous pouvons gérer GET, POST et définir/lire des données de cookies. Une chose que notre micro possède est un générateur de nombres aléatoires matériel crypto-standard décent, devrait être de toute aide du tout.
- = Vraiment les clients devraient accrocher l'appareil sur son propre réseau, physiquement déconnecté ou au moins pare-feu à mort, de toute autre chose. Mais bon, si ça marche pour Boeing ...