moved PGP code to pluto and gpg plugin
This commit is contained in:
@@ -16,33 +16,44 @@
|
||||
|
||||
#include "pgp_builder.h"
|
||||
|
||||
#include <enum.h>
|
||||
#include <debug.h>
|
||||
#include <credentials/keys/private_key.h>
|
||||
|
||||
typedef enum pgp_pubkey_alg_t pgp_pubkey_alg_t;
|
||||
typedef enum pgp_sym_alg_t pgp_sym_alg_t;
|
||||
|
||||
ENUM_BEGIN(pgp_packet_tag_names, PGP_PKT_RESERVED, PGP_PKT_PUBLIC_SUBKEY,
|
||||
"Reserved",
|
||||
"Public-Key Encrypted Session Key Packet",
|
||||
"Signature Packet",
|
||||
"Symmetric-Key Encrypted Session Key Packet",
|
||||
"One-Pass Signature Packet",
|
||||
"Secret Key Packet",
|
||||
"Public Key Packet",
|
||||
"Secret Subkey Packet",
|
||||
"Compressed Data Packet",
|
||||
"Symmetrically Encrypted Data Packet",
|
||||
"Marker Packet",
|
||||
"Literal Data Packet",
|
||||
"Trust Packet",
|
||||
"User ID Packet",
|
||||
"Public Subkey Packet"
|
||||
);
|
||||
ENUM_NEXT(pgp_packet_tag_names, PGP_PKT_USER_ATTRIBUTE, PGP_PKT_MOD_DETECT_CODE, PGP_PKT_PUBLIC_SUBKEY,
|
||||
"User Attribute Packet",
|
||||
"Sym. Encrypted and Integrity Protected Data Packet",
|
||||
"Modification Detection Code Packet"
|
||||
);
|
||||
ENUM_END(pgp_packet_tag_names, PGP_PKT_MOD_DETECT_CODE);
|
||||
/**
|
||||
* OpenPGP public key algorithms as defined in section 9.1 of RFC 4880
|
||||
*/
|
||||
enum pgp_pubkey_alg_t {
|
||||
PGP_PUBKEY_ALG_RSA = 1,
|
||||
PGP_PUBKEY_ALG_RSA_ENC_ONLY = 2,
|
||||
PGP_PUBKEY_ALG_RSA_SIGN_ONLY = 3,
|
||||
PGP_PUBKEY_ALG_ELGAMAL_ENC_ONLY = 16,
|
||||
PGP_PUBKEY_ALG_DSA = 17,
|
||||
PGP_PUBKEY_ALG_ECC = 18,
|
||||
PGP_PUBKEY_ALG_ECDSA = 19,
|
||||
PGP_PUBKEY_ALG_ELGAMAL = 20,
|
||||
PGP_PUBKEY_ALG_DIFFIE_HELLMAN = 21,
|
||||
};
|
||||
|
||||
/**
|
||||
* OpenPGP symmetric key algorithms as defined in section 9.2 of RFC 4880
|
||||
*/
|
||||
enum pgp_sym_alg_t {
|
||||
PGP_SYM_ALG_PLAIN = 0,
|
||||
PGP_SYM_ALG_IDEA = 1,
|
||||
PGP_SYM_ALG_3DES = 2,
|
||||
PGP_SYM_ALG_CAST5 = 3,
|
||||
PGP_SYM_ALG_BLOWFISH = 4,
|
||||
PGP_SYM_ALG_SAFER = 5,
|
||||
PGP_SYM_ALG_DES = 6,
|
||||
PGP_SYM_ALG_AES_128 = 7,
|
||||
PGP_SYM_ALG_AES_192 = 8,
|
||||
PGP_SYM_ALG_AES_256 = 9,
|
||||
PGP_SYM_ALG_TWOFISH = 10
|
||||
};
|
||||
|
||||
ENUM_BEGIN(pgp_pubkey_alg_names, PGP_PUBKEY_ALG_RSA, PGP_PUBKEY_ALG_RSA_SIGN_ONLY,
|
||||
"RSA",
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2009 Martin Willi
|
||||
* Copyright (C) 2002-2009 Andreas Steffen
|
||||
* Hochschule fuer Technik Rapperswil
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it
|
||||
@@ -22,86 +21,10 @@
|
||||
#ifndef PGP_BUILDER_H_
|
||||
#define PGP_BUILDER_H_
|
||||
|
||||
#include <enum.h>
|
||||
#include <credentials/keys/public_key.h>
|
||||
|
||||
typedef enum pgp_packet_tag_t pgp_packet_tag_t;
|
||||
typedef enum pgp_pubkey_alg_t pgp_pubkey_alg_t;
|
||||
typedef enum pgp_sym_alg_t pgp_sym_alg_t;
|
||||
|
||||
/**
|
||||
* OpenPGP packet tags as defined in section 4.3 of RFC 4880
|
||||
*/
|
||||
enum pgp_packet_tag_t {
|
||||
PGP_PKT_RESERVED = 0,
|
||||
PGP_PKT_PUBKEY_ENC_SESSION_KEY = 1,
|
||||
PGP_PKT_SIGNATURE = 2,
|
||||
PGP_PKT_SYMKEY_ENC_SESSION_KEY = 3,
|
||||
PGP_PKT_ONE_PASS_SIGNATURE_PKT = 4,
|
||||
PGP_PKT_SECRET_KEY = 5,
|
||||
PGP_PKT_PUBLIC_KEY = 6,
|
||||
PGP_PKT_SECRET_SUBKEY = 7,
|
||||
PGP_PKT_COMPRESSED_DATA = 8,
|
||||
PGP_PKT_SYMKEY_ENC_DATA = 9,
|
||||
PGP_PKT_MARKER = 10,
|
||||
PGP_PKT_LITERAL_DATA = 11,
|
||||
PGP_PKT_TRUST = 12,
|
||||
PGP_PKT_USER_ID = 13,
|
||||
PGP_PKT_PUBLIC_SUBKEY = 14,
|
||||
PGP_PKT_USER_ATTRIBUTE = 17,
|
||||
PGP_PKT_SYM_ENC_INT_PROT_DATA = 18,
|
||||
PGP_PKT_MOD_DETECT_CODE = 19
|
||||
};
|
||||
|
||||
/**
|
||||
* Enum names for pgp_packet_tag_t
|
||||
*/
|
||||
extern enum_name_t *pgp_packet_tag_names;
|
||||
|
||||
/**
|
||||
* OpenPGP public key algorithms as defined in section 9.1 of RFC 4880
|
||||
*/
|
||||
enum pgp_pubkey_alg_t {
|
||||
PGP_PUBKEY_ALG_RSA = 1,
|
||||
PGP_PUBKEY_ALG_RSA_ENC_ONLY = 2,
|
||||
PGP_PUBKEY_ALG_RSA_SIGN_ONLY = 3,
|
||||
PGP_PUBKEY_ALG_ELGAMAL_ENC_ONLY = 16,
|
||||
PGP_PUBKEY_ALG_DSA = 17,
|
||||
PGP_PUBKEY_ALG_ECC = 18,
|
||||
PGP_PUBKEY_ALG_ECDSA = 19,
|
||||
PGP_PUBKEY_ALG_ELGAMAL = 20,
|
||||
PGP_PUBKEY_ALG_DIFFIE_HELLMAN = 21,
|
||||
};
|
||||
|
||||
/**
|
||||
* Enum names for pgp_pubkey_alg_t
|
||||
*/
|
||||
extern enum_name_t *pgp_pubkey_alg_names;
|
||||
|
||||
/**
|
||||
* OpenPGP symmetric key algorithms as defined in section 9.2 of RFC 4880
|
||||
*/
|
||||
enum pgp_sym_alg_t {
|
||||
PGP_SYM_ALG_PLAIN = 0,
|
||||
PGP_SYM_ALG_IDEA = 1,
|
||||
PGP_SYM_ALG_3DES = 2,
|
||||
PGP_SYM_ALG_CAST5 = 3,
|
||||
PGP_SYM_ALG_BLOWFISH = 4,
|
||||
PGP_SYM_ALG_SAFER = 5,
|
||||
PGP_SYM_ALG_DES = 6,
|
||||
PGP_SYM_ALG_AES_128 = 7,
|
||||
PGP_SYM_ALG_AES_192 = 8,
|
||||
PGP_SYM_ALG_AES_256 = 9,
|
||||
PGP_SYM_ALG_TWOFISH = 10
|
||||
};
|
||||
|
||||
/**
|
||||
* Enum names for pgp_sym_alg_t
|
||||
*/
|
||||
extern enum_name_t *pgp_sym_alg_names;
|
||||
|
||||
/**
|
||||
* Create the builder for a generic or an RSA public key.
|
||||
* Create the builder for a generic or an RSA public key using PGP decoding.
|
||||
*
|
||||
* @param type type of the key, either KEY_ANY or KEY_RSA
|
||||
* @return builder instance
|
||||
@@ -109,7 +32,7 @@ extern enum_name_t *pgp_sym_alg_names;
|
||||
builder_t *pgp_public_key_builder(key_type_t type);
|
||||
|
||||
/**
|
||||
* Create the builder for a RSA private key.
|
||||
* Create the builder for a RSA private key using PGP decoding.
|
||||
*
|
||||
* @param type type of the key, KEY_RSA
|
||||
* @return builder instance
|
||||
|
||||
Reference in New Issue
Block a user