Method for executing a function, secured by temporal desynchronization, this function being executed by a microprocessor, this method comprising: - loading one after another the legitimate instructions of the function, these legitimate instructions determining the result produced by the function, - executing , by means of an arithmetic logic unit of the microprocessor, the instructions loaded one after another in the order in which they are loaded, - randomly triggering insertion of a sequence of dummy instructions after a first legitimate instruction and immediately before a second legitimate instruction, then - executing, by means of the arithmetic logic unit, the sequence of dummy instructions, this execution of this sequence of dummy instructions: - delaying the time at which the second legitimate instruction is executed with respect to the time at which the first legitimate instruction is executed, and - having no influence on the execution of the legitimate instructions and therefore no influence on the result produced by the function, characterized in that the method comprises: - when the first legitimate instruction is loaded, noting the opcode of this first legitimate instruction, then - constructing a dummy instruction on the basis of this noted opcode, the dummy instruction thus constructed being identical to the first legitimate instruction except that its operands are different, then - incorporating the dummy instruction thus constructed into the sequence of dummy instructions used to delay the time at which the second legitimate instruction is executed. - loading one after another the legitimate instructions of the function, these legitimate instructions determining the result produced by the function, - executing , by means of an arithmetic logic unit of the microprocessor, the instructions loaded one after another in the order in which they are loaded, - randomly triggering insertion of a sequence of dummy instructions after a first legitimate instruction and immediately before a second legitimate instruction, then - executing, by means of the arithmetic logic unit, the sequence of dummy instructions, this execution of this sequence of dummy instructions: - delaying the time at which the second legitimate instruction is executed with respect to the time at which the first legitimate instruction is executed, and - having no influence on the execution of the legitimate instructions and therefore no influence on the result produced by the function, - delaying the time at which the second legitimate instruction is executed with respect to the time at which the first legitimate instruction is executed, and - having no influence on the execution of the legitimate instructions and therefore no influence on the result produced by the function, - when the first legitimate instruction is loaded, noting the opcode of this first legitimate instruction, then - constructing a dummy instruction on the basis of this noted opcode, the dummy instruction thus constructed being identical to the first legitimate instruction except that its operands are different, then - incorporating the dummy instruction thus constructed into the sequence of dummy instructions used to delay the time at which the second legitimate instruction is executed. <EOS>