xi-keyring

simple and extensible alternative for gnome-keyring
git clone https://git.ce9e.org/xi-keyring.git

NameSize
.gitignore20B
LICENSE1072B
PKGBUILD724B
README.md3291B
system/dbus.service95B
system/portal102B
system/systemd.service266B
xikeyring/__init__.py0B
xikeyring/__main__.py1425B
xikeyring/app_id.py578B
xikeyring/dbus.py14211B
xikeyring/dbus_sessions.py3591B
xikeyring/dumpable.py510B
xikeyring/kernel_keyring.py1291B
xikeyring/keyring.py6539B
xikeyring/org.freedesktop.Secrets.xml5747B
xikeyring/prompt.py2184B

xi keyring

a simple and extensible alternative for gnome-keyring.

gnome-keyring is tightly integrated into the linux desktop. There are many other password managers with interesting features. Just to name a few: KeePassXC, Bitwarden, pass, and Himitsu. Unfortunately, none of them really implement the org.freedesktop.Secrets dbus specification, so they cannot completely replace gnome-keyring. On the other hand, gnome-keyring itself has accumulated a sizable legacy, which makes it very hard to extend.

So this project tries to fill the gap:

Threat model

As the main focus for now is experimentation, there is no fixed threat model yet. There are some ideas though.

With gnome-keyring, secrets in an unlocked collection can be read by a malicious application that is running on the user's desktop. This does startle some users, but the developers have repeatedly explained that there is just no point in trying to protect against malicious un-sandboxed applications.

While I am very critical of security theater myself, I feel like there is room for nuance here. These are some of the ideas I want to experiment with:

I am not claiming that this is or ever will be more secure than gnome-keyring. The gnome-keyring developers are much more experienced with this stuff than I am. For example, they have put a lot of effort into preventing secrets from being swapped to disk. That is not something I am even considering (partially because I rely on full disk encryption).

Deviations from the dbus specification

While this project aims to be a drop-in replacement for gnome-keyring, some features of the org.freedesktop.Secrets specification have been simplified: