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]

Reply via email to