Bonjour, je suis entrain de recoder la fonction crypt pour une utilisation
sur microcontroleur, et j'ai beaucoup de mal a trouver l'algorithme utilisé.
J'ai pour le moment recoder un DES, mais les points qui me manque sont:
- Generation/Utilisation de la Salt (a quel moment et comment on l'utilise)
- Sur le point final, le passage en Base64 (comment on passe des 64bits au
88bits finales)
pour le moment, je me base sur les sources du crypt de NetBSD, mais leur
implementation est trop differente de la mienne, ca me pose trop de
problemes pour comprendre et appliquer.
Voila, si quelqu'un avait des infos ou des liens ... je suis preneur.
PS: Cette version est codée en C, et sera distribuée librement, licence GNU.
L'utilisation premiere sera sur un microcontroleur PIC.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jacques Caron
On Wed, 7 Jan 2004 19:37:54 +0100, JaySee wrote:
Bonjour, je suis entrain de recoder la fonction crypt pour une utilisation sur microcontroleur, et j'ai beaucoup de mal a trouver l'algorithme utilisé.
Sur un FreeBSD, cd /usr/src/lib/libcrypt/ et hop. Dispo ici en ligne:
J'ai pour le moment recoder un DES, mais les points qui me manque sont: - Generation/Utilisation de la Salt (a quel moment et comment on l'utilise)
Le salt est généré aléatoirement par celui qui chiffre initialement, est stocké dans le résultat, et est utilisé par ceux qui chiffrent ultérieurement pour vérifier le mot de passe.
- Sur le point final, le passage en Base64 (comment on passe des 64bits au 88bits finales)
Voir fichier misc.c dans répertoire sus-cité.
pour le moment, je me base sur les sources du crypt de NetBSD, mais leur implementation est trop differente de la mienne, ca me pose trop de problemes pour comprendre et appliquer.
J'ai du mal à imaginer ça... En quoi peut-elle être si différente?
Jacques. -- Interactive Media Factory Création, développement et hébergement de services interactifs: SMS, SMS+, Audiotel... http://www.imfeurope.com/
On Wed, 7 Jan 2004 19:37:54 +0100, JaySee <JaySee@fr.st> wrote:
Bonjour, je suis entrain de recoder la fonction crypt pour une
utilisation sur microcontroleur, et j'ai beaucoup de mal a trouver
l'algorithme utilisé.
Sur un FreeBSD, cd /usr/src/lib/libcrypt/ et hop. Dispo ici en ligne:
J'ai pour le moment recoder un DES, mais les points qui me manque sont:
- Generation/Utilisation de la Salt (a quel moment et comment on
l'utilise)
Le salt est généré aléatoirement par celui qui chiffre initialement, est
stocké dans le résultat, et est utilisé par ceux qui chiffrent
ultérieurement pour vérifier le mot de passe.
- Sur le point final, le passage en Base64 (comment on passe des 64bits
au 88bits finales)
Voir fichier misc.c dans répertoire sus-cité.
pour le moment, je me base sur les sources du crypt de NetBSD, mais leur
implementation est trop differente de la mienne, ca me pose trop de
problemes pour comprendre et appliquer.
J'ai du mal à imaginer ça... En quoi peut-elle être si différente?
Jacques.
--
Interactive Media Factory
Création, développement et hébergement
de services interactifs: SMS, SMS+, Audiotel...
http://www.imfeurope.com/
Bonjour, je suis entrain de recoder la fonction crypt pour une utilisation sur microcontroleur, et j'ai beaucoup de mal a trouver l'algorithme utilisé.
Sur un FreeBSD, cd /usr/src/lib/libcrypt/ et hop. Dispo ici en ligne:
J'ai pour le moment recoder un DES, mais les points qui me manque sont: - Generation/Utilisation de la Salt (a quel moment et comment on l'utilise)
Le salt est généré aléatoirement par celui qui chiffre initialement, est stocké dans le résultat, et est utilisé par ceux qui chiffrent ultérieurement pour vérifier le mot de passe.
- Sur le point final, le passage en Base64 (comment on passe des 64bits au 88bits finales)
Voir fichier misc.c dans répertoire sus-cité.
pour le moment, je me base sur les sources du crypt de NetBSD, mais leur implementation est trop differente de la mienne, ca me pose trop de problemes pour comprendre et appliquer.
J'ai du mal à imaginer ça... En quoi peut-elle être si différente?
Jacques. -- Interactive Media Factory Création, développement et hébergement de services interactifs: SMS, SMS+, Audiotel... http://www.imfeurope.com/
Jean-Marc Desperrier
Jacques Caron wrote:
On Wed, 7 Jan 2004 19:37:54 +0100, JaySee wrote:
pour le moment, je me base sur les sources du crypt de NetBSD, mais leur implementation est trop differente de la mienne, ca me pose trop de problemes pour comprendre et appliquer.
J'ai du mal à imaginer ça... En quoi peut-elle être si différente?
crypt peut être n'importe quoi, les logiciels utilisateur sont censés utiliser uniquement les appels systèmes, et jamais gérer par eux-mêmes le type de chiffrement. En conséquence de quoi, il y a bien des unix et dérivés qui ne font pas la même choses quand ils font un crypt.
Jacques Caron wrote:
On Wed, 7 Jan 2004 19:37:54 +0100, JaySee <JaySee@fr.st> wrote:
pour le moment, je me base sur les sources du crypt de NetBSD, mais leur
implementation est trop differente de la mienne, ca me pose trop de
problemes pour comprendre et appliquer.
J'ai du mal à imaginer ça... En quoi peut-elle être si différente?
crypt peut être n'importe quoi, les logiciels utilisateur sont censés
utiliser uniquement les appels systèmes, et jamais gérer par eux-mêmes
le type de chiffrement. En conséquence de quoi, il y a bien des unix et
dérivés qui ne font pas la même choses quand ils font un crypt.
pour le moment, je me base sur les sources du crypt de NetBSD, mais leur implementation est trop differente de la mienne, ca me pose trop de problemes pour comprendre et appliquer.
J'ai du mal à imaginer ça... En quoi peut-elle être si différente?
crypt peut être n'importe quoi, les logiciels utilisateur sont censés utiliser uniquement les appels systèmes, et jamais gérer par eux-mêmes le type de chiffrement. En conséquence de quoi, il y a bien des unix et dérivés qui ne font pas la même choses quand ils font un crypt.
JaySee
"Jacques Caron" a écrit dans le message de news:
On Wed, 7 Jan 2004 19:37:54 +0100, JaySee wrote:
Bonjour, je suis entrain de recoder la fonction crypt pour une utilisation sur microcontroleur, et j'ai beaucoup de mal a trouver l'algorithme utilisé.
Sur un FreeBSD, cd /usr/src/lib/libcrypt/ et hop. Dispo ici en ligne:
J'ai pour le moment recoder un DES, mais les points qui me manque sont: - Generation/Utilisation de la Salt (a quel moment et comment on l'utilise)
Le salt est généré aléatoirement par celui qui chiffre initialement, est stocké dans le résultat, et est utilisé par ceux qui chiffrent ultérieurement pour vérifier le mot de passe.
la salt est généré aléatorement par la commande passwd, pas par la fonction crypt, qui requiert ce parametre. En effet je parle de code et non d'utilisation. Ce que je cherche c'est comment on implemente l'utilisation (de salt en l'occurence). Je vais plonger un peu plus dans les sources de FreeBSD qui me parraissent plus sympas que celles de NetBSD.
- Sur le point final, le passage en Base64 (comment on passe des 64bits au 88bits finales)
Voir fichier misc.c dans répertoire sus-cité.
ok, cette version est simple a comprendre, ca me va ;)
pour le moment, je me base sur les sources du crypt de NetBSD, mais leur implementation est trop differente de la mienne, ca me pose trop de problemes pour comprendre et appliquer.
J'ai du mal à imaginer ça... En quoi peut-elle être si différente?
disons que leur implementation est tres personnel et optimisé donc c'est assez difficile de "comprendre" l'algo utilisé et de le refaire autrement. Or ils utilise des unions partout, ce que je ne peut me permettre... et donc je galere a omprendre l'implementation de la salt.
Jacques. -- Interactive Media Factory Création, développement et hébergement de services interactifs: SMS, SMS+, Audiotel... http://www.imfeurope.com/
"Jacques Caron" <jc@imfeurope.com> a écrit dans le message de news:
opr1e5x7j5q1hokb@news.free.fr...
On Wed, 7 Jan 2004 19:37:54 +0100, JaySee <JaySee@fr.st> wrote:
Bonjour, je suis entrain de recoder la fonction crypt pour une
utilisation sur microcontroleur, et j'ai beaucoup de mal a trouver
l'algorithme utilisé.
Sur un FreeBSD, cd /usr/src/lib/libcrypt/ et hop. Dispo ici en ligne:
J'ai pour le moment recoder un DES, mais les points qui me manque sont:
- Generation/Utilisation de la Salt (a quel moment et comment on
l'utilise)
Le salt est généré aléatoirement par celui qui chiffre initialement, est
stocké dans le résultat, et est utilisé par ceux qui chiffrent
ultérieurement pour vérifier le mot de passe.
la salt est généré aléatorement par la commande passwd, pas par la fonction
crypt, qui requiert
ce parametre.
En effet je parle de code et non d'utilisation. Ce que je cherche c'est
comment on implemente
l'utilisation (de salt en l'occurence).
Je vais plonger un peu plus dans les sources de FreeBSD qui me parraissent
plus sympas que celles
de NetBSD.
- Sur le point final, le passage en Base64 (comment on passe des 64bits
au 88bits finales)
Voir fichier misc.c dans répertoire sus-cité.
ok, cette version est simple a comprendre, ca me va ;)
pour le moment, je me base sur les sources du crypt de NetBSD, mais leur
implementation est trop differente de la mienne, ca me pose trop de
problemes pour comprendre et appliquer.
J'ai du mal à imaginer ça... En quoi peut-elle être si différente?
disons que leur implementation est tres personnel et optimisé donc c'est
assez difficile de
"comprendre" l'algo utilisé et de le refaire autrement. Or ils utilise des
unions partout, ce que
je ne peut me permettre... et donc je galere a omprendre l'implementation de
la salt.
Jacques.
--
Interactive Media Factory
Création, développement et hébergement
de services interactifs: SMS, SMS+, Audiotel...
http://www.imfeurope.com/
Bonjour, je suis entrain de recoder la fonction crypt pour une utilisation sur microcontroleur, et j'ai beaucoup de mal a trouver l'algorithme utilisé.
Sur un FreeBSD, cd /usr/src/lib/libcrypt/ et hop. Dispo ici en ligne:
J'ai pour le moment recoder un DES, mais les points qui me manque sont: - Generation/Utilisation de la Salt (a quel moment et comment on l'utilise)
Le salt est généré aléatoirement par celui qui chiffre initialement, est stocké dans le résultat, et est utilisé par ceux qui chiffrent ultérieurement pour vérifier le mot de passe.
la salt est généré aléatorement par la commande passwd, pas par la fonction crypt, qui requiert ce parametre. En effet je parle de code et non d'utilisation. Ce que je cherche c'est comment on implemente l'utilisation (de salt en l'occurence). Je vais plonger un peu plus dans les sources de FreeBSD qui me parraissent plus sympas que celles de NetBSD.
- Sur le point final, le passage en Base64 (comment on passe des 64bits au 88bits finales)
Voir fichier misc.c dans répertoire sus-cité.
ok, cette version est simple a comprendre, ca me va ;)
pour le moment, je me base sur les sources du crypt de NetBSD, mais leur implementation est trop differente de la mienne, ca me pose trop de problemes pour comprendre et appliquer.
J'ai du mal à imaginer ça... En quoi peut-elle être si différente?
disons que leur implementation est tres personnel et optimisé donc c'est assez difficile de "comprendre" l'algo utilisé et de le refaire autrement. Or ils utilise des unions partout, ce que je ne peut me permettre... et donc je galere a omprendre l'implementation de la salt.
Jacques. -- Interactive Media Factory Création, développement et hébergement de services interactifs: SMS, SMS+, Audiotel... http://www.imfeurope.com/
JaySee
"Jean-Marc Desperrier" a écrit dans le message de news: btj7nf$a8e$
Jacques Caron wrote:
On Wed, 7 Jan 2004 19:37:54 +0100, JaySee wrote:
pour le moment, je me base sur les sources du crypt de NetBSD, mais leur
implementation est trop differente de la mienne, ca me pose trop de problemes pour comprendre et appliquer.
J'ai du mal à imaginer ça... En quoi peut-elle être si différente?
crypt peut être n'importe quoi, les logiciels utilisateur sont censés utiliser uniquement les appels systèmes, et jamais gérer par eux-mêmes le type de chiffrement. En conséquence de quoi, il y a bien des unix et dérivés qui ne font pas la même choses quand ils font un crypt.
C'est tout a fait vrai, crypt() peut utiliser plusieurs algorythm, notament DES (modifié quand meme) et MD5 suivant le parametre salt... j'ai jamais tester, mais c'est dans les sources du crypt() NetBSD.
j'implemente la partie DES.
"Jean-Marc Desperrier" <jmdesp@alussinan.org> a écrit dans le message de
news: btj7nf$a8e$2@reader1.imaginet.fr...
Jacques Caron wrote:
On Wed, 7 Jan 2004 19:37:54 +0100, JaySee <JaySee@fr.st> wrote:
pour le moment, je me base sur les sources du crypt de NetBSD, mais
leur
implementation est trop differente de la mienne, ca me pose trop de
problemes pour comprendre et appliquer.
J'ai du mal à imaginer ça... En quoi peut-elle être si différente?
crypt peut être n'importe quoi, les logiciels utilisateur sont censés
utiliser uniquement les appels systèmes, et jamais gérer par eux-mêmes
le type de chiffrement. En conséquence de quoi, il y a bien des unix et
dérivés qui ne font pas la même choses quand ils font un crypt.
C'est tout a fait vrai, crypt() peut utiliser plusieurs algorythm, notament
DES (modifié quand meme)
et MD5 suivant le parametre salt... j'ai jamais tester, mais c'est dans les
sources du crypt() NetBSD.
"Jean-Marc Desperrier" a écrit dans le message de news: btj7nf$a8e$
Jacques Caron wrote:
On Wed, 7 Jan 2004 19:37:54 +0100, JaySee wrote:
pour le moment, je me base sur les sources du crypt de NetBSD, mais leur
implementation est trop differente de la mienne, ca me pose trop de problemes pour comprendre et appliquer.
J'ai du mal à imaginer ça... En quoi peut-elle être si différente?
crypt peut être n'importe quoi, les logiciels utilisateur sont censés utiliser uniquement les appels systèmes, et jamais gérer par eux-mêmes le type de chiffrement. En conséquence de quoi, il y a bien des unix et dérivés qui ne font pas la même choses quand ils font un crypt.
C'est tout a fait vrai, crypt() peut utiliser plusieurs algorythm, notament DES (modifié quand meme) et MD5 suivant le parametre salt... j'ai jamais tester, mais c'est dans les sources du crypt() NetBSD.