GPG API Functionality

    Here is my assignment work for Digital Communications Networks, Semester Two, 2000, which is relevant to GPG.

    Demonstrated work inside the GPG 1.0.2 suite Items that are acceptable are interface design, bug detection and correction enhancements. What you deliver may consist of one or more of the following:

  • Properly Software Engineered additional code (your own, plus sections of GPG as necessary).
  • Discussion of points of importance, illustrated by sections of your own and/or GPG code.





  • There has been much discussion recently on whether an API interface should be made available for GPG. Some of this has revolved around whether it is possible to easily implement such functionality. I have chosen to devote my DCN assignment two to this question.

    The following documents constitute my submission:

    • A log of the GPG API related threads on the gpg-devel mailing list, including comments from myself
    • Some patches to the GPG source code to implement a proof of concept API function. I have chosen the decrypt function as it seems to be one of the more commonly used and therefore most useful functions. To make these changes I have had to modify some of the GPG source code, which is what the patches are. The patches are also available for easy download:
    • A commentary on the GPG source code that was developed while working on this API functionality. This is by no means complete, but it aids in comprehension of the GPG code somewhat. This has also been included the in patches above and the modified source code below to keep it all in one place. This link is merely to the commented files, to minimse the amount of digging around required to see what I have added.
    • There is also a beautified version of the original 1.0.3 code, and the modified 1.0.3 code.
    • And finally, here is some documentation proving that the proof of concept code works (and explaining how you can go about testing it yourself).



posted at: 04:00 | path: /gpg | permanent link to this entry

    Add a comment to this post:

    Your name:

    Your email: Email me new comments on this post
      (Your email will not be published on this site, and will only be used to contact you directly with a reply to your comment if needed. Oh, and we'll use it to send you new comments on this post it you selected that checkbox.)


    Your website:

    Comments: