這些天一直在做乙個知識問答的專案,因為初賽的專案題目比較少,所以題目就寫在本地的plist檔案裡面了,直接讀取就可以了。
公司pm擔心題目洩露,所以要我們給plist檔案加密,這下可把我搞殘了,因為我從來沒搞過加密,網上查了很多資料,都是簡單的字串加密,沒有專門對plist檔案加密,後來實在沒辦法,請教了公司裡的大神,最後搞定了。特地在這裡把方法告訴跟我一樣的ios菜鳥,希望對你有所幫助,若有大牛有更好的辦法,希望指出和改進。
接著,我們來梳理一下整個plist檔案加密流程:
1.首先在你的工程裡匯入des相關的檔案
2.在你要加密的類裡面匯入des標頭檔案
3.寫乙個加密plist檔案的方法,然後再viewdidload方法裡面呼叫它,這裡注意下plist檔案格式要改變下,把你要加密的plist檔案去掉.plist,你匯入的檔案不再是plist格式,開啟方式也不是plist格式,而是xml格式。否則會編譯不成功。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
//生產加密題庫
- (
nsarray
*)makequestiondata;
}
}
return
nil
;
}
4.這樣你的工程裡就會在本地生成了你舊plist檔案的對應的加密的plist檔案
4.1 我們在這方法這邊打個斷點,然後一步一步往下走,走到我nslog方法這邊:
4.3 這時候我們去程式本地的沙盒目錄下取出加密的plist檔案
5.在原來加密plist檔案的方法上寫乙個解密plist檔案,將剛剛生成的加密的plist檔案替換原來的舊檔案,這樣加密工作就完成啦!
6.解密檔案方法。直接呼叫解密方法即可,就不再一一贅述了。
DES加密檔案
隨機產生金鑰 static string generatekey des加密檔案內容 不支援中文 輸入檔名 輸出檔名 加密金鑰8位 public static void encryptfilebyascii string sinputfilename,string soutputfilename,s...
DES 檔案加密解密
public class desfileutils else string file newpath filename 新建路徑,目標目錄為 原路徑 encypt string path newpath encypt file.separator file f new file path if f....
MD5加密 DES加密,DES解密
public class pgsecret region des加密 des加密 要加密的字串。金鑰,且必須為8位。以base64格式返回的加密字串。endregion public static string desencrypt string sztoencrypt,string szkey s...