Method for authenticating, comprising the following enrollments steps: - sending a request for a first bit or character combination as a first sub key; - storing said first bit or character combination in the memory; - generating a second bit or character combination as a second sub key, wherein the second bit or character combination is a random or pseudo random pattern; and - combining said first sub key and second sub key to a key; and - further comprising the following step: - using the key as an authentication password; further comprising the following verification steps for login: - sending a request for a first bit or character combination as a first sub key; - storing said first bit or character combination in the memory; - repeating the following steps until a key has been verified as valid: - generating one arbitrary second bit or character combination as a second sub key from the set of all possible second sub keys; - combining said first sub key and second sub key to the key; - verifying, whether the key is valid, by authenticating using the password; and - if said key has been verified as valid, using the key as an authentication password on the computer; wherein the steps of combining the first sub key and the second sub key includes at least one of the following steps: - concatenating the first sub key and the second sub key; - inserting the second sub key at an arbitrary position of the first sub key; - inserting the first sub key at an arbitrary position of the second sub key; - adding the second sub key at the end or beginning of the first sub key; and - interleaving the first sub key and the second sub key. - sending a request for a first bit or character combination as a first sub key; - storing said first bit or character combination in the memory; - generating a second bit or character combination as a second sub key, wherein the second bit or character combination is a random or pseudo random pattern; and - combining said first sub key and second sub key to a key; and - further comprising the following step: - using the key as an authentication password; - using the key as an authentication password; - sending a request for a first bit or character combination as a first sub key; - storing said first bit or character combination in the memory; - repeating the following steps until a key has been verified as valid: - generating one arbitrary second bit or character combination as a second sub key from the set of all possible second sub keys; - combining said first sub key and second sub key to the key; - verifying, whether the key is valid, by authenticating using the password; and - generating one arbitrary second bit or character combination as a second sub key from the set of all possible second sub keys; - combining said first sub key and second sub key to the key; - verifying, whether the key is valid, by authenticating using the password; and - if said key has been verified as valid, using the key as an authentication password on the computer; - concatenating the first sub key and the second sub key; - inserting the second sub key at an arbitrary position of the first sub key; - inserting the first sub key at an arbitrary position of the second sub key; - adding the second sub key at the end or beginning of the first sub key; and - interleaving the first sub key and the second sub key.