hi, I used EVP interface to encrypt and decrypt,but after I encrypted ,I couldn't decrypt it . Why? Any help is appreciated! void do_cipher(char *pw, int operation,char * InBuf,int InLen,char * OutBuf,int *OutBuflen) { //operation: 0:DECRYPT // 1:ENCRYPT unsigned char iv[EVP_MAX_IV_LENGTH], key[EVP_MAX_KEY_LENGTH]; /* unsigned int ekeylen, net_ekeylen; */ EVP_CIPHER_CTX ectx; memcpy(iv, "12345678", 8); EVP_BytesToKey(EVP_idea_cbc(), EVP_md5(), "salt", pw, strlen(pw), 1, key, iv); EVP_CipherInit(&ectx, EVP_idea_cbc(), key, iv, operation); EVP_CipherUpdate(&ectx, OutBuf, OutBuflen, InBuf, InLen); EVP_CipherFinal(&ectx, OutBuf, OutBuflen); } void main(void) { char InBuf[512],OutBuf[512+8],OutBuf2[512+8]; int i,OutLen; for(i=0;i<8;i++) InBuf[i]=30+i; do_cipher("test",1,InBuf,8,OutBuf,&OutLen); //OutLen=8 do_cipher("test",0,OutBuf,8,OutBuf2,&OutLen); //but now OutLen=0 } _________________________________________________________________ 您可以在 MSN Hotmail 站点 http://www.hotmail.com/cn 免费收发电子邮件 ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]