Commit 3c7a68d0 by NitefullWind

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

parent 5883851a
...@@ -10,6 +10,8 @@ ...@@ -10,6 +10,8 @@
#include <QJsonDocument> #include <QJsonDocument>
#include "QsLog.h" #include "QsLog.h"
#include "tools.h" #include "tools.h"
#include "fmp_settings.h"
class CretOperate class CretOperate
{ {
public: public:
...@@ -38,7 +40,14 @@ public: ...@@ -38,7 +40,14 @@ public:
// return false; // 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"; QLOG_ERROR() << "AES MAC failed";
return false; return false;
...@@ -129,7 +138,15 @@ public: ...@@ -129,7 +138,15 @@ public:
memcpy(tmpiv, iv.toUtf8().data(), iv.toUtf8().size() > 16 ? 16 : iv.toUtf8().size()); 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()); 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"; QLOG_ERROR() << "AESDecode AEStext Failed";
return false; return false;
......
...@@ -44,4 +44,38 @@ ...@@ -44,4 +44,38 @@
#define SQL_KEY_ORDERID "orderid" #define SQL_KEY_ORDERID "orderid"
#define SQL_KET_CONTENT "content" #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 #endif
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
#include <QSemaphore> #include <QSemaphore>
#include "fmp_settings.h" #include "fmp_settings.h"
#include "requestmodel.h" #include "requestmodel.h"
#include "fmglobal.h"
class QSqlDatabase; class QSqlDatabase;
class QSqlQuery; class QSqlQuery;
......
...@@ -91,30 +91,5 @@ ...@@ -91,30 +91,5 @@
#define JSON_REQTYPE_PRINTER 85 #define JSON_REQTYPE_PRINTER 85
#define JSON_REQTYPE_FIND 2 #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 #endif // GLOBAL
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
#include <QList> #include <QList>
#include <QTimer> #include <QTimer>
#include <QStringList> #include <QStringList>
#include <fmglobal.h>
class LabelsTimer; class LabelsTimer;
class QMovie; class QMovie;
......
...@@ -3,13 +3,6 @@ ...@@ -3,13 +3,6 @@
typedef enum typedef enum
{ {
RES,
SPCC,
SIMPHONY
} POSType;
typedef enum
{
sign, sign,
manage, manage,
pay, pay,
......
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
#include "QsLog.h" #include "QsLog.h"
#include "fmp_settings.h" #include "fmp_settings.h"
#include "tools.h" #include "tools.h"
#include "fmglobal.h"
#include <QFile> #include <QFile>
#include <QDir> #include <QDir>
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
#define VER_MAJOR 0 #define VER_MAJOR 0
#define VER_MINOR 2 #define VER_MINOR 2
#define VER_REVISION 0 #define VER_REVISION 1
#define VER_BUILD 0 #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