1. 程式人生 > >財務軟件加密與解密設計思路

財務軟件加密與解密設計思路

編碼 提交 base pub a* mac org 生成 pass

(1)RSA目前只知道有公鑰和私鑰,能加密解密字符串,但不能直接加密解密文件。

(2)DES可以通過密碼進行加密解密文件。

(3)DES用的密碼,可以使用RSA的公鑰和私鑰進行一下二次加密,以保護。

(4)DES的密碼是讀取的計算機MAC地址,並且加了一個強度高的密碼進行綜合,還做了MD5處理。

(5)DES的密碼是機器相關的,如果更換機器,就需要向上級同步自己的新生成私鑰。

=============================================================

1、獲取上報部門的名稱:Org_Name
2、按Org_Name生成公鑰和私鑰,計為:Org_Name_Public.xml和Org_Name_Private.xml,備用。

3、獲取網卡的MAC地址,並且使用md5(MAC地址+密碼Dsidea*********)生成加密文件的DES完整密碼:DES_PassWord

4、用DES加密EXCEL文件。

5、將DES_PassWord,使用公鑰二次加密,得到RSA_SECOND_MIWEN

6、測出二次加密後的文本長度len(RSA_SECOND_MIWEN),不管長度是2位,3位,還是4位,統一按4位數計,得到 一個 XXXX的數字,不足四位,前面補零解決。


7、再次使有部門名稱,轉為BASE64編碼:BASE64_OrgName,並獲取到長度 :len(BASE64_OrgName),不管長度是2位,3位,還是4位,統一按4位數計,得到 一個 YYYY的數字,不足四位,前面補零解決。

雲平臺軟件部
5LqR5bmz5Y+w6L2v5Lu26YOo


管理軟件部
566h55CG6L2v5Lu26YOo

8、在加密後的EXCEL尾部增加內容,先加上RSA_SECOND_MIWEN,再加上BASE64_OrgaName,再將XXXX和YYYY和0001增加到最後。0001表示部門經理審核通過。


至此加密工作完整完成。這個文件由五部分組成,
(1)DES加密後的文件體。
(2)RSA_SECOND_MIWEN :這個是RSA加密後的DES密碼,不用私鑰解開不能直接用於解DES加密後的文件。
(3)部門名稱的BASE64編碼
(4) YYYY:len(BASE64_OrgName) 文件最後面4位,表示是Org_Name的BASE64的長度,即從文件的最後去掉12個字節,再取YYYY個長度,就是部門的BASE64編碼,知道了這個原則,就可以直接獲取到文件的上報部門。
(5)XXXX:len(RSA_SECOND_MIWEN) 根據獲取到的上報部門名稱,查找到應的私鑰,使用私鑰即可解開DES密文。
========================================
副總解壓過程:
(1)按上面原理解壓縮EXCEL文件。
(2)審核認為沒有問題後,將部門經理提交的加密EXCEL再進行一輪DES加密,方法與上面完全一致,只是在XXXX和YYYY的最後添加上0002標識是副總審核通過的。
(3)副總的程序也需要設置部門的名稱,比如基礎教育軟件研發部。

財務解壓過程:
(1)只解壓最後一位是0002的。
(2)需要部門經理和副總的私鑰文件都存在於財務的電腦中。
(3)根據文件最後的標識部門名稱,來決定取哪個私鑰進行解密。

===========================================



財務軟件加密與解密設計思路