一、反編譯
1.定義:利用編譯程式從源語言編寫的源程式產生目標程式的過程。
2.怎麼進行反編譯?
先了解apk對檔案構造
二、加固方案的手段
1.反模擬器:模擬器執行apk,可以用模擬器監控到apk的各種行為,所以在實際的加固apk執行中,一旦發現模擬器在執行該apk, 就停止核心**的執行。
2.**虛擬化:
**虛擬化在桌面平台應用保護中已經是非常的常見了,主要的思路是自建乙個虛擬執行引擎,然後把原生的可執 行**轉換成自定義的指令進行虛擬執行。
3.加密:
樣本的部分可執行**是以壓縮或者加密的形式存在的,比如,被保護過的**被切割成多個小段,前面的一段**先把後面的**片段在記憶體中解密,然後再去執行解密之後的**, 如此一塊塊的迭代執行。
三、加固的方案
四、加固總體框架
1.dex檔案是什麼?
加固的目的是保護dex檔案,直接而言就是對dex檔案進行操作,對dex檔案動刀子,必須知道dex檔案是什麼,能否直接動刀子。
2.apk打包流程:加殼是在原來apk的基礎上加一層保護殼,dex檔案修改了就需要重新打包,否則apk安裝不了。
3.加密過程
4.apk檔案如何執行(脫殼)
五、對稱加密和非對稱加密
對稱加密: 加密和解密的秘鑰使用的是同乙個
例如:des、3des、blowfish、idea、rc4、rc5、rc6 和 aes
非對稱加密演算法: 公開金鑰與私有金鑰是一對,如果用公開金鑰對資料進行加密,
只有用對應的私有金鑰才能解密;如果用私有金鑰對資料進行加密,那麼只有用
對應的公開金鑰才能解密。因為加密和解密使用的是兩個不同的金鑰,所以這種
演算法叫作非對稱加密演算法
加加固固的目的是保護dex,直接而言就是對dex檔案進
行操作,對dex檔案動刀子,必須知道dex
麼,能否直接動刀子。什麼是源dex?什麼是殼dex?
加固的目的是保護dex,直接而言就是對dex檔案進
行操作,對dex檔案動刀子,必須知道dex檔案是什
麼,能否直接動刀子。什麼是源dex?什麼是殼dex?
AES加密原理
0 aes簡介 美國國家標準技術研究所在2001年發布了高階加密標準 aes aes是乙個對稱分組密碼演算法,旨在取代des成為廣泛使用的標準。根據使用的密碼長度,aes最常見的有3種方案,用以適應不同的場景要求,分別是aes 128 aes 192和aes 256。本文主要對aes 128進行介紹...
AES加密相關
aes是一種對稱加密演算法,即用同一把金鑰進行加密與解密。aes加密有以下幾個引數需要注意 1.key aes要求金鑰具有16byte 24byte或者32byte,位數越高,加密強度越大,加密輪數依次為10 12 14輪。以128位金鑰為例,金鑰首先擴充套件為44個字 32位 前4個字與明文進行一...
Aes加密解密
加密時 先對string進行utf8解析成陣列 對陣列進行加密 對加密結果用base64解析成string。那麼揭秘時,對字串的解析方式是必須要 倒 過來的,就成這樣子了 解密時 先對string進行base64解析成陣列 對陣列進行解密 對解密結果用utf8解析成string using syst...