KR20020021404A - Peer-to-peer network user authentication protocol - Google Patents

Peer-to-peer network user authentication protocol Download PDF

Info

Publication number
KR20020021404A
KR20020021404A KR1020027001769A KR20027001769A KR20020021404A KR 20020021404 A KR20020021404 A KR 20020021404A KR 1020027001769 A KR1020027001769 A KR 1020027001769A KR 20027001769 A KR20027001769 A KR 20027001769A KR 20020021404 A KR20020021404 A KR 20020021404A
Authority
KR
South Korea
Prior art keywords
user
terminal
authentication
encrypted
message
Prior art date
Application number
KR1020027001769A
Other languages
Korean (ko)
Inventor
하베이 왈드맨
Original Assignee
윌리암 제이. 버크
사르노프 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 윌리암 제이. 버크, 사르노프 코포레이션 filed Critical 윌리암 제이. 버크
Priority claimed from PCT/US2000/021965 external-priority patent/WO2001013201A2/en
Publication of KR20020021404A publication Critical patent/KR20020021404A/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3226Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

복수의 사용자 단말들을 갖는 피어 투 피어 네트워크에서, 각 단말은 네트워크의 다른 단말들에 대한 사용자 인증 사이트로서 동작할 수 있고 방화벽의 공개측 및 방화벽의 보안측을 가지고 있다. 사용자 인증 데이타 베이스는 네트워크 제1 및 제2 단말의 보안측 메모리에 저장된다. 제1 단말은 사용자로부터 패스워드를 수신하고, 패스워드를 사용자에 대한 인증 암호화키로 번역한다. 제1 단말은 제1 난수를 발생시키고, 제1 난수를 인증 암호화키로 암호화하여 제1 암호화 메세지를 제공하고, 제1 암호화 메세지를 제2 단말에 전송하며, 제2 단말은 제1 단말에 대한 사용자 인증 사이트로서 동작한다. 사용자 인증 사이트는 암호화된 제1 메세지를 해독하여 제1 난수를 제공하고, 제2 난수를 발생시키며, 제2 난수는 제1 단말로 전송된다. 제1 단말은 제1 및 제2 난수들을 인증 암호화키로 조합 및 암호화하여 제2 암호화 메세지를 제공한다. 제1 단말은 제2 암호화 메세지를 사용자 인증 사이트로 전송하고, 사용자 인증 사이트는 암호화된 제2 메세지를 해독하여 조합된 제1 및 제2 난수를 발생시킨다. 사용자 인증 사이트는 제1 및 제2 난수가 정확한지 여부를 검증하고 이러한 검증에 따라 사용자를 인증한다.In a peer to peer network having a plurality of user terminals, each terminal can act as a user authentication site for other terminals in the network and has a public side of the firewall and a secure side of the firewall. The user authentication database is stored in the security side memory of the network first and second terminals. The first terminal receives the password from the user and translates the password into an authentication encryption key for the user. The first terminal generates a first random number, encrypts the first random number with an authentication encryption key, provides a first encrypted message, transmits the first encrypted message to the second terminal, and the second terminal is a user for the first terminal. Act as an authentication site. The user authentication site decrypts the encrypted first message to provide a first random number, generates a second random number, and the second random number is transmitted to the first terminal. The first terminal combines and encrypts the first and second random numbers with an authentication encryption key to provide a second encrypted message. The first terminal sends a second encrypted message to the user authentication site, and the user authentication site decrypts the encrypted second message to generate the combined first and second random numbers. The user authentication site verifies whether the first and second random numbers are correct and authenticates the user according to this verification.

Description

피어-투-피어 네트워크 사용자 인증 프로토콜{PEER-TO-PEER NETWORK USER AUTHENTICATION PROTOCOL}Peer-to-peer network user authentication protocol {PEER-TO-PEER NETWORK USER AUTHENTICATION PROTOCOL}

컴퓨터 네트워크들이 널리 사용되고 있다. 이들은 근거리 통신망(LAN), 원거리 통신망(WAN), 및 인터넷과 같은 사설 네트워크들을 포함한다. 네트워크는 전송 매체에 의해 상호 접속되는 다양한 노드들로 구성된다. 일부 노드들은 단말 및/또는 개인 컴퓨터(PC)일 수 있고, 이를 통해 사용자는 네트워크로의 접속을 획득한다. 다른 네트워크 노드들은 라우터, 서버, 등과 같은 기능적 유닛들이다. 광섬유 케이블, 통합 디지탈망(ISDN), 무선 링크, 등과 같은 다양한 통신 매체가 네트워크 노드들을 상호 접속하기 위해 사용된다. 네트워크화된 컴퓨터 시스템의 다양한 노드들이 다양한 통신 매체를 통해 접속된다.Computer networks are widely used. These include private networks such as local area network (LAN), wide area network (WAN), and the Internet. The network consists of various nodes interconnected by a transmission medium. Some nodes may be terminals and / or personal computers (PCs) through which a user gains access to the network. Other network nodes are functional units such as routers, servers, and the like. Various communication media, such as fiber optic cables, integrated digital networks (ISDN), wireless links, and the like, are used to interconnect network nodes. Various nodes of a networked computer system are connected through various communication media.

주어진 사설 네트워크는 일반적으로 특정 컴퓨터에 의해 유지 및 동작되고, 여기서 네트워크로의 접속은 인증된 사용자들로 제한된다. 인증된 사용자들로 접속을 제한하기 위해, 네트워크는 종종 네트워크로의 접속을 시도하는 사용자들을 인증화하여 사용자가 인증화된 사용자인지를 확인하도록 구현된다. 따라서, 인증과정은 인증된 사용자만이 네트워크로 접속할 수 있도록 디자인된다. 인증의 가장 간단한 형태는 특정 계정에 접속을 획득하기 위해 사용자 이름 또는 사용자 ID, 및 패스워드를 요구하는 것이다. 인증 프로토콜은 디지탈 서명을 사용하는 공개키 시스템 및 비밀키 암호에 기반할 수 있다. 일부 네트워크에서, 네트워크 접속 제어를 유지하기 위해, 네트워크 접속을 계속 유지하도록 주기적으로 재인증이 사용자에게 요구된다. 인증 과정은 인증된 사용자들을 인증화한다. 사용자가 성공적으로 인증되었다면, 즉 네트워크 접속이 허여되었다면, 인증 출력은 성공적이라고 언급될 수 있다. 사용자가 네트워크로의 접속에 대한 인증을 획득하지 못하면, 인증은 실패한다.A given private network is generally maintained and operated by a particular computer, where access to the network is limited to authorized users. To limit access to authenticated users, a network is often implemented to authenticate users attempting to connect to the network to verify that the user is an authenticated user. Therefore, the authentication process is designed so that only authenticated users can access the network. The simplest form of authentication is to require a username or user ID, and a password to gain access to a particular account. Authentication protocols may be based on public key systems and private key cryptography using digital signatures. In some networks, in order to maintain network connection control, reauthentication is required for the user periodically to keep the network connection. The authentication process authenticates authenticated users. If the user was successfully authenticated, i.e., a network connection was granted, the authentication output may be said to be successful. If the user fails to obtain authentication for the connection to the network, the authentication fails.

그러나 기존의 인증 과정은 인증되지 않은 사용자, 또는 다른 형태의 공격(attack)에 의한 침투에 민감하다. 이러한 공격은 대체 또는 그릇된 정보가 네트워크에 삽입되거나 또는 네트워크로부터 전달될 가능성을 제공하고, 또는 인증되지 않은 사용자가 네트워크로의 접속을 획득하여 악의적인 활동을 수행하도록 하는 단점이 존재한다. 인증 정보가 이동, 무선 또는 고정 네트워크 단말의 메모리에 존재하는 경우, 인증되지 않은 사용자가 메모리를 공격하여 인증 정보를 획득하고, 따라서 시스템에 접속하게 된다.However, existing authentication processes are sensitive to intrusion by unauthorized users or other forms of attack. Such attacks present the possibility of replacing or misleading information being inserted into or transmitted from the network, or allowing unauthorized users to gain access to the network and perform malicious activities. When authentication information is present in the memory of a mobile, wireless or fixed network terminal, an unauthenticated user attacks the memory to obtain authentication information, thus accessing the system.

예를 들면, 이동 사용자들의 네트워크(즉, 무선, 이동 단말)에서, 단말 메모리가 공격당해서 사용자 단말들이 비인증 상태로 떨어지는 경우가 존재할 수 있다. 해커가 단말 메모리에 저장된 인증 정보를 획득하게 되면, 이는 네트워크의 비인증 접속을 획득하는데 사용될 수 있다. 또한, 일부 네트워크 및 인증 절차들은 소위"맨-인-더-미들(man-in-the-midlle)" 공격에 취약하다. 이러한 공격에서, 비인증 사용자는 (예를 들면 단말로부터 일부 네트워크 서버로) 새로운 거래처로의 제1 메세지를 가로채고 진짜 공개키를 위조 공개키로 대체함으로써 최초 공개 키 교환을 방해한다.For example, in a network of mobile users (ie, wireless, mobile terminals), there may be a case where the terminal memory is attacked and the user terminals fall into an unauthenticated state. Once a hacker obtains authentication information stored in the terminal memory, it can be used to obtain unauthorized authentication of the network. In addition, some network and authentication procedures are vulnerable to so-called "man-in-the-midlle" attacks. In such an attack, an unauthorized user intercepts the first public key exchange by intercepting the first message to a new account (eg, from the terminal to some network server) and replacing the real public key with a fake public key.

"자생형(self-forming)" 또는 피어 투 피어(peer-to-peer) 타입 네트워크가 종종 사용된다. 이러한 네트워크에서, 모든 사용자들은 피어이고, 중앙 네트워크 제어기는 존재하지 않는다. 모두에게 접속 권한이 주어지면, 모든 컴퓨터(노드)는 네트워크 상에서 모든 다른 컴퓨터와 파일 및 주변장치들을 공유할 수 있다. 이러한 네트워크에서, 전용, 중앙 네트워크 제어기가 존재하지 않기 때문에, 인증 정보는 네트워크의 많은 단말들로 분배되고, 임의의 단말이 사용자를 인증하기 위해 호출될 수 있다. 인증 데이타 베이스가 분배되기 때문에, 잘 보호된 중앙 인증 사이트가 존재하는 네트워크보다 광범위한 공격들에 민감하다. 따라서 상기 단점들 및 문제들을 해결할 수 있는 개선된 인증 시스템 및 기술이 요구된다."Self-forming" or peer-to-peer type networks are often used. In such a network, all users are peers and there is no central network controller. If everyone is given access, then every computer (node) can share files and peripherals with every other computer on the network. In such a network, since there is no dedicated, central network controller, the authentication information is distributed to many terminals in the network, and any terminal can be called to authenticate the user. Because the authentication database is distributed, it is more susceptible to attacks than a network where a well-protected central authentication site exists. Therefore, there is a need for an improved authentication system and technology that can address the above disadvantages and problems.

본 발명은 컴퓨터 네트워크엔 관한 것으로서, 특히 네트워크에 접속을 구하는 사용자들의 인증을 위한 시스템 및 방법에 관한 것이다.TECHNICAL FIELD The present invention relates to computer networks, and more particularly, to a system and method for authentication of users seeking access to a network.

도1은 본 발명의 실시예에 따른 컴퓨터 네트워크의 블록 다이아그램이다.1 is a block diagram of a computer network in accordance with an embodiment of the present invention.

도2는 본 발명의 실시예에 따른 도1 네트워크의 인증 프로토콜을 보여주는 흐름도이다.2 is a flow chart showing an authentication protocol of the FIG. 1 network according to an embodiment of the invention.

복수의 사용자 단말들을 갖는 피어 투 피어 네트워크에서, 각 단말은 네트워크의 다른 단말들에 대한 사용자 인증 사이트로서 동작할 수 있고 방화벽의 공개측 및 방화벽의 보안측을 가지고 있다. 사용자 인증 데이타 베이스는 네트워크 제1 및 제2 단말의 보안측 메모리에 저장된다. 제1 단말은 사용자로부터 패스워드를 수신하고, 패스워드를 사용자에 대한 인증 암호화키로 번역한다. 제1 단말은 제1 난수를 발생시키고, 제1 난수를 인증 암호화키로 암호화하여 제1 암호화 메세지를 제공하고, 제1 암호화 메세지를 제2 단말에 전송하며, 제2 단말은 제1 단말에 대한 사용자 인증 사이트로서 동작한다. 사용자 인증 사이트는 암호화된 제1 메세지를 해독하여 제1 난수를 제공하고, 제2 난수를 발생시키며, 제2 난수는 제1 단말로 전송된다. 제1 단말은 제1 및 제2 난수들을 인증 암호화키로 결합 및 암호화하여 제2 암호화 메세지를 제공한다. 제1 단말은 제2 암호화 메세지를 사용자 인증 사이트로 전송하고, 사용자 인증 사이트는 암호화된 제2 메세지를 해독하여 결합된 제1 및 제2 난수를 발생시킨다. 사용자 인증 사이트는 제1 및 제2 난수가 정확한지 여부를 검증하고 이러한 검증에 따라 사용자를 인증한다.In a peer to peer network having a plurality of user terminals, each terminal can act as a user authentication site for other terminals in the network and has a public side of the firewall and a secure side of the firewall. The user authentication database is stored in the security side memory of the network first and second terminals. The first terminal receives the password from the user and translates the password into an authentication encryption key for the user. The first terminal generates a first random number, encrypts the first random number with an authentication encryption key, provides a first encrypted message, transmits the first encrypted message to the second terminal, and the second terminal is a user for the first terminal. Act as an authentication site. The user authentication site decrypts the encrypted first message to provide a first random number, generates a second random number, and the second random number is transmitted to the first terminal. The first terminal combines and encrypts the first and second random numbers with an authentication encryption key to provide a second encrypted message. The first terminal sends a second encrypted message to the user authentication site, and the user authentication site decrypts the encrypted second message to generate combined first and second random numbers. The user authentication site verifies whether the first and second random numbers are correct and authenticates the user according to this verification.

본 발명의 추가적인 특징, 장점들은 하기 도면을 참조하여 실시예를 통해 보다 상세히 기술될 것이다.Additional features and advantages of the present invention will be described in more detail with reference to the following drawings.

본 발명은 비인증 엔티티들이 통신 공격을 통해 인증 정보를 획득하거나 또는 네트워크 접속을 획득함으로써 피어 투 피어 네트워크에 접속을 획득하는 것을 방지하는 인증 프로토콜을 제공한다. 본 발명에서, 인증된 사용자에 의해 개인적으로 보유되는 정보만이 인증을 위해 사용될 수 있다. 네트워크는 피어 투 피어 네트워크이기 때문에, 다중 단말들은 네트워크를 통해 분포되는 사용자 인증 데이타 베이스를 저장하여야만 한다. 따라서 네트워크의 일부 단말들은 사용자 단말 및 다른 단말에 대한 사용자 인증 사이트로서의 역할을 겸한다. 본 발명의 인증 프로토콜은 단말에 저장된 인증 정보에도 불구하고 비인증 사용자가 단말을 통해 접속을 획득하는 것을 방지한다. 또한, 본 발명의 인증 프로토콜은 맨-인-더-미들 공격에 내성을 갖는다.The present invention provides an authentication protocol that prevents unauthenticated entities from gaining connection to a peer-to-peer network by obtaining authentication information or a network connection through a communication attack. In the present invention, only information held personally by the authenticated user can be used for authentication. Since the network is a peer-to-peer network, multiple terminals must store user authentication databases distributed over the network. Thus, some terminals in the network also serve as user authentication sites for user terminals and other terminals. The authentication protocol of the present invention prevents an unauthorized user from acquiring a connection through the terminal despite the authentication information stored in the terminal. In addition, the authentication protocol of the present invention is resistant to man-in-the-middle attack.

도1을 살펴보면, 본 발명의 일 실시예에 따른 컴퓨터 네트워크 시스템(100)의 블록 다이아그램이 제시되어 있다. 네트워크(100)는 제1 사용자 단말(110) 및 사용자 인증 사이트(120)를 포함하고, 이들은 통신 또는 전송 채널(125)을 통해 상호 접속되며, 상기 채널은 LAN, 광섬유, 무선 또는 다른 디지탈 통신 수단이 될 수 있다. 사용자 단말(110)은 고정된 위치의 PC, 전화 또는 다른 링크에 의해 인증 사이트와 연결되는 원격 PC, 또는 무선 링크에 의해 연결되는 이동 유닛이 될 수 있다. 단말(110)은 프로세서(117) 및 분포된 사용자 인증 데이타 베이스의 로컬 카피를 저장하는 메모리(112)를 포함한다. 사용자 인증 사이트(120)는 다른 사용자 단말, 또는 전용 하드웨어, PC, 또는 교환원에 의해 운영되는 사이트일 수 있다. 실시예에서, 네트워크(100)는 복수의 사용자 단말들을 포함하고, 사용자 단말들은 다른 사용자 단말들에 대한 사용자 인증을 수행할 수 있다. 네트워크(100)는 또한 사용자 인증을 제공할 수 없는 전용 사용자 단말 및 사용자 단말이 아닌 전용 사용자 인증 사이트들을 포함할 수 있다.1, a block diagram of a computer network system 100 in accordance with one embodiment of the present invention is shown. The network 100 comprises a first user terminal 110 and a user authentication site 120, which are interconnected via a communication or transmission channel 125, which channel is LAN, optical fiber, wireless or other digital communication means. This can be The user terminal 110 may be a PC in a fixed location, a remote PC connected to the authentication site by phone or other link, or a mobile unit connected by a wireless link. The terminal 110 includes a processor 117 and a memory 112 that stores a local copy of a distributed user authentication database. The user authentication site 120 may be another user terminal or a site operated by dedicated hardware, PC, or operator. In an embodiment, the network 100 includes a plurality of user terminals, and the user terminals may perform user authentication for other user terminals. The network 100 may also include dedicated user terminals that are not capable of providing user authentication and dedicated user authentication sites that are not user terminals.

네트워크의 각각 인증된 사용자에게 고유한 패스워드 및 인증 암호/해독키 쌍이 지정된다. 주어진 사용자 인증 암호키는 사용자 패스워드에 특정 암호화-키발생 알고리즘을 적용함으로써 발생된다. 사용자 인증 해독키는 사용자 인증 암호키를 사용하여 암호화된 메세지를 해독할 수 있는 키이다. 이러한 키들은 인증을 위해서만 사용되고 다른 목적으로는 사용되지 않는다. 네트워크의 모든 인증 사용자들에 대한 사용자 인증 정보는 분산 사용자 인증 데이타 베이스에서 유지되고, 이러한 데이타 베이스는 단말들(110,120)과 같은 수개의 사용자 단말들 사이에서 분산 및 저장된다. 이러한 데이타 베이스는 사용자 인증 암호/해독키 ,패스워드, 및 사용자에 대한 다른 정보와 같은 각 사용자에 대한 인증 정보를 포함한다.A unique password and authentication password / decryption key pair are assigned to each authenticated user on the network. A given user authentication encryption key is generated by applying a specific encryption-key generation algorithm to the user password. The user authentication decryption key is a key that can decrypt a message encrypted using the user authentication encryption key. These keys are used only for authentication and not for other purposes. User authentication information for all authenticated users of the network is maintained in a distributed user authentication database, which is distributed and stored among several user terminals, such as terminals 110 and 120. This database contains authentication information for each user such as user authentication password / decryption key, password, and other information about the user.

일부 실시예들에서, 각 사용자는 사용자 개개의 인증 암호키로 사전에 암호화된 개인 정보를 가지고 있는 스마트 카드를 가질 수도 있다. 각 사용자는 추가적인 보안성을 위해 사용자 몸에 내장된 건강 센서를 가질 수도 있다.In some embodiments, each user may have a smart card having personal information previously encrypted with the user's respective authentication encryption key. Each user may have a health sensor built into the user's body for additional security.

예시된 바와 같이, 따라서 다른 단말들에 대한 인증을 수행할 수 있는 모든 사용자 단말은 사용자 인증 데이타 베이스의 로컬 카피를 저장한다. 이러한 데이타 베이스는 방화벽(111,121)의 보안측(114) 상의 메모리(112,122)내에 저장된다. 단말들(110,120)과 같은 네트워크(100)의 모든 단말들은 방화벽(예를 들면 111)을 가지고 있고, 여기서 사용자는 공개측(113)으로부터 데이타를 입력 및 수신하고 모든 인증 정보는 보안측(114)에 존재한다. 각 단말(110)은 다른 단말들에 대한 네트워크 트래픽 중계역할을 수행하기 때문에, 전송기, 수신기, 및 모든 네트워크 트래픽은 보안측에 존재한다. 단말의 보안측은 물리적 그리고 소프트웨어 공격에 대항하여 보호된다. 각 단말 메모리(112)에 저장되는 분산 사용자 인증 데이타 베이스의 로컬 카피가 모두 제공되고, 잠재적 사용자의 개별 인증 암호 및 해독 키들은인증을 위해서만 사용되고 다른 목적으로는 사용되지 않는다. 분산 사용자 인증 데이타 베이스는 네트워크(100) 보안측에 의해 자율적으로 유지된다. 사용자 인증 데이타 베이스를 갖는 임의의 단말은 하나 또는 다른 단말들에 대해 사용자 인증 사이트로서 제공될 수 있다. 따라서, 제2 사용자 단말은 제1 사용자 단말(110)에 대한 사용자 인증 사이트(120)로서 제공될 수 있고, 제1 사용자 단말(110)은 단말(120) 또는 네트워크의 다른 단말들에 대한 사용자 인증 사이트로서 제공될 수 있다.As illustrated, therefore, all user terminals capable of performing authentication for other terminals store a local copy of the user authentication database. This database is stored in memories 112 and 122 on the security side 114 of the firewalls 111 and 121. All terminals of the network 100, such as terminals 110, 120, have a firewall (e. G. 111), where the user enters and receives data from the public side 113 and all authentication information is secure side 114. Exists in Since each terminal 110 performs a network traffic relay role to other terminals, the transmitter, receiver, and all network traffic are present on the security side. The security side of the terminal is protected against physical and software attacks. All local copies of the distributed user authentication database stored in each terminal memory 112 are provided, and the individual user's individual authentication passwords and decryption keys are used only for authentication and not for other purposes. The distributed user authentication database is maintained autonomously by the network 100 security side. Any terminal having a user authentication database can be provided as a user authentication site for one or the other terminals. Accordingly, the second user terminal may be provided as a user authentication site 120 for the first user terminal 110, and the first user terminal 110 may authenticate the user for the terminal 120 or other terminals in the network. Can be provided as a site.

사용자 단말(110)과 같은 각각의 사용자 단말은 사용자 패스워드를 사용자 개별 암호키로 번역하는 수단을 가지고 있다. 예를 들어, 사용자 단말(110)은 프로세서(117) 및 상기 암호키 발생 알고리즘을 포함한다. 사용자 단말(110)은 또한 난수를 발생시키는 능력 및 주어진 메세지를 사용자 개개인의 인증 암호키로 암호화하는 능력을 가지고 있다. 따라서, 사용자가 단말(110)에 패스워드를 제공하면, 단말(110)은 입력으로서 패스워드를 사용하여 암호키 발생 알고리즘을 운영하고 이를 통해 사용자 인증 암호키를 발생시킬 수 있다. 그리고 나서 난수를 발생시키고, 난수를 암호화하기 위해 인증 암호키를 사용하고, 이를 통해 암호화된 난수(이 역시 난수임)를 제공한다. 패스워드, 난수, 인증 암호키, 암호화된 메세지, 수신 메세지는 메모리(112)에 일시적으로 단말(110)에 의해 저장될 수 있다. 일부 실시예들에서, 추가적인 보안을 위해 사용자의 스마트 카드 정보, 건강 센서, 및/또는 홍채 인식 장치를 판독 및 전송할 수 있는 센서가 단말(110)에 제공될 수도 있다.Each user terminal, such as user terminal 110, has a means for translating the user password into a user individual encryption key. For example, the user terminal 110 includes a processor 117 and the encryption key generation algorithm. The user terminal 110 also has the ability to generate random numbers and to encrypt a given message with an individual authentication encryption key. Therefore, when the user provides a password to the terminal 110, the terminal 110 can operate the encryption key generation algorithm using the password as an input, through which it can generate a user authentication encryption key. It then generates a random number, uses an authentication encryption key to encrypt the random number, and provides an encrypted random number (which is also a random number). The password, random number, authentication encryption key, encrypted message, and received message may be temporarily stored in the memory 112 by the terminal 110. In some embodiments, the terminal 110 may be provided with a sensor capable of reading and transmitting the user's smart card information, health sensor, and / or iris recognition device for additional security.

실시예에서, 단말은 사용자 스마트 카드를 삽입하고 적절한 사용자 ID 및 패스워드를 입력하는 사용자에 대한 접속만을 허여한다. 사용자 패스워드 및 스마트 카드 데이타는 방화벽을 통과할 수 있는 유일한 인증 데이타이다. 사용자 인증 사이트에 의해 사용자가 인증되지 않으면, 단말 접속은 거절된다.In an embodiment, the terminal only grants access to the user who inserts the user smart card and enters the appropriate user ID and password. User password and smart card data are the only authentication data that can pass through the firewall. If the user is not authenticated by the user authentication site, the terminal connection is refused.

네트워크(100) 단말들은 임의의 특정된 사용자들이 단말 메모리(112)에 저장된 사용자 인증 데이타 베이스에의 접속을 판독/기록하도록 구현된다. 예를 들어, 군사적인 용도에서, 분대의 각 병사들은 무선, 이동 사용자 단말(110)을 가지고 있고, 분대의 지정된 통신 전문가는 그 사용자 단말의 메모리(112)의 데이타 베이스에 대한 접속을 판독 및 기록/판독하는 권한을 가진다. 다른 병사들은 지정되지 않는다. 실시예에서, 단말 메모리에 저장된 사용자 인증 데이타 베이스는 어떠한 조건들, 예를 들면 비-지정 사용자가 데이타 베이스로 접속을 시도하거나, 의심스러운 또는 비-표준 시도가 데이타 베이스 접속을 꾀하는 경우에 파괴된다(예를 들면, 메모리가 삭제됨). 단말이 물리적 공격을 탐지하면, 데이타 베이스는 또한 파괴될 수 있다. 실시예에서, 단말 사용자가 비-인증되면(인증 과정의 실패), 단말 메모리(112)에 존재하는 사용자 인증 데이타 베이스는 파괴된다.Network 100 terminals are implemented such that any specified users read / write a connection to a user authentication database stored in terminal memory 112. For example, in military use, each soldier in the squad has a wireless, mobile user terminal 110, and the squad's designated communications specialist reads and records a connection to the database of memory 112 of that user terminal. Have permission to read No other soldiers are assigned. In an embodiment, the user authentication database stored in the terminal memory is destroyed if certain conditions, for example, a non-designated user attempts to connect to the database, or if a suspicious or non-standard attempt attempts to connect to the database. (For example, memory is deleted). If the terminal detects a physical attack, the database can also be destroyed. In an embodiment, if the terminal user is de-authenticated (failure of the authentication process), the user authentication database present in the terminal memory 112 is destroyed.

또한, 일부 실시예들에서, 특정 사용자/단말 분리(detachment) 절차가 제공될 수 있다. 예를 들어, 사용자/단말 분리 절차는 사용자가 분리 코드를 입력하고, 로그 오프하며, 그리고 나서 단말(110)의 스마트 카드 포트로부터 그 자신의 스마트 카드를 제거하는 것으로 규정된다. 분리 절차가 뒤따름이 없이 단말(110)이 분리를 탐지하면, 단말은 메모리(112)의 사용자 인증 데이타 베이스를 파괴한다.In addition, in some embodiments, a specific user / terminal detach procedure may be provided. For example, the user / terminal separation procedure is defined as the user entering a separation code, logging off, and then removing their own smart card from the smart card port of terminal 110. If the terminal 110 detects the detachment without following the detach procedure, the terminal destroys the user authentication database in the memory 112.

사용 기간동안, 각 단말(110)은 네트워크와 접속되어 인증된 사용자가 네트워크에 접속할 수 있도록 하여준다. 실시예에서, 사용자들은 건강 센서를 착용할 것이 요구되고, 단말은 지속적 또는 주기적으로 사용자 건강을 모니터링하는 건강 센서 탐지기를 포함한다. 따라서, 이러한 실시예에서, 세션 기간동안의 임의의 시간에서 사용자 단말(110)이 사용자가 건강 센서로부터의 상태에 따라 단말 세션을 수행할 수 없음을 탐지하면(예를 들어, 사용자가 살해되는 경우), 이러한 정보는 사용자 인증 사이트(120)로 전송되고, 사용자 인증 사이트는 인증을 철회한다. 대안적으로, 단말(110)은 네트워크로부터 그 자신을 제거하거나 인증을 철회할 수도 있다.During the usage period, each terminal 110 is connected to the network to allow an authenticated user to access the network. In an embodiment, users are required to wear a health sensor, and the terminal includes a health sensor detector for continuously or periodically monitoring user health. Thus, in this embodiment, if at any time during the session the user terminal 110 detects that the user cannot perform the terminal session according to the state from the health sensor (eg, the user is killed) This information is sent to the user authentication site 120, and the user authentication site revokes the authentication. Alternatively, terminal 110 may remove itself from the network or revoke authentication.

실시예에서, 단말 및 네트워크 접속을 유지하기 위해서, 사용자 건강 센서는 사용자가 생존해 있음을 단말(110)에 표시하여야 한다. 사용자가 죽었다고 건강 센서가 표시하면, 단말(110)은 이를 탐지하여, 사용자의 인증을 제거하고, 자동적으로 이러한 정보를 다른 사용자 인증 사이트로 전송하여 사용자 인증 데이타 베이스를 갱신한다.In an embodiment, to maintain the terminal and network connection, the user health sensor must indicate to the terminal 110 that the user is alive. When the health sensor indicates that the user is dead, the terminal 110 detects this, removes the user's authentication, and automatically transmits this information to another user authentication site to update the user authentication database.

따라서, 본 발명에서, 피어 투 피어 네트워크가 사용되기 때문에, 사용자 단말들은 사용자 인증 사이트로서 기능하기 위해 사용자 인증 데이타 베이스를 저장하여야 한다. 그러나, 비인증 사용자가 단말 메모리를 공격함으로써 네트워크에 접속하거나 또는 사용자 인증 데이타 베이스를 획득하는 것을 방지하기 위해, 각 단말은 모든 인증 정보를 방화벽 뒤에 위치시키고 그 사용자가 이러한 데이타 베이스에 접속하는 것을 일반적으로 허용하지 않는다. 또한, 사용자는 그 사용자 단말에 의해 인증될 수 없다. 사용자는 하나 또는 그 이상의 다른 단말들에 의해서만 인증된다. 따라서, 사용자가 사용자 단말(110)에 접속을 시도하는 경우, 사용자 단말(110)은 다른 단말(예를 들면 단말(120))이 사용자 인증 사이트로서 동작하도록 요청한다. 또한, 사용자가 그에게 지정된 단말 이외의 단말에 접속하면, 사용자는 재인증 되어야만 한다.Thus, in the present invention, since a peer to peer network is used, user terminals must store a user authentication database in order to function as a user authentication site. However, in order to prevent unauthorized users from accessing the network or obtaining a user authentication database by attacking the terminal memory, each terminal should place all authentication information behind a firewall and generally allow that user to access such a database. Do not allow it. In addition, the user cannot be authenticated by the user terminal. The user is authenticated only by one or more other terminals. Therefore, when a user attempts to access the user terminal 110, the user terminal 110 requests another terminal (eg, the terminal 120) to operate as a user authentication site. Also, if a user accesses a terminal other than the terminal assigned to him, the user must be reauthenticated.

또한, 실시예에서, 모든 사용자들의 재인증은 주기적으로 이루어진다. 예를 들어, 일정 시간 후에, 단말(120) 또는 다른 단말은 예를 들어 그 자신의 사용자 인증 데이타 베이스 로컬 카피를 조사함으로써 단말(110) 사용자가 마지막으로 인증된 이후로 타임 아웃 기간이 경과하였음을 인지 할 수 있다. 그리고 나서, 다음으로 예정된 재인증을 개시할 수 있다. 또 다른 사용자가 살해 또는 생포되거나 또 다른 단말이 포획되었음이 의심스러운 경우, 재인증 과정이 임의의 단말에 의해 개시될 수 있다. 또한, 실시예에서, 단말이 그 사용자로부터 분리되면, 분리 프로토콜에 따라 추가적인 보안을 위해 네트워크로부터 그 자신을 제거한다.In addition, in an embodiment, all users are reauthenticated periodically. For example, after a period of time, the terminal 120 or another terminal has elapsed since the timeout period has elapsed since the terminal 110 user was last authenticated, for example by examining its own local copy of the user authentication database. I can recognize it. The next scheduled reauthentication can then be initiated. If it is suspected that another user has been killed or captured or another terminal has been captured, the reauthentication process may be initiated by any terminal. Further, in an embodiment, when a terminal is detached from its user, it removes itself from the network for additional security according to the separation protocol.

도2를 살펴보면, 본 발명의 실시예에 따라 네트워크(100)의 네트워크 사용자 인증 프로토콜 방법(200)을 제시하는 흐름도가 제시된다. 먼저, 사용자는 사용자 단말(110) 접속을 개시한다(단계 201). 대안적으로, 사용자가 일정 시간동안 주어진 단말(110)을 사용하고 있는 중이였다면, 타임 아웃 후에 인증 사이트(120)는 사용자 단말(110)로 통보하여 사용자를 재인증하도록 한다(단계 203). 단말 사용자(110)가 살해 또는 생포되거나 단말(110)이 포획되었음이 의심되는 경우, 인증 사이트(120)는 재인증을 개시할 수 있다. 그리고 나서, 단말(110)은 사용자에게 사용자 ID 및 패스워드를 주어진 시간내에 입력하도록 통보한다(단계 205).Referring to FIG. 2, a flow diagram is presented presenting a network user authentication protocol method 200 of a network 100 in accordance with an embodiment of the present invention. First, the user initiates connection to the user terminal 110 (step 201). Alternatively, if the user has been using the given terminal 110 for a period of time, after timeout the authentication site 120 notifies the user terminal 110 to re-authenticate the user (step 203). If it is suspected that the terminal user 110 has been killed or captured, or that the terminal 110 has been captured, the authentication site 120 may initiate reauthentication. Then, the terminal 110 notifies the user to input the user ID and password within a given time (step 205).

재인증의 경우, 단계(205)는 시각, 청각 또는 촉각 형태의 인증 경고 메세지를 사용자에게 전달하는 단계를 포함할 수 있다. 또한 사용자가 현재 세션 상태에 있는 재인증의 경우에서, 단말(110)은 저장된 사용자 ID를 여전히 가지고 있기 때문에, 사용자에게 패스워드를 재촉하기만 하면 된다.In the case of re-authentication, step 205 may include delivering an authentication alert message to the user in the form of visual, auditory or tactile. In addition, in the case of reauthentication where the user is in the current session state, since the terminal 110 still has the stored user ID, it only needs to prompt the user for a password.

실시예에서, 새로운 사용자 인증의 경우, 사용자는 우선 단말(110)에 그 자신의 스마트 카드를 삽입하여야 한다. 현재 인증된 사용자의 재인증의 경우, 사용자는 이미 그 자신의 스마트 카드로 그 단말(110)에 로그 온되어 있다. 이러한 실시예에서, 인증을 계속 또는 유지하기 위해서 스마트 카드는 제자리에 위치하여야 하고, 그 위의 정보가 판독 및 검증되어야 한다. 대안적 실시예에서, 본 발명의 인증 프로토콜은 스마트 카드르 필요로하지 않는다.In an embodiment, for new user authentication, the user must first insert his own smart card in the terminal 110. In the case of reauthentication of the currently authenticated user, the user is already logged on to the terminal 110 with his own smart card. In this embodiment, the smart card must be in place to continue or maintain authentication, and the information thereon must be read and verified. In alternative embodiments, the authentication protocol of the present invention does not require a smart card.

사용자가 인증된 사용자라면, 사용자는 아마 하나의 패스워드만을 가질 것이다. 이 경우, 인증된 사용자는 그 사용자 ID 및 패스워드를 입력하고(단계 207), 만약 단계(205)에서 타임 아웃 기간이 요구된다면, 특정 타임 아웃 기간 내에 그 사용자 ID 및 패스워드를 입력한다. 그리고 나서, 단말(110)은 암호키 발생 알고리즘으로 상기 패스워드를 암호키로 번역하여 사용자 인증 암호키를 발생시킨다(단계 209). 따라서, 사용자는 그 자신의 인증 암호키를 소유하거나 인지할 필요가 없고, 단지 그 자신의 패스워드(및 ID)만을 소유 및 인지하고 있으면 된다.If the user is an authenticated user, the user will probably only have one password. In this case, the authenticated user enters the user ID and password (step 207), and if a timeout period is required in step 205, then enters the user ID and password within a specific timeout period. Then, the terminal 110 translates the password into an encryption key using an encryption key generation algorithm to generate a user authentication encryption key (step 209). Thus, the user does not need to own or know his own authentication encryption key, but only needs to own and know his own password (and ID).

단말(110)은 또한 제1 난수를 발생시키고(단계 211), 이 난수를 사용자 인증 암호키를 사용하여 암호화한다(단계 213). 그리고 나서, 사용자 단말은 사용자 인증 사이트(120)에 사용자 신원을 통보하고 암호화된 난수를 사용자 인증 사이트(120)로 전송한다(단계 215). 실시예에서, 사용자 ID를 인증 사이트에 전달함으로써 사용자 신원이 인증 사이트에 통보된다. 바람직하게는 사용자 ID 는 먼저 사용자 인증 암호키로 암호화되고, 그리고 나서 암호화된 ID가 인증 사이트(120)로 전송된다. 그리고 나서 네트워크의 유효 사용자 ID와 일치하는(또한 성공적으로 메세지를 해독하기 위해 사용되는 해독키의 사용자 ID와 일치하는) 사용자 ID가 발생될 때까지, 인증 사이트(120)는 모든 가능한 인증 해독키를 사용하여 수신된 암호화 메세지를 해독한다. 따라서, 일단 인증 사이트(120)가 사용자 ID 메세지를 성공적으로 해독하면, 인증 사이트는 사용자 ID를 파악할 수 있고, 따라서 이러한 인증 암호키는 인증 처리기간동안 전송되는 뒤이은 암호 메세지들을 해독하는데 사용될 수 있다. 실시예에서, 사용자 단말 ID도 역시 암호화되어 사용자 ID와 함께 인증 사이트(120)로 전송된다. 재인증의 경우, 사용자 ID의 암호화 및 전송은 생략될 수 있다; 또는 편리성 및 간편성을 위해, 사용자 ID가 암호화 및 전송되는 경우, 인증 사이트(120)는 과도한 해독을 수행하기보다는 이미 결정된 해독키를 사용하여 암호화된 사용자 ID를 해독할 수도 있다.Terminal 110 also generates a first random number (step 211) and encrypts the random number using a user authentication encryption key (step 213). The user terminal then notifies the user authentication site 120 of the user identity and transmits the encrypted random number to the user authentication site 120 (step 215). In an embodiment, the user identity is notified to the authentication site by passing the user ID to the authentication site. Preferably the user ID is first encrypted with a user authentication encryption key, and then the encrypted ID is sent to the authentication site 120. The authentication site 120 then generates all possible decryption keys until a user ID is generated that matches the effective user ID of the network (and also matches the user ID of the decryption key used to successfully decrypt the message). To decrypt the received encrypted message. Thus, once authentication site 120 successfully decrypts the user ID message, the authentication site can know the user ID, and thus this authentication encryption key can be used to decrypt subsequent encryption messages sent during the authentication process. . In an embodiment, the user terminal ID is also encrypted and sent to the authentication site 120 along with the user ID. In case of re-authentication, encryption and transmission of the user ID can be omitted; Or, for convenience and simplicity, when the user ID is encrypted and transmitted, the authentication site 120 may decrypt the encrypted user ID using an already determined decryption key rather than performing excessive decryption.

암호화된 사용자 ID 메세지를 해독한 후에, 인증 사이트(120)는 암호화된 제1 난수를 수신한다. 사용자 인증 사이트(120)는 특정 사용자 인증 해독키로 이러한 메세지를 해독하여 원래의 제1 난수를 제공한다(단계 217). 그리고 나서, 사용자 인증 사이트(120)는 제2 난수를 발생시키고, 제2 난수를 사용자 단말(110)로 전송한다(단계 219). 대안적 실시예에서, 제2 난수의 암호화된 버젼이 사용자 단말(110)로 전송되고, 여기서 제2 암호/해독키 쌍이 사용된다.After decrypting the encrypted user ID message, the authentication site 120 receives the encrypted first random number. User authentication site 120 decrypts this message with a particular user authentication key to provide the original first random number (step 217). The user authentication site 120 then generates a second random number and transmits the second random number to the user terminal 110 (step 219). In an alternative embodiment, an encrypted version of the second random number is sent to the user terminal 110 where a second crypto / decryption key pair is used.

이 시점에서, 사용자 인증 사이트(120)는 사용자 ID 및 /또는 사용자 패스워드, 사용자 인증 암호/해독키(적어도 해독키), 그리고 제1 및 제2 난수들을 알고 있다. 사용자 단말(110)은 인증 처리과정 동안 단지 일시적으로 사용자 패스워드 및 인증 암호키를 저장한다.At this point, the user authentication site 120 knows the user ID and / or user password, the user authentication password / decryption key (at least the decryption key), and the first and second random numbers. The user terminal 110 only temporarily stores the user password and the authentication encryption key during the authentication process.

인증 사이트(120)로부터 제2 난수를 수신한 후에, 사용자 단말(110)은 사용자 인증 암호키로 상기 난수들을 결합 및 암호화하고 이 메세지를 사용자 인증 사이트로 전송한다(단계 221). 사용자 단말(110)에 의해 사용되는 기술이 사용자 인증 사이트(120)에 알려지기만 하면, 상기 2개의 난수들은 다양한 방식, 예를 들면 가산, 감산, 승산, 연쇄 스트링 등으로 결합될 수 있다. 사용되는 결합 기술은 바람직하게는 본 발명의 인증 프로토콜의 일부로서 선험적으로 설정되거나 규정된다.After receiving the second random number from the authentication site 120, the user terminal 110 combines and encrypts the random numbers with a user authentication encryption key and sends this message to the user authentication site (step 221). As long as the technique used by the user terminal 110 is known to the user authentication site 120, the two random numbers can be combined in various ways, for example, addition, subtraction, multiplication, concatenation string, and the like. The binding technique used is preferably established or defined a priori as part of the authentication protocol of the present invention.

그리고 나서, 인증 사이트(120)는 상기 2개 난수들의 암호화된 버젼인 암호화된 메세지를 수신하고, 사용자 인증 해독키를 사용하여 이 메세지를 해독한다. 그리고 나서, 인증 사이트(120)는 상기 난수들 모두가 정확한지 여부를 검사한다. 정확하다면, 맨-인-더-미들 공격은 존재하지 않는다. 이 지점에서, 인증 사이트(120)는 접속을 획득하고자 하는 사용자 신원을 안다. 사용자가 식별되고 접속 권한이 주어지면, 인증 사이트(120)는 적절한 인증 메세지를 단말(110)에 전송하고 사용자의 접속 권한 레벨에 따라 네트워크 자원들이 사용자 단말(110)로부터 사용자에 의해 사용될 수 있도록 하여 줌으로써 사용자를 인증한다. 사용자가 새로운 사용자이면, 새로운 사용자는 인증되거나 또는 인증이 실패하면 접속이 불허된다. 재인증의 경우, 사용자는 재인증되고, 또는 인증이 실패하면 인증이 철회된다.Authentication site 120 then receives the encrypted message, which is an encrypted version of the two random numbers, and decrypts the message using the user authentication decryption key. The authentication site 120 then checks whether all of the random numbers are correct. If correct, there is no man-in-the-middle attack. At this point, the authentication site 120 knows the user identity to which to obtain a connection. Once the user is identified and authorized to access, the authentication site 120 sends an appropriate authentication message to the terminal 110 and allows network resources to be used by the user from the user terminal 110 according to the user's access authority level. To authenticate the user. If the user is a new user, the new user is authenticated or connection is denied if authentication fails. In the case of reauthentication, the user is reauthenticated, or the authentication is withdrawn if authentication fails.

만약 사용자가 인증되고, 새로운 전송 및 메세지 키들이 요구되면, 단말 클록들로부터 이러한 키들을 획득하는 새로운 방법이 단말(110)로 전송된다. 사용자가 인증되지 않으면, 사용자 인증 사이트는 네트워크 상의 모든 다른 사용자들에게 상기 사용자가 인증 해제되었고 상기 사용자와의 통신이 종결되었음을 지시한다. 또한 단말 접속이 거절된다. 분산 사용자 인증 데이타 베이스는 상기 인증 해제를 표시하도록 갱신되고, 모든 로컬 카피가 그에 따라 갱신되어 이러한 갱신이 네트워크를 통해 분배된다.If the user is authenticated and new transmission and message keys are required, a new method of obtaining these keys from the terminal clocks is sent to the terminal 110. If the user is not authenticated, the user authentication site instructs all other users on the network that the user has been deauthenticated and communication with the user has been terminated. The terminal connection is also refused. The distributed user authentication database is updated to indicate the deauthentication, and all local copies are updated accordingly such that updates are distributed over the network.

위에서 기술한 바와 같이, 실시예에서, 사용자 인증 사이트(120)는 사용자 단말(110)에 스마트 카드 정보, 사용자 건강 상태, 및/또는 홍채 인식 정보에 대해 질의할 수도 있다. 이러한 정보는 사용자 신원 및 단말 세션을 수행하는 능력을 검사함에 있어서 단계(223)에서 인증 사이트(120)에 의해 추가적 보안을 위해 사용될 수 있다. 비록 메모리(112)가 완전한 사용자 인증 데이타 베이스를 유지하더라도, 추가적인 보안을 위해 인증 절차가 종료되면 인증의 성공 유무와는 관계없이 사용자 단말은 그 메모리(112)로부터 사용자 패스워드 및 인증 암호키를 즉시 삭제한다.As described above, in an embodiment, the user authentication site 120 may query the user terminal 110 for smart card information, user health status, and / or iris recognition information. This information may be used for additional security by authentication site 120 at step 223 in checking user identity and the ability to conduct a terminal session. Although the memory 112 maintains a complete user authentication database, the user terminal immediately deletes the user password and the authentication encryption key from the memory 112 regardless of whether the authentication is successful when the authentication procedure is completed for additional security. do.

여기서 사용되는 "사용자"는 사용자 단말(110)을 통해 네트워크(100)에 접속을 획득하고자 시도하고나 이미 접속을 획득한 사람을 말한다. 따라서, 인증 처리에 의해 이미 인증된 사람 및 예상되는 사용자 모두 사용자이다.As used herein, “user” refers to a person who attempts to obtain a connection to the network 100 through the user terminal 110 or has already obtained a connection. Thus, both the person already authenticated by the authentication process and the expected user are users.

이해되듯이, 본 발명의 인증 프로토콜은 맨-인-더-미들 공격에 취약하지 않다. 또한, 인증 데이타 보안은 개개 단말 사용자들이 사용자 단말(110)의 보안측에 위치하는 인증 정보로의 접속을 허용하지 않음으로써 달성된다. 또 다른 단말, 예를 들면 사용자 인증 사이트(120)를 가지고 있기 때문에, 사용자 단말로의 제어 접속은 단말 접속 및 보안을 달성한다.As will be appreciated, the authentication protocol of the present invention is not vulnerable to man-in-the-middle attack. In addition, authentication data security is achieved by not allowing individual terminal users to access the authentication information located on the security side of the user terminal 110. Because of having another terminal, for example a user authentication site 120, the control connection to the user terminal achieves terminal connection and security.

비록 상기에서 선호되는 실시예를 통해 본 발명이 기술되었지만, 본 발명은 이들로 제한되지 않으며 다양한 변형이 가능하다.Although the present invention has been described through the preferred embodiments above, the present invention is not limited to these and various modifications are possible.

Claims (9)

복수의 사용자 단말들(110,120)을 갖는 피어-투-피어(peer-to-peer) 네트워크에서, 사용자를 인증하는 방법으로서,In a peer-to-peer network having a plurality of user terminals (110, 120), as a method for authenticating a user, (a) 제1 단말(110) 보안측(114)상의 메모리(112) 및 제2 단말(120) 보안측(124)상의 메모리(122)에 사용자 인증 데이타 베이스를 저장하는 단계;(a) storing a user authentication database in a memory 112 on the first terminal 110 security side 114 and a memory 122 on the second terminal 120 security side 124; (b) 네트워크의 제1 단말에서 사용자로부터 패스워드를 수신하는 단계(207);(b) receiving (207) a password from a user at a first terminal of the network; (c) 상기 패스워드를 사용자에 대한 인증 암호키로 번역하는 단계(209); 및(c) translating (209) the password into an authentication encryption key for the user; And (d) 상기 인증 암호키를 사용하여 제1 단말에 대한 사용자 인증 사이트로 제공되는 제2 단말을 통해 사용자를 인증하는 단계(211-225)를 포함하는 사용자 인증 방법.(d) authenticating the user through the second terminal provided to the user authentication site for the first terminal using the authentication encryption key (211-225). 제1항에 있어서, 상기 단계(d)는The method of claim 1, wherein step (d) (1) 제1 단말을 통해 제1 난수를 발생시키는 단계(211);(1) generating a first random number through the first terminal (211); (2) 상기 제1 난수를 인증 암호키로 암호화하여 제1 암호화 메세지를 제공하는 단계(213) 및 상기 제1 암호화 메세지를 제1 단말로부터 사용자 인증 사이트로 전송하는 단계(215);(2) encrypting the first random number with an authentication encryption key to provide a first encrypted message (213) and transmitting the first encrypted message from a first terminal to a user authentication site (215); (3) 제1 난수를 제공하기 위해 사용자 인증 사이트에서 상기 암호화된 제1 메세지를 해독하는 단계(217);(3) decrypting (217) the encrypted first message at a user authentication site to provide a first random number; (4) 사용자 인증 사이트를 통해 제2 난수를 발생시켜 제2 난수를 제1 단말로전송하는 단계(219);(4) generating a second random number through the user authentication site and transmitting the second random number to the first terminal (219); (5) 제1 단말을 통해 상기 제1 및 제2 난수를 결합 및 암호화하여 제2 암호화 메세지를 제공하고, 상기 제2 암호화 메세지를 상기 제1 단말로부터 사용자 인증 사이트로 전송하는 단계(221);(5) combining and encrypting the first and second random numbers through a first terminal to provide a second encrypted message, and transmitting the second encrypted message from the first terminal to a user authentication site (221); (6) 결합된 제1 및 제2 난수들을 제공하기 위해 사용자 인증 사이트에서 상기 암호화된 제2 메세지를 해독하는 단계(223);(6) decrypting (223) the encrypted second message at a user authentication site to provide combined first and second random numbers; (7) 상기 제1 및 제2 난수들이 정확한지 여부를 검증하는 단계; 및(7) verifying whether the first and second random numbers are correct; And (8) 상기 검증에 따라 사용자를 인증하는 단계를 포함하는 사용자 인증 방법.(8) authenticating a user according to the verification. 제2항에 있어서,The method of claim 2, 상기 인증의 성공 여부와는 관계없이, 사용자 인증 후에 제1 단말로부터 패스워드를 삭제하는 단계(225)를 추가로 포함하는 사용자 인증 방법.Regardless of whether the authentication is successful, the method further comprises the step of deleting (225) the password from the first terminal after user authentication. 제2항에 있어서,The method of claim 2, 상기 단계(b)는 제1 단말에서 사용자로부터 사용자 ID를 수신하는 단계(207)를 추가로 포함하고;Step (b) further comprises the step (207) of receiving a user ID from a user at the first terminal; 상기 단계(d)(2)는 인증 암호화키로 사용자 ID를 암호화하여 암호화된 사용자 ID 메세지를 제공하고, 상기 암호화된 사용자 ID 메세지를 제1 단말로부터 사용자 인증 사이트로 전송하는 단계(215)를 추가로 포함하며; 그리고The step (d) (2) further comprises the step (215) of encrypting the user ID with an authentication encryption key to provide an encrypted user ID message and transmitting the encrypted user ID message from the first terminal to the user authentication site. Includes; And 상기 단계(d)(3)는 사용자 인증 사이트에서 네트워크의 유효한 사용자 ID와 매칭되는 해독 사용자 ID가 발생될 때까지 유효한 인증 해독키들로 상기 암호화된 사용자 ID 메세지를 해독하는 단계를 포함하며, 상기 암호화된 사용자 ID 메세지를 성공적으로 해독하기 위해 사용되는 인증 해독키로 상기 암호화된 제1 메세지를 해독하여 제1 난수를 제공하는 단계를 추가로 포함하는 사용자 인증 방법.The step (d) (3) includes decrypting the encrypted user ID message with valid authentication decryption keys until a decryption user ID is generated at a user authentication site that matches a valid user ID of the network, wherein the encryption Decrypting the encrypted first message with an authentication decryption key used to successfully decrypt the encrypted user ID message and providing a first random number. 제2항에 있어서,The method of claim 2, 상기 단계(d)(8)는 제1 및 제2 난수들이 정확하고, 사용자가 네트워크에 대한 접속 권한을 가지는 경우, 사용자를 인증하는 단계(223)를 포함하는 사용자 인증 방법.Step (d) (8) comprises the step (223) of authenticating the user if the first and second random numbers are correct and the user has access rights to the network. 제2항에 있어서,The method of claim 2, 건강 센서를 통해 사용자 건강 상태를 판독하는 단계;Reading a user's health state through a health sensor; 상기 건강 상태를 사용자 인증 사이트로 전송하는 단계; 및Transmitting the health condition to a user authentication site; And 상기 건강 상태 및 상기 단계(d)(7)의 상기 검증에 따라 사용자를 인증하는 단계를 추가로 포함하는 사용자 인증 방법.Authenticating a user according to the health condition and the verification of step (d) (7). 제2항에 있어서,The method of claim 2, 인증 사이트를 통해 제1 단말에 사용자 스마트 카드로부터 사용자 정보를 판독하도록 질의하는 단계 및 상기 사용자 정보 및 상기 단계(d)(7)의 상기 검증에따라 사용자를 인증하는 단계를 추가로 포함하는 사용자 인증 방법.User authentication further comprising querying the first terminal to read the user information from the user smart card via the authentication site and authenticating the user according to the verification of the user information and step (d) (7). Way. 제1항에 있어서, 상기 단계(b)는The method of claim 1, wherein step (b) 새로운 사용자가 제1 단말에 접속을 개시하거나 또는 인증 사이트가 타임 아웃 후에 재인증이 사용됨을 통보하는 경우 상기 제1 단말을 통해 사용자에게 사용자 ID 및 패스워드를 입력하도록 통보하는 단계를 포함하는 사용자 인증 방법.Notifying the user to enter a user ID and password through the first terminal when a new user initiates access to the first terminal or the authentication site notifies that re-authentication is used after a timeout. . 제1항에 있어서,The method of claim 1, 사용자가 지정된 사용자가 아닌 경우, 사용자가 상기 제1 단말의 보안측에 접속하는 것을 차단하는 단계를 추가로 포함하는 사용자 인증 방법.And if the user is not a designated user, blocking the user from accessing the security side of the first terminal.
KR1020027001769A 1999-08-12 2000-08-11 Peer-to-peer network user authentication protocol KR20020021404A (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US14862499P 1999-08-12 1999-08-12
US60/148,624 1999-08-12
US63271700A 2000-08-04 2000-08-04
PCT/US2000/021965 WO2001013201A2 (en) 1999-08-12 2000-08-11 Peer-to-peer network user authentication protocol
US???? 2005-12-06

Publications (1)

Publication Number Publication Date
KR20020021404A true KR20020021404A (en) 2002-03-20

Family

ID=28793960

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027001769A KR20020021404A (en) 1999-08-12 2000-08-11 Peer-to-peer network user authentication protocol

Country Status (4)

Country Link
EP (1) EP1203479A2 (en)
JP (1) JP2003529126A (en)
KR (1) KR20020021404A (en)
AU (1) AU6537400A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100555096B1 (en) * 2005-07-11 2006-02-24 피어컴 주식회사 System and method for authentication in peer to peer service
KR100923176B1 (en) * 2004-10-27 2009-10-22 메시네트웍스, 인코포레이티드 System and method for providing security for a wireless network
KR100965716B1 (en) * 2002-04-29 2010-06-24 마이크로소프트 코포레이션 Peer-to-peer name resolution protocol security infrastructure and method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100965716B1 (en) * 2002-04-29 2010-06-24 마이크로소프트 코포레이션 Peer-to-peer name resolution protocol security infrastructure and method
KR100923176B1 (en) * 2004-10-27 2009-10-22 메시네트웍스, 인코포레이티드 System and method for providing security for a wireless network
KR100555096B1 (en) * 2005-07-11 2006-02-24 피어컴 주식회사 System and method for authentication in peer to peer service

Also Published As

Publication number Publication date
EP1203479A2 (en) 2002-05-08
JP2003529126A (en) 2003-09-30
AU6537400A (en) 2001-03-13

Similar Documents

Publication Publication Date Title
US7231526B2 (en) System and method for validating a network session
US7865936B2 (en) System and method for controlling access to multiple public networks and for controlling access to multiple private networks
CN106104562B (en) System and method for securely storing and recovering confidential data
US8028329B2 (en) Proxy authentication network
US8644516B1 (en) Universal secure messaging for cryptographic modules
US5418854A (en) Method and apparatus for protecting the confidentiality of passwords in a distributed data processing system
US5491752A (en) System for increasing the difficulty of password guessing attacks in a distributed authentication scheme employing authentication tokens
US20130227286A1 (en) Dynamic Identity Verification and Authentication, Dynamic Distributed Key Infrastructures, Dynamic Distributed Key Systems and Method for Identity Management, Authentication Servers, Data Security and Preventing Man-in-the-Middle Attacks, Side Channel Attacks, Botnet Attacks, and Credit Card and Financial Transaction Fraud, Mitigating Biometric False Positives and False Negatives, and Controlling Life of Accessible Data in the Cloud
US9491174B2 (en) System and method for authenticating a user
US20030196084A1 (en) System and method for secure wireless communications using PKI
US20080276309A1 (en) System and Method for Securing Software Applications
EP2544117A1 (en) Method and system for sharing or storing personal data without loss of privacy
WO2001013201A2 (en) Peer-to-peer network user authentication protocol
US20170295142A1 (en) Three-Tiered Security and Computational Architecture
WO2001011817A2 (en) Network user authentication protocol
KR20020021404A (en) Peer-to-peer network user authentication protocol
Krishnamoorthy et al. Proposal of HMAC based Protocol for Message Authenication in Kerberos Authentication Protocol
JP2005165671A (en) Multiplex system for authentication server and multiplex method therefor
EA046054B1 (en) METHOD FOR AUTHENTICATION OF TYFLOSPLAYER IN THE ONLINE LIBRARY OF "TALKING" BOOKS
Dippel et al. AUTHENTICATION OF COMPUTER COMMUNICATIONS
CN117879899A (en) Centralized security authentication system for GPON equipment

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid