Page MenuHome GnuPG

gpgmeProject
ActivePublic

Milestones

Details

Description

GnuPG Made Easy (GPGME) is a C language library that allows to add support for cryptography to a program. It is designed to make access to public key crypto engines like GnuPG or GpgSM easier for applications. GPGME provides a high-level crypto API for encryption, decryption, signing, signature verification and key management.

GPGME comes with language bindings for Common Lisp, C++, QT, Python2 and Python 3.

GPGME uses GnuPG and GpgSM as its backends to support OpenPGP and the Cryptographic Message Syntax (CMS).

Recent Activity

Yesterday

ebo edited projects for T6688: Kleopatra GPGME: Reported assert on exit, added: gpd5x (gpd-5.0.0); removed gpd5x.
Tue, Jan 13, 12:53 PM · gpd5x (gpd-5.0.0), gpgme, kleopatra
ebo edited projects for T7346: gpgmepp: Add support for beta compliance, added: gpd5x (gpd-5.0.0); removed gpd5x.
Tue, Jan 13, 12:51 PM · gpd5x (gpd-5.0.0), gpgme
ebo edited projects for T7883: Kleopatra: Unexpected comma separated keygrip for kyber certs, added: gpd5x (gpd-5.0.0); removed gpd5x.
Tue, Jan 13, 12:46 PM · gpd5x (gpd-5.0.0), gpgme, kleopatra
ebo edited projects for T6694: Random numbers from gpgme, added: gpd5x (gpd-5.0.0); removed gpd5x.
Tue, Jan 13, 12:46 PM · gpd5x (gpd-5.0.0), gpgpass, gpgme, Feature Request
ebo edited projects for T7600: Kleopatra: gpg.exe hangs on trying to exportably certify an already locally signed certificate with multiple UIDs, added: gpd5x (gpd-5.0.0); removed gpd5x.
Tue, Jan 13, 12:46 PM · gpd5x (gpd-5.0.0), Restricted Project, vsd33 (vsd-3.3.1), gpgme, kleopatra
ebo edited projects for T7759: Kleopatra: Notepad encryption with S/MIME fails, added: gpd5x (gpd-5.0.0); removed gpd5x.
Tue, Jan 13, 12:45 PM · gpd5x (gpd-5.0.0), gnupg26, gpgme, kleopatra

Sun, Jan 11

anthumchris closed T8005: TypeScript support, a subtask of T7975: Official GPGme interface/bindings for Nodejs (node), as Resolved.
Sun, Jan 11, 2:16 AM · gpgme, Feature Request
anthumchris closed T8005: TypeScript support as Resolved.

implemented TypeScript workflows using tsc without vite

Sun, Jan 11, 2:16 AM · gpgme, Feature Request

Wed, Jan 7

timegrid closed T6688: Kleopatra GPGME: Reported assert on exit as Resolved.

I'm not sure, how to reproduce this. On gpg4win-5.0.0-beta479 @ win11 I quit Kleopatra with a smartcard inserted, the process exits with code 0, so it looks fine and I'm setting this to resolved.

Wed, Jan 7, 1:18 PM · gpd5x (gpd-5.0.0), gpgme, kleopatra
anthumchris added a comment to T8021: Implement gpg key management API.

completed: draft all gpg key function names

Wed, Jan 7, 12:52 PM · gpgme, Feature Request
anthumchris updated the task description for T8021: Implement gpg key management API.
Wed, Jan 7, 12:47 PM · gpgme, Feature Request
anthumchris added a comment to T7975: Official GPGme interface/bindings for Nodejs (node).

I decided to prioritize developer experience and provide simplified, high-level functional abstractions instead of maintaining 1:1 parity with the underlying gpgme library functions. See example in T8021

Wed, Jan 7, 12:39 PM · gpgme, Feature Request
anthumchris updated the task description for T8021: Implement gpg key management API.
Wed, Jan 7, 12:35 PM · gpgme, Feature Request
anthumchris changed the status of T8005: TypeScript support, a subtask of T7975: Official GPGme interface/bindings for Nodejs (node), from Open to Testing.
Wed, Jan 7, 12:30 PM · gpgme, Feature Request
anthumchris changed the status of T8005: TypeScript support from Open to Testing.
Wed, Jan 7, 12:30 PM · gpgme, Feature Request
anthumchris changed the status of T8021: Implement gpg key management API from Open to Testing.
Wed, Jan 7, 12:29 PM · gpgme, Feature Request
anthumchris closed T8004: Bindings for The GnuPG UI Server Protocol, a subtask of T7975: Official GPGme interface/bindings for Nodejs (node), as Invalid.
Wed, Jan 7, 11:52 AM · gpgme, Feature Request
anthumchris closed T8004: Bindings for The GnuPG UI Server Protocol as Invalid.

I may have misinterpreted what The GnuPG UI Server Protocol is. Instead, I will provide high-level functions to all of gpgme's underlying features

Wed, Jan 7, 11:52 AM · gpgme, Feature Request
anthumchris added a subtask for T7975: Official GPGme interface/bindings for Nodejs (node): T8005: TypeScript support.
Wed, Jan 7, 11:46 AM · gpgme, Feature Request
anthumchris edited parent tasks for T8005: TypeScript support, added: T7975: Official GPGme interface/bindings for Nodejs (node); removed: T8004: Bindings for The GnuPG UI Server Protocol.
Wed, Jan 7, 11:46 AM · gpgme, Feature Request
anthumchris removed a subtask for T8004: Bindings for The GnuPG UI Server Protocol: T8005: TypeScript support.
Wed, Jan 7, 11:46 AM · gpgme, Feature Request

Sun, Jan 4

anthumchris closed T8010: Publish to NPM registry, a subtask of T7975: Official GPGme interface/bindings for Nodejs (node), as Resolved.
Sun, Jan 4, 11:45 PM · gpgme, Feature Request
anthumchris closed T8010: Publish to NPM registry as Resolved.

Published to NPM as gpgmejs, which provides disambiguation from gpgme, gpgmepp, gpgmepy, etc.

Sun, Jan 4, 11:45 PM · gpgme, Feature Request
anthumchris changed the status of T8010: Publish to NPM registry, a subtask of T7975: Official GPGme interface/bindings for Nodejs (node), from Open to Testing.
Sun, Jan 4, 10:45 PM · gpgme, Feature Request
anthumchris changed the status of T8010: Publish to NPM registry from Open to Testing.
Sun, Jan 4, 10:45 PM · gpgme, Feature Request
anthumchris triaged T8010: Publish to NPM registry as Normal priority.
Sun, Jan 4, 10:44 PM · gpgme, Feature Request
anthumchris closed T8003: Create first gnupgme nodejs binding for gpg version as Resolved.

completed working test and repo:
https://github.com/anthumchris/gpgmejs/

Sun, Jan 4, 4:25 AM · gpgme, Feature Request
anthumchris closed T8003: Create first gnupgme nodejs binding for gpg version, a subtask of T7975: Official GPGme interface/bindings for Nodejs (node), as Resolved.
Sun, Jan 4, 4:25 AM · gpgme, Feature Request

Fri, Jan 2

anthumchris renamed T8009: Wasm for browser support from Consider Wasm for browser support to Wasm for browser support.
Fri, Jan 2, 3:34 PM · gpgme, Feature Request
anthumchris updated the task description for T8009: Wasm for browser support.
Fri, Jan 2, 3:33 PM · gpgme, Feature Request
anthumchris updated the task description for T8009: Wasm for browser support.
Fri, Jan 2, 3:33 PM · gpgme, Feature Request
anthumchris updated the task description for T8009: Wasm for browser support.
Fri, Jan 2, 3:33 PM · gpgme, Feature Request
anthumchris triaged T8009: Wasm for browser support as Normal priority.
Fri, Jan 2, 3:32 PM · gpgme, Feature Request

Thu, Jan 1

anthumchris renamed T8004: Bindings for The GnuPG UI Server Protocol from Bindings for GnuPG UI Server Protocol to Bindings for The GnuPG UI Server Protocol.
Thu, Jan 1, 3:34 PM · gpgme, Feature Request
anthumchris triaged T8005: TypeScript support as Normal priority.
Thu, Jan 1, 3:32 PM · gpgme, Feature Request
anthumchris triaged T8004: Bindings for The GnuPG UI Server Protocol as Normal priority.
Thu, Jan 1, 3:28 PM · gpgme, Feature Request
anthumchris triaged T8003: Create first gnupgme nodejs binding for gpg version as Normal priority.
Thu, Jan 1, 3:25 PM · gpgme, Feature Request
anthumchris closed T7992: Research Node.js Addons as Resolved.

Completed working base repository with developer workflows for watching files and rebuilding/retesting:
https://github.com/anthumchris/node-addon

Thu, Jan 1, 3:21 PM · gpgme, Feature Request
anthumchris closed T7992: Research Node.js Addons, a subtask of T7975: Official GPGme interface/bindings for Nodejs (node), as Resolved.
Thu, Jan 1, 3:21 PM · gpgme, Feature Request

Wed, Dec 31

anthumchris updated subscribers of T7992: Research Node.js Addons.
Wed, Dec 31, 4:51 PM · gpgme, Feature Request

Tue, Dec 30

anthumchris added a comment to T7975: Official GPGme interface/bindings for Nodejs (node).
Tue, Dec 30, 2:36 PM · gpgme, Feature Request

Sun, Dec 28

anthumchris triaged T7992: Research Node.js Addons as Normal priority.
Sun, Dec 28, 4:26 PM · gpgme, Feature Request
anthumchris claimed T7975: Official GPGme interface/bindings for Nodejs (node).
Sun, Dec 28, 3:26 PM · gpgme, Feature Request

Tue, Dec 16

anthumchris added a comment to T7975: Official GPGme interface/bindings for Nodejs (node).

Thanks, I'll start here and see how it was done with JS for the browser: https://dev.gnupg.org/source/gpgme/browse/master/lang/js/

Tue, Dec 16, 4:45 AM · gpgme, Feature Request

Mon, Dec 15

ikloecker added a comment to T7975: Official GPGme interface/bindings for Nodejs (node).

Note that we have moved almost all bindings out of gpgme into separate repos. I suggest to develop such bindings externally. And you'll have to find external resources to learn how to create nodejs bindings for gpgme.

Mon, Dec 15, 5:33 PM · gpgme, Feature Request
ebo closed T7188: gpgme: Error::asString can return wrongly encoded result on Windows as Resolved.
Mon, Dec 15, 2:39 PM · Windows, gpgme, Restricted Project
ebo closed T6907: gpgme: Explicitly tell gpg that we want to verify signed data as Resolved.
Mon, Dec 15, 2:39 PM · gpgme, Restricted Project

Dec 14 2025

werner added a project to T7975: Official GPGme interface/bindings for Nodejs (node): gpgme.
Dec 14 2025, 4:03 PM · gpgme, Feature Request

Dec 12 2025

ebo closed T7759: Kleopatra: Notepad encryption with S/MIME fails as Resolved.
Dec 12 2025, 3:54 PM · gpd5x (gpd-5.0.0), gnupg26, gpgme, kleopatra
ebo updated the task description for T6620: Add a way to extract ECC key parameters from a public key.
Dec 12 2025, 3:02 PM · gpd5x, kleopatra, Feature Request, gpgme