Exemple #1
0
        /// <summary>
        /// 복호화 Decrypt - Encrypt_HexString To string
        /// </summary>
        /// <param name="input"></param>
        /// <param name="key_HexString"></param>
        /// <param name="iv_HexString"></param>
        /// <returns></returns>
        public static string Decrypt_String(string input, string key_HexString, string iv_HexString)
        {
            string HexString = String_Convertor.ByteHexToHexString(AES128.Decrypt(String_Convertor.HexStringToByteHex(input), String_Convertor.HexStringToByteHex(key_HexString), String_Convertor.HexStringToByteHex(iv_HexString)));

            byte[] bytes_output = String_Convertor.HexStringToByteHex(HexString);
            return(System.Text.Encoding.UTF8.GetString(bytes_output));
        }
Exemple #2
0
        /// <summary>
        /// 파일 업로드
        /// </summary>
        /// <param name="ftpHost">호스트 주소</param>
        /// <param name="webFilePath">파일이 저장되는 폴더 경로 (호스트 경로를 제외한 나머지)</param>
        /// <param name="webFileName">파일명(확장자 포함)</param>
        /// <param name="ftpID">접근 계정</param>
        /// <param name="ftpPW">접근 계정 암호</param>
        /// <param name="stream">파일 Stream</param>
        public static async void Upload_Stream(string ftpHost, string webFilePath, string webFileName, string ftpID, string ftpPW, Stream stream)
        {
            //string fileName = Path.GetFileName(localFilePath);

            CreateDirectory(ftpHost, webFilePath, ftpID, ftpPW);

            using (WebClient client = new WebClient())
            {
                client.Credentials = new NetworkCredential(ftpID, ftpPW);
                client.Encoding    = System.Text.Encoding.UTF8;
                //client.UploadFile(ftpHost + webFilePath + webFileName, WebRequestMethods.Ftp.UploadFile, localFilePath);
                client.UploadData(ftpHost + webFilePath + webFileName, String_Convertor.StreamToBytes(stream));
            }
        }
Exemple #3
0
        /// <summary>
        /// 입력된 값으로 userpermit을 생성하여 반환
        /// </summary>
        /// <param name="mid"></param>
        /// <param name="mkey"></param>
        /// <param name="hwid"></param>
        /// <param name="iv"></param>
        /// <returns></returns>
        public static string GetUserpermit(string mid, string mkey, string hwid, string iv = "00000000000000000000000000000000")
        {
            //String To HEX
            byte[] IV    = String_Convertor.HexStringToByteHex(iv);
            byte[] M_ID  = String_Convertor.HexStringToByteHex(mid);
            byte[] M_KEY = String_Convertor.HexStringToByteHex(mkey);
            byte[] HW_ID = String_Convertor.HexStringToByteHex(hwid);

            //암호화
            //Encrypred HW ID = Aes(HW_ID, M_KEY, IV)
            byte[] Encrypred_HW_ID = AES128.Encrypt(HW_ID, M_KEY, IV);
            //String To HEX
            string strEncrypred_HW_ID = String_Convertor.ByteHexToHexString(Encrypred_HW_ID);
            //Checksum = CRC32(EncrypredHWID)
            string checksum = CRC32.StringToCRC32(strEncrypred_HW_ID).ToString("X2");

            return(strEncrypred_HW_ID + checksum + mid);
        }
Exemple #4
0
 /// <summary>
 /// 암호화 Encrypt - string To Decrypt_String
 /// </summary>
 /// <param name="input"></param>
 /// <param name="key_HexString"></param>
 /// <param name="iv_HexString"></param>
 /// <returns></returns>
 public static string Encrypt_String(string input, string key_HexString, string iv_HexString)
 {
     byte[] bytes_input = System.Text.Encoding.UTF8.GetBytes(input);
     input = String_Convertor.ByteHexToHexString(bytes_input);
     return(String_Convertor.ByteHexToHexString(AES128.Encrypt(String_Convertor.HexStringToByteHex(input), String_Convertor.HexStringToByteHex(key_HexString), String_Convertor.HexStringToByteHex(iv_HexString))));
 }
 public string HexStringToString([Required] string input)
 {
     return(String_Convertor.HexStringToString(input));
 }