WO1998047258A2 - Bilateral authentication and encryption system - Google Patents
Bilateral authentication and encryption system Download PDFInfo
- Publication number
- WO1998047258A2 WO1998047258A2 PCT/US1998/004408 US9804408W WO9847258A2 WO 1998047258 A2 WO1998047258 A2 WO 1998047258A2 US 9804408 W US9804408 W US 9804408W WO 9847258 A2 WO9847258 A2 WO 9847258A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- originating
- answering
- password
- secret
- answering system
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/34—Encoding or coding, e.g. Huffman coding or error correction
Definitions
- the originating station When sensitive information is to be exchanged between transceiving stations, the originating station will be concerned that the information can be intercepted by an intentional act of an unauthorized party as the information travels over a communication medium between the stations, or that the message may inadvertently be received by an unauthorized receiving station.
- the second station will be concerned whether the requesting party is authorized to access the files, and if authorized whether the information may be copied by a third party during transmission between stations.
- the most widely accepted method of information protection over networks is the use of encryption, where the sending and receiving parties must share an encryption key to encrypt and decrypt the information being exchanged.
- authentication is typically performed through cleartext exchanges, and the encryption keys that are used are changed infrequently as person-to-person exchanges are the only means to ensure that the encryption key can be shared without risking public exposure.
- valuable information and time are made available to an attacker who desires to discover the encryption key and gain access to all encrypted information which is exchanged over the networks.
- U.S. Patent No. 5,060,263 employs a reversible encryption algorithm, conducts all exchanges between the host and client in cleartext, and provides only unilateral authentication.
- U.S. Patent No. 5, 065,429 provides only unilateral authentication, and stores its encryption keys on the storage medium where they would be accessible to any attacker reading the medium.
- U.S. Patent No. 5,068,894 employs a reversible encryption algorithm which is never changed, and makes both cleartext challenges and encrypted responses available to an attacker.
- U.S. Patent No. 5,153,919 provides useful cleartext information for an attacker in exchanges between stations, uses weak encryption algorithms to avoid latency problems, and does not provide for secure activation of the token as anyone who possesses it may use it.
- U.S. Patent No. 5,355,413 encrypts a random challenge, but does not encrypt information exchanged between host and client.
- U.S. Patent No. 5,361 ,062 exchanges information between host and client in cleartext, uses a reversible encryption algorithm, provides only unilateral authentication, triggers encryption iterations as a function of time which contributes to computer overhead and system latency, and requires a ⁇ synchronization protocol to keep token and host in sync.
- U.S. Patent No. 5,495,533 provides only unilateral authentication, incurs a high network overhead contributing to latency, and depends upon a key directory which is susceptible to attacker intrusions.
- U.S. Patent Nos. 5,233,655; 5,367,572; 5,421,006; and 5,481,611 Additional prior authentication systems are disclosed in U.S. Patent Nos. 5,233,655; 5,367,572; 5,421,006; and 5,481,611.
- U.S. Patent No. 5,233,655 provides only unilateral authentication, and does not provide any encryption of information that is being exchanged.
- U.S. Patent No. 5,367,572 provides only unilateral authentication, requires a resynchronization protocol to keep the host and client in sync, and transmits all information exchanges in cleartext.
- U.S. Patent No. 5,421,006 provides only unilateral authentication, and operates in a windowed environment which contributes substantially to CPU overhead and thus system latency.
- U.S. Patent No. 5,481 ,61 1 provides only unilateral authentication, and conducts all information exchanges in cleartext.
- U.S. Patent No. 5,309,516 requires that a key directory be stored.
- the present invention provides a combination of authentication and encryption in which parameters including system passwords, encryption keys, and change values that are used to alter a dynamic secret to produce new, pseudo-random system passwords and encryption keys, are used during only a single system connection before being replaced with new parameters having no known relationship with their previous counterparts, and both the originating system and the answering system in a network exchange independently generated passwords through use of an encryption key generator which employs bit-shuffling, many-to-few bit-mapping and secure hash processing to produce such parameters in a manner which is highly resistant to any attempt to discover the secret inputs to the encryption key generator through cryptographic analysis or brute force trial-and-error attacks.
- the handshake protocol between the originating system and the answering system requires that only system identifiers be exchanged over a network in cleartext, and protects the encryption key generator, the system passwords, the encryption key, and the change value from public exposure.
- system IDs may be altered upon the completion of a system connection, or by request of one system to the other, to provide a further protection against playback impersonation by a would-be attacker.
- one or more secrets are known by, but not exchanged between, the originating and answering systems.
- One secret is a static or constant secret
- the other is a dynamic secret in that it is independently changed by the originating and answering systems each time a system connection is completed or a new message digest is requested by one system to the other.
- the two systems independently combine the static and dynamic secrets in accordance with a bit-shuffling algorithm employing a many- to-few bit-mapping, and the result is subjected to a secure hash process which also employs a inany-to-fcw bit-mapping to produce a message digest.
- a one-time password for the originating system, a one-time password for the answering system, a secret session encryption key, and a change value for updating the dynamic secret are derived as bit length sectors from the message digest. Neither the secret session encryption key nor the change value is disclosed outside of a system in any form.
- the encryption key is used to encrypt the information to be transmitted.
- the one-time passwords are used to authenticate both the originating and the answering systems, and the change value is used to change the dynamic secret each time that a system connection is completed.
- the dynamic secret which is used as an input to the bit- shuffling operation is updated each time that the authentication cycles for a system connection between the originating and answering systems occur, and a new pseudo-random message digest thereafter is generated for a new system connection.
- the authentication of originating and answering systems after each system connection ensures the updating of passwords and encryption keys, and the synchronization of the independent processes for generating the message digests from which the passwords and encryption keys are derived.
- the binary length of the dynamic secret may be different than that of the static secret.
- the secret session encryption key is a deterministic, non-predictable, pseudo-random, symmetric encryption key which is changed after each system connection or upon the request of one system to the other.
- both the dynamic secret and the system IDs may be altered by a message digest component after all authentication cycles for a system connection are completed, or upon request of one system to the other, to provide added protection against playback impersonation by would-be attackers.
- Figure 1 is a functional block diagram of two computer systems communicating by way of a communications medium
- Figure 2 is a graphic illustration of a logic process for generating message digests, and hence a symmetric, deterministic but non-predictable encryption key
- Figures 3a and 3b are a logic flow diagram of the application software used by an originating computer system in accordance with the invention.
- FIGS. 4a and 4b are a logic flow diagram of the application software used by an answering computer system in accordance with the invention. DESCRIPTION OF PREFERRED EMBODIMENTS
- Random means a result which is non-predictable and non-repeating.
- Pseudo-random means a result which is deterministic, but which appears to be random to an observer who has no access to or knowledge of the secrets producing the result.
- Connection means the establishment of a communication link between an originating system and an answering system which lasts for the duration of one or more sessions.
- Session means one or more exchanges of information between an originating system and an answering system to accomplish a task. There can be several sessions during a system connection. In accordance with the invention, keys and passwords are automatically changed after each system connection. Optionally, the key and/or passwords can be changed after each session.
- a first computer system 10 which communicates to a second computer system 1 1 by way of a communication link 12.
- the communication link may be a LAN (Local Area Network), WAN (Wide Area Network), VAN ( Value Added Network), TELCO (Telephone Company switching network), the Internet, a local intranet, or an air link such as a cellular phone connection or other radio frequency transceiver interface.
- the computer system 10 includes a central processing unit (CPU) 1 with I/O interfaces 1 b leading to a keyboard processor 2 with a key matrix interface array 3.
- the CPU 1 further includes a processor la, a ROM lc, and a RAM Id.
- the computer system 10 in addition is comprised of a display device 4, a floppy disk drive 5a, a hard disk drive 5b, and a communication adapter 6, each of which is in electrical communication with I/O interfaces 1 b.
- the communication adapter 6 in addition is in electrical communication with link 12.
- the computer system 11 includes a CPU 13 that is comprised of a processor 13a, I/O interfaces 13b, a RAM 13c, and a ROM 13d.
- the I/O interfaces 13b are in electrical communication with a display device 14, a keyboard processor 15 having a key matrix interface array 16, a floppy disk drive 17a, a hard disk drive 17b, and a communication adapter 18 that is in electrical communication with link 12.
- Processor 1 a is used to execute the software algorithms and logic flows to perform the operation of the security system program.
- ROM lc is necessary to get computer system 10 booted and operating (contains the code necessary to access the boot-sector).
- Key array 3 and display device 4 are used to support inter-operation between the computer and user.
- RAM Id is used as a scratch pad, stack, or temporary storage of the values which are used by the program or operated on by the program.
- Hard disk drive 5b is non-volatile memory for storing system IDs, shared secrets, and the executable code for this program.
- Floppy disk drive 5a can be used as removable non-volatile memory for storing system IDs and shared secrets.
- system IDs, a static secret and a dynamic secret are stored on hard disk 5b of computer system 10, and are moved to RAM 1 d by processor la when the originating and answering stations are being authenticated. Further, system passwords and the secret session encryption key are stored in the RAM Id upon being generated during an authentication process. After each authentication and encryption information exchange, the RAM Id is either overwritten by data generated during a next occurring session, or erased at the end of the current system connection; and the new dynamic secret is written to the hard disk drive 5b.
- system IDs, the static secret, and the dynamic secret are stored on hard disk drive 17b, and are moved to RAM 13c by processor 13a when the originating and answering stations are being authenticated. Further, system passwords and the secret session encryption key are stored in RAM 13c upon being generated during an authentication process. After each authentication and encryption exchange, the RAM 13c is either overwritten by data generated during a next occurring session, or erased and a new dynamic secret is written into the hard disk drive 17b.
- the secure hash algorithm and bit-shuffling algorithms used in the generation of a message digest are stored on hard disk drive 5b and hard disk drive 17b.
- Information to be exchanged between computer system 10 and computer system 1 1 is transferred over communication link 12 between communication adapters 6 and 18 under the control of processors la and 13a, respectively.
- both computer system 10 and computer system 1 1 have a unique plural bit identifier, stored on their respective hard disk drives, which may be exchanged by the computer systems in cleartext.
- the identifiers may be comprised of numerics and/or text.
- the static secret is known by each system, but is not exchanged over the communication link. The static secret never changes unless the current value is purposely overwritten with a new value.
- a dynamic secret also is shared by the two computer systems, and held in confidence, and never transmitted over the communication link 12.
- the secret is dynamic in the sense that each time a bilateral authentication of the computer systems occurs, the dynamic secret is changed.
- the change value that is used is a pseudo-random number.
- the dynamic secret makes the cryptographic result of the encryption key generator unpredictable without knowledge of both the static secret and the dynamic secret.
- the change value is not made part of any access request or information that is exchanged between the computer systems. Thus, the change value is not subject to discovery as a result of information communicated over the communication link 12.
- FIG. 2 a graphic illustration of the ensuing computer process is presented with a plural bit static secret 20, and a plural bit dynamic secret 21, which are applied as inputs to a bit- shuffling generator 22.
- the bit-shuffling generator employs a many-to-few bit-mapping to shuffle the bits of the static and dynamic secrets. That is, the bits of the static secret and the dynamic secret are mixed to form a first pseudo-random result.
- the bit-shuffling algorithm continues to shuffle bits by wrapping the smaller of the inputs with the larger of the inputs until all bits of the larger input have been processed.
- the output of the generator 22 is a pseudo-random result which is applied as an input to a secure one-way hash generator 23 to produce a message digest 24.
- the hash function which is used by the generator 23 is the Secure Hash Algorithm (SHA) as defined in FIPS PUB 180-l(April 17, 1995).
- the message digest 24 is divided into four sectors.
- the first sector is an originating system password 25 which is used only one time
- the second sector is an answering system password 26 which also is used only one time
- the third sector is a secret session encryption key 27, and the fourth sector is a change value 28.
- the contents of each of the sectors comprising the message digest are pseudo-random numbers, which each of the computer systems 10 and 11 have produced independently without need for synchronization.
- computer system 10 has its own one-time password 25 and knows the one-time password 26 for the computer system 1 1.
- each has the secret session encryption key 27 without any exchanges other than system IDs over a communication media.
- the communication handshake protocol which is exercised by computer system 10 is illustrated in the form of a logic flow diagram.
- the computer system 10 cycles through the logic flow diagram beginning with logic step 100.
- the originating system retrieves the system IDs and secrets from a shared secrets table kept on the hard disk drive 5b.
- flow continues to logic step 102 and an access request is sent with the originating system ID, and the IDs and shared secrets are written to RAM Id.
- the static secret and dynamic secrets are retrieved from the hard disk drive 5b of the computer system 10 by using the targeted answering computer system ID as a tag.
- logic flow process proceeds to logic step 104 to await receipt of the computer system 1 1 ID. If the computer system 11 ID is not received within a predetermined time period, the logic flow process branches to logic step 105 where an "I/O Time Out" error message is generated. From logic step 105 the logic flow process continues to logic step 106 where a failed attempt record is updated, and then proceeds to logic step 107 where the error message is reported to the application program and the user. If the computer system 1 1 ID is received before a time-out occurs at logic step 104, the table look-up ID for computer system 11 is compared at logic step 108 with the ID which has been received from the computer system 11. If a match does not occur, the logic flow process branches to logic step 109 where the error message "System Not Recognized" is generated. Thereafter, the logic flow process continues to logic step 106 as before described.
- logic flow process proceeds to logic tep 1 10 where the computer system 10 issues an acknowledgment of the answering system ID to the computer system 1 1.
- the static secret and dynamic secret are combined at logic step 1 1 1 by using a mathematical or logic function employing a many-to-few bit-mapping.
- the bit- shuffling algorithm continues to shuffle bits by wrapping the smaller of the inputs with the larger of the inputs until all bits of the larger input have been processed.
- the bit-shuffling algorithm may be any mathematical or logic function which will perform a bit-shuffle and/or a many-to- few bit-mapping on the two inputs.
- the pseudo-random result then is subjected to a secure one- way hash operation.
- the secure hash operation also employs a many-to-few bit-mapping to provide message digest 24, from which an originating system password 25, an answering system password 26, a secret session encryption key 27, and a change value 28 are extracted.
- logic flow process continues to logic step 1 12, where the answer system ID, the originating system password 25, the answering system password 26, the secret session encryption key 27, and the change value 28 are written to RAM Id of the computer system 10.
- the logic flow process then proceeds to logic step 1 13 where the secret session encryption key 27 is loaded into a user supplied encryption engine such as DES for encrypting all exchanges that occur thereafter between the computer system 10 and the computer system 1 1.
- logic step 113 the logic flow process continues to logic step 1 14 where the encrypted answering system password from computer system 1 1 is awaited. If the encrypted password is not received within a predetermined time period, an "I/O Timed Out" error message is generated at logic step 1 15 and the logic flow process then proceeds to logic step 106 as before described. If the encrypted password is received before a time-out occurs, however, the logic flow process continues from logic step 114 to logic step 116 where computer system 1 1 's encrypted password is decrypted through use of the secret session encryption key 27 and continues to logic step 118.
- the logic flow process If the computer system 11 password as decrypted does not match the answering system password 26 which was generated at logic step 111, the logic flow process generates a "Password Failed" error message at logic step 119 and then continues to logic step 106 as before described. If a match occurs at logic step 118, however, the logic flow process continues from logic step 118 to logic step 120, where the originating system password 25 is encrypted by using the secret session encryption key 27 and transmitted over the communication I ink 12 to computer system 1 1. The logic flow process then proceeds to logic step 121 to await an answer from computer system 11 which indicates that the computer system access request has been granted.
- the logic flow process branches from logic step 121 to logic step 122 to generate a "I/O Time Out" error message and then continues to logic step 106 as before described. If an access granted response is received from computer system 1 1 before an I/O Time Out, however, the logic flow process continues from logic step 121 to logic step 123 where the dynamic secret 21 is altered by the change value 28 and a prime constant. It is to be understood that the system IDs also may be altered by the change value 28 and the prime constant, or by another component of the message digest, to provide an additional layer of protection against playback impersonations.
- the logic flow process writes the updated dynamic secret into the non-volatile memory of hard disk drive 5b at logic step 124. Thereafter, the logic flow process continues to logic step 125 to use the current secret session encryption key to perform encrypted information exchanges with computer system 11 during the current session. Thereafter, a determination is made at logic step 126 whether the current system connection has been completed.
- the logic flow process determines at logic step 127 whether a new secret session encryption key should be generated. If so, the logic flow process proceeds from logic step 127 to logic step 128, where the computer system 1 1 is notified that a secret session encryption key change is indicated. The logic flow process thereafter returns to the input of logic step 1 1 1 to continue as before described. If a determination is made at logic step 127 to not change the secret session encryption key, then the logic process proceeds to the input of logic step 125 to continue as before described.
- a secret session encryption key may be generated upon request, as well as automatically after a bilateral authentication occurs.
- logic flow process proceeds to logic step 129 to exit the program.
- the answering system (computer system 1 1 ) independently executes the logic flow process illustrated in Figures 4a and 4b. More particularly, the logic flow process enters at logic step 200. Upon receipt of an access request and system identifier from computer system 10 at logic step 201, the logic flow process continues to logic step 202 to execute a search of an access table stored on the hard disk drive 17b to find the originating system ID and access the corresponding static and dynamic secrets. The originating system identifier supplied by the computer system 10 then is compared to the table look-up system identifiers at logic step 203. If no match occurs, the logic flow process branches to logic step 204 to generate a "System Not Recognized" error message. The logic flow process thereafter proceeds to logic step 205 of Figure 4b to record the error message on the hard disk drive 17b, and thereafter report the error message to the application program and the user at logic step 206.
- the logic flow process continues to logic step 207 where the system identifier of the answering system is transmitted to the originating system.
- the logic flow process then proceeds to logic step 208 to await a response from the originating system indicating that the answering system identifier is acknowledged. If a response is not received from the originating system within a predetermined time period, a timeout occurs and the logic flow process branches to logic step 209 to generate the error message "I/O Timed Out". From logic step 209, the logic flow process proceeds to logic step 205 of Figure 4b where the process continues as before described.
- the logic flow process continues from logic step 208 to logic step 210 of Figure 4b, where the processor 13a uses the system identifier of the originating system 10 as a tag to find and acquire static and dynamic secrets stored in RAM 13c.
- the static and dynamic secrets thereafter are applied as inputs to a bit-shuffling algorithm which is a software program -stored on hard disk drive 17b.
- the bit-shuffling algorithm continues to shuffle bits by wrapping the smaller of the inputs with the larger of the inputs until all bits of the larger input have been processed.
- the bit-shuffling algorithm may be any mathematical or logic function which will perform a bit-shuffle operation and/or many-to-few bit-mapping on the two inputs.
- the result of the bit-shuffling operation then is subjected to a secure one-way hash operation, which performs a second many-to-few bit-mapping to produce a message digest.
- the originating system password 25, the answering system password 26, the secret session encryption key 27 and the change value 28 then are extracted from the message digest at logic step 211 and written to an area of RAM 13c.
- the originating and answering systems have thus generated the same passwords, secret session encryption key, and change value without exchanging more than an access request and their respective system identifiers in cleartext.
- the logic flow process proceeds from logic step 212 to logic step 213, where the answering system password 26 is encrypted by using the encryption key 27 and transmitted to the originating system 10. Thereafter, the logic flow process at logic step 214 awaits the receipt of the encrypted originating system password 25 from computer system 10. If the encrypted password is not received before the expiration of a predetermined time period, the logic flow process branches from logic step 214 to logic step 215 to generate the error message "I/O Timed Out". Thereafter, the logic flow process proceeds to logic step 205, where the logic process continues as before described. 1 f an encrypted password is received from computer system 10 at logic step 214 before a time-out occurs, the logic flow process continues to logic step 216 where the secret session encryption key 27 is used to decrypt the password received from the originating system 10.
- the password received from the originating system is compared at logic step 217 with the originating system password 25 generated at logic step 210. If no match occurs at logic step 217, the logic flow process branches from logic step 217 to logic step 218 where the error message "Password Failed" is generated. The logic flow process then proceeds to logic step 205 where the logic process continues as before described.
- logic step 217 If a match occurs at logic step 217, however, the logic flow process proceeds to logic step 219 to transmit an access granted signal to the originating system. Thereafter, the dynamic secret stored in RAM 13c is altered by the change value 28 and a prime constant at logic step 220. From logic step 220 the logic process continues to logic step 221 , where the updated dynamic secret is written into the non-volatile memory of hard disk drive 17b. From logic step 221 the logic flow process continues to logic step 222, where the secret session encryption key is used to encrypt information exchanged with the computer system 10 during the current session. Thereafter, a determination is made at logic step 223 whether the current system connection is complete. If not, the logic flow process determines at logic step 224 whether a new secret session encryption key should be generated.
- logic flow process returns to the input of logic step 222 to continue as before described. If the secret session encryption key is to be changed, however, the logic flow process proceeds from logic step 224 to logic step 225 to notify computer system 10 that a new secret session encryption key is indicated. Thereafter, the logic flow process returns to logic step 210 to continue as before described.
- the inputs to the secure hash algorithm are bit-shuffled and subjected to a first many-to-few bit-mapping prior to the secure hash generation, and subjected to a second many-to-few bit-mapping during the secure hash operation.
- any likelihood of the static secret or the current dynamic secret being discovered through either cryptographic analysis or brute force attack is made substantially remote to impossible.
- Further security enhancements by way of a second bilateral authentication occur in the exchange of encrypted passwords before encrypted information is exchanged.
- system IDs also may be altered after each system connection to provide added protection against playback impersonation by would-be attackers.
- the change value resulting from the generation of a message digest may be used to alter not only the dynamic secret, but also the system IDs.
- the pseudo-random input to the secure hash generator could be used instead of using a component of the message digest as a change value.
- the message digest could be split into more than four components, or less than four components with the pseudo-random input to the secure hash generator being used to provide those components not supplied by the message digest.
- the originating system and the answering system could use different components of the message digest as the encryption key, and thus operate in a full duplex mode requiring twice the effort to penetrate both sides of an information exchange.
- multiple passes of the logic flow illustrated in Figure 2 could be made to generate a message digest with encryption key components of ever increasing bit lengths.
- separate components of the pseudo-random input to the secure hash generator could be used to alter the static and dynamic secrets, thus making both secrets dynamic, while a message digest component could be used to alter system IDs.
- two bit shuffles could be used in the logic flow of Figure 2, with a component of the pseudo-random output of the first bit shuffle being used to alter the static secret (now second dynamic secret), a component of the pseudo-random output of the second bit shuffle being used to alter the dynamic secret, and a component of the message digest being used to alter system IDs.
Abstract
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA002294170A CA2294170A1 (en) | 1997-03-10 | 1998-03-09 | Bilateral authentication and encryption system |
EP98939048A EP0966813A2 (en) | 1997-03-10 | 1998-03-09 | Bilateral authentication and encryption system |
JP54388498A JP2002508892A (en) | 1997-03-10 | 1998-03-09 | Two-way authentication and encryption system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US81345797A | 1997-03-10 | 1997-03-10 | |
US08/813,457 | 1997-03-10 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO1998047258A2 true WO1998047258A2 (en) | 1998-10-22 |
WO1998047258A3 WO1998047258A3 (en) | 1999-01-21 |
Family
ID=25212423
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US1998/004408 WO1998047258A2 (en) | 1997-03-10 | 1998-03-09 | Bilateral authentication and encryption system |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP0966813A2 (en) |
JP (1) | JP2002508892A (en) |
CA (1) | CA2294170A1 (en) |
WO (1) | WO1998047258A2 (en) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1026852A2 (en) * | 1999-02-02 | 2000-08-09 | TRW Inc. | Show-thru prevention and user authentication of uplink bursts without overhead |
WO2001031840A1 (en) * | 1999-10-29 | 2001-05-03 | Nokia Corporation | Method and arrangement for reliably identifying a user in a computer system |
US6735310B1 (en) | 1999-09-17 | 2004-05-11 | International Business Machines Corporation | Technique of password encryption and decryption for user authentication in a federated content management system |
US7162452B1 (en) | 1999-03-25 | 2007-01-09 | Epstein Michael A | Key distribution via a memory device |
FR2902253A1 (en) * | 2006-06-13 | 2007-12-14 | Ingenico Sa | User authenticating method for payment terminal, involves calculating value of hashing function by client device for user authentication by server, and calculating another value of function by device for verification of user authentication |
US20080147562A1 (en) * | 2006-12-15 | 2008-06-19 | Gene Allen | Computer-Facilitated Secure Account-Transaction |
WO2010111448A1 (en) * | 2009-03-25 | 2010-09-30 | Pacid Technologies, Llc | Method and system for securing communication |
US8077861B2 (en) | 2004-08-12 | 2011-12-13 | Cmla, Llc | Permutation data transform to enhance security |
US8155310B2 (en) | 2004-08-12 | 2012-04-10 | Cmla, Llc | Key derivation functions to enhance security |
EP2536062A1 (en) * | 2006-12-22 | 2012-12-19 | ISIS Innovation Limited | Improvements in communication security |
US8479021B2 (en) | 2011-09-29 | 2013-07-02 | Pacid Technologies, Llc | Secure island computing system and method |
US8539241B2 (en) | 2009-03-25 | 2013-09-17 | Pacid Technologies, Llc | Method and system for securing communication |
US8726032B2 (en) | 2009-03-25 | 2014-05-13 | Pacid Technologies, Llc | System and method for protecting secrets file |
US8934625B2 (en) | 2009-03-25 | 2015-01-13 | Pacid Technologies, Llc | Method and system for securing communication |
US8959350B2 (en) | 2009-03-25 | 2015-02-17 | Pacid Technologies, Llc | Token for securing communication |
US11328297B1 (en) * | 2008-06-30 | 2022-05-10 | Amazon Technologies, Inc. | Conducting transactions with dynamic passwords |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1606899A4 (en) * | 2003-03-14 | 2011-11-02 | Thomson Licensing | Wlan session management techniques with secure rekeying and logoff |
NZ592242A (en) * | 2004-08-12 | 2012-03-30 | Cmla Llc | Permutation data transform to enhance security |
CN101631017B (en) * | 2008-07-14 | 2012-11-28 | 索尼株式会社 | Information processing device, and information processing system |
JP4666240B2 (en) | 2008-07-14 | 2011-04-06 | ソニー株式会社 | Information processing apparatus, information processing method, program, and information processing system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5434918A (en) * | 1993-12-14 | 1995-07-18 | Hughes Aircraft Company | Method for providing mutual authentication of a user and a server on a network |
US5544245A (en) * | 1993-06-10 | 1996-08-06 | Kokusai Denshin Denwa Kabushiki Kaisha | Mutual authentication/cipher key delivery system |
US5661807A (en) * | 1993-07-30 | 1997-08-26 | International Business Machines Corporation | Authentication system using one-time passwords |
US5666415A (en) * | 1995-07-28 | 1997-09-09 | Digital Equipment Corporation | Method and apparatus for cryptographic authentication |
US5708710A (en) * | 1995-06-23 | 1998-01-13 | Motorola, Inc. | Method and apparatus for authentication in a communication system |
-
1998
- 1998-03-09 EP EP98939048A patent/EP0966813A2/en not_active Withdrawn
- 1998-03-09 WO PCT/US1998/004408 patent/WO1998047258A2/en not_active Application Discontinuation
- 1998-03-09 JP JP54388498A patent/JP2002508892A/en active Pending
- 1998-03-09 CA CA002294170A patent/CA2294170A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5544245A (en) * | 1993-06-10 | 1996-08-06 | Kokusai Denshin Denwa Kabushiki Kaisha | Mutual authentication/cipher key delivery system |
US5661807A (en) * | 1993-07-30 | 1997-08-26 | International Business Machines Corporation | Authentication system using one-time passwords |
US5434918A (en) * | 1993-12-14 | 1995-07-18 | Hughes Aircraft Company | Method for providing mutual authentication of a user and a server on a network |
US5708710A (en) * | 1995-06-23 | 1998-01-13 | Motorola, Inc. | Method and apparatus for authentication in a communication system |
US5666415A (en) * | 1995-07-28 | 1997-09-09 | Digital Equipment Corporation | Method and apparatus for cryptographic authentication |
Cited By (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1026852A3 (en) * | 1999-02-02 | 2002-08-07 | TRW Inc. | Show-thru prevention and user authentication of uplink bursts without overhead |
EP1026852A2 (en) * | 1999-02-02 | 2000-08-09 | TRW Inc. | Show-thru prevention and user authentication of uplink bursts without overhead |
US7162452B1 (en) | 1999-03-25 | 2007-01-09 | Epstein Michael A | Key distribution via a memory device |
US6735310B1 (en) | 1999-09-17 | 2004-05-11 | International Business Machines Corporation | Technique of password encryption and decryption for user authentication in a federated content management system |
WO2001031840A1 (en) * | 1999-10-29 | 2001-05-03 | Nokia Corporation | Method and arrangement for reliably identifying a user in a computer system |
US6928558B1 (en) | 1999-10-29 | 2005-08-09 | Nokia Mobile Phones Ltd. | Method and arrangement for reliably identifying a user in a computer system |
US8737608B2 (en) | 2004-08-12 | 2014-05-27 | Cmla, Llc | Exponential data transform to enhance security |
US8077861B2 (en) | 2004-08-12 | 2011-12-13 | Cmla, Llc | Permutation data transform to enhance security |
US8155310B2 (en) | 2004-08-12 | 2012-04-10 | Cmla, Llc | Key derivation functions to enhance security |
US8850518B2 (en) | 2006-06-13 | 2014-09-30 | Ingenico | Method and device for user authentication |
FR2902253A1 (en) * | 2006-06-13 | 2007-12-14 | Ingenico Sa | User authenticating method for payment terminal, involves calculating value of hashing function by client device for user authentication by server, and calculating another value of function by device for verification of user authentication |
EP1868316A1 (en) * | 2006-06-13 | 2007-12-19 | Ingenico | Method and device for authenticating a user |
US20080147562A1 (en) * | 2006-12-15 | 2008-06-19 | Gene Allen | Computer-Facilitated Secure Account-Transaction |
US8719128B2 (en) * | 2006-12-15 | 2014-05-06 | Tcf Financial Corporation | Computer-facilitated secure account-transaction |
US9270450B2 (en) | 2006-12-22 | 2016-02-23 | Isis Innovation Limited | Method and device for mutual authentication |
EP2536062A1 (en) * | 2006-12-22 | 2012-12-19 | ISIS Innovation Limited | Improvements in communication security |
US11328297B1 (en) * | 2008-06-30 | 2022-05-10 | Amazon Technologies, Inc. | Conducting transactions with dynamic passwords |
US8782408B2 (en) | 2009-03-25 | 2014-07-15 | Pacid Technologies, Llc | Method and system for securing communication |
US9407610B2 (en) | 2009-03-25 | 2016-08-02 | Pacid Technologies, Llc | Method and system for securing communication |
US8539241B2 (en) | 2009-03-25 | 2013-09-17 | Pacid Technologies, Llc | Method and system for securing communication |
US8934625B2 (en) | 2009-03-25 | 2015-01-13 | Pacid Technologies, Llc | Method and system for securing communication |
US8959350B2 (en) | 2009-03-25 | 2015-02-17 | Pacid Technologies, Llc | Token for securing communication |
US9009484B2 (en) | 2009-03-25 | 2015-04-14 | Pacid Technologies, Llc | Method and system for securing communication |
US9165153B2 (en) | 2009-03-25 | 2015-10-20 | Pacid Technologies, Llc | System and method for protecting secrets file |
US9172533B2 (en) | 2009-03-25 | 2015-10-27 | Pacid Technologies, Llc | Method and system for securing communication |
WO2010111448A1 (en) * | 2009-03-25 | 2010-09-30 | Pacid Technologies, Llc | Method and system for securing communication |
US8726032B2 (en) | 2009-03-25 | 2014-05-13 | Pacid Technologies, Llc | System and method for protecting secrets file |
US11070530B2 (en) | 2009-03-25 | 2021-07-20 | Pacid Technologies, Llc | System and method for authenticating users |
US9876771B2 (en) | 2009-03-25 | 2018-01-23 | Pacid Technologies, Llc | System and method for authenticating users |
US9882883B2 (en) | 2009-03-25 | 2018-01-30 | Pacid Technologies, Llc | Method and system for securing communication |
US10044689B2 (en) | 2009-03-25 | 2018-08-07 | Pacid Technologies, Llc | System and method for authenticating users |
US10171433B2 (en) | 2009-03-25 | 2019-01-01 | Pacid Technologies, Llc | System and method for authenticating users |
US10484344B2 (en) | 2009-03-25 | 2019-11-19 | Pacid Technologies, Llc | System and method for authenticating users |
US10320765B2 (en) | 2009-03-25 | 2019-06-11 | Pacid Technologies, Llc | Method and system for securing communication |
US10275364B2 (en) | 2011-09-29 | 2019-04-30 | Pacid Technologies, Llc | Secure island computing system and method |
US9443110B2 (en) | 2011-09-29 | 2016-09-13 | Pacid Technologies, Llc | Secure island computing system and method |
US8479021B2 (en) | 2011-09-29 | 2013-07-02 | Pacid Technologies, Llc | Secure island computing system and method |
Also Published As
Publication number | Publication date |
---|---|
CA2294170A1 (en) | 1998-10-22 |
WO1998047258A3 (en) | 1999-01-21 |
JP2002508892A (en) | 2002-03-19 |
EP0966813A2 (en) | 1999-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6105133A (en) | Bilateral authentication and encryption system | |
US5995624A (en) | Bilateral authentication and information encryption token system and method | |
WO1998045975A9 (en) | Bilateral authentication and information encryption token system and method | |
US10554393B2 (en) | Universal secure messaging for cryptographic modules | |
US5953424A (en) | Cryptographic system and protocol for establishing secure authenticated remote access | |
US5638444A (en) | Secure computer communication method and system | |
WO1998047258A2 (en) | Bilateral authentication and encryption system | |
JP4240297B2 (en) | Terminal device, authentication terminal program, device authentication server, device authentication program | |
US7685421B2 (en) | System and method for initializing operation for an information security operation | |
US20060195402A1 (en) | Secure data transmission using undiscoverable or black data | |
JPH06266670A (en) | Ciphering virtual terminal initialization device | |
US20090138708A1 (en) | Cryptographic module distribution system, apparatus, and program | |
JP2007506392A (en) | Data communication security mechanisms and methods | |
WO2004002054A1 (en) | Secure data transfer in mobile terminals and methods therefor | |
JPH07325785A (en) | Network user identifying method, ciphering communication method, application client and server | |
EP1501238B1 (en) | Method and system for key distribution comprising a step of authentication and a step of key distribution using a KEK (key encryption key) | |
WO2005088892A1 (en) | A method of virtual challenge response authentication | |
MacKenzie et al. | Delegation of cryptographic servers for capture-resilient devices | |
CN114244508A (en) | Data encryption method, device, equipment and storage medium | |
JPH08335208A (en) | Method and system for proxy authorization | |
EP0168667B1 (en) | Secured message transfer system and method using updated session code | |
KR19990038925A (en) | Secure Two-Way Authentication Method in a Distributed Environment | |
JPH09294120A (en) | Access control method and system for ciphered shared data | |
Smid | Integrating the Data Encryption Standard into computer networks | |
JP3327368B2 (en) | User password authentication method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): CA JP |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
AK | Designated states |
Kind code of ref document: A3 Designated state(s): CA JP |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
ENP | Entry into the national phase in: |
Ref country code: CA Ref document number: 2294170 Kind code of ref document: A Format of ref document f/p: F Ref document number: 2294170 Country of ref document: CA |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1998939048 Country of ref document: EP |
|
NENP | Non-entry into the national phase in: |
Ref country code: CA |
|
WWP | Wipo information: published in national office |
Ref document number: 1998939048 Country of ref document: EP |
|
NENP | Non-entry into the national phase in: |
Ref country code: JP Ref document number: 1998543884 Format of ref document f/p: F |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 1998939048 Country of ref document: EP |