| CPC G06F 21/602 (2013.01) [G06F 17/16 (2013.01); G06F 21/72 (2013.01)] | 20 Claims | 

| 
               1. A method comprising: 
            receiving an input message; 
                computing values based on the input message; 
                initializing an accumulator value; 
                iterating, by a processor, through bits of a secret key, each iteration comprising: 
                selecting a specified number of next most significant bits (MSBs) of the secret key as a bitstring of selected bits; 
                  selecting, randomly, one of the values computed from the input message; 
                  in a case where all bits of the bitstring of selected bits of the secret key have values of zero: 
                updating the accumulator value based on the specified number of the next MSBs; and 
                    performing a dummy operation based on the accumulator value and the randomly selected one of the values computed from the input message; and 
                  generating an output message based on a value stored in the accumulator value after iterating through the bits of the secret key. 
               |