Problème avec blowfish et OpenSSL
Bonjour à tous,
J'ai chercher de la documentation sur la librairies Crypto d'OpenSSL et j'ai donc fait un ptit programme (à l'arrache) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| #include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <openssl/blowfish.h>
int main(){
BF_KEY *key;
char in[64];
char out[64];
char pass[12];
int size;
strcpy(in,"Test de l'algo blowfish\n");
strcpy(pass,"motsdepasse");
size = strlen(in);
BF_set_key(key,strlen(pass),(const unsigned char *)pass);
BF_cfb64_encrypt((const unsigned char *)in,(unsigned char *)out,size,key,0,0,BF_ENCRYPT);
printf("In : %s\n",in);
printf("Out : %s\n",out);
return 0;
} |
que je compile avec : gcc -Wall -pedantic blowfish.c -lcrypto
Jusque là tout va bien, le compilateur ne me renvoie aucune erreur.
Mais pourtant le programme plante : "Segmentation fault"
J'ai fait marcher le déboguer mais mon programme plante avant de se lancer. Le problème viens des fonctions : "BF_set_key" et "BF_cfb64_encrypt". En effet, lorsque je les vires, le programme fonctionne.
J'aimerai que vous éclairiez ma lanterne parce que là je sèche ...
Merci d'avance
HacK SpideR