# EasyPG

> interface to GnuPG, has been included in Emacs since 2008

**Wikidata**: [Q126947141](https://www.wikidata.org/wiki/Q126947141)  
**Source**: https://4ort.xyz/entity/easypg

## Summary
EasyPG is an interface to GNU Privacy Guard (GnuPG) that has been included in Emacs since 2008. It provides encryption functionality within the Emacs text editor, allowing users to perform cryptographic operations directly from their editing environment.

## Key Facts
- EasyPG is an interface to GnuPG that has been included in Emacs since 2008
- Created by Daiki Ueno
- Part of GNU Emacs (added in February 2008)
- Licensed under Q27016754
- Written in Emacs Lisp programming language
- Runs on GNU Emacs and XEmacs platforms
- Has an OS project ID of "egp"
- Debian source package was named "easypg" (2006-2013)
- Source code is hosted in the GNU Emacs git repository

## FAQs
### Q: What is EasyPG used for?
A: EasyPG provides an interface to GNU Privacy Guard (GnuPG) within Emacs, allowing users to perform encryption and decryption operations, manage digital signatures, and handle cryptographic keys directly from their Emacs editor.

### Q: When was EasyPG first included in Emacs?
A: EasyPG has been included in Emacs since 2008, specifically added in February 2008 according to patch documentation submitted by Daiki Ueno.

### Q: Who created EasyPG?
A: EasyPG was created by Daiki Ueno, who submitted the patch to include it in Emacs in February 2008.

### Q: What programming language is EasyPG written in?
A: EasyPG is written in Emacs Lisp, the dialect of Lisp used in GNU Emacs.

### Q: Is EasyPG available on multiple platforms?
A: Yes, EasyPG operates on Emacs which is cross-platform, but specifically runs on GNU Emacs and XEmacs implementations.

## Why It Matters
EasyPG matters because it integrates strong cryptographic capabilities directly into one of the most powerful text editors in existence. By providing seamless access to GnuPG within Emacs, it enables developers and security-conscious users to handle encrypted emails, sign documents, and manage cryptographic keys without leaving their editing environment. This integration was significant in promoting the use of encryption tools among Emacs users and demonstrating how free software components can be combined to enhance security workflows. The inclusion of EasyPG in Emacs since 2008 has made encryption more accessible to thousands of users who might not otherwise have used standalone cryptographic tools.

## Notable For
- Being the official interface to GnuPG within Emacs since 2008
- Being written entirely in Emacs Lisp, leveraging Emacs' extensibility
- Maintaining compatibility with both GNU Emacs and XEmacs implementations
- Having its Debian package maintained from 2006 to 2013
- Providing a comprehensive user interface for cryptographic operations directly within a text editor

## Body
### Overview
EasyPG is an interface to GNU Privacy Guard (GnuPG) that has been integrated into Emacs since 2008. It serves as a bridge between Emacs and the powerful cryptographic capabilities of GnuPG, allowing users to perform encryption, decryption, digital signatures, and key management directly within their Emacs environment.

### Technical Details
- **Programming Language**: Emacs Lisp
- **Platform Compatibility**: GNU Emacs, XEmacs
- **Operating System**: Cross-platform (operates through Emacs)
- **License**: Q27016754
- **Copyright Holder**: FSF (Free Software Foundation)

### History and Development
- **Inclusion in Emacs**: Added to Emacs in February 2008
- **Creator**: Daiki Ueno
- **Debian Package**: "easypg" maintained from June 5, 2006 to September 22, 2013
- **OS Project**: Identified with project ID "egp"

### Source Code
EasyPG's source code is maintained within the GNU Emacs git repository at:
- https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/epg.el
- https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/epg-config.el
- https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/epa.el
- https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/epa-dired.el
- https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/epa-file.el
- https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/epa-hook.el
- https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/epa-ks.el
- https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/epa-mail.el

### Documentation
- **User Manual**: https://www.gnu.org/software/emacs/manual/html_mono/epa.html
- **Manual Language**: English
- **Applies to**: User interface component

### Relation to Other Software
- **Related to**: GNU Privacy Guard (GnuPG)
- **Instance of**: Encryption software, Free software
- **Part of**: GNU Emacs
- **Subclass of**: GNU Emacs

## References

1. [patch to include EasyPG to Emacs. 2008](https://lists.gnu.org/archive/html/emacs-devel/2008-02/msg00491.html)