OVH Cloud OVH Cloud

recherche algo asymétrique

6 réponses
Avatar
cyrille
Bonjour,

Je souhaite pouvoir chiffrer des blocs de textes avec une clef publique,
et ne pouvoir les d=E9chiffrer qu'avec la clef priv=E9e correspondante.
En fait imaginer un container dans lequel celui qui y met des messages, ne =
peut=20
pas les lire.

Je suis simplement programmeur et me suis lu un grand nombre de documents.
Mais je n'arrive pas =E0 synth=E9tiser l'ensemble et =E0 trouver quel algo =
et quelle=20
librairie de programmation gratuite utiliser.

RSA est cher (vrai ???),
PGP chiffre en sym=E9trique (vrai ???).

Vers quel autre algo gratuit puis-je me tourner ?

Merci pour vos id=E9es et corrections =E9ventuelles sur ce que j'avance ;o)

cyrille

6 réponses

Avatar
Vincent Bernat
OoO Vers la fin de l'après-midi du mercredi 19 janvier 2005, vers
16:02, cyrille disait:

Je suis simplement programmeur et me suis lu un grand nombre de
documents. Mais je n'arrive pas à synthétiser l'ensemble et à
trouver quel algo et quelle librairie de programmation gratuite
utiliser.


Il n'y en a pas énormément. On utilise le plus couramment la librairie
OpenSSL qui contient tout un tas de primitives pour chiffrer dans tous
les sens. Cela ne te dispense pas de savoir ce que tu veux utiliser
exactement, mais la doc devrait t'aider à choisir ensuite le bon algo.
--
Use the "telephone test" for readability.
- The Elements of Programming Style (Kernighan & Plaugher)

Avatar
Sylvain
Bonjour,

Je souhaite pouvoir chiffrer des blocs de textes avec une clef publique,
et ne pouvoir les déchiffrer qu'avec la clef privée correspondante.
En fait imaginer un container dans lequel celui qui y met des messages, ne peut
pas les lire.



on ne procède pas (habituellement) comme cela.

le chiffrement des données est réalisé en symmétrique, choississez entre
DES3 et AES, ils sont free et surs.

la clé de session (propre au document, texte, etc, à chiffrer) est
généralement du random (le plus "random" possible).

cette clé de session est final "enveloppée" (wrappée) par un algo
asymmétrique, par exemple avec la clé RSA publique du destinataire.

le "document chiffré" transmis est le chiffré symmétrique + la clé
wrappée pour ce destinataire.

si "celui qui mets des messages" ne wrappe pas la clé de session avec sa
propre clé publique, il ne pourra pas relire les documents; dans le même
temps s'il la wrappe avec chacune des clés publiques des membres du
"container", chacun pourra y avoir accès.

Je suis simplement programmeur et me suis lu un grand nombre de documents.
Mais je n'arrive pas à synthétiser l'ensemble et à trouver quel algo et quelle
librairie de programmation gratuite utiliser.

RSA est cher (vrai ???),


il est gratuit

PGP chiffre en symétrique (vrai ???).


sym + asym, comme décrit ci-avant.

Sylvain.

Avatar
cyrille
In article <41ee7ace$0$7088$, says ...

la clé de session (propre au document, texte, etc, à chiffrer) est
généralement du random (le plus "random" possible).

cette clé de session est final "enveloppée" (wrappée) par un algo
asymmétrique, par exemple avec la clé RSA publique du destinataire.

le "document chiffré" transmis est le chiffré symmétrique + la cl é
wrappée pour ce destinataire.

si "celui qui mets des messages" ne wrappe pas la clé de session avec s a
propre clé publique, il ne pourra pas relire les documents; dans le m ême
temps s'il la wrappe avec chacune des clés publiques des membres du
"container", chacun pourra y avoir accès.


Je ne suis pas sûr d'avoir compris ...

Vous voulez dire que le "document chiffré" n'est pas lisible avec la clef de
session seule ?

cyrille

Avatar
cyrille
In article , says...
Il n'y en a pas énormément. On utilise le plus couramment la librairi e
OpenSSL qui contient tout un tas de primitives pour chiffrer dans tous
les sens. Cela ne te dispense pas de savoir ce que tu veux utiliser
exactement, mais la doc devrait t'aider à choisir ensuite le bon algo.


Merci,
Je vais aller voir.

Pour l'instant je regarde GnuPG/libgcrypt qui contient les algos asymétri ques
RSA, ElGamal et DSA.
Quand pensez vous ?

cyrille

Avatar
Vincent Bernat
OoO Vers la fin de l'après-midi du mercredi 19 janvier 2005, vers
16:41, cyrille disait:

Il n'y en a pas énormément. On utilise le plus couramment la librairie
OpenSSL qui contient tout un tas de primitives pour chiffrer dans tous
les sens. Cela ne te dispense pas de savoir ce que tu veux utiliser
exactement, mais la doc devrait t'aider à choisir ensuite le bon algo.


Merci,
Je vais aller voir.

Pour l'instant je regarde GnuPG/libgcrypt qui contient les algos
asymétriques RSA, ElGamal et DSA. Quand pensez vous ?


Je ne savais pas qu'il y avait une librairie pour GPG. Si elle
contient ce que tu veux, il n'y a pas de raison d'en changer. OpenSSL
a l'avantage d'avoir beaucoup plus d'algos, des protocoles et la
possibilité de chiffrer des flux (ce qui n'est pas dans les objectifs
de GPG, donc je suppose que la librairie ne propose pas ce genre de
choses).
--
DODGEBALL STOPS AT THE GYM DOOR
DODGEBALL STOPS AT THE GYM DOOR
DODGEBALL STOPS AT THE GYM DOOR
-+- Bart Simpson on chalkboard in episode BABF12


Avatar
Sylvain
In article <41ee7ace$0$7088$, says....

Vous voulez dire que le "document chiffré" n'est pas lisible avec la clef de
session seule ?

cyrille


si ... mais une fois que l'on dispose de cette clé de session!

la question (pour Raymond et pour tout système devant partager des clés)
est comment transmettre cette clé de session.

si elle doit être diffusée avec chaque chiffré (via un autre canal) on
perd bcp en efficacité.

si elle est pré-diffusé auprès des destinataires, on ne controle plus la
diffusion vers un certain sous-groupe de destinataires - et elle est
fragilisé par cette diffusion (notamment parce qu'elle va servir de
nombreuses fois dans le temps).

donc le plus simple (et le plus utilisé) et de tirer aléatoirement une
clé de session à chaque opération de chiffrement et de la wrapper par
une clé publique.

pour le destinataire, il procède en 2 temps mais chaque opération ne
dépends que d'un seul élément: il récupère la clé de session en
appliquant (que) sa clé privée (via un algo asym), il a bien sur reçu
"son enveloppe à lui" à savoir la clé de session commune à tous les
destinataires mais wrappé avec sa propre clé publique, puis il déchiffre
le message en appliquant que cette clé de session (via un algo sym), là
le chiffré est le même pour tous les destinataires (et tous les
destinataires possibles du groupe n'ont pas nécessairement reçu ce
chiffré+enveloppe, seulement un éventuel sous-groupe si applicable).

Sylvain.