(原創(chuàng))隨機(jī)串的產(chǎn)生,可以用于鹽值

之前要加密密碼的時(shí)候,要加入鹽值以加強(qiáng)強(qiáng)度,找了部分,又在網(wǎng)上的基礎(chǔ)上修改了下(參考網(wǎng)頁(yè):http://blog.csdn.net/wangchangshuai0010/article/details/17188417)

//產(chǎn)生長(zhǎng)度為length的隨機(jī)字符串

 char pSymbol[] = {'~','`','!','@','#','$','%','^','&',
            '*','(',')','_','+','-','=','{','}','|','[',']',
            ':',';','<','>','?',
            ',','.','\"','\\','\'','/'};
char* getRandomString(int length)  
{  
    int nRand, i;  
    char* string;  
    srand((unsigned) time(NULL ));  
    if ((string = (char*) malloc(length + 1)) == NULL )  
        return NULL ;  
  
    for (i = 0; i < length - 1; i++)  
    {  
        nRand = rand() % (sizeof(pSymbol) + 26 * 2 + 10);
        if (nRand >= 0)
        {
            if (nRand < 26)
                string[i] = 'A' + nRand;  
            else if (nRand < 52)
                string[i] = 'a' + nRand - 26;  
            else if (nRand < 62)
                string[i] = '1' + nRand - 52;
            else if(nRand - 62 < sizeof(pSymbol))
                string[i] = pSymbol[nRand - 62];
            else
                string[i] = 'x';
        }
        else
            string[i] = 'x';
    }  
    string[length] = '\0';  
    return string;  
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容