A system for selectively enabling a microprocessor-based system is
disclosed. State information that describes the operating conditions or
circumstances under which a user intends to operate the system is
obtained. In the preferred embodiment of the invention, a valid hash
value is determined, preferably based on the state information and
preferably by locating the valid hash value within a table of valid hash
values indexed by the state information. Candidate authorization
information is obtained from the user, and a candidate hash value is
generated by applying a hashing algorithm to the candidate authorization
information, the state information, or a combination of the candidate
authorization information and state information. The candidate hash value
and the valid hash value are then compared, and the microprocessor-based
system is enabled if the candidate hash value matches the valid hash
value. In this manner, the designer or distributor of the system can
determine, at the time of manufacture or distribution, the conditions and
circumstances under which the system may be operated.