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 : Sélectionner tout - Visualiser dans une fenêtre à part
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