Rev

Rev 3347 | Details | Compare with Previous | Last modification | View Log | SVN | Bug Tracker

Rev Author Line No. Line
3342 garciay 1
/*!
2
 * \file      security_db_record.cc
3
 * \brief     Source file for a storage of certificates mechanism.
4
 * \author    ETSI STF525
5
 * \copyright ETSI Copyright Notification
6
 *            No part may be reproduced except as authorized by written permission.
7
 *            The copyright and the foregoing restriction extend to reproduction in all media.
8
 *            All rights reserved.
9
 * \version   0.1
10
 */
3227 filatov 11
#include "EtsiTs103097Module.hh"
12
 
13
#include "sha256.hh"
14
#include "sha384.hh"
15
#include "security_db_record.hh"
16
 
17
security_db_record::security_db_record(
18
                                       const std::string& p_certificate_id,
3342 garciay 19
                                       const OCTETSTRING& p_certificate,
3227 filatov 20
                                       const IEEE1609dot2::CertificateBase& p_decoded_certificate,
3342 garciay 21
                                       const OCTETSTRING& p_hashed_id_issuer,
3347 garciay 22
                                       const OCTETSTRING& p_hash,
3342 garciay 23
                                       const OCTETSTRING& p_hashed_id,
24
                                       const OCTETSTRING& p_pr_key,
25
                                       const OCTETSTRING& p_pu_key_x,
26
                                       const OCTETSTRING& p_pu_key_y,
27
                                       const OCTETSTRING& p_pu_comp_key,
28
                                       const OCTETSTRING& p_pr_enc_key,
29
                                       const OCTETSTRING& p_pu_enc_key_x,
30
                                       const OCTETSTRING& p_pu_enc_key_y,
31
                                       const OCTETSTRING& p_pu_enc_comp_key,
3227 filatov 32
                                       const bool p_to_be_saved
3347 garciay 33
                                       ): _algorithm{ec_elliptic_curves::nist_p_256}, _certificate_id(p_certificate_id), _certificate(p_certificate), _hashed_id_issuer(p_hashed_id_issuer), _hash(p_hash), _hashed_id(p_hashed_id), _pr_key(p_pr_key), _pu_key_x(p_pu_key_x), _pu_key_y(p_pu_key_y), _pu_comp_key(p_pu_comp_key), _pr_enc_key(p_pr_enc_key), _pu_enc_key_x(p_pu_enc_key_x), _pu_enc_key_y(p_pu_enc_key_y), _pu_enc_comp_key(p_pu_enc_comp_key), _to_be_saved(p_to_be_saved), _decoded_certificate(static_cast<IEEE1609dot2::CertificateBase*>(p_decoded_certificate.clone())) {
3227 filatov 34
}
35
 
3351 filatov 36
security_db_record::~security_db_record() {
37
        if (_decoded_certificate != nullptr) { delete _decoded_certificate; }
38
};
39
 
3227 filatov 40
const IEEE1609dot2::CertificateBase& security_db_record::decoded_certificate() const {
41
  return *_decoded_certificate;
42
}