APP中有一個sqlite數據庫,我想用SQLCipher對它進行加密。我們知道,在代碼中存儲密碼是不安全的,因此我將使用包標識符作爲密碼的一部分。使用iOS APP的捆綁標識符作爲密碼安全嗎?
所以,我想知道,如果捆綁標識符很容易從一個設備或越獄設備上的APP獲取?
謝謝。
APP中有一個sqlite數據庫,我想用SQLCipher對它進行加密。我們知道,在代碼中存儲密碼是不安全的,因此我將使用包標識符作爲密碼的一部分。使用iOS APP的捆綁標識符作爲密碼安全嗎?
所以,我想知道,如果捆綁標識符很容易從一個設備或越獄設備上的APP獲取?
謝謝。
安全是困難的,真正唯一的保護是不給任何人任何東西。如果你確實需要給他們一些東西,那麼最好問他們一個密碼。如果你不能問他們,那麼即使你對數據進行加密,你所能做的最好的辦法就是混淆,因爲你可以做的最好的辦法就是隱藏密碼,以便更難找到,或者找出如何創建密碼。
所以,可以很容易地找到應用程序的捆綁ID,問題是有多難制定出你所使用的密碼和如何可貴的是,它是保護數據。
如果數據是真正有價值然後保護得當,這可能涉及要求用戶輸入密碼,並從它的加密按需服務器下載數據。
如果你的目標僅僅是爲了防止進入新手黑客然後生成一個GUID,其編碼爲應用程序的不是字符串文本以外的東西,並使用它。
如果你在任何地方保存密碼,裏面的應用程序你不能阻止一個確定和經驗的黑客...
不要使用應用程序的包標識符作爲密碼。很容易破譯。對於例如:如果你有ideviceinstaller可以查詢設備安裝的應用程式的bundleId的:
ideviceinstaller -U <UUID> -l
還有一些其他的方法太破譯捆綁ID。所以建議不要使用捆綁ID作爲密碼。希望能幫助到你。
有許多UUID/GUID生成器,我決定不使用它。你認爲什麼可以用作關鍵的一部分,並且不容易被發現?謝謝。 – jdleung
這不會是在毫釐安全可言...... –
這是平凡的已下載你的應用程序解壓縮IPA文件,看到的Info.plist和所有資源的任何人。 Info.plist中沒有任何內容被隱藏。 – rmaddy