ENDIF(DPL_LOG AND NOT CMAKE_BUILD_TYPE MATCHES "profiling")
OPTION(WITH_TESTS "Build tests" OFF)
- ADD_DEFINITIONS("-DDPL_LOGS_ENABLED") #@@@@@@@@@@@@@
# Compiler flags
SET(CMAKE_C_FLAGS_PROFILING "-O2")
PKG_CHECK_MODULES(SYS_ENCRYPTION
dlog
openssl
- osp-appfw
REQUIRED
)
TARGET_LINK_LIBRARIES(${TARGET_DPL_ENCRYPTION} "-ldukgenerator" )
TARGET_LINK_LIBRARIES(${TARGET_DPL_ENCRYPTION} "-lcryptsvc" )
-TARGET_LINK_LIBRARIES(${TARGET_DPL_ENCRYPTION} -L/usr/lib/osp -losp-appfw )
# Target library properties
SET_TARGET_PROPERTIES(${TARGET_DPL_ENCRYPTION} PROPERTIES
#include <openssl/sha.h>
#include <dpl/exception.h>
+extern char** calculate(char*pappId, int idLen, int keyLen);
+
namespace WRTDecryptor {
class ResourceDecryptor
{
unsigned char* decBuf,
size_t chunkSize);
- /* TrustZone */
- int DecryptChunkByTrustZone(
- std::string pkgid,
- const unsigned char *inBuffer,
- int inBufSize);
- void getDecryptStringByTrustZone(unsigned char *decBuffer);
-
private:
AES_KEY* GetDecryptionKey();
AES_KEY m_decKey;
- void *m_getBuffer;
};
} //namespace WRTDecryptor
#include <openssl/sha.h>
#include <dpl/exception.h>
+extern char** calculate(char*pappId, int idLen, int keyLen);
+
namespace WRTEncryptor {
class ResourceEncryptor
{
void EncryptChunk(unsigned char* inputBuf, unsigned char* encBuf, size_t
chunkSize);
- /* TrustZone */
- int EncryptChunkByTrustZone(
- std::string pkgid,
- const unsigned char *plainBuffer,
- int pBufSize);
- void getEncStringByTrustZone(unsigned char *encBuffer);
-
private:
AES_KEY GetEncryptionkey();
AES_KEY m_encKey;
- void *m_getBuffer;
};
} //namespace WRTEncryptor
#include <dpl/log/log.h>
#include <dpl/exception.h>
#include <dukgen.h>
-#include <FBaseByteBuffer.h>
-#include <security/FSecCrypto_TrustZoneService.h>
namespace {
#define BITS_SIZE 128
#define KEY_SIZE 16
}
namespace WRTDecryptor {
-ResourceDecryptor::ResourceDecryptor() :
- m_getBuffer(NULL)
+ResourceDecryptor::ResourceDecryptor()
{
LogDebug("Started Decryption");
}
AES_cbc_encrypt(inBuf, decBuf, inBufSize, &m_decKey, ivec, AES_DECRYPT);
LogDebug("Success decryption");
}
-
-int ResourceDecryptor::DecryptChunkByTrustZone(
- std::string pkgid, const unsigned char* inBuffer,
- int inBufSize)
-{
- using namespace Tizen::Base;
-
- const byte *b_pkgid = reinterpret_cast<const byte*>(pkgid.c_str());
- ByteBuffer appInfo;
- appInfo.Construct(pkgid.length());
- appInfo.SetArray(b_pkgid, 0, pkgid.length());
- appInfo.Flip();
-
- Tizen::Security::Crypto::_TrustZoneService* pInstance;
- pInstance = Tizen::Security::Crypto::_TrustZoneService::GetInstance();
-
- ByteBuffer pBuf;
- pBuf.Construct(inBufSize);
- const byte *pByte = reinterpret_cast<const byte*>(inBuffer);
- pBuf.SetArray(pByte, 0, inBufSize);
- pBuf.Flip();
-
- ByteBuffer *getBuffer = pInstance->_TrustZoneService::DecryptN(appInfo, pBuf);
-
- m_getBuffer = reinterpret_cast<void*>(getBuffer);
- return getBuffer->GetRemaining();
-}
-
-void ResourceDecryptor::getDecryptStringByTrustZone(unsigned char *decBuffer)
-{
- using namespace Tizen::Base;
- LogDebug("Get decrypted string");
- ByteBuffer *buffer = reinterpret_cast<ByteBuffer*>(m_getBuffer);
- memcpy(decBuffer, buffer->GetPointer(), buffer->GetRemaining());
- buffer->Reset();
-}
-
} //namespace WRTDecryptor
#include <fcntl.h>
#include <dpl/log/log.h>
#include <dukgen.h>
-#include <FBaseByteBuffer.h>
-#include <security/FSecCrypto_TrustZoneService.h>
namespace {
#define BITS_SIZE 128
#define KEY_SIZE 16
}
namespace WRTEncryptor {
-ResourceEncryptor::ResourceEncryptor() :
- m_getBuffer(NULL)
+ResourceEncryptor::ResourceEncryptor()
{
LogDebug("Started Encrytion");
}
AES_cbc_encrypt(inputBuf, encBuf, chunkSize, &m_encKey, ivec, AES_ENCRYPT);
}
-
-int ResourceEncryptor::EncryptChunkByTrustZone(
- std::string pkgid,
- const unsigned char *plainBuffer,
- int pBufSize)
-{
- using namespace Tizen::Base;
-
- const byte *b_pkgid = reinterpret_cast<const byte*>(pkgid.c_str());
- ByteBuffer appInfo;
- appInfo.Construct(pkgid.length());
- appInfo.SetArray(b_pkgid, 0, pkgid.length());
- appInfo.Flip();
-
- Tizen::Security::Crypto::_TrustZoneService* pInstance;
- pInstance = Tizen::Security::Crypto::_TrustZoneService::GetInstance();
-
- ByteBuffer pBuf;
- pBuf.Construct(pBufSize);
- const byte *pByte = reinterpret_cast<const byte*>(plainBuffer);
- pBuf.SetArray(pByte, 0, pBufSize);
- pBuf.Flip();
-
- ByteBuffer *getBuffer =
- pInstance->_TrustZoneService::EncryptN(appInfo, pBuf);
- m_getBuffer = reinterpret_cast<void*>(getBuffer);
-
- return getBuffer->GetRemaining();
-}
-
-void ResourceEncryptor::getEncStringByTrustZone(unsigned char *encBuffer)
-{
- using namespace Tizen::Base;
- LogDebug("Get encrypted String");
- ByteBuffer *buffer = reinterpret_cast<ByteBuffer*>(m_getBuffer);
- memcpy(encBuffer, buffer->GetPointer(), buffer->GetRemaining());
- buffer->Reset();
-}
} //namespace ResourceEnc
BuildRequires: pkgconfig(openssl)
BuildRequires: pkgconfig(libiri)
BuildRequires: pkgconfig(libidn)
-BuildRequires: pkgconfig(osp-appfw)
BuildRequires: libcryptsvc-devel
BuildRequires: dukgenerator-devel
-BuildRequires: osp-appfw-internal-devel
Requires: libcryptsvc
-Requires: osp-appfw
%description
Wrt common library