Research Article

Improvements for Finding Impossible Differentials of Block Cipher Structures

Algorithm 2

Function UpdateVector.
//  Update the variable vector    according to the variable    where    is the value
of the  th variable in  .   is the array of constraints.
input: the variable vector , the constraint array , .
output: A boolean flag indicates if the update procedure success.
(1) flag true;
(2) foreach    do
(3) ; ;
(4) if    is equal to    then
(5) if    is not 0  then
(6) flag false; //  Ex.   but  , a contradiction.
(7) return  flag;
(8) else if    is 0 and    is ? then
(9) if    is not 0 then flag false;
(10) return  flag;
(11) end
(12) ;  ;
(13) else if    is a nonzero value  then
(14) ;  ;
(15) end
(16) else if    is equal to    then
(17) if    is not 0 then flag false
(18) return  flag;
(19) else if    is ? and    is 0 then
(20) ;  ;
(21) end
(22) end
(23) end
(24) return  flag;