Commit 3c7a68d0 by NitefullWind

1. 根据商户选择加密密钥。

parent 5883851a
......@@ -10,6 +10,8 @@
#include <QJsonDocument>
#include "QsLog.h"
#include "tools.h"
#include "fmp_settings.h"
class CretOperate
{
public:
......@@ -38,7 +40,14 @@ public:
// return false;
// }
if(DataProcess::AESEncode((const unsigned char *)AES_KEY, (unsigned char *)tmpiv, (const unsigned char *)tmpmac.data(), strlen(tmpmac.data()), (unsigned char *)outmsg, 4096) == 0)
FMPSettings setting;
POSType posType = (POSType)setting.GetValue(CONFIG_ALL_PARTNER, SPCC).toInt();
QString aes_key = "DDDDEEEE45LPODDCXZZLKDDO";
if(posType == SIMPHONY) {
aes_key = "ABCD@#9876DFSAAWKLDEOPDD";
}
if(DataProcess::AESEncode((const unsigned char *)aes_key.toUtf8().data(), (unsigned char *)tmpiv, (const unsigned char *)tmpmac.data(), strlen(tmpmac.data()), (unsigned char *)outmsg, 4096) == 0)
{
QLOG_ERROR() << "AES MAC failed";
return false;
......@@ -129,7 +138,15 @@ public:
memcpy(tmpiv, iv.toUtf8().data(), iv.toUtf8().size() > 16 ? 16 : iv.toUtf8().size());
memcpy(tmpiv1, iv.toUtf8().data(), iv.toUtf8().size() > 16 ? 16 : iv.toUtf8().size());
if(DataProcess::AESDecode((const unsigned char *)AES_KEY, (unsigned char *)tmpiv, (const unsigned char *)buf, strlen(buf), (unsigned char *)rps, MAX_BUF_LEN) == 0)
FMPSettings setting;
POSType posType = (POSType)setting.GetValue(CONFIG_ALL_PARTNER, SPCC).toInt();
QString aes_key = "DDDDEEEE45LPODDCXZZLKDDO";
if(posType == SIMPHONY) {
aes_key = "ABCD@#9876DFSAAWKLDEOPDD";
}
if(DataProcess::AESDecode((const unsigned char *)aes_key.toUtf8().data(), (unsigned char *)tmpiv, (const unsigned char *)buf, strlen(buf), (unsigned char *)rps, MAX_BUF_LEN) == 0)
{
QLOG_ERROR() << "AESDecode AEStext Failed";
return false;
......
......@@ -44,4 +44,38 @@
#define SQL_KEY_ORDERID "orderid"
#define SQL_KET_CONTENT "content"
#ifndef POSTYPE
#define POSTYPE
typedef enum
{
RES,
SPCC,
SIMPHONY
} POSType;
#endif
#define CONFIG_ALL_PATH "ALL/DLLPATH"
#define CONFIG_ALL_PARTNER "ALL/partner"
#define CONFIG_OLTP_URL "OLTP/url"
#define CONFIG_OLTP_ACTION "OLTP/action"
#define CONFIG_OLTP_TIMEOUT "OLTP/timeout"
#define CONFIG_OLTP_PATH "OLTP/DLLPATH"
#define CONFIG_OLTP_VER "OLTP/VER"
#define CONFIG_OLTP_FROM "OLTP/FROM"
#define CONFIG_OLTP_BUSINESS "OLTP/BUSINESS"
#define CONFIG_OLTP_STATCODE "OLTP/STATCODE"
#define CONFIG_OLTP_MODE "OLTP/MODE"
#define CONFIG_OLTP_MODE_BATCH "OLTP/MODEBATCH"
#define CONFIG_OLTP_OPERATION "OLTP/OPERATION"
#define CONFIG_OLTP_OPERATION_BATCH "OLTP/OPERATIONBATCH"
#define CONFIG_PRINT_PATH "PRINT/PATH"
#define CONFIG_PRINT_ENDDAY_NAME "PRINT/EDNDAYNAME"
#define CONFIG_PRINT_SHIFT_NAME "PRINT/SHIFTNAME"
#define CONFIG_PRINT_AGAIN_NAME "PRINT/AGAINNAME"
#define CONFIG_LOG_PATH "LOG/PATH"
#define CONFIG_LOG_NAME "LOG/NAME"
#define CONFIG_LOG_LEVEL "LOG/LEVEL"
#define CONFIG_LOG_SIZE "LOG/SIZE"
#define CONFIG_LOG_COUNT "LOG/COUNT"
#endif
......@@ -9,6 +9,7 @@
#include <QSemaphore>
#include "fmp_settings.h"
#include "requestmodel.h"
#include "fmglobal.h"
class QSqlDatabase;
class QSqlQuery;
......
......@@ -91,30 +91,5 @@
#define JSON_REQTYPE_PRINTER 85
#define JSON_REQTYPE_FIND 2
#define CONFIG_ALL_PATH "ALL/DLLPATH"
#define CONFIG_ALL_PARTNER "ALL/partner"
#define CONFIG_OLTP_URL "OLTP/url"
#define CONFIG_OLTP_ACTION "OLTP/action"
#define CONFIG_OLTP_TIMEOUT "OLTP/timeout"
#define CONFIG_OLTP_PATH "OLTP/DLLPATH"
#define CONFIG_OLTP_VER "OLTP/VER"
#define CONFIG_OLTP_FROM "OLTP/FROM"
#define CONFIG_OLTP_BUSINESS "OLTP/BUSINESS"
#define CONFIG_OLTP_STATCODE "OLTP/STATCODE"
#define CONFIG_OLTP_MODE "OLTP/MODE"
#define CONFIG_OLTP_MODE_BATCH "OLTP/MODEBATCH"
#define CONFIG_OLTP_OPERATION "OLTP/OPERATION"
#define CONFIG_OLTP_OPERATION_BATCH "OLTP/OPERATIONBATCH"
#define CONFIG_PRINT_PATH "PRINT/PATH"
#define CONFIG_PRINT_ENDDAY_NAME "PRINT/EDNDAYNAME"
#define CONFIG_PRINT_SHIFT_NAME "PRINT/SHIFTNAME"
#define CONFIG_PRINT_AGAIN_NAME "PRINT/AGAINNAME"
#define CONFIG_LOG_PATH "LOG/PATH"
#define CONFIG_LOG_NAME "LOG/NAME"
#define CONFIG_LOG_LEVEL "LOG/LEVEL"
#define CONFIG_LOG_SIZE "LOG/SIZE"
#define CONFIG_LOG_COUNT "LOG/COUNT"
#endif // GLOBAL
......@@ -7,6 +7,7 @@
#include <QList>
#include <QTimer>
#include <QStringList>
#include <fmglobal.h>
class LabelsTimer;
class QMovie;
......
......@@ -3,13 +3,6 @@
typedef enum
{
RES,
SPCC,
SIMPHONY
} POSType;
typedef enum
{
sign,
manage,
pay,
......
......@@ -7,6 +7,7 @@
#include "QsLog.h"
#include "fmp_settings.h"
#include "tools.h"
#include "fmglobal.h"
#include <QFile>
#include <QDir>
......
......@@ -3,7 +3,7 @@
#define VER_MAJOR 0
#define VER_MINOR 2
#define VER_REVISION 0
#define VER_REVISION 1
#define VER_BUILD 0
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment