Module Expr Str ImportFrom alias ImportFrom alias ImportFrom alias identifier ImportFrom alias identifier ClassDef bases NameLoad body Expr Str Assign NameStore Str Assign NameStore Num FunctionDef arguments args NameParam defaults body Expr Str Return ListLoad Str Str Str Str Str Str Str decorator_list FunctionDef arguments args NameParam NameParam NameParam defaults body Expr Str Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore SubscriptLoad NameLoad Index Str Assign NameStore SubscriptLoad NameLoad Index Str Assign AttributeStore NameLoad attr SubscriptLoad NameLoad Index Str With Call NameLoad NameLoad Str NameStore body Expr Call AttributeLoad NameLoad attr Call AttributeLoad Str attr NameLoad NameLoad Assign NameStore ListComp Call AttributeLoad Str attr NameLoad comprehension NameStore Call NameLoad BinOpMult BinOpAdd NameLoad Num AttributeLoad NameLoad attr Assign NameStore ListComp Call AttributeLoad Str attr NameLoad comprehension NameStore Call NameLoad BinOpMult BinOpAdd NameLoad Num AttributeLoad NameLoad attr Assign NameStore ListComp Call AttributeLoad Str attr NameLoad comprehension NameStore Call NameLoad BinOpMult BinOpAdd NameLoad Num AttributeLoad NameLoad attr Assign NameStore ListComp Call AttributeLoad Str attr NameLoad comprehension NameStore Call NameLoad BinOpMult BinOpAdd NameLoad Num AttributeLoad NameLoad attr Assign NameStore ListComp Call AttributeLoad Str attr NameLoad comprehension NameStore Call NameLoad BinOpMult NameLoad AttributeLoad NameLoad attr Assign NameStore ListComp Call AttributeLoad Str attr NameLoad comprehension NameStore Call NameLoad BinOpMult NameLoad AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad NameLoad BinOpAdd NameLoad NameLoad NameLoad Num For NameStore Call NameLoad NameLoad body Expr Call AttributeLoad NameLoad attr NameLoad NameLoad SubscriptLoad NameLoad Index NameLoad SubscriptLoad NameLoad Index NameLoad SubscriptLoad NameLoad Index NameLoad SubscriptLoad NameLoad Index NameLoad SubscriptLoad NameLoad Index BinOpAdd NameLoad Num SubscriptLoad NameLoad Index BinOpAdd NameLoad Num SubscriptLoad NameLoad Index BinOpAdd NameLoad Num SubscriptLoad NameLoad Index BinOpAdd NameLoad Num SubscriptLoad NameLoad Index NameLoad SubscriptLoad NameLoad Index NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad BinOpAdd BinOpAdd BinOpAdd NameLoad NameLoad NameLoad NameLoad NameLoad For TupleStore NameStore NameStore Call AttributeLoad SubscriptLoad NameLoad Index Str attr body Expr Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad For NameStore SubscriptLoad NameLoad Index Str body Expr Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad Return decorator_list FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam NameParam defaults body Expr Str Assign NameStore Str If CompareEq BinOpMod NameLoad Num Num body Assign NameStore Num Assign NameStore Num orelse Assign NameStore Num Assign NameStore Num AugAssignAdd NameStore Str AugAssignAdd NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad NameLoad AugAssignAdd NameStore Str AugAssignAdd NameStore Call AttributeLoad Str attr NameLoad Call NameLoad NameLoad NameLoad NameLoad Call NameLoad NameLoad Num NameLoad AugAssignAdd NameStore Str AugAssignAdd NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad Call NameLoad NameLoad Num NameLoad NameLoad AugAssignAdd NameStore Str AugAssignAdd NameStore Call AttributeLoad Str attr NameLoad Call NameLoad NameLoad NameLoad NameLoad NameLoad AugAssignAdd NameStore Call AttributeLoad Str attr NameLoad AugAssignAdd NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad Call NameLoad NameLoad Num NameLoad AugAssignAdd NameStore Str AugAssignAdd NameStore Call AttributeLoad Str attr NameLoad AugAssignAdd NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad AugAssignAdd NameStore Str Expr Call AttributeLoad NameLoad attr NameLoad Return decorator_list decorator_list
N/A N/A 
Created on Mar 28, 2014

@author: stefan
 parser stpcommands ciphers.cipher AbstractCipher parser.stpcommands getStringLeftRotate rotl parser.stpcommands getStringRightRotate rotr ChasKeyMacHalf N/A AbstractCipher N/A N/A 
    This class provides a model for the differential behaviour of the
    Chaskey MAC by Nicky Mouha, Bart Mennink, Anthony Van Herrewege, 
    Dai Watanabe, Bart Preneel and Ingrid Verbauwhede.
    
    For more information on Chaskey see http://mouha.be/chaskey/
     N/A name chaskeyhalf N/A num_messages 1 getFormatString N/A N/A self N/A N/A N/A 
        Returns the print format.
         N/A N/A v0 v1 v2 v3 w0 w1 weight N/A createSTP N/A N/A self stp_filename parameters N/A N/A N/A 
        Creates an STP file to find a characteristic for ChasKey
        with the given parameters.
         N/A wordsize N/A parameters N/A wordsize N/A rounds N/A parameters N/A rounds N/A weight N/A parameters N/A sweight N/A N/A self num_messages N/A parameters N/A nummessages N/A N/A open stp_filename w stp_file N/A N/A N/A N/A stp_file write N/A N/A % Input File for STP
% ChasKeyMac w={} rounds={}


 format wordsize rounds N/A v0 N/A N/A N/A v0{} format i N/A i N/A range N/A N/A rounds 1 N/A self num_messages N/A v1 N/A N/A N/A v1{} format i N/A i N/A range N/A N/A rounds 1 N/A self num_messages N/A v2 N/A N/A N/A v2{} format i N/A i N/A range N/A N/A rounds 1 N/A self num_messages N/A v3 N/A N/A N/A v3{} format i N/A i N/A range N/A N/A rounds 1 N/A self num_messages N/A w0 N/A N/A N/A w0{} format i N/A i N/A range N/A rounds N/A self num_messages N/A w1 N/A N/A N/A w1{} format i N/A i N/A range N/A rounds N/A self num_messages N/A N/A N/A stpcommands setupVariables stp_file v0 wordsize N/A N/A N/A stpcommands setupVariables stp_file v1 wordsize N/A N/A N/A stpcommands setupVariables stp_file v2 wordsize N/A N/A N/A stpcommands setupVariables stp_file v3 wordsize N/A N/A N/A stpcommands setupVariables stp_file w0 wordsize N/A N/A N/A stpcommands setupVariables stp_file w1 wordsize N/A N/A N/A stpcommands setupWeightComputation stp_file weight N/A w0 w1 wordsize 1 N/A i N/A range rounds N/A N/A N/A N/A self setupChasKeyRound stp_file i N/A v0 N/A i N/A v1 N/A i N/A v2 N/A i N/A v3 N/A i N/A v0 N/A N/A i 1 N/A v1 N/A N/A i 1 N/A v2 N/A N/A i 1 N/A v3 N/A N/A i 1 N/A w0 N/A i N/A w1 N/A i wordsize N/A N/A N/A stpcommands assertNonZero stp_file N/A N/A N/A v0 v1 v2 v3 wordsize N/A N/A key value N/A N/A N/A parameters N/A fixedVariables items N/A N/A N/A N/A stpcommands assertVariableValue stp_file key value N/A char N/A parameters N/A blockedCharacteristics N/A N/A N/A N/A stpcommands blockCharacteristic stp_file char wordsize N/A N/A N/A stpcommands setupQuery stp_file N/A N/A setupChasKeyRound N/A N/A self stp_file rnd v0_in v1_in v2_in v3_in v0_out v1_out v2_out v3_out w0 w1 wordsize N/A N/A N/A 
        Half a round of ChasKey

        a0 = (v1 + v0) <<< 32
        a1 = (v1 + v0) ^ (v1 <<< 13)
        a2 = (v2 + v3)
        a3 = (v2 + v3) ^ (v3 <<< 16)
         N/A command N/A N/A N/A rnd 2 0 N/A N/A rot_one 5 N/A rot_two 8 N/A N/A rot_one 7 N/A rot_two 13 N/A command ASSERT( N/A command N/A N/A stpcommands getStringAdd v2_in v3_in v0_out wordsize N/A command );
 N/A command N/A N/A ASSERT({} = BVXOR({}, {}));
 format v1_out N/A rotl v1_in rot_one wordsize N/A rotr v2_out 16 wordsize N/A command ASSERT( N/A command N/A N/A stpcommands getStringAdd v1_in v0_in N/A rotr v2_out 16 wordsize wordsize N/A command );
 N/A command N/A N/A ASSERT({} = BVXOR({}, {}));
 format v3_out N/A rotl v3_in rot_two wordsize v0_out N/A command N/A N/A ASSERT({0} = ~ format w0 N/A command N/A N/A stpcommands getStringEq v1_in v0_in N/A rotr v2_out 16 wordsize N/A command );
 N/A command N/A N/A ASSERT({0} = ~ format w1 N/A command N/A N/A stpcommands getStringEq v2_in v3_in v0_out N/A command );
 N/A N/A N/A stp_file write command N/A N/A N/A