#pragma once #include "types.h" #include "KeyBag.h" #include #include #include namespace nstool { class EsTikProcess { public: EsTikProcess(); void process(); void setInputFile(const std::shared_ptr& file); void setKeyCfg(const KeyBag& keycfg); void setCertificateChain(const std::vector>& certs); void setCliOutputMode(CliOutputMode mode); void setVerifyMode(bool verify); private: const std::string kModuleName = "EsTikProcess"; std::shared_ptr mFile; KeyBag mKeyCfg; CliOutputMode mCliOutputMode; bool mVerify; std::vector> mCerts; nn::pki::SignedData mTik; void importTicket(); void verifyTicket(); void displayTicket(); const char* getSignTypeStr(uint32_t type) const; const char* getTitleKeyPersonalisationStr(byte_t flag) const; const char* getLicenseTypeStr(byte_t flag) const; const char* getPropertyFlagStr(byte_t flag) const; }; }