Patent US5204966A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5204966A Expired / Lapsed US ⏱️ 0.0 years remaining

System for controlling access to a secure system by verifying acceptability of proposed password by using hashing and group of unacceptable passwords

Assignee: Hewlett Packard Development Co LP
•
Filing: 1990-03-09
•
Granted: 1993-04-20
•
Expires: 2010-03-09
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Methods and apparatus for verifying the acceptability of a password proposed by a user of a secure system. The system stores a compressed version of a group of unacceptable passwords in a table of indicators. A mapper assigns indicators to passwords, such that more than one password may be mapped to a indicator. To initialize the system, an initializer applies the mapper to each unacceptable password of the group, and sets the indicators of the table that are assigned to each unacceptable password. Subsequently, a verifier applies the mapper to a proposed password and checks whether the indicator assigned to the proposed password is set. If the indicator is not set, it is determined without error that the proposed password is not in the group of unacceptable passwords, and may thus be assigned privileges in the secure system.

Inventors

  • 👤 David K. Wittenberg
  • 👤 Jerrold S. Leichter

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-28 18:56
CPC Classifications
G; G06; G06F; G06F21/00; G06F21/30; G06F21/31; G07; G07C; G07C9/00; G07C9/30; G07C9/32; G07C9/33

Claims Analysis

Total Claims: 42
Claim 1
Independent Claim 202 words
A method for controlling access to a secure system by verifying acceptability of a proposed password from a user of said secure system, comprising the computer-implemented steps of: providing a group of unacceptable passwords, providing an approximate membership tester that tests membership of a candidate password in said group of unacceptable passwords in a manner that may erroneously indicate that said candidate password is a member of said group but cannot erroneously indicate that said candidate password is not a member of said group, testing whether said proposed password is a member of said group of unacceptable passwords by applying said approximate membership tester, whereby, if said approximate membership tester indicates that said proposed password is not a member of said group, it is determined without error that said proposed password is not in said group of unacceptable passwords, and may thus be assigned privileges in said secure system, if said approximate membership tester indicates that said proposed password is not a member of said group, allowing said user to access said secure system, and if said approximate membership tester does not indicate that said proposed password is not a member of said group, frustrating said user from accessing said secure system.
Claim 2
Independent Claim 202 words
A method for controlling access to a secure system by verifying acceptability of a proposed password from a user of said secure system, comprising the computer-implemented steps of: providing a group of unacceptable passwords, providing an approximate membership tester that tests membership of a candidate password in said group of unacceptable passwords in a manner that may erroneously indicate that said candidate password is a member of said group but cannot erroneously indicate that said candidate password is not a member of said group, testing whether said proposed password is a member of said group of unacceptable passwords by applying said approximate membership tester, whereby, if said approximate membership tester indicates that said proposed password is not a member of said group, it is determined without error that said proposed password is not in said group of unacceptable passwords, and may thus be assigned privileges in said secure system, if said approximate membership tester indicates that said proposed password is not a member of said group, allowing said user to access said secure system, and if said approximate membership tester does not indicate that said proposed password is not a member of said group, frustrating said user from accessing said secure system.
Claim 3
Independent Claim 172 words
A method for controlling access to a secure system by verifying acceptability of a proposed password from a user of said secure system, comprising the computer-implemented steps of: providing a table of indicators, providing a mapping function that assigns one or more indicators to a password such that one indicator may be assigned to more than one password, applying said mapping function to one or more unacceptable passwords, and setting all indicators assigned by said mapping function to said unacceptable passwords, applying said mapping function to said proposed password and checking whether an indicator assigned by said mapping function to said proposed password is not set, whereby, if an indicator assigned by said mapping function to said proposed password is not set, it is determined without error that said proposed password is not one of said unacceptable passwords and therefore is acceptable, if said proposed password is acceptable, allowing said user to access said secure system, and if said proposed password is not acceptable, frustrating said user from accessing said secure system.
Claim 4
Independent Claim 172 words
A method for controlling access to a secure system by verifying acceptability of a proposed password from a user of said secure system, comprising the computer-implemented steps of: providing a table of indicators, providing a mapping function that assigns one or more indicators to a password such that one indicator may be assigned to more than one password, applying said mapping function to one or more unacceptable passwords, and setting all indicators assigned by said mapping function to said unacceptable passwords, applying said mapping function to said proposed password and checking whether an indicator assigned by said mapping function to said proposed password is not set, whereby, if an indicator assigned by said mapping function to said proposed password is not set, it is determined without error that said proposed password is not one of said unacceptable passwords and therefore is acceptable, if said proposed password is acceptable, allowing said user to access said secure system, and if said proposed password is not acceptable, frustrating said user from accessing said secure system.
Claim 5
Dependent Claim 27 words
The method of claim 2, further comprising the computer-implemented step of: if said proposed password is acceptable, assigning privileges in said secure system to said proposed password.
Claim 6
Dependent Claim 69 words
The method of claim 3 further comprising the computer-implemented steps of: if said proposed password is acceptable, setting all said indicators assigned by said mapping function to said proposed password such that said proposed password will not be acceptable if subsequently proposed, and at least partially disabling privileges of a previously privileged password so as to require a user possessing said previously privileged password to propose a new password.
Claim 7
Dependent Claim 40 words
The method of claim 2, further comprising the computer-implemented step of: enabling a user to apply said mapping function to further unacceptable passwords and set all said indicators assigned by said mapping function to each of said further unacceptable passwords.
Claim 8
Dependent Claim 42 words
The method of claim 2, further comprising the computer-implemented step of: if said proposed password is acceptable, setting all said indicators assigned by said mapping function to said proposed password such that said proposed password will not be acceptable if subsequently proposed.
Claim 9
Dependent Claim 123 words
The method of claim 2 adapted to verify acceptability of passwords proposed by users of a plurality of secure systems linked by a communications system, wherein said secure systems use a common table of indicators, said secure systems verify acceptability of proposed passwords using said common table of indicators according to the method of claim 2, and if a given secure system determines that a proposed password is acceptable, said given secure system sets all said indicators assigned by said mapping function to said proposed password, such that said proposed password will not be acceptable if subsequently proposed by a user of any of said secure systems, whereby a password which is acceptable will be accepted by only one of said secure systems.
Claim 10
Dependent Claim 13 words
The method of claim 2 wherein said mapping function comprises an encryption algorithm.
Claim 11
Dependent Claim 22 words
The method of claim 2 wherein said indicators are bits in a hash table and said mapping function is a hash function.
Claim 12
Dependent Claim 27 words
The method of claim 9 wherein said hash function comprises normalizing a text string for a password to a standard format to create a normalized text string.
Claim 13
Dependent Claim 13 words
The method of claim 10 wherein said standard format has a predetermined length.
Claim 14
Dependent Claim 36 words
The method of claim 10 wherein said text string has a length, and said normalizing comprises appending to said text string a character related to said length of said text string, creating a modified text string.
Claim 15
Dependent Claim 29 words
The method of claim 12 wherein said normalizing further comprises selectively adding a character to said modified text string, creating a twice modified text string having an odd length.
Claim 16
Dependent Claim 47 words
The method of claim 13 wherein said normalizing further comprises appending said twice modified text string to itself to create a thrice modified text string which exceeds a given length, and then truncating said thrice modified text string to said given length, creating said normalized text string.
Claim 17
Dependent Claim 50 words
The method of claim 10 or 14 wherein said hash function further comprises dividing said normalized text string into pieces, encrypting a predetermined input to an encrypted output using one or more of said pieces as an encryption key, and addressing bits in said hash table with said encrypted output.
Claim 18
Dependent Claim 90 words
The method of claim 15, further comprising the computer-implemented step of: if said proposed password is acceptable, setting all said indicators assigned by said mapping function to said proposed password such that said proposed password will not be acceptable if subsequently proposed, and wherein said encrypting is performed in accordance with a cryptographic technique secure against known plain-text attack, whereby an attacker who monitors changes to said hash table and thereby learns that one or more said indicators are assigned to a password, cannot determine said password from said indicators.
Claim 19
Dependent Claim 75 words
The method of claim 15 wherein said hash table has a length, said encrypting step is repeated N times on N of said pieces to create N encrypted outputs, said N encrypted outputs are split to generate final outputs, and one or more bit addresses in said hash table are computed from one or more of said final outputs by computing a modulo quotient of a final output with said length of said hash table.
Claim 20
Dependent Claim 14 words
The method of claim 16 wherein said cryptographic technique is the Data Encryption Standard.
Claim 21
Dependent Claim 173 words
Apparatus for controlling access to a secure system by verifying acceptability of proposed password from a user of said secure system, comprising a stored table of indicators, a mapper that assigns one or more indicators to a password such that one indicator may be assigned to more than one password, an initializer that applies said mapper to one or more unacceptable passwords, and sets all indicators assigned by said mapper to said unacceptable passwords, and a verifier that applies said mapper to said proposed password and checks whether any indicator assigned by said mapper to said proposed password is not set, and, if an indicator assigned by said mapper to said proposed password is not set, determines without error that said proposed password is not one of said unacceptable passwords and therefore is acceptable, and allows said user to access said secure system, otherwise, if an indicator assigned by said mapper to said proposed password is set, determines that said proposed password is unacceptable and frustrates said user from accessing said secure system.
Claim 22
Dependent Claim 173 words
Apparatus for controlling access to a secure system by verifying acceptability of proposed password from a user of said secure system, comprising a stored table of indicators, a mapper that assigns one or more indicators to a password such that one indicator may be assigned to more than one password, an initializer that applies said mapper to one or more unacceptable passwords, and sets all indicators assigned by said mapper to said unacceptable passwords, and a verifier that applies said mapper to said proposed password and checks whether any indicator assigned by said mapper to said proposed password is not set, and, if an indicator assigned by said mapper to said proposed password is not set, determines without error that said proposed password is not one of said unacceptable passwords and therefore is acceptable, and allows said user to access said secure system, otherwise, if an indicator assigned by said mapper to said proposed password is set, determines that said proposed password is unacceptable and frustrates said user from accessing said secure system.
Claim 23
Dependent Claim 36 words
The apparatus of claim 19, further comprising a privilege assigner that assigns privileges in said secure system to said proposed password, said privilege assigner being invoked if said verifier determines that said proposed password is acceptable.
Claim 24
Dependent Claim 87 words
The apparatus of claim 20 further comprising a modifier that applies said mapper to said proposed password and sets all said indicators assigned by said mapper to said proposed password, said modifier being invoked if said verifier determines that said proposed password is acceptable, such that said proposed password will not be acceptable if subsequently proposed, and wherein said privilege assigner at least partially disables privileges of a previously privileged password so as to require a user possessing said previously privileged password to propose a new password.
Claim 25
Dependent Claim 37 words
The apparatus of claim 19, further comprising a modifier that enables a user to apply said mapper to further unacceptable passwords and set all said indicators assigned by said mapper to each of said further unacceptable passwords.
Claim 26
Dependent Claim 56 words
The method of claim 19, further comprising a modifier that applies said mapper to said proposed password and sets all said indicators assigned by said mapper to said proposed password, said modifier being invoked if said verifier determines that said proposed password is acceptable, such that said proposed password will not be acceptable if subsequently proposed.
Claim 27
Dependent Claim 85 words
The apparatus of claim 23 used to verify acceptability of passwords proposed by users of a plurality of secure systems linked by a communications system, wherein each secure system invokes said verifier to verify acceptability of a password proposed for said system, and invokes said modifier to set all said indicators assigned by said mapper to said proposed password if said verifier determines that said proposed password is acceptable, whereby a password which is acceptable will be accepted by only one of said secure systems.
Claim 28
Dependent Claim 15 words
The apparatus of claim 19 wherein said mapper comprises an encrypter that encrypts proposed passwords.
Claim 29
Dependent Claim 28 words
The apparatus of claim 19 wherein said stored table of indicators is a hash table and said mapper comprises a hash function unit that performs a hash function.
Claim 30
Dependent Claim 31 words
The apparatus of claim 26 wherein said hash function unit comprises a normalizer that normalizes a text string for a password to a standard format to create a normalized text string.
Claim 31
Dependent Claim 13 words
The apparatus of claim 27 wherein said standard format has a predetermined length.
Claim 32
Dependent Claim 39 words
The apparatus of claim 27 wherein said text string has a length, and said normalizer comprises an appender that appends to said text string a character related to said length of said text string, creating a modified text string.
Claim 33
Dependent Claim 27 words
The apparatus of claim 29 wherein said appender selectively adds a character to said modified text string, creating a twice modified text string having an odd length.
Claim 34
Dependent Claim 50 words
The apparatus of claim 30 wherein said normalizer further comprises a repeater that appends said twice modified text string to itself to create a thrice modified text string which exceeds a given length, and then truncates said thrice modified text string to said given length, creating said normalized text string.
Claim 35
Dependent Claim 62 words
The apparatus of claim 27 or 31 wherein said hash function unit further comprises a divider that divides said normalized text string into pieces, an encrypter that encrypts a predetermined input to an encrypted output using one or more of said pieces as an encryption key, and an addresser that forms addresses of bits in said hash table using said encrypted output.
Claim 36
Dependent Claim 70 words
The apparatus of claim 32 wherein said hash table has a length, said encrypter encrypts N said pieces to create N encrypted outputs, and said addresser splits said N encrypted outputs to generate final outputs, and computes one or more bit addresses in said hash table from one or more of said final outputs by computing a modulo quotient of a final output with said length of said hash table.
Claim 37
Dependent Claim 102 words
The apparatus of claim 32 further comprising a modifier that applies said mapper to said proposed password and sets all said indicators assigned by said mapper to said proposed password, said modifier being invoked if said verifier determines that said proposed password is acceptable, such that said proposed password will not be acceptable if subsequently proposed, and wherein said encrypter encrypts in accordance with a cryptographic technique secure against known plain-text attack, whereby an attacker who monitors changes to said hash table and thereby learns that one or more indicators are assigned to a password, cannot determine said password from said indicators.
Claim 38
Dependent Claim 14 words
The apparatus of claim 34 wherein said cryptographic technique is the Data Encryption Standard.
Claim 39
Dependent Claim 248 words
Apparatus for verifying acceptability of a proposed password from a user of a secure system, comprising a stored table of indicators, a mapper that assigns one or more of said indicators to one or more passwords such that one of said indicators may be assigned to more than one of said passwords, an initializer that applies said mapper to one or more unacceptable passwords, and sets all said indicators assigned by said mapper to said unacceptable passwords, a verifier that applies said mapper to said proposed password and checks whether any one of said indicators assigned by said mapper to said proposed password is not set, and, if any one of said indicators assigned by said mapper to said proposed password is not set, determines without error that said proposed password is not one of said unacceptable passwords and therefore is acceptable, a privilege assigner that assigns privileges in said secure system to said proposed password, said privilege assigner being invoked if said verifier determines that said proposed password is acceptable, and a modifier that operates with respect to a password by applying said mapper to said password and setting all said indicators assigned by said mapper to said password, such that said password will not be acceptable if subsequently proposed, said modifier capable of being invoked with respect to further unacceptable passwords from a user, and also capable of being invoked with respect to said proposed password if said verifier determines that said proposed password is acceptable.
Claim 40
Dependent Claim 248 words
Apparatus for verifying acceptability of a proposed password from a user of a secure system, comprising a stored table of indicators, a mapper that assigns one or more of said indicators to one or more passwords such that one of said indicators may be assigned to more than one of said passwords, an initializer that applies said mapper to one or more unacceptable passwords, and sets all said indicators assigned by said mapper to said unacceptable passwords, a verifier that applies said mapper to said proposed password and checks whether any one of said indicators assigned by said mapper to said proposed password is not set, and, if any one of said indicators assigned by said mapper to said proposed password is not set, determines without error that said proposed password is not one of said unacceptable passwords and therefore is acceptable, a privilege assigner that assigns privileges in said secure system to said proposed password, said privilege assigner being invoked if said verifier determines that said proposed password is acceptable, and a modifier that operates with respect to a password by applying said mapper to said password and setting all said indicators assigned by said mapper to said password, such that said password will not be acceptable if subsequently proposed, said modifier capable of being invoked with respect to further unacceptable passwords from a user, and also capable of being invoked with respect to said proposed password if said verifier determines that said proposed password is acceptable.
Claim 41
Dependent Claim 330 words
Apparatus for verifying acceptability of a proposed password from a user of a secure system, comprising a stored hash table of bits, a hash function unit that assigns said bits in said hash table to passwords, such that one of said bits may be assigned to more than one of said passwords, comprising a normalizer that normalizes a text string for a password to create a normalized text string having a predetermined length, a divider that divides said normalized text string into pieces, an encrypter that encrypts a predetermined input to an encrypted output using one or more of said pieces as an encryption key, and an addresser that forms addresses of said bits in said hash table using said encrypted output, an initializer that applies said hash function unit to one or more acceptable passwords, and sets all said bits assigned by said mapper to said unacceptable passwords, a verifier that applies said hash function unit to said proposed password and checks whether any one of said bits assigned by said hash function unit to said proposed password is set, and, if one of said bits assigned by said hash function unit to said proposed password is not set, determines without error that said proposed password is not one said unacceptable passwords and therefore is acceptable and may be assigned privileges in said secure system, a privilege assigner that assigns privileges in said secure system to said proposed password, said privilege assigner being invoked if said verifier determines that said proposed password is acceptable, and a modifier that applies said hash function unit to said proposed password and sets all said bits assigned by said hash function unit to said password, such that said password will not be acceptable if subsequently proposed, said modifier capable of being invoked with respect to further unacceptable passwords from a user, and also capable of being invoked with respect to said proposed password if said verifier determines that said proposed password is acceptable.
Claim 42
Dependent Claim 330 words
Apparatus for verifying acceptability of a proposed password from a user of a secure system, comprising a stored hash table of bits, a hash function unit that assigns said bits in said hash table to passwords, such that one of said bits may be assigned to more than one of said passwords, comprising a normalizer that normalizes a text string for a password to create a normalized text string having a predetermined length, a divider that divides said normalized text string into pieces, an encrypter that encrypts a predetermined input to an encrypted output using one or more of said pieces as an encryption key, and an addresser that forms addresses of said bits in said hash table using said encrypted output, an initializer that applies said hash function unit to one or more acceptable passwords, and sets all said bits assigned by said mapper to said unacceptable passwords, a verifier that applies said hash function unit to said proposed password and checks whether any one of said bits assigned by said hash function unit to said proposed password is set, and, if one of said bits assigned by said hash function unit to said proposed password is not set, determines without error that said proposed password is not one said unacceptable passwords and therefore is acceptable and may be assigned privileges in said secure system, a privilege assigner that assigns privileges in said secure system to said proposed password, said privilege assigner being invoked if said verifier determines that said proposed password is acceptable, and a modifier that applies said hash function unit to said proposed password and sets all said bits assigned by said hash function unit to said password, such that said password will not be acceptable if subsequently proposed, said modifier capable of being invoked with respect to further unacceptable passwords from a user, and also capable of being invoked with respect to said proposed password if said verifier determines that said proposed password is acceptable.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1996-04-19 1996-10-19 1997-04-20 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2000-04-19 2000-10-19 2001-04-20 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2004-04-19 2004-10-19 2005-04-20 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag