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
 |