首頁>Security>source

我對資料加密/安全性有些新意,但我已经阅讀過基本概念,如散列密碼,加密檔案等。如果可能,請ELI5 - 提前感谢。

背景:我的應用程式使用针對IRC的OAuth密钥以及客戶端ID与第三方(Twitch)进行互動.這两个都可以用来有效地訪問應用程式的Twitch帐戶,並使用它做任何事情.每当應用程式与Twitch服務器建立連線時,密钥就会以明文形式發送(我無法做任何事情,而且這不是真正的問题).我主要担心的是有人訪問使用者的計算機並从那裏窃取密钥。

I'd like to securely store these on the disk   這樣使用者每次打開應用程式時都不必登錄Twitch(檢索密钥).要做到這一點, my best solution so far was to encrypt the file containing them .這樣做的顯而易见的方法是 require a password when the application starts ,然後使用儲存的hash + salt来檢查密碼,以及 use the password (or its hash with a different salt) as a key to decrypt the file

如前所述,我是資料保護的新手,所以可能有更好的方法来做到這一點.如果有的话,請建議一个.但是,至於......

Ifpossible, I'd also like to not have the user enter their password every time they open the application   - 只是為了方便使用者.每个使用者会话提示一次密碼(或每次重啟計算機時提示一次)似乎是合理的。

I thought about doing this by storing something in RAM, or perhaps by storing some kind of hash as a temporary file.   但是,我還未能得出實際的結論.也许我要求太多了.然而,有没有一種實際的,體面的方式来實現這一點? 如果没有,在每个應用程式啟動時提示輸入密碼比以其他方式安全地儲存這些Twitch键更好吗?

如果重要 - 根据我的具體情况,我使用的是Python 3.7,我的目標是使我的應用程式跨平臺(只要系統支援Python)。

最新回復
  • 2019-12-5
    1 #

    如果你想要 它是跨平臺的,考虑使用Python模組,它提供對各種平臺' existing的訪問   內建"密钥環"系統.一種流行的名為 python-keyring 。

    在所有拥有密钥環的平臺上,使用使用者的登錄密碼进行加密儲存,並在使用者登錄時在RAM中解鎖。

    (這不是超級安全,因為技術上其他程式也可以从操作系統請求相同的密碼......但實際上所有其他"儲存在RAM中的選項"選項都会遇到同樣的問题,所以它不是降級.)

  • privacy:是否有人可以在"黑屏"下面看到” 這张圖片的一部分(见下文)?
  • authentication:在JavaScript中設置登錄cookie是不安全的吗?