我的應用程序需要使用公鑰和私鑰組合才能創建簽名URL以從Cloudfront訪問我們的資產。我遇到的問題是如何保護此密鑰對,以便未經授權的用戶不能簡單地自行下載密鑰對,並在未經我們許可的情況下生成簽名的URL。保護網絡應用程序中的公鑰/私鑰對
我認爲是對密鑰對進行加密,但是這看起來沒有什麼用處,因爲加密密鑰必須存儲在客戶端代碼中,這在Javascript中是可見的。我想不出任何其他方式來保護那些只能使用Chrome開發工具的人的密鑰對。
有誰知道一種方法,我可以保護我的密鑰對而不必在客戶端代碼中存儲密鑰?我已經考慮過代碼混淆,但是這種技術似乎很容易解決。我正在查找是否有其他可能。
謝謝。
你能解釋一下這種情況嗎?私密密鑰對組合/簽名URL是什麼意思? - 提供一個簡單的場景以及你要做的事情 –
一般而言,用戶可以訪問任何存儲在客戶端(任何客戶端,無論是桌面應用程序,瀏覽器,手機上的移動應用程序等)的任何內容。不知道什麼是實際數據流,最好的辦法可能是將請求發送到服務器以執行實際的加密操作。 – mfanto
@RoyiNamir公鑰和私鑰對是PEM文件。 Cloudfront簽名URL背後的基本前提是您創建了描述訪問策略的簽名字符串,使用RSA私鑰對其進行哈希處理,並使用公鑰對其進行驗證。然後將此簽名附加到URL並在Cloudfront中進行驗證。 – aeskreis