1. A method for protecting against programming attacks and/or data corruption comprising: programming, during a secure boot process, signature verification policy information that identifies a plurality of policies associated with a plurality of target memory segments; evaluating, during run-time, the programmed signature verification policy information associated with each of the plurality of target memory segments; and repeatedly performing, during run-time, signature verification on each of the plurality of target memory segments based on the programmed signature verification policy information associated with each target memory segment.