diff options
author | Sansar Choinyambuu <schoinya@hsr.ch> | 2011-10-14 18:19:49 +0200 |
---|---|---|
committer | Andreas Steffen <andreas.steffen@strongswan.org> | 2011-11-28 18:51:08 +0100 |
commit | 54c0e80f92e6ae98c8efdf4e67ae57f566ddcfcc (patch) | |
tree | 241bb58b12e7e2160fb53cf3ba1628e8aec3360c | |
parent | 63b0c12f54a651ccfe5ce6d5fbb4d797e9829b0f (diff) | |
download | strongswan-54c0e80f92e6ae98c8efdf4e67ae57f566ddcfcc.tar.bz2 strongswan-54c0e80f92e6ae98c8efdf4e67ae57f566ddcfcc.tar.xz |
Implemented Quote Digest constructing function for IMV
Implemented Signature verification function to check TPM Quote Signature
Implemented Handling of Simple Evidence Final attribute
Fixed bug within tpm_quote function
-rw-r--r-- | src/libpts/pts/pts.c | 4 | ||||
-rw-r--r-- | src/libpts/pts/pts.h | 17 |
2 files changed, 17 insertions, 4 deletions
diff --git a/src/libpts/pts/pts.c b/src/libpts/pts/pts.c index d928d1891..0f850f292 100644 --- a/src/libpts/pts/pts.c +++ b/src/libpts/pts/pts.c @@ -27,10 +27,6 @@ #include <sys/utsname.h> #include <errno.h> -#include <openssl/asn1t.h> -#include <openssl/x509.h> -#include <openssl/rsa.h> - #define PTS_BUF_SIZE 4096 typedef struct private_pts_t private_pts_t; diff --git a/src/libpts/pts/pts.h b/src/libpts/pts/pts.h index 40543ba1a..5b8d8986f 100644 --- a/src/libpts/pts/pts.h +++ b/src/libpts/pts/pts.h @@ -388,6 +388,23 @@ struct pts_t { bool (*quote_tpm)(pts_t *this, u_int32_t *pcrs, u_int32_t num_of_pcrs, chunk_t *pcr_composite, chunk_t *quote_signature); + /** + * Constructs and returns PCR Quote Digest structure expected from IMC + * + * @param digest Output variable to store quote digest + * @return FALSE in case of any error, TRUE otherwise + */ + bool (*get_quote_digest)(pts_t *this, chunk_t *digest); + + /** + * Constructs and returns PCR Quote Digest structure expected from IMC + * + * @param data Calculated TPM Quote Digest + * @param signature TPM Quote Signature received from IMC + * @return FALSE in case signature is not verified, TRUE otherwise + */ + bool (*verify_quote_signature)(pts_t *this, chunk_t data, chunk_t signature); + /** * Destroys a pts_t object. */ |