There are few tools that feel like a permanent uphill battle like OpenPGP, at least to me. It is a critical specification in FOSS and even so I frequently find myself banging my head against it in use cases that one would argue are basic or should work more easily. It isn’t just GnuPG, which has become a monstruous behemoth, as I will touch below, but also the whole of OpenPGP regardless of implementation used. It’s frustrating to use, to a level I would equate to the frustration of using XMPP (to this day!), but the difference being, as I said above, that OpenPGP is a critical specification that we depend on for the integrity and security of our systems.