App資料加密方式 -北京銳智互動

hskq001發表於2019-11-18

目前app 伺服器端通訊基本上採用的是加密的演算法來傳輸資料包,防止資料包在傳輸的過程中被篡改, app 加密傳輸方式一般採用硬編碼在 apk 和服務端,可以解決透過逆向被獲取,為了保證服務端的安全性,需要截獲 app 與服務端間的通訊,進行重放操作和改包,由於資料包被加密,即使安全人員取得了加密方式,也需要每個包進行解密操作才能進行安全測試,因此還需要使用多個工具協調測試導致測試效率低,不方便進行介面分析。

“對稱式”和“非對稱式”

對稱式加密就是加密和解密使用同一個金鑰,被稱為Session Key ” 這種加密技術是目前廣泛使用的,

非對稱式加密就是加密和解密所使用的不是同一個金鑰,通常是兩個金鑰。一個是公鑰另一個是私鑰 兩個金鑰需配對使用,否則不能開啟檔案,“公鑰”是指可以對外公佈的,“私鑰”則不能,只能有持有人一個人知道,他的優越性就在這裡,因為對稱式的加密方法如果在網路上傳輸密文就很難把金鑰告訴對方,不管用什麼方法都有可能被傾聽 ,而非對稱式的加密方法有兩個金鑰,且其中的公鑰是可以公開的,不怕別人知道 ,收件人解密是隻要用自己的私鑰就可以,這樣能避免金鑰的傳輸的安全性問題。一般的資料加密可以在通訊的鏈路加密,節點加密,端到端加密三層來實現。

鏈路加密 :鏈路加密也叫線上加密是傳輸資料僅在物理層前的資料鏈路層進行加密,接收對方是傳送路徑上的各臺節點機,資訊在每臺節點機內都要被解密和在加密,以此進行,直至到達木的地。

節點加密 :節點加密能給網路資料提供較高的安全性,但他在操作方式上與鏈路加密是類似的兩者均在通訊鏈路上為傳輸的訊息提供安全性,都在中間節點先對訊息進行解密,然後進行加密,因為要對所有傳輸的資料進行加密,所以加密過程對使用者是透明的,然而,與鏈路加密不同節點加密不允許訊息在網路節點已明文形式存在,是要先把收到的訊息進行解密,然後採用另一個不同的金鑰進行機密,這一過程是在節點上的一個安全模組中進行,節點加密要求報頭和路由資訊以明文形式傳輸,以便中間節點能得到如何處理訊息的資訊,這種方法對於防止攻擊者分析通訊業務是脆弱的。

端到端加密 :端到端加密允許資料在從源點到終點的傳輸過程中始終已密文形式存在,採用端到端加密(也叫脫線加密或包加密),訊息在被傳輸是到達終點之前不進行解密,因為訊息在整個傳輸過程中均受到保護,所以即使有節點被損壞也不會使訊息洩露,端到端加密系統的價格相對便宜,並且與鏈路加密和節點加密相比更可靠,更容易設計,實現和維護,端到端加密還避免了其他加密系統所固有的同步問題,因為每個報文爵士獨立被加密的,所以一個報文包所發生的傳輸錯誤不會影響後續的報文包,此外,從使用者對安全需求的直覺上將,端到端加密更加自然,單個使用者可能會選用這種加密方法,以便不影響網路上的其他使用者,此方法只要源點和終點是保密的就行,端對端加密系統通常不允許對訊息的目的地地址進行加密,是因為每一個訊息所經過的節點都要用此地址來確定怎樣傳輸訊息,由於這種機密方法不能掩蓋被傳輸訊息的源點與終點,所以他對於防止攻擊者分析通訊業務是脆弱的。

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952540/viewspace-2664611/,如需轉載,請註明出處,否則將追究法律責任。

相關文章