欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何給隨機數加密

 更新時間:2013年03月07日 10:39:21   作者:  
隨機數加密的簡單算法,需要的朋友可以參考一下
復制代碼 代碼如下:

// 隨機數加密算法  A^B = C , A^C =B , B^C = A 異或加密
 // Etual  2011-3-14

 #include <stdio.h>

 // 7byte 數據 和 1byte key
 unsigned char code_buf[8] = {0x12,0x13,0x14,0x15,0x21,0x22,0x23,0x00};

 void print_buf(void)
 {
     int i;
     for (i=0;i<8;i++)
     {
         printf("%x,",code_buf[i]);
     }
     printf("\n");
 }

 int main(void)
 {
     unsigned char key,new_key;
     unsigned char rand_digi;
     int i;

     printf("original buf is!\n");
     print_buf();

     // key 是一個私鑰,兩個通訊之間各自擁有 (加密解密都需要)
     key = 0x55;
     // rand_digi 是一個隨機數
     rand_digi = 0xe3;  // 可以是時間戳
     // 用私鑰對隨機數加密得到密文作為新的key使用
     new_key = key ^ rand_digi;

     // 用這個新的key對數據進行加密 加密過程
     for (i=0;i<7;i++)
     {
         code_buf[i] ^= new_key;
     }
     // 這個key伴隨著數據一起傳送出去
     code_buf[7] = new_key;

     printf("encrypted buf is!\n");
     print_buf();

 
 //解密過程
     // 假設接收端正確接收到這個已經加密了的8字節(jié)數據
     printf("now decode:\n");
     // 因為最后一個字節(jié)是key,用這個對前面的數據進行解密
     for (i=0;i<7;i++)
     {
         code_buf[i] ^= code_buf[7];
     }
     // 最后一個本身也是加密了的,用私鑰進行還原可以得到隨機數
     code_buf[7] ^= key;

     print_buf();

     return 0;
 }

相關文章

  • C語言實現(xiàn)三子棋小游戲全程詳解

    C語言實現(xiàn)三子棋小游戲全程詳解

    完成一個三子棋的代碼并不是很難,有困難且重要的是完成這個游戲代碼所具備的思想,因為思想上的進步才是真正的進步,當我們有了這個思想上的武器,寫出別的代碼,難度就不會高
    2022-05-05
  • C語言解線性方程的四種方法

    C語言解線性方程的四種方法

    這篇文章主要介紹了C語言解線性方程的四種方法,大家參考使用,學習線性代數的同學一定能用到
    2013-11-11
  • C++簡明圖解分析靜態(tài)成員與單例設計模式

    C++簡明圖解分析靜態(tài)成員與單例設計模式

    與靜態(tài)數據成員不同,靜態(tài)成員函數的作用不是為了對象之間的溝通,而是為了能處理靜態(tài)數據成員,靜態(tài)成員函數沒有this指針。既然它沒有指向某一對象,也就無法對一個對象中的非靜態(tài)成員進行默認訪問
    2022-06-06
  • C?C++?題解LeetCode1417重新格式化字符串

    C?C++?題解LeetCode1417重新格式化字符串

    這篇文章主要為大家介紹了C?C++?題解LeetCode1417重新格式化字符串,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-10-10
  • C語言實現(xiàn)3*3數組對角線之和示例

    C語言實現(xiàn)3*3數組對角線之和示例

    今天小編就為大家分享一篇C語言實現(xiàn)3*3數組對角線之和示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • C語言各種符號的使用介紹下篇

    C語言各種符號的使用介紹下篇

    C?語言的基本符號就有?20?多個,每個符號可能同時具有多重含義,而且這些符號之間相互組合又使得?C?語言中的符號變得更加復雜起來
    2022-08-08
  • 使用QPainter畫一個3D正方體

    使用QPainter畫一個3D正方體

    這篇文章主要為大家詳細介紹了使用QPainter畫一個3D正方體,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-08-08
  • C++實現(xiàn)日期類(Date)

    C++實現(xiàn)日期類(Date)

    這篇文章主要為大家詳細介紹了C++實現(xiàn)日期類的相關代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • Qt讀寫ini文件之QSettings用法

    Qt讀寫ini文件之QSettings用法

    這篇文章主要為大家介紹了Qt讀寫ini文件之QSettings的使用方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • C++中new和delete匹配使用過程詳解

    C++中new和delete匹配使用過程詳解

    關于 new 和 delete 的使用相信大家并不陌生,可是為什么使用 new 的時候要用 delete,使用 new[] 的時候又要用 delete[]呢?本文就來和大家詳細說說
    2023-02-02

最新評論