曰韩免费无码AV一区二区,男女啪啪高清无遮挡免费,精品国产自在精品国产精

<delect id="ygmw2"><rp id="ygmw2"></rp></delect>
      1. <object id="ygmw2"><option id="ygmw2"></option></object>
        <object id="ygmw2"><option id="ygmw2"></option></object>

        您當前的位置:   首頁 > 新聞中心
        移動銀行和支付應用程序的安全存儲和密鑰保護
        發布時間:2020-03-14 08:17:06   閱讀次數:

        1-2003140RPT28.png

        在本文中,我們將重點介紹在移動銀行和支付應用程序的上下文中用于保護密鑰以及通常用于加密機密的技術。


        問題概述

        密碼機密存儲的安全性對于確保使用這些機密的密碼協議的整個鏈的安全性至關重要。對于任何人來說,如果可以定位、提取和讀取用于此操作的密碼機密,對數據進行加密或簽名似乎毫無意義。


        盡管該語句很容易理解,但仍有許多開發人員,尤其是在移動世界中,直接在其代碼內部對對稱加密密鑰或私鑰進行硬編碼。如果沒有對應用程序數據進行深入的混淆(“通用”混淆器是不夠的),則幾乎就像放棄密鑰并將其發布到任何人都可以找到它們的地方。


        許多開發人員缺乏逆向工程的文化,并且不了解逆向工程師用來反匯編、反編譯和重構軟件應用程序的工具和技術。有一個很好的說法:“業余愛好者談論加密。專業人士專注于密鑰管理


        例如,開發人員可能認為加密密碼秘密就足夠了。但是反向工程師并不難理解機密的加密機制并找到相應的密鑰加密密鑰(KEK)等。


        旨在使密鑰變得模糊的基本“家庭釀造”機制幾乎沒有機會成功應對嚴重的攻擊。將密鑰與其他數據進行異或運算似乎很復雜。但是,對于經驗豐富的移動反向工程師來說,打敗他們是小孩子的游戲。


        一旦找到并提取了加密密鑰,應用程序的整個安全性就會崩潰。因此,應大力保護他們。


        下面,我們將列出移動開發中用于保護此類機密的幾種可能的技術。


        混淆

        混淆可能是控制密鑰訪問和使用的最實用選擇。想法是隱藏、拆分、修改、標記化和混淆密鑰,以致于嘗試在代碼中定位并重建它們在時間和資源上都非常昂貴,甚至是不可能的。


        當然,正如我們提到的,基本技術不起作用。為了成功進行密鑰的混淆,需要大量的混淆,而且復雜度很高。 


        沒有關于加密密鑰混淆的標準。因此,由設計者和專家來決定最好的方法,以確保有足夠的安全性來防止倒車。


        可能的關鍵混淆技術包括: 

        • 創建復雜的重建機制以生成密鑰;

        • 將密鑰分為多個子密鑰,以重建隨機位于二進制文件中的密鑰;

        • 將密鑰隱藏到虛擬密鑰池中(欺騙技術);

        • 建立工廠以生成大量用于重建技術的虛擬密鑰;

        • 使用隱寫技術。例如,隱藏一些將密鑰重構為位圖或偽數據所需的數據的密鑰;

        • 計算二進制中給定模式的出現次數,以生成重構密鑰所需的數據。


        復雜的重建機制可能涉及自定義哈?;蚣用芄δ?,例如,使用通過使用偽隨機生成的數字來設計塊的算法,該種子本身取決于其他復雜的參數。這樣做會產生非常好的安全性。


        安全密鑰存儲器  

        保護密鑰安全的最佳方法是將其存儲并在安全的存儲硬件單元中生成它們。安全(加密)內存通常是受防篡改系統保護的某種類型的內存。它們可能還包括防DPA,防SPA保護等,并且通常鏈接到提供安全有條件訪問權限的加密處理器單元和內存加密控制器。


        安全內存通常位于:

        • 硬件安全模塊HSM)的加密核心;

        • 智能卡-包括EMV芯片卡和SIM卡;

        • 裝有它的計算機的可信平臺模塊(TPM);

        • NFC設備的安全元件;

        • 安全的協處理器(例如通常配備EFTPOS終端,ATM等的協處理器)。


        通常,密鑰是在此類內存中生成的,不允許將其保留下來,從而無法提取此類機密。在許多實現中,密鑰是通過PKCS#11操作訪問的。


        安全存儲器通常是EEPROM存儲器,不同于“標準”計算機和SATA磁盤、閃存、RAM等通用設備中的平均存儲器。


        對于移動應用程序,可以自然訪問移動設備上的SIM卡或安全元素,這些存儲可以用作安全存儲器。在這種情況下,應用程序應安全地生成機密并將其加載到安全的內存中,以防止入侵和篡改。


        可信執行環境

        可信執行環境(TEE)通常鏈接到安全內存,但實際上是一個不同的概念。TEE是一個并行環境,獨立于主操作系統運行,并充當受信任區域。在TEE中存儲秘密(如果存在)通常是一個好主意。


        密鑰庫

        KeyStore通常是Java KeyStore,是Android中提供的軟件API。除其他技術外,它還可用于安全地連接密碼機密。 


        安全飛地 

        Secure Enclave是僅IOS的系統,充當具有TEE之類功能的基于硬件的密鑰管理器。它還為密鑰存儲提供了可接受的安全性。


        用戶輸入/驗證

        最后,保護對密碼機密的訪問的一種好方法是利用用戶對某些機密的了解來重建密碼機密。用戶可能需要密碼、幾何圖案、符號組合來重建密碼秘密。


        該技術只能與其他技術一起使用,因為它不能保證攻擊者無法通過使用社交工程技術來竊取用戶密碼。


        綜上所述

        對于移動銀行和支付應用程序,必須安全地存儲諸如機密密鑰或私鑰之類的加密機密。在所有情況下,都應使用模糊處理(例如模糊處理)來增加安全性。


        攬閣信息可提供的部分安全產品和解決方案信息

        聯系攬閣信息,您可以獲取到更多滿足全球合規性要求的信息安全產品資料,以及相關的整體解決方案的相關資料。如:


        您還可以得到攬閣信息所提供的優質服務。

        攬閣信息 · 值得您信賴的信息安全顧問!


        相關閱讀

        購買咨詢電話
        021-54410609
        曰韩免费无码AV一区二区,男女啪啪高清无遮挡免费,精品国产自在精品国产精