青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

天下

記錄修行的印記

對openssl做的一些簡單封裝

#include "stdafx.h"

int GetRSA(RSA **RsaKeys)
{
    
*RsaKeys=RSA_generate_key(RSALEN,RSA_F4,NULL,NULL);
    
if(NULL==*RsaKeys)
        
return -1;
    
return 0 ;
}

//取得私鑰
int GetPrivateKey(RSA *RsaKeys,RSA **Pvtkey)
{
    
*Pvtkey = RSAPrivateKey_dup(RsaKeys);
    
if(NULL==*Pvtkey)
        
return -1
    
return 0;
}

//私鑰To數據流
int PrivateKeyToData(RSA *Pvtkey,unsigned char* bufkey)
{
    BIO
* pBio = BIO_new(BIO_s_mem());
    
if (pBio == NULL) {
        
return -1;
    }
    memset(bufkey,
'\0',RSALEN);
    
if( i2d_RSAPrivateKey_bio(pBio,Pvtkey) < 0 ) {
        BIO_free(pBio);    
        
return -1;
    }
    BIO_read(pBio,bufkey,RSALEN);

    BIO_free(pBio);    
    
return 0;
}

//數據流To私鑰
int DataToPrivateKey(unsigned char* bufkey,RSA **Pvtkey)
{
    BIO 
*pBio = BIO_new(BIO_s_mem());
    
if (pBio == NULL) {
        
return -1;
    }
    BIO_write(pBio,bufkey,RSALEN);
    
if( NULL == d2i_RSAPrivateKey_bio(pBio,Pvtkey)) {
        BIO_free(pBio);
        
return -1;
    }
    BIO_free(pBio);
    
return 0;
}

//取得公鑰
int GetPublicKey(RSA *RsaKeys,RSA **Pubkey)
{
    
*Pubkey = RSAPublicKey_dup(RsaKeys);
    
if(NULL==*Pubkey)
        
return -1
    
return 0;
}


//公鑰To數據流
int PublicKeyToData(RSA *Pubkey,unsigned char* bufkey)
{
    BIO 
*pBio = BIO_new(BIO_s_mem());
    
if (pBio ==NULL) {
        
return -1;
    }
    memset(bufkey,
'\0',RSALEN);
    
if(i2d_RSAPublicKey_bio(pBio,Pubkey) < 0) {
        BIO_free(pBio);
        
return -1;
    }
    BIO_read(pBio,bufkey,RSALEN);
    BIO_free(pBio);
    
return 0;
}

//數據流To公鑰
int DataToPublicKey(unsigned char*bufkey,RSA **Pubkey)
{
    BIO    
* pBio=BIO_new(BIO_s_mem());
    
if (pBio ==NULL)
    {
        
return -1;
    }
    BIO_write(pBio,bufkey,RSALEN);
    
if( d2i_RSAPublicKey_bio(pBio,Pubkey) < 0 ) {
        BIO_free(pBio);    
        
return -1;
    }
    BIO_free(pBio);    
    
return 0;    
}

/*公鑰加密->私鑰解密*/
int RSAPublicEncrypt(RSA *Publickey, char *From, char *To)
{
    
int len=0;
    len 
= RSA_size(Publickey) -11;

    
if(-1 == (len=RSA_public_encrypt(len,(unsigned char *)From,(unsigned char *)To,Publickey,RSA_PKCS1_PADDING)) )
        
return -1;

    
return len;
}


/*私鑰解密<-公鑰加密*/
int RSAPrivateDecrypt(RSA *Privtekey, char *From, char *To)
{
    
if(-1 == (RSA_private_decrypt(RSALEN/8,(unsigned char *)From,(unsigned char *)To,Privtekey,RSA_PKCS1_PADDING)))
        
return -1;

    
return 0;
}


/*私鑰加密->公鑰解密*/
int RSAPrivateEncrypt(RSA *Privtekey, char *From, char *To)
{
    
int len = RSA_size(Privtekey)-11;
    
if(-1 == (len = RSA_private_encrypt(len,(unsigned char *)From,(unsigned char *)To,Privtekey,RSA_PKCS1_PADDING)))
        
return -1;

    
return len;
}


/*公鑰解密<-私鑰加密*/
int RSAPublicDecrypt(RSA *Publickey, char *From, char *To)
{
    
if(-1 == (RSA_public_decrypt(RSALEN/8,(unsigned char *)From,(unsigned char *)To,Publickey,RSA_PKCS1_PADDING)) )
        
return -1;

    
return 0;
}



//void DesEncrypt(char *Key,char *Msg, char *Result,int Length)
//{
//    int             n=0;
//    DES_cblock      desblock;
//    DES_key_schedule schedule;
//
//    DES_string_to_key(Key,&desblock);
//    DES_set_key_checked( &desblock, &schedule );
//
//    DES_cfb64_encrypt( (unsigned char *)Msg, (unsigned char *)Result,
//        Length, &schedule, &desblock, &n, DES_ENCRYPT );
//
//}
//
//
//void DesDecrypt( char *Key, char *Msg, char *Result,int Length)
//{
//
//    int             n=0;
//
//    DES_cblock      desblock;
//    DES_key_schedule schedule;
//
//    DES_string_to_key(Key,&desblock);
//    DES_set_key_checked( &desblock, &schedule );
//
//    DES_cfb64_encrypt( (unsigned char *) Msg, (unsigned char *)Result,
//        Length, &schedule, &desblock, &n, DES_DECRYPT );
//
//}

void DESGenerateKey(char *pKey)
{
    
int nLen=33;
    
int flag=0;
    
int i,k=0;

    srand((unsigned)time(NULL));
    
for(i=0;i<nLen-1;i++)
    {
        flag
=rand()%2;
        
if(flag)
            pKey[k
++]='A'+rand()%26;
        
else
            pKey[k
++]='a'+rand()%26;
    }

    pKey[k]
='\0';
}

posted on 2014-03-21 17:40 天下 閱讀(1701) 評論(0)  編輯 收藏 引用 所屬分類: 加密解密

<2025年12月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

導航

統計

常用鏈接

留言簿(4)

隨筆分類(378)

隨筆檔案(329)

鏈接

最新隨筆

搜索

最新評論

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久婷婷激情| 欧美国产精品日韩| 国产一区二区按摩在线观看| 小黄鸭精品密入口导航| 亚欧美中日韩视频| 国自产拍偷拍福利精品免费一| 久久全球大尺度高清视频| 久久激情综合| 亚洲黄色免费电影| 亚洲美女av在线播放| 国产精品色网| 久久午夜国产精品| 奶水喷射视频一区| 亚洲香蕉在线观看| 亚洲女人av| 亚洲黄色视屏| 亚洲在线日韩| 136国产福利精品导航| 亚洲日本中文| 国产精品午夜电影| 欧美大片专区| 国产精品普通话对白| 麻豆精品91| 国产精品福利影院| 免费久久久一本精品久久区| 欧美另类一区二区三区| 欧美尤物一区| 欧美欧美在线| 久久午夜色播影院免费高清| 欧美精品 日韩| 久久性色av| 国产精品日韩| 亚洲激情影视| 黄色成人在线网址| 一本色道久久88综合日韩精品| 国产一区视频网站| 日韩午夜av| 亚洲欧洲综合| 欧美一区二区三区日韩| 99re热这里只有精品视频| 欧美在线亚洲在线| 亚洲欧美中文日韩在线| 免费成人高清| 久久日韩精品| 国产区二精品视| 99精品国产一区二区青青牛奶| 亚洲电影免费观看高清完整版| 国产精品99久久久久久人| 亚洲精品在线免费| 久久一区二区三区国产精品| 久久国产精品久久久久久久久久 | 欧美多人爱爱视频网站| 久久久精品日韩欧美| 国产精品久久91| 亚洲精品日韩在线观看| 在线视频观看日韩| 久久电影一区| 久久午夜视频| 好吊色欧美一区二区三区四区| 亚洲视频二区| 亚洲欧美视频| 国产精品青草综合久久久久99| 亚洲人成网站777色婷婷| 亚洲精品视频免费| 欧美二区在线观看| 91久久夜色精品国产九色| 亚洲国产另类精品专区| 久久综合999| 亚洲电影网站| 日韩视频―中文字幕| 欧美国产欧美亚洲国产日韩mv天天看完整 | 欧美国产先锋| 亚洲人妖在线| 夜夜嗨av一区二区三区四区 | 久久成人综合网| 久久综合九色九九| 亚洲电影天堂av| 欧美激情精品久久久久久黑人| 欧美激情一区二区三区四区| 亚洲精品久久7777| 欧美日韩成人免费| 亚洲线精品一区二区三区八戒| 亚洲永久字幕| 狠狠88综合久久久久综合网| 久久精品夜色噜噜亚洲a∨| 免费一区视频| 中文日韩在线视频| 国产一区二区三区在线观看视频| 久久精品国产成人| 亚洲国产一区二区三区a毛片| 99精品国产热久久91蜜凸| 国产精品久久久久久久久久久久 | 鲁大师影院一区二区三区| 亚洲国产成人一区| 亚洲欧美日韩精品| 国产亚洲欧美激情| 欧美韩日视频| 午夜综合激情| 91久久国产综合久久蜜月精品| 亚洲特级片在线| 影音先锋亚洲电影| 欧美日一区二区在线观看 | 久久九九精品99国产精品| 91久久精品www人人做人人爽| 午夜在线一区二区| 亚洲精品日韩综合观看成人91| 欧美系列电影免费观看| 久久久精品久久久久| 一区二区不卡在线视频 午夜欧美不卡'| 久久成人精品| 亚洲视频在线观看视频| 尤物九九久久国产精品的特点 | 另类尿喷潮videofree| 一区二区三区黄色| 欧美gay视频激情| 久久av最新网址| 一区二区三区欧美在线| 精品1区2区3区4区| 欧美午夜欧美| 欧美激情视频一区二区三区不卡| 欧美一区二区大片| 99re热这里只有精品免费视频| 免播放器亚洲| 久久精品麻豆| 欧美一区二区三区男人的天堂| 亚洲区一区二区三区| 国模吧视频一区| 国产日韩精品久久久| 欧美日韩免费区域视频在线观看| 久久亚洲综合色一区二区三区| 亚洲综合成人在线| 在线亚洲欧美视频| 亚洲精品一二区| 亚洲国产精品一区在线观看不卡| 久久三级视频| 久久久久久久久久久久久9999| 亚洲欧洲99久久| 亚洲综合精品自拍| 一本大道av伊人久久综合| 亚洲人成在线播放| 亚洲激情图片小说视频| 国内外成人免费激情在线视频网站 | 亚洲天堂成人在线视频| 亚洲美女视频网| 亚洲精品裸体| 亚洲精品美女久久久久| 亚洲日本中文字幕免费在线不卡| 欧美国产综合| 亚洲国产91色在线| 亚洲人www| 一区二区三区久久久| 这里是久久伊人| 亚洲视频第一页| 午夜亚洲一区| 午夜精品一区二区三区在线视| 午夜视频一区二区| 欧美一区二区三区播放老司机| 欧美一级视频精品观看| 欧美夜福利tv在线| 久久网站免费| 欧美精品在线视频| 国产精品久久国产精品99gif| 国产精品―色哟哟| 一区二区亚洲欧洲国产日韩| 尤物九九久久国产精品的特点| 最新中文字幕一区二区三区| 9国产精品视频| 性久久久久久| 欧美黄色aaaa| 99re亚洲国产精品| 欧美亚洲午夜视频在线观看| 久久久久久午夜| 欧美精品一区二区三区蜜桃 | 欧美一区视频| 美女黄网久久| 国产精品免费看久久久香蕉| 国产亚洲一区在线| 亚洲激情成人| 午夜视频精品| 欧美激情a∨在线视频播放| 日韩视频一区| 欧美中文字幕视频在线观看| 欧美成人免费全部观看天天性色| 国产精品国产a| 亚洲国产精品一区二区第四页av| 亚洲视频在线视频| 媚黑女一区二区| 亚洲一区二区三区色| 女同一区二区| 国产午夜精品一区二区三区视频 | 国产精品私房写真福利视频| 激情婷婷亚洲| 亚洲资源av| 欧美国产激情| 性色av一区二区三区红粉影视| 欧美激情网友自拍| 在线不卡中文字幕播放| 亚洲免费视频成人| 亚洲国内精品在线| 老司机67194精品线观看|