how convert this c# cod to php

Posted by user3694473 on Stack Overflow See other posts from Stack Overflow or by user3694473
Published on 2014-05-31T15:00:16Z Indexed on 2014/05/31 15:26 UTC
Read the original article Hit count: 251

Filed under:
|
|
|

I'm trying to convert this class from C# to php and i wante to convert this c# class to php ...

how i can do it Thanks in advance hi I'm trying to convert this class from C# to php and i wante to convert this c# class to php ...

how i can do it Thanks in advance

public class CreateCode
    {

        public string SazBon(string MM)
        {
            string RET = "";

            string[] ME = new string[25];
            for (int i = 1; i < MM.Length; i += 2)
            {
                ME[i] = MM[i - 1].ToString();
            }
            for (int j = 0; j < MM.Length; j += 2)
            {
                ME[j] = MM[j + 1].ToString();
            }
            ME[20] = "1";
            ME[21] = "OH";
            ME[22] = "23";
            ME[23] = "fXC";
            ME[24] = "5";
            ME[5] = ME[14];
            ME[13] = ME[23];
            ME[2] = ME[22];
            ME[18] = ME[21];
            ME[23] = ME[11];
            ME[19] = ME[0];

            foreach (string item in ME)
            {
                RET += item;
            }



            string BACK = Encrypt(RET, RET, 256);

            BACK = encryptString(BACK);
            return BACK;
        }
        string encryptString(string strToEncrypt) // md5
        {
            UTF8Encoding ue = new UTF8Encoding();
            byte[] bytes = ue.GetBytes(strToEncrypt);

            MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
            byte[] hashBytes = md5.ComputeHash(bytes);

            // Bytes to string
            return System.Text.RegularExpressions.Regex.Replace
                (BitConverter.ToString(hashBytes), "-", "").ToLower();
        }


        private byte[] Encrypt(byte[] clearData, byte[] Key, byte[] IV)
        {

            MemoryStream ms = new MemoryStream();

            Rijndael alg = Rijndael.Create();
            alg.Key = Key;

            alg.IV = IV;
            CryptoStream cs = new CryptoStream(ms, alg.CreateEncryptor(), CryptoStreamMode.Write);

            cs.Write(clearData, 0, clearData.Length);
            cs.Close();
            byte[] encryptedData = ms.ToArray();
            return encryptedData;
        }
        byte[] A;


        private string Encrypt(string Data, string Password, int Bits)
        {

            byte[] clearBytes = System.Text.Encoding.Unicode.GetBytes(Data);

            PasswordDeriveBytes pdb = new PasswordDeriveBytes(Password,

                new byte[] { 0x00, 0x01, 0x02, 0x1C, 0x1D, 0x1E, 0x03, 0x04, 0x05, 0x0F, 0x20, 0x21, 0xAD, 0xAF, 0xA4 });

            if (Bits == 128)
            {
                byte[] encryptedData = Encrypt(clearBytes, pdb.GetBytes(16), pdb.GetBytes(16));
                return Convert.ToBase64String(encryptedData);
            }
            else if (Bits == 192)
            {
                byte[] encryptedData = Encrypt(clearBytes, pdb.GetBytes(24), pdb.GetBytes(16));
                return Convert.ToBase64String(encryptedData);
            }
            else if (Bits == 256)
            {
                byte[] encryptedData = Encrypt(clearBytes, pdb.GetBytes(32), pdb.GetBytes(16));
                return Convert.ToBase64String(encryptedData);
            }
            else
            {
                return string.Concat(Bits);
            }
        } // AES

}

© Stack Overflow or respective owner

Related posts about c#

Related posts about php