40 lines
971 B
C
40 lines
971 B
C
|
|
#ifndef __DAKUANG_BASE64_H__
|
|||
|
|
#define __DAKUANG_BASE64_H__
|
|||
|
|
|
|||
|
|
#include <string>
|
|||
|
|
|
|||
|
|
namespace LenheartBase
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
class CBASE64
|
|||
|
|
{
|
|||
|
|
public:
|
|||
|
|
|
|||
|
|
// ִ<><D6B4>BASE64<36><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
static std::string encode(const std::string& str);
|
|||
|
|
|
|||
|
|
// ִ<><D6B4>BASE64<36><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
static std::string decode(const std::string& str);
|
|||
|
|
|
|||
|
|
// ִ<><D6B4>RSA˽<41><EFBFBD><D7BD>ܲ<EFBFBD><DCB2><EFBFBD>
|
|||
|
|
static std::string RsaPriDecrypt(const std::string& cipher_text, const std::string& pri_key);
|
|||
|
|
// ִ<><D6B4>RSA˽<41><EFBFBD><D7BC>ܲ<EFBFBD><DCB2><EFBFBD>
|
|||
|
|
static std::string RsaPriEncrypt(const std::string& clear_text, const std::string& pri_key);
|
|||
|
|
private:
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
static int __encode(unsigned char* pDest, const unsigned char* pSrc, size_t nSrcLen);
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
static int __decode(unsigned char* pDest, const unsigned char* pSrc, size_t nSrcLen);
|
|||
|
|
|
|||
|
|
private:
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>
|
|||
|
|
static unsigned char s_encTable[];
|
|||
|
|
static unsigned char s_decTable[];
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
#endif
|