「序列數交換法」與加密

2021-04-12 17:41:26 字數 855 閱讀 8879

用「序列數交換法」可以產生真隨機數,但真隨機數用於加密檔案並不好用,用它們做金鑰需要保管和傳

遞等特殊關照,所以我們需要密碼學意義上的真隨機數就可以了,也就是對想破解的人是真的。

現在籌畫序列數加密(隨機加密),這裡的加密方法是需要密碼的,密碼由使用者輸入。序列數由「序列數交

換法」產生,經處理後作為金鑰。「序列數交換法」中為了加速交換使用隨機函式,將密碼經代數運算的結果

當作隨機函式的初始值(種子),「序列數交換法」產生的隨機序列與隨機函式沒有直接關係不能互推,

用此序列值經處理後加密明文,為安全起見要用兩組以上的隨機序列值,也就是乙個明文位元組要兩個以上

的金鑰位元組。密文形成後加密結束,解密時金鑰完全一樣反向操作即可。

有人說直接用隨機函式產生的序列數不行嗎,也可以用密碼相關的數做種子。那還是不安全,竊密者通過

分析你的程式可以知道你所用的隨機函式,並建立函式所能產生的全部隨機數組,然後拿這個陣列或其衍生的

數值,在你的密文裡,加加、減減、拼拼、湊湊或用其它操作,希望看到明文或其部分出現,通過程式設計查詢的

速度也是很快的,那你的密文就危險了,所以只保密好種子不行。而在上述的方法裡,他不能知道加密用的序

列值,既沒有公式也不能推算出來,分析程式得到所用的隨機函式和「序列數交換法」的交換演算法和序列陣列

的初始值也沒有用處,因為不知道密碼就不能向下計算,你也許說那我們把所有可能出現的種子掃瞄一遍不就

行了嗎,就怕你花不起這個時間,而且不止開始處用到密碼做種子,「序列數交換法」的交換演算法也用了

密碼相關的資料做引數,還不止這些。

由於「序列數交換法」產生的隨機數組,具有良好的隨機性,茁壯性。比之物理形成的隨機數組有過之

而無不及,所以會使你的加密固若金湯。 

全排列 交換法

本人qq 1770115451 演算法 1061907071 請編寫乙個方法,確定某字串所有的排列組合,給定乙個字串,請返回該字串的所有排列 例如 abc 的全排列結果為 abc acb bac bca cab cba 題意 就是乙個字串的每乙個字元重新排列出的所有的結果 原理 假設以字串第0個位置...

C語言 交換法排序

交換法排序 題目內容 從鍵盤輸入n個 n 10 整數,用交換法進行排序 非遞減有序 結果輸出排序後的序列。說明 交換法排序用函式實現,函式原型為 void sort int a,int n 交換法排序的基本思想是 n個元素共需要n 1趟,其中第i 從0變化至n 2 趟的任務是找出本趟中最小的元素放在...

相鄰交換法 皇后遊戲

link 填填初二時研究過的坑 今天初二考試題 相鄰交換法的應用。跳過所有前面的簡化式子,從 min 與 min 分析。若對於所有 i但是這個東西可以用來寫 cmp 函式嗎,答案是不能的。因為 sort 時 cmp 需要滿足是嚴格弱序的。嚴格弱序需要滿足 即通過條件唯一確定乙個序列的順序。而對於上面...