Git Product home page Git Product logo

cryptopp-pem's Introduction

Crypto++ PEM Pack

Build Status Build status

This repository provides PEM parsing for Wei Dai's Crypto++. The source files allow you to read and write keys and parameters in PEM format. PEM is specified in RFC 1421, Privacy Enhancement for Internet Electronic Mail.

To compile the source files drop them in your cryptopp directory and run make. The makefile will automatically pick them up. Visual Studio users should add the source files to the cryptlib project. Detailed information can be found at PEM Pack on the Crypto++ wiki.

The PEM format uses an encapsulation header which describes the algorithm used to encrypt or authenticate the message. The encapsulated header uses BEGIN and END to frame the message. The message is Base64 encoded, lines are limited to 64 characters, and the end-of-line is CR ('\r') and LF ('\n').

Testing

The files are officialy unsupported, so use them at your own risk. With that said, the PEM Pack source files are tested with Crypto++ on Linux and OS X using Travis CI.

In November 2019 the library added cryptest-pem.sh to help test the PEM gear. The script is located in Crypto++'s TestScripts directory. The script downloads the PEM Pack files, builds the library and then runs the self tests.

If you want to use cryptest-pem.sh to drive things then perform the following steps.

cd cryptopp
cp TestScripts/cryptest-pem.sh .
./cryptest-pem.sh

ZIP Files

If you are working from a Crypto++ release zip file, then you should download the same cryptopp-pem release zip file. Both Crypto++ and this project use the same release tags, such as CRYPTOPP_8_2_0.

If you mix and match Master with a release zip file then things may not work as expected. You may find the build project files reference a source file that is not present in the Crypto++ release.

License

Everything in this repo is release under Public Domain code. If the license or terms is unpalatable for you, then don't feel obligated to use it or commit.

cryptopp-pem's People

Contributors

noloader avatar gary-fsh avatar predelnik avatar alambrec avatar rbenet-lbo avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.