Une infrastructure informatique sécurisée

ou comment construire un réseau informatique support du système libéral de pouvoirs que nous avons décrits, qui soit protégé de toute éventuelle tentative de piratages.

Cette méthode s'appuie sur les techologies de cryptage et surtout de signature électronique dont j'ai appris les caractéristiques extérieures en lisant le livre "Future Imperfect".

Principe de la signature électronique

Voici les propriétés de la signature électronique: un ordinateur, à l'aide d'un générateur de nombres aléatoires, produit une paire de deux clés (séquences de chiffres) A et B. Par la clé A, on peut encoder un document qui sera décodé à l'aide de la clé B. La clé A est privée, la clé B est publique. Il est impossible de calculer A à partir de B (c'est-à-dire qu'étant donnée la complexité du problème, la probabilité d'y parvenir en mille ans de calculs de superordinateurs est extrêmement faible).

Le codage d'un document par la clé A s'appelle la signature du document. Son décodage par B est la vérification de cette signature. Ne disposant que de B, on peut seulement vérifier la signature et non la produire, car, d'après les connaissances actuelles en cryptographie, il est impossible d'effectuer ce codage tel que vérifiable par B si on ne connaît pas A. Précisément, sans A, on ne peut pas en pratique produire un prétendu "document signé" dont la lecture par B donne mieux qu'une suite de caractères d'apparence aléatoire sans signification. Le fait d'obtenir un document qui a un sens prouve qu'il a été produit grâce à A.

Comment dater et signer

D'abord, pour dater les documents, on peut considérer le système suivant de "signature d'un jour". Soit un serveur internet qui chaque jour produit une nouvelle paire de clés (A,B). Il publie la clé B et encode par A tous les documents qu'on lui soumet. La journée terminée, il supprime de sa mémoire la clé A.

Enfin, pour dater et signer, on pose d'abord la signature de l'individu, puis, par-dessus, la signature du jour. (Ceci afin que l'individu ne puisse pas prévoir d'avoir peut-être besoin à l'avenir de présenter tel document daté et signé de la date d'aujourd'hui, qu'il ne signerait que plus tard s'il le décide). Un document signé puis daté prouve qu'il a été signé le jour dit ou avant. Que manque-t-il à cela ? On peut envisagé le risque que le document soit repris par autrui qui le ferait dater à une date ultérieure. A cela, une solution facile: supposons la date écrite explicitement dans le document avant qu'il ne soit signé. Seuls les documents présentant une date conforme à celle de la signature du jour seraient valides. En cherchant beaucoup, on peut y voir une dernière faille de sécurité: "Signe-moi ce document daté de la date future J, et le jour J je le ferai valider si j'en ai envie". On peut refuser de se plier à une telle injonction. Mais on peut en donner une solution technique:
il suffit d'ajouter au document, avant de le signer, un numéro qui ne peut être connu avant le jour en question, comme par exemple la dernière combinaison gagnante du Loto (ceci pour être moins lourd que de faire dater le document deux fois, une fois avant et une fois après la signature).
Une autre solution "hardware" moins absolument fiable (mais quand même suffisamment) serait que l'ajout de la date serait une fonctionnalité inamovible de la machine à signer électroniquement, qui enferme le code A secret, inconnu même de son propriétaire, qui n'aura pas envie de faire démonter et analyser son appareil rien que pour être en mesure de pouvoir se plier à des chantages.

Sécurisation matérielle de la signature

On peut imaginer un appareil électronique appelé "passeport" en forme de montre ou objet attaché à la ceinture, qui contient secrètement le code A de la signature. Tel qu'il serait fabriqué, il serait uniquement capable d'effectuer des opérations du type suivant:
Il reçoit un document (par infrarouge), il l'affiche sur son petit écran défilant, puis, s'il reçoit le signal d'accord (touches pressées), il le signe (encode) et envoie le résultat à l'extérieur.
Si jamais on le détache du corps (montre détachée du poignet, ceinture détachée), il se désactive jusqu'à ce que, une fois rattaché, un système biométrique ou de code lui assure qu'il est bien à nouveau relié à son propriétaire.
Un document signé peut comporter une division en fichiers, certains fichiers pouvant être des documents signés par d'autres, non affichés sur l'écran mais accompagnés de l'indication en clair du contenu, qui sera affiché. (Le passeport de chacun peut avoir la fonctionnalité de vérifier la signature de documents d'autrui).

Structure générale du réseau

Soit un ensemble d'individus membres du réseau, ainsi qu'un ensemble de machines-serveurs détenues chacune par un ou plusieurs individus (de préférence chargés de pouvoirs, "agents politiques"= administrateurs système), indépendants des administrateurs des autres serveurs.
N'importe qui peut mettre en place son propre serveur indépendant des autres, afin de s'autoproclamer agent politique de son serveur.

Par exemple s'il y a 500 membres il peut y avoir par exemple de 1 à 3 serveurs, et s'il y a 100.000 membres il pourra y avoir de 10 à 40 serveurs. Chaque serveur est en fait constitué de deux machines, l'une "passive" aux fonctionnalités figées (non reprogrammable, même si l'éventualité d'une reprogrammation illicite d'une machine ne constitue pas une menace significative pour l'ensemble du réseau), et l'autre "active". La machine passive aura pour principale fonction d'archiver définitivement les données, tandis que la machine active gèrera les opérations courantes (marchés, réponses aux requêtes, etc).
Relativement à chaque serveur, existent deux sortes d'individus: les "agents économiques" pouvant interagir avec les deux machines en tant qu'utilisateurs (effectuer des "opérations économiques"), et les agents politiques ayant de plus un droit de root sur la machine active (permettant de faire des "opérations politiques"), sauf que ce droit ne s'exercera que suivant la "règle d'administration" que nous décrirons plus loin. Chaque machine passive comporte la fonctionnalité de dater les documents, suivant son propre code du jour indépendant de celui des autres serveurs.
Les interactions seront sécurisées en sorte que nul tiers ne puisse observer ni altérer les informations circulant entre les machines (par ex. chaque serveur est muni d'une clé de cryptage qui permet à quiconque de lui envoyer des données que seul ce serveur pourra décoder).

Opérations économiques

Chaque individu est libre d'utiliser (être agent économique de) le ou les serveurs qu'il veut.
Les opérations économiques sont de deux types:
- Les interrogations, requête posée par un agent économique à la machine active. Cela relève exactement du même principe que les serveurs web ordinaires qui répondent aux visiteurs.
- Les opérations (déclarations, contrats et ordres de paiements): la machine passive reçoit le document signé par son auteur, en vérifie l'authenticité, puis le date et le stocke définitivement dans son archive (signé et daté), et en envoie une copie à son auteur ("accusé de réception" = copie du document signé par la date du jour) ainsi qu'à la machine active, qui en fait ce qu'elle veut. Notamment elle peut l'envoyer à d'autres serveurs qui en archiveront et dateront eux-mêmes une copie de manière indépendante.

Dans son fonctionnement, la machine active peut à tout moment consulter les archives stockées dans la machine passive et y ajouter de nouvelles données à archiver, mais ne peut pas donner l'ordre d'effacer des données. La machine active ne contient pas elle-même toutes les données mais seulement les "données courantes" qui sont actuellement opérationnelles, pouvant avoir des conséquences effectives sur les opérations économiques.

Opérations politiques: règle d'administration

Un agent politique, pour exercer son droit d'administration sur une machine active,
devra procéder de la manière suivante.
D'abord, il importe une copie (d'une partie) du contenu des deux machines (active et passive) sur une troisième machine, la machine-test qui lui sert de bureau de travail. Il peut en consulter le contenu librement, mais chaque intervention = modification du contenu de la machine active (données courantes et logiciels qui la gère), prend la forme d'une instruction enregistrée dans la machine-test. Une fois le travail d'administration terminé, la série des instructions enregistrées est signée par l'agent, puis, comme pour les opérations économiques, envoyée à la machine passive qui en vérifie l'authenticité (incluant la correction de la syntaxe des instructions), l'archive et la transmet à la machine active qui peut en envoyer une copie pour archivage à d'autres serveurs indépendants. Et c'est enfin seulement que cette série d'instructions administratives s'exécute dans la machine active pour en modifier les données courantes et les logiciels qui la gèrent.


Retour aux autres pages:
Théorie libérale du pouvoir
Introduction et position philosophique
La virtualisation à venir du travail
etc...
Retour opinions - correspondance et forums