【技術實現步驟摘要】
本專利技術涉及一種加密解密方法,特別是。
技術介紹
流密碼(stream cipher),也稱之為序列密碼。由于流密碼的分析和設計往往用于一個國家的軍事和外交通信。所以,流密碼的研發和設計基本上都是在保密的狀態下進行,各個國家研發流密碼的學者和專家為了保密幾乎沒有過多的這方面的公開的論著。各國都將流密碼技術和產品,作為軍工產品而限制出口。由于它具有許多其他密碼不可比擬的優點,所以,它是當今最為通用的密碼系統之 O現在的流密碼學的研究方向,都是以數學模型為基礎,使用復雜的代數運算、布爾代數運算、偽隨機數、移位寄存器、線性反饋等。完成流密碼的加密和解密。在這方面比較成功的方法有A5方法,S盒方法,RC4方法,K2方法等。這些方法已經是不公開的秘密,經過多年的研究,對其加密和解密已經具有了一定的成熟手段。現在已有很多學者研究攻擊和破譯上述方法加密的密文。這就使得使用以上的方法進行加密的密文,其安全性受到極大的挑戰。
技術實現思路
為了解決上述的技術問題,本專利技術提供了一種實現方式簡單、安全性高、靈活性強的基于流密碼的動態加密解密方法。本專利技術解決其技術問 題所采用的技術方案是: ,包括: 讀取明文文件,獲得明文文件的長度m后,根據明文文件的長度m,選擇一個小于長度m的自然數k作為加密系數; 對密鑰文件的不同的二進制位,設定其對應的加密規則及相應的解密規則; 加密步驟:選取參考文件,并讀取密鑰文件,選擇密鑰文件的一個二進制位,根據該二進制位對應的加密規則,結合加密系數及參考文件,將明文文件的二進制位進行讀寫處理,進而生成密文文件; 解密步驟:讀取密鑰文件 ...
【技術保護點】
一種基于流密碼的動態加密解密方法,其特征在于,包括:讀取明文文件,獲得明文文件的長度m后,根據明文文件的長度m,選擇一個小于長度m的自然數k作為加密系數;對密鑰文件的不同的二進制位,設定其對應的加密規則及相應的解密規則;加密步驟:選取參考文件,并讀取密鑰文件,選擇密鑰文件的一個二進制位,根據該二進制位對應的加密規則,結合加密系數及參考文件,將明文文件的二進制位進行讀寫處理,進而生成密文文件;解密步驟:讀取密鑰文件,根據加密過程中所選擇的二進制位對應的解密規則,結合加密系數及參考文件,將密文文件的二進制位進行讀寫處理,進而得到還原的明文文件。
【技術特征摘要】
1.一種基于流密碼的動態加密解密方法,其特征在于,包括: 讀取明文文件,獲得明文文件的長度m后,根據明文文件的長度m,選擇一個小于長度m的自然數k作為加密系數; 對密鑰文件的不同的二進制位,設定其對應的加密規則及相應的解密規則; 加密步驟:選取參考文件,并讀取密鑰文件,選擇密鑰文件的一個二進制位,根據該二進制位對應的加密規則,結合加密系數及參考文件,將明文文件的二進制位進行讀寫處理,進而生成密文文件; 解密步驟:讀取密鑰文件,根據加密過程中所選擇的二進制位對應的解密規則,結合加密系數及參考文件,將密文文件的二進制位進行讀寫處理,進而得到還原的明文文件。2.根據權利要求1所述的一種基于流密碼的動態加密解密方法,其特征在于,所述加密步驟包括: 511、讀取明文文件的字節數,根據該字節數,在計算機內存開辟明文存儲空間,讀取明文文件并將其存儲在明文存儲空間中,并創建第一明文字符指針Ql指向明文存儲空間的第k位,同時創建第二明文字符指針Q2指向明文存儲空間的第k+Ι位; 512、根據明文文件的字節數,選擇參考文件; 513、根據明文文件的字節數,在計算機內存開辟參考存儲空間后,讀取參考文件并將其存儲在參考存儲空間中,并創建參考字符指針Pf指向參考存儲空間的首地址; 514、讀取密鑰文件的字節數,根據密鑰文件的字節數,在計算機內存開辟密鑰存儲空間后,讀取密鑰文件并將其存儲在密鑰存儲空間中,并創建密鑰字符指針PP指向密鑰存儲空間的首地址; 515、根據明文文件的字節數,在計算機內存開辟密文存儲空間,并創建密文字符指針pc指向密文存儲空間的首地址; 516、根據密鑰字符指針pp所指向的二進制字符串的位所定義的加密規則,按順序掃描參考字符指針Pf所指向的二進制字符串的位,結合該掃描情況及加密規則,將第一明文字符指針Ql或第二明文字符指針Q2所指向的二進制位填入密文字符指針pc指向的密文存儲空間中; 517、讀取密文存儲空間的字節,進而生成密文文件; 其中,所述明文存儲空間為循環鏈表,k為加密系數,所述第一明文字符指針Ql是向前遍歷的,所述第二明文字符指針Q2是向后遍歷的。3.根據權利要求2所述的一種基于流密碼的動態加密解密方法,其特征在于,所述步驟S13,其具體為: 根據明文文件的字節數,在計算機內存開辟參考存儲空間后,讀取參考文件并將其存儲在參考存儲空間中,在讀取參考文件的過程中,剔除為“0x00”和“Oxff”的值,且所讀取并存儲的參考文件的字節數等于明文文件的字節數,并創建參考字符指針Pf指向參考存儲空間的首地址。4.根據權利要求2所述的一種基于流密碼的動態加密解密方法,其特征在于,所述步驟S16中所述加密規則為: 按順序掃描參考字符指針Pf所指向的二進制字符串的位,若遇到值為“O”的位,則將第一明文字符指針Ql所指向的二進制位填入密文字符指針pc指向的密文存儲空間,若遇到值為“I”的位,則將第二明文字符指針Q2所指向的二進制位填入密文字符指針PC指向的密文存儲空間。5.根據權利要求2所述的一種基于流密碼的動態加密解密方法,其特征在于,所述步驟S16中所述加密規則為: 按順序掃...
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。