Encrypt() public method

public Encrypt ( uint data ) : uint[]
data uint
return uint[]
Exemplo n.º 1
0
        public void TestAesEncrypt()
        {
            uint[] key = new uint[] { 1, 2, 3, 4 };
            uint[] data = new uint[] { 5, 6, 7, 8 };
            uint[] expected = new uint[] { 0x6A8FC678, 0xF71305CA, 0xACC4BE7, 0x58158314 };

            var aes = new Sjcl.Cipher.Aes(key);
            uint[] actual = aes.Encrypt(data);

            Assert.IsTrue(Utils.CompareTables(expected, actual));
        }
Exemplo n.º 2
0
        // convert user-supplied password array
        public static uint[] prepare_key(uint[] a)
        {
            int i, j, r;
            var pkey = new uint[] { 0x93C467E3, 0x7DB0C7A4, 0xD1BE3F81, 0x0152CB56 };

            for (r = 65536; r-- > 0; )
            {
                for (j = 0; j < a.Length; j += 4)
                {
                    var key = new uint[] { 0, 0, 0, 0 };

                    for (i = 0; i < 4; i++)
                    {
                        if (i + j < a.Length)
                        {
                            key[i] = a[i + j];
                        }
                    }

                    var aes = new Sjcl.Cipher.Aes(key);
                    pkey = aes.Encrypt(pkey);
                }
            }

            return pkey;
        }