Patent ID: 8555342

Claim:
A data storage assembly, comprising: storage processing circuitry; and an array of non-volatile storage devices coupled to the storage processing circuitry, the storage processing circuitry running an interface which is constructed and arranged to: obtain a unique identifier and a set of stable values, in response to a storage request from a client application, store a set of credentials of the client application within a data security mechanism, the set of credentials being in encrypted form when stored within the data security mechanism, and configure the data security mechanism to provide the set of credentials in non-encrypted form in response to new fingerprints matching a system fingerprint which is formed at least in part from the unique identifier and the set of stable values; wherein the unique identifier and the set of stable values include at least: a hostname from a hostname parameter stored in the data storage assembly as the unique identifier, and a set of machine-generated codes from a set of code storage locations within the data storage assembly as the set of stable values, wherein each machine-generated code includes a sequence of symbols including at least one lower case character, at least one upper case character, at least one digit, and at least one special character to prevent a fraudster from easily duplicating a storage location environment of the data storage assembly; and wherein the data security mechanism of the data storage assembly is configured to: set the data security mechanism to (i) expose the set of credentials in non-encrypted form when at least a certain number of the read hostname and the read machine-generated codes match an expected hostname and expected machine-generated codes, and (ii) not expose the set of credentials in non-encrypted form when less than the certain number of the read hostname and the read machine-generated codes match the expected hostname and the expected machine-generated codes, the certain number being less than all of the read hostname and the read machine-generated codes matching the expected hostname and expected machine-generated codes.