unity夾克加密 unity加密方案

2021-10-13 10:32:52 字數 607 閱讀 5973

分成c#**(sdk)和c++**(dll\so)

加解密流程:

c# new乙個新類,初始化的時候傳入key

c# 通過setstring方法傳入待加密或者解密字串

c# 通過run方法,傳遞要求加密(0)或者解密(1)

c# 通過getstring方法獲取加密或者解密結果

dll(c++)功能:

核心加解密函式

金鑰保密:

key在c#儲存,使用64位字串,按特定位取,c#採用rsa解密

salt在c++儲存,取sha256

iv在檔案中儲存,需要另外乙個工具生成檔案內容,遊戲程式唯讀檔案。

工具預設規則為生成128位長度字元,按奇數1、3、5位把base64後的iv字串插入,插入完畢下乙個奇數字,再補乙個「=」

混淆方案:

1、dll對外沒有直接加解密函式,只能按步驟呼叫

2、dll內部加解密有預設key\salt\iv,如果被人直接呼叫,不會出錯

3、key\salt\iv儲存在三個不同地方,組合在一起才能正確解密

4、函式定義和變數命名避免key\encrypt\decrypt等

5、unity最終使用il2cpp編譯

unity加密與解密

通常unity的 都是c 的,通過工具基本可以直接看到原始碼。netreflector ilspy 以上2個工具,可以非常方便的實現解密操作。比較常見的加密操作是 對於assembly csharp.dll,使用一定的方式做加密,比如xxtea。操作思路 讀取dll 加密讀取到的內容 回寫dll 同...

Unity中實現檔案加密

常用的檔案加密演算法有 des aes rsa sha 1 md5.net自帶了安全類庫,在system.security.cryptography下有一些常用的加密演算法 其中md5屬於摘要演算法,多用於檢查檔案是否有修改 對稱加密 對稱加密演算法有aes des 3des等 在對稱加密演算法中,...

Unity3d資料加密

在unity中能夠使用c 自帶的對稱演算法對資料進行加密,以下兩種加密演算法 using system using system.text using system.security.cryptography using system.io using unityengine public clas...