ETSI STF525 / Internal Testing test suite
This project provides an internal testing test suite and its associated Test Adapter/Codec
Namespaces | Functions
LibItsSecurity_externals.cc File Reference
#include "LibItsSecurity_Functions.hh"
#include "sha256.hh"
#include "sha384.hh"
#include "hmac.hh"
#include "security_ecc.hh"
#include "security_services.hh"
#include <openssl/ec.h>
#include <openssl/ecdsa.h>
#include "loggers.hh"

Namespaces

 LibItsSecurity__Functions
 

Functions

OCTETSTRING LibItsSecurity__Functions::fx__hashWithSha256 (const OCTETSTRING &p__toBeHashedData)
 
OCTETSTRING LibItsSecurity__Functions::fx__hashWithSha384 (const OCTETSTRING &p__toBeHashedData)
 
OCTETSTRING LibItsSecurity__Functions::fx__signWithEcdsaNistp256WithSha256 (const OCTETSTRING &p__toBeSignedSecuredMessage, const OCTETSTRING &p__privateKey)
 Produces a Elliptic Curve Digital Signature Algorithm (ECDSA) signature. More...
 
OCTETSTRING LibItsSecurity__Functions::fx__signWithEcdsaBrainpoolp256WithSha256 (const OCTETSTRING &p__toBeSignedSecuredMessage, const OCTETSTRING &p__privateKey)
 Produces a Elliptic Curve Digital Signature Algorithm (ECDSA) signature. More...
 
OCTETSTRING LibItsSecurity__Functions::fx__signWithEcdsaBrainpoolp384WithSha384 (const OCTETSTRING &p__toBeSignedSecuredMessage, const OCTETSTRING &p__privateKey)
 Produces a Elliptic Curve Digital Signature Algorithm (ECDSA) signature. More...
 
BOOLEAN LibItsSecurity__Functions::fx__verifyWithEcdsaNistp256WithSha256 (const OCTETSTRING &p__toBeVerifiedData, const OCTETSTRING &p__signature, const OCTETSTRING &p__ecdsaNistp256PublicKeyX, const OCTETSTRING &p__ecdsaNistp256PublicKeyY)
 Verify the signature of the specified data. More...
 
BOOLEAN LibItsSecurity__Functions::fx__verifyWithEcdsaBrainpoolp256WithSha256 (const OCTETSTRING &p__toBeVerifiedData, const OCTETSTRING &p__signature, const OCTETSTRING &p__ecdsaBrainpoolp256PublicKeyX, const OCTETSTRING &p__ecdsaBrainpoolp256PublicKeyY)
 Verify the signature of the specified data. More...
 
BOOLEAN LibItsSecurity__Functions::fx__verifyWithEcdsaBrainpoolp384WithSha384 (const OCTETSTRING &p__toBeVerifiedData, const OCTETSTRING &p__signature, const OCTETSTRING &p__ecdsaBrainpoolp384PublicKeyX, const OCTETSTRING &p__ecdsaBrainpoolp384PublicKeyY)
 Verify the signature of the specified data. More...
 
OCTETSTRING LibItsSecurity__Functions::fx__test__hmac__sha256 (const OCTETSTRING &p__k, const OCTETSTRING &p__m)
 Generate a HMAC-SHA256 value based on the provided secret key. More...
 
OCTETSTRING LibItsSecurity__Functions::fx__test__encrypt__aes__128__ccm__test (const OCTETSTRING &p__k, const OCTETSTRING &p__n, const OCTETSTRING &p__pt)
 Encrypt the message using AES 128 CCM algorithm. More...
 
OCTETSTRING LibItsSecurity__Functions::fx__test__decrypt__aes__128__ccm__test (const OCTETSTRING &p__k, const OCTETSTRING &p__n, const OCTETSTRING &p__ct)
 Encrypt the message using AES 128 CCM algorithm. More...
 
OCTETSTRING LibItsSecurity__Functions::fx__encryptWithEciesNistp256WithSha256 (const OCTETSTRING &p__toBeEncryptedSecuredMessage, const OCTETSTRING &p__recipientsPublicKeyX, const OCTETSTRING &p__recipientsPublicKeyY, OCTETSTRING &p__publicEphemeralKeyX, OCTETSTRING &p__publicEphemeralKeyY, OCTETSTRING &p__encrypted__sym__key, OCTETSTRING &p__authentication__vector, OCTETSTRING &p__nonce)
 Encrypt the message using ECIES algprithm to encrypt AES 128 CCM symmetric key, as defined in IEEE Std 1609.2-2017. More...
 
OCTETSTRING LibItsSecurity__Functions::fx__decryptWithEciesNistp256WithSha256 (const OCTETSTRING &p__encryptedSecuredMessage, const OCTETSTRING &p__privateEncKey, const OCTETSTRING &p__publicEphemeralKeyX, const OCTETSTRING &p__publicEphemeralKeyY, const OCTETSTRING &p__encrypted__sym__key, const OCTETSTRING &p__authentication__vector, const OCTETSTRING &p__nonce)
 
OCTETSTRING LibItsSecurity__Functions::fx__encryptWithEciesBrainpoolp256WithSha256 (const OCTETSTRING &p__toBeEncryptedSecuredMessage, const OCTETSTRING &p__recipientsPublicKeyX, const OCTETSTRING &p__recipientsPublicKeyY, OCTETSTRING &p__publicEphemeralKeyX, OCTETSTRING &p__publicEphemeralKeyY, OCTETSTRING &p__encrypted__sym__key, OCTETSTRING &p__authentication__vector, OCTETSTRING &p__nonce)
 
OCTETSTRING LibItsSecurity__Functions::fx__decryptWithEciesBrainpoolp256WithSha256 (const OCTETSTRING &p__encryptedSecuredMessage, const OCTETSTRING &p__privateEncKey, const OCTETSTRING &p__publicEphemeralKeyX, const OCTETSTRING &p__publicEphemeralKeyY, const OCTETSTRING &p__encrypted__sym__key, const OCTETSTRING &p__authentication__vector, const OCTETSTRING &p__nonce)
 
BOOLEAN LibItsSecurity__Functions::fx__generateKeyPair__nistp256 (OCTETSTRING &p__privateKey, OCTETSTRING &p__publicKeyX, OCTETSTRING &p__publicKeyY)
 Produce a new public/private key pair based on Elliptic Curve Digital Signature Algorithm (ECDSA) algorithm. More...
 
BOOLEAN LibItsSecurity__Functions::fx__generateKeyPair__brainpoolp256 (OCTETSTRING &p__privateKey, OCTETSTRING &p__publicKeyX, OCTETSTRING &p__publicKeyY)
 Produce a new public/private key pair based on Elliptic Curve Digital Signature Algorithm (ECDSA) algorithm. More...
 
BOOLEAN LibItsSecurity__Functions::fx__generateKeyPair__brainpoolp384 (OCTETSTRING &p__privateKey, OCTETSTRING &p__publicKeyX, OCTETSTRING &p__publicKeyY)
 Produce a new public/private key pair based on Elliptic Curve Digital Signature Algorithm (ECDSA) algorithm. More...
 
BOOLEAN LibItsSecurity__Functions::fx__loadCertificates (const CHARSTRING &p__rootDirectory, const CHARSTRING &p__configId)
 Load in memory cache the certificates available in the specified directory. More...
 
BOOLEAN LibItsSecurity__Functions::fx__store__certificate (const CHARSTRING &p__cert__id, const OCTETSTRING &p__cert, const OCTETSTRING &p__private__key, const OCTETSTRING &p__public__key__x, const OCTETSTRING &p__public__key__y, const OCTETSTRING &p__hashid8, const OCTETSTRING &p__issuer, const OCTETSTRING_template &p__private__enc__key, const OCTETSTRING_template &p__public__enc__key__x, const OCTETSTRING_template &p__public__enc__key__y)
 
BOOLEAN LibItsSecurity__Functions::fx__unloadCertificates ()
 Unload from memory cache the certificates. More...
 
BOOLEAN LibItsSecurity__Functions::fx__readCertificate (const CHARSTRING &p__certificateId, OCTETSTRING &p__certificate)
 Read the specified certificate. More...
 
BOOLEAN LibItsSecurity__Functions::fx__readCertificateFromDigest (const OCTETSTRING &p__digest, CHARSTRING &p__certificateId)
 
BOOLEAN LibItsSecurity__Functions::fx__readCertificateDigest (const CHARSTRING &p__certificateId, OCTETSTRING &p__digest)
 Read the specified certificate digest. More...
 
BOOLEAN LibItsSecurity__Functions::fx__readSigningKey (const CHARSTRING &p__certificateId, OCTETSTRING &p__signingPrivateKey)
 Read the private keys for the specified certificate. More...
 
BOOLEAN LibItsSecurity__Functions::fx__readEncryptingKey (const CHARSTRING &p__certificateId, OCTETSTRING &p__encryptingPrivateKey)
 Read the private keys for the specified certificate. More...
 
BOOLEAN LibItsSecurity__Functions::fx__isValidPolygonalRegion (const IEEE1609dot2BaseTypes::PolygonalRegion &p__region)
 
BOOLEAN LibItsSecurity__Functions::fx__isPolygonalRegionInside (const IEEE1609dot2BaseTypes::PolygonalRegion &p__parent, const IEEE1609dot2BaseTypes::PolygonalRegion &p__region)
 
BOOLEAN LibItsSecurity__Functions::fx__isLocationInsideCircularRegion (const IEEE1609dot2BaseTypes::CircularRegion &p__region, const IEEE1609dot2BaseTypes::ThreeDLocation &p__location)
 
BOOLEAN LibItsSecurity__Functions::fx__isLocationInsideRectangularRegion (const IEEE1609dot2BaseTypes::SequenceOfRectangularRegion &p__region, const IEEE1609dot2BaseTypes::ThreeDLocation &p__location)
 
BOOLEAN LibItsSecurity__Functions::fx__isLocationInsidePolygonalRegion (const IEEE1609dot2BaseTypes::PolygonalRegion &p__region, const IEEE1609dot2BaseTypes::ThreeDLocation &p__location)
 
BOOLEAN LibItsSecurity__Functions::fx__isLocationInsideIdentifiedRegion (const IEEE1609dot2BaseTypes::IdentifiedRegion &p__region, const IEEE1609dot2BaseTypes::ThreeDLocation &p__location)
 
BOOLEAN LibItsSecurity__Functions::fx__isLocationInsideOtherRegion (const OCTETSTRING &p_region, const IEEE1609dot2BaseTypes::ThreeDLocation &p_location)
 
BOOLEAN LibItsSecurity__Functions::fx__areCirclesInside (const IEEE1609dot2BaseTypes::CircularRegion &p_circular_region_1, const IEEE1609dot2BaseTypes::CircularRegion &p_circular_region_2)
 
BOOLEAN LibItsSecurity__Functions::fx__areRectanglesInside (const IEEE1609dot2BaseTypes::SequenceOfRectangularRegion &p_rectanglar_region_1, const IEEE1609dot2BaseTypes::SequenceOfRectangularRegion &p_rectanglar_region_2)
 
BOOLEAN LibItsSecurity__Functions::fx__arePolygonsInside (const IEEE1609dot2BaseTypes::PolygonalRegion &p_polygonal_region_1, const IEEE1609dot2BaseTypes::PolygonalRegion &p_polygonal_region_2)
 
FLOAT LibItsSecurity__Functions::fx__dms2dd (const INTEGER &p__degrees, const INTEGER &p__minutes, const FLOAT &p__seconds, const OCTETSTRING &p__latlon)
 Convert a spacial coordinate from DMS to DMS. More...