public void StartDecrypt()
        {
            Block b;

            while ((b = io.getNextBlock()) != null)
            {
                io.writeBlock(Kripsi.Decrypt(b, key));
            }
        }
        public void StartDecrypt()
        {
            Block P;
            Block C;
            Block CBef;   // Block C sebelumnya

            C = io.getNextBlock();
            if (C != null)
            {
                P    = Kripsi.XOR(IV, Kripsi.Decrypt(C, key));
                CBef = C;
                io.writeBlock(P);
                //Console.WriteLine("C = " + C);
                //Console.WriteLine("K = " + key);
                //Console.WriteLine("P = " + P);
                while ((C = io.getNextBlock()) != null)
                {
                    P    = Kripsi.XOR(CBef, Kripsi.Decrypt(C, key));
                    CBef = C;
                    io.writeBlock(P);
                    //Console.WriteLine("P = " + P);
                }
            }
        }