Chiffrement et cryptographie

Imaginez-vous être le chef au boulot avec vos presque 50 subordonnés. Vous voulez partir en vacances, il vous faut un remplaçant.

À qui confier la clé du coffre où sont rangés les lingots ? Car vous n'avez qu'une confiance limitée dans votre petit personnel. Idéalement, il faudrait qu'ils soient plusieurs à se surveiller mutuellement...

Le partage de secret est une primitive connue par les cryptographes, assez peu employée à ma connaissance.

Secret sharing

Eh bien t'as qu'à diviser le secret (la clé) en 50 morceaux, et à en donner un bout à chacun.
Comme ça, ils se surveilleront tous les uns les autres, et t'auras moins à craindre d'un mouton noir.
😒 Certes, mais imagine que l'un deux soit absent pour une raison quelconque
😈 Meurtre par exemple
😕 Ah oui, la situation serait bloquée, c'est con.

Il faut donc s'arranger pour que le coffre s'ouvre avec seulement un certain nombre de morceaux de la clé, par exemple 10. Il suffira alors que 10 personnes soient présentes, n'importe lesquelles, et elles pourront ouvrir le coffre en assemblant leur morceau de clé, pas besoin des 40 autres.

C'est le problème du secret sharing, ou partage de secret.

secret sharing

Ce problème se résout avec des techniques proches du genre "code correcteur d'erreur". Par exemple des polynômes de Lagrange, dont on sait qu'avec un certain nombre de points, alors il ne passe qu'un seul polynôme, ce qui permet de retrouver tous les coefficients comme quoi les maths, ça peut servir.

🤔 Mouais. Mais ça ne résout pas tout.
🤨 Imagine que tous tes subordonnés se rendent compte qu'ils ont chacun intérêt à ne rien dévoiler
Ah ben oui, la situation se bloquerait.

Plus généralement, on peut considérer la situation où une partie sont des "good guys" et l'autre des "bad guys" qui auront tendance à utiliser leur unique pouvoir = ne pas dévoiler le morceau de secret possédé.

La vie n'est pas toujours simple.