• eco_game
    link
    fedilink
    English
    arrow-up
    28
    ·
    5 months ago

    As the article states, currently all processes are able to read the file which contains the key. Instead, you could store the key in the macOS Keychain (and Linux/Windows equivalents), which AFAIK is a list of all sorts of sensitive data (think WiFi passwords etc.), encrypted with your user password. I believe the Keychain also only let’s certain processes see certain entries, so the Signal Desktop App could see only its own encryption key, whereas for example iMessage would only see the iMessage encryption key.

    • TheEntity@lemmy.world
      link
      fedilink
      English
      arrow-up
      7
      ·
      5 months ago

      There is no single keychain on Linux, and supposedly on Windows too. Signal would need to either support a few dozens of password managers or require a specific one, both options terrible in their own way. This isn’t something that can be done without making broad assumptions about the user’s system.

      • eco_game
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        5 months ago

        I’m not too knowledgeable on that topic, but doesn’t Linux store WiFi or smb-share passwords in some keychain?

        Edit: missread your comment a little, I’m guessing you meant that there are multiple different keychains on Linux

        • TheEntity@lemmy.world
          link
          fedilink
          English
          arrow-up
          5
          ·
          5 months ago

          Either multiple different keychains or even you can have no keychain-like application in your system at all.

          The WiFi passwords are usually stored in /etc/NetworkManager as plain files. Granted, they are not accessible directly by non-root users as they are being managed by the NetworkManager daemon, but there is nothing generic for such a thing. Signal rolling a similar daemon for itself would be an overkill. The big desktop environments (GNOME, KDE…) usually have their own keychain-like programs that the programs provided by these environments use, but that only solves this problem for the users of these specific environments.

          To me it’s perfectly expected the Signal encryption keys are readable by my user account.