Argentini.Halide.H3Secure.DecryptInt32 C# (CSharp) Method

DecryptInt32() public static method

Triple DES 256 bit integer decryption.
public static DecryptInt32 ( String data, Byte key, Byte ivec ) : Int32?
data String String to decrypt.
key Byte 24 byte array key for decrypting the data. This must match the key used to encrypt the data.
ivec Byte 18 byte array init vector for decrypting the data. This must match the init vector used to encrypt the data.
return Int32?
        public static Int32? DecryptInt32(String data, Byte[] key, Byte[] ivec)
        {
            Int32? retVal = null;
            String newData = data;
            ASCIIEncoding encoder = new ASCIIEncoding();
            AesCryptoServiceProvider aesProvider = new AesCryptoServiceProvider();
            aesProvider.BlockSize = 128;
            aesProvider.KeySize = 256;
            ICryptoTransform cryptoTransform = aesProvider.CreateDecryptor(key, ivec);
            MemoryStream decryptedStream = new MemoryStream();

            try
            {
                byte[] inputInBytes = Base64PlusStringDecodeToBytes(newData);
                CryptoStream cryptStream = new CryptoStream(decryptedStream, cryptoTransform, CryptoStreamMode.Write);

                cryptStream.Write(inputInBytes, 0, inputInBytes.Length);
                cryptStream.FlushFinalBlock();
                decryptedStream.Position = 0;

                byte[] result = new byte[decryptedStream.Length];
                decryptedStream.Read(result, 0, Convert.ToInt32(decryptedStream.Length));

                cryptStream.Close();

                try
                {
                    retVal = BitConverter.ToInt32(result, 0);
                }

                catch
                {
                    retVal = null;
                }
            }

            catch
            {
                retVal = null;
            }

            return retVal;
        }

Same methods

H3Secure::DecryptInt32 ( String data ) : Int32?
H3Secure::DecryptInt32 ( String data, Byte key ) : Int32?
H3Secure::DecryptInt32 ( String data, String key, String ivec ) : Int32?