К сожалению, GnuPG предназначен для интерактивного использования, а не в качестве API.
Вы упоминаете, что хотите включить некоторые возможности открытых ключей. SSL и TLS являются альтернативами GPG, которые встречаются гораздо чаще.
Если в целом вам нужны возможности открытого ключа, GnuTLS - это API для использования в сетевых программах, который обеспечивает именно то, что вам нужно. Он пользуется большой поддержкой и предоставляет возможности шифрования с открытым ключом SSL и TLS.
Однако, если вы не можете использовать GPG, GPGME - это проект, который существует, чтобы обернуть API вокруг GPG. Я не использовал его и не могу дать совет по его использованию, но подозреваю, что это может быть несколько вынужденным.