Question

Supposons qu'un groupe souhaite chiffrer certaines informations, puis partage la clé de chiffrement entre les membres du groupe de manière à requérir le consensus du groupe pour déchiffrer les informations. Je suis intéressé par une variété de scénarios où l'ampleur du consensus varie de l'unanimité à la majorité absolue. Une technique utile peut s’appliquer aux clés symétriques, aux clés privées ou aux deux.

Je pourrais essayer de faire rouler ma propre méthode, comme beaucoup de membres de SO pourraient le faire. Mais pour les besoins de cette question, je ne suis intéressé que par des méthodes largement publiées et qui ont résisté à l'examen des experts en cryptoanalyse. Les citations dans les revues sont bonnes, mais l’interprétation de sources académiques est également très utile.

Était-ce utile?

La solution

J'ai toujours été fasciné par cette technique de partage secrète. J'ai vu du code le mettre en œuvre sur Internet, mais je n'ai jamais vu d'applications réelles. Le partage secret de Shamir L'article de wikipedia renvoie à du code réel, ainsi qu'à l'article académique d'origine. .

Autres conseils

Ce que vous décrivez ressemble beaucoup à un "partage secret". (Section 12.1. Introduction à la cyptographie. Trappe & Washington. 2e éd.) L’idée de base est que vous pouvez créer un polynôme qui inclut votre "secret". (une clé) comme un point sur la ligne. Vous pouvez donner des " actions " en choisissant d'autres points sur ce polynôme. Deux points définissent une ligne de la forme f (x) = ax + b, trois points définissent un polynôme de la forme f (x) = ax ^ 2 + bx + c et quatre points définissent quelque chose de la forme f (x) = ax ^ 3 + bx ^ 2 + cx + d, et ainsi de suite. Vous pouvez choisir un polynôme qui inclut votre secret en tant que point et un diplôme suffisant pour que le N du peuple puisse le reconstruire.

C’est l’idée de base connue sous le nom de "schéma de seuil de Shamir".

Voir wikipedia sur Fractionnement secret et Partage secret de Shamir La page wikipedia contient des liens vers les implémentations de cette idée, notamment le code GPL pour Windows et < a href = "http://point-at-infinity.org/ssss/index.html" rel = "nofollow noreferrer"> UNIX .

C’est facile à mettre en œuvre avec les codes correcteurs d’erreur . Vous pouvez utiliser un outil de ligne de commande tel que par2 (ce qui n'est pas tout à fait approprié pour cet usage spécifique, car il génère des blocs de récupération de taille variable). Supposons que vous avez (n + m) votants et que vous souhaitiez un quorum de n votes. Vous générez n clés privées K1°, K2, ... Kn et générez m blocs ECC supplémentaires P? de même taille. Ainsi, n blocs suffisent pour reconstituer le chiffrement K1°K2° ... Kn

Allez ici pour une discussion sur les bases mathématiques du partage secret de Shamir et une brève discussion sur le type d'applications pratiques qu'il possède. Faites défiler la page jusqu'aux notes de cours sur les polynômes et le partage secret. C'est probablement un aperçu de base de la région, mais cela devrait être assez intéressant pour vous. Notes de mathématiques discrètes

Lotus Notes fournit une implémentation pratique des 'mots de passe silo' dans lesquels l'accès à certaines ressources (données / informations / document) est verrouillé sur un 'identifiant partagé' - L'ID (partie d'un système PKI certifié basé sur RSA, selon moi) ) est configuré avec 2 ou plus (jusqu'à 16) mots de passe individuels. Le certificateur / administrateur établit un schéma selon lequel un nombre quelconque de mots de passe parmi ceux disponibles ou tous les mots de passe est nécessaire pour "ouvrir" l'identifiant pour une utilisation active. Ce processus est couramment utilisé pour verrouiller les certificats d'organisation ou d'organisation à 2 sur 5 ou 3 administrateurs sur 5 accordant l'accès, afin de garantir que l'utilisation / l'accès au certificat de haut niveau puisse être contrôlé et que le personnel administratif absent soit évité.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top