KR20150053520A - A server authentication method using PIM(Personal Identification Message) on SSL/TLS - Google Patents
A server authentication method using PIM(Personal Identification Message) on SSL/TLS Download PDFInfo
- Publication number
- KR20150053520A KR20150053520A KR1020130135566A KR20130135566A KR20150053520A KR 20150053520 A KR20150053520 A KR 20150053520A KR 1020130135566 A KR1020130135566 A KR 1020130135566A KR 20130135566 A KR20130135566 A KR 20130135566A KR 20150053520 A KR20150053520 A KR 20150053520A
- Authority
- KR
- South Korea
- Prior art keywords
- server
- user
- verification message
- personal verification
- certificate
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000012795 verification Methods 0.000 claims description 86
- 238000004891 communication Methods 0.000 claims description 48
- 238000012790 confirmation Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000005242 forging Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
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/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/3263—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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Telephonic Communication Services (AREA)
Abstract
Description
본 발명은 서버 인증 방법에 관한 것으로서, 개인 확인 메시지를 이용하여 서버를 인증하는 서버 인증 방법에 관한 것이다.The present invention relates to a server authentication method, and more particularly, to a server authentication method for authenticating a server using an individual confirmation message.
SSL/TLS는 클라이언트/서버 응용 프로그램이 네트워크로 통신을 하는 과정에서 도청, 간섭, 위조를 방지하기 위해서 설계되었다. 그리고 암호화를 해서 최종단의 인증, 통신 기밀성을 유지시켜준다. 하지만 현재 PC 환경에서 SSL/TLS를 이용하여 통신하여도 피싱, 파밍 등의 사이버 공격이 가능하며, 이는 스마트 그리드 환경에서도 동일한 위협이 될 수 있다. SSL / TLS is designed to prevent client / server applications from intercepting, interfering, and forging in the process of communicating over the network. Then, the encryption is performed to maintain authentication and communication confidentiality at the final stage. However, cyber attacks such as phishing and pharming are possible even if they communicate using SSL / TLS in current PC environment, which can be the same threat in smart grid environment.
현재의 웹 환경에서 SSL/TLS 통신 시, 사용자가 올바른 서버에 접속하면, 웹브라우저의 주소창에 배경색이 녹색으로 변하며, 자물쇠 표시, 서버의 회사명 등이 나타나게 된다. 하지만 대부분의 사용자들은 이러한 변화를 잘 인지하지 못한다. 사용자가 이를 인지하지 못하면 피싱, 파밍 등의 공격에 의해 가짜 서버와 접속하여도 이를 인지하지 못하고 ID, PW 등의 개인정보를 입력하여 유출하게 된다.In SSL / TLS communication in the current web environment, when the user connects to the correct server, the background color changes to green in the address bar of the web browser, and the padlock display and the company name of the server are displayed. But most users are not aware of this change. If the user does not recognize it, even if the user accesses the fake server due to an attack such as phishing or pharming, the user does not recognize the information and inputs personal information such as ID and PW.
스마트 그리드 환경에서 사용자는 smart meter를 통해 한 달간의 전력 사용량 및 사용료를 확인 및 결제를 위해 service provider와 통신한다. 이 때, 피싱, 파밍 공격을 당한다면 사용자는 조작된 정보를 보게 되고 조작된 서버와 통신 후 결제 사기 피해 등도 가능하게 된다.In a smart grid environment, the user communicates with a service provider for confirmation and payment of monthly electricity usage and usage fees through a smart meter. At this time, if phishing and pharming attacks are performed, the user will see the manipulated information, and after the communication with the manipulated server, the payment fraud can be avoided.
본 발명과 관련된 선행기술로는 '한국공개특허 10-2010-0085902' 등이 있다.The prior art related to the present invention is disclosed in Korean Patent Laid-Open No. 10-2010-0085902.
본 발명이 해결하고자 하는 첫 번째 과제는 개인 확인 메시지를 이용하여 서버를 인증하는 서버 인증 방법을 제공하는 것이다.A first object of the present invention is to provide a server authentication method for authenticating a server using an individual confirmation message.
본 발명은 상기 과제를 해결하기 위하여, 서버로부터 서버 인증서를 수신하는 단계; 상기 서버에 암호화된 개인 확인 메시지를 포함하는 사용자 인증서를 송신하는 단계; 및 상기 서버로부터 상기 암호화된 개인 확인 메시지를 복호화한 개인 확인 메시지를 수신하여 상기 서버를 인증하는 단계를 포함하는 서버 인증 방법을 제공한다.According to another aspect of the present invention, there is provided a server authentication method comprising: receiving a server certificate from a server; Transmitting a user certificate including an encrypted personal identification message to the server; And receiving the personal verification message decrypting the encrypted personal verification message from the server and authenticating the server.
본 발명의 다른 실시예에 따르면, 상기 서버와 최초 통신시, 상기 서버로부터 사용자 인증서를 수신하는 단계; 상기 서버를 인증하는데 이용할 개인 확인 메시지를 선택하는 단계; 상기 선택된 개인 확인 메시지를 상기 서버의 공개키를 이용하여 암호화하는 단계; 및 상기 암호화된 개인 확인 메시지를 상기 사용자 인증서에 저장하는 단계를 더 포함하는 서버 인증 방법일 수 있다.According to another embodiment of the present invention, there is provided a method comprising: receiving a user certificate from an initial communication with the server; Selecting a personal verification message to be used to authenticate the server; Encrypting the selected personal verification message using a public key of the server; And storing the encrypted personal verification message in the user certificate.
본 발명의 다른 실시예에 따르면, 상기 개인 확인 메시지를 이용한 서버의 인증이 실패한 경우, 상기 서버와의 통신을 중단하는 단계를 더 포함하는 서버 인증 방법일 수 있다.According to another embodiment of the present invention, when the authentication of the server using the personal verification message fails, the server authentication method may further include stopping communication with the server.
본 발명의 다른 실시예에 따르면, 상기 개인 확인 메시지는 문자, 숫자, 또는 그림 중 하나 이상으로 구성되거나, 상기 서버와의 통신은 SSL/TLS 통신인 것을 특징으로 하는 서버 인증 방법일 수 있다.According to another embodiment of the present invention, the personal verification message may be composed of at least one of a letter, a number, and a picture, or the server may be an SSL / TLS communication with the server.
본 발명은 상기 과제를 해결하기 위하여, 사용자에게 서버 인증서를 송신하는 단계; 상기 사용자로부터 암호화된 개인 확인 메시지를 포함하는 사용자 인증서를 수신하는 단계; 상기 수신된 사용자 인증서를 이용하여 상기 사용자와의 세션 설정을 수행하는 단계; 상기 사용자 인증서에 포함된 암호화된 개인 확인 메시지를 서버의 개인키로 복호화하는 단계; 및 상기 복호화된 개인 확인 메시지를 상기 사용자에게 송신하는 단계를 포함하고, 상기 개인 확인 메시지는 상기 사용자가 서버를 인증하는데 이용되는 것을 특징으로 하는 서버 인증 방법을 제공한다.In order to solve the above-described problems, the present invention provides a method of authenticating a user, comprising: transmitting a server certificate to a user; Receiving a user certificate including an encrypted personal verification message from the user; Performing a session setup with the user using the received user certificate; Decrypting the encrypted personal verification message included in the user certificate with the private key of the server; And transmitting the decrypted personal verification message to the user, wherein the personal verification message is used by the user to authenticate the server.
본 발명에 따르면, 사용자가 서버를 더 직관적으로 인식하게 함으로써, 피싱, 파밍 등의 사이버 공격으로부터의 위험을 줄일 수 있다.According to the present invention, the risk of cyber attacks such as phishing, pharming and the like can be reduced by allowing the user to recognize the server more intuitively.
도 1은 본 발명의 일 실시예에 따른 사용자 단말과 서버 간의 서버 인증을 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 사용자 단말에서의 서버 인증 방법의 흐름도이다.
도 3은 본 발명의 다른 실시예에 따른 사용자 단말에서의 서버 인증 방법의 흐름도이다.
도 4는 본 발명의 또 다른 실시예에 따른 사용자 단말에서의 서버 인증 방법의 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 서버에서의 서버 인증 방법의 흐름도이다.
도 6은 개인 확인 메시지를 암호화하여 사용자 인증서에 저장하는 과정을 도시한 것이다.
도 7은 본 발명의 다른 실시예에 따른 클라이언트와 서버 간의 통신을 도시한 것이다.1 is a block diagram illustrating server authentication between a user terminal and a server according to an embodiment of the present invention.
2 is a flowchart of a server authentication method in a user terminal according to an embodiment of the present invention.
3 is a flowchart of a server authentication method in a user terminal according to another embodiment of the present invention.
4 is a flowchart of a server authentication method in a user terminal according to another embodiment of the present invention.
5 is a flowchart of a server authentication method in a server according to an embodiment of the present invention.
FIG. 6 illustrates a process of encrypting a personal verification message and storing it in a user certificate.
7 illustrates communication between a client and a server according to another embodiment of the present invention.
본 발명에 관한 구체적인 내용의 설명에 앞서 이해의 편의를 위해 본 발명이 해결하고자 하는 과제의 해결 방안의 개요 또는 기술적 사상의 핵심을 우선 제시한다.Prior to the description of the concrete contents of the present invention, for the sake of understanding, the outline of the solution of the problem to be solved by the present invention or the core of the technical idea will be given first.
본 발명의 일 실시예에 따른 서버 인증 방법은 서버로부터 서버 인증서를 수신하는 단계, 상기 서버에 암호화된 개인 확인 메시지를 포함하는 사용자 인증서를 송신하는 단계, 및 상기 서버로부터 상기 암호화된 개인 확인 메시지를 복호화한 개인 확인 메시지를 수신하여 상기 서버를 인증하는 단계를 포함한다.A server authentication method according to an embodiment of the present invention includes receiving a server certificate from a server, transmitting a user certificate including an encrypted personal verification message to the server, and transmitting the encrypted personal verification message from the server And authenticating the server by receiving the decrypted personal verification message.
이하 첨부된 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 실시 예를 상세히 설명한다. 그러나 이들 실시예는 본 발명을 보다 구체적으로 설명하기 위한 것으로, 본 발명의 범위가 이에 의하여 제한되지 않는다는 것은 당업계의 통상의 지식을 가진 자에게 자명할 것이다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. It will be apparent to those skilled in the art, however, that these examples are provided to further illustrate the present invention, and the scope of the present invention is not limited thereto.
본 발명이 해결하고자 하는 과제의 해결 방안을 명확하게 하기 위한 발명의 구성을 본 발명의 바람직한 실시예에 근거하여 첨부 도면을 참조하여 상세히 설명하되, 당해 도면에 대한 설명시 필요한 경우 다른 도면의 구성요소를 인용할 수 있음을 미리 밝혀둔다. 아울러 본 발명의 바람직한 실시 예에 대한 동작 원리를 상세하게 설명함에 있어 본 발명과 관련된 공지 기능 또는 구성에 대한 구체적인 설명 그리고 그 이외의 제반 사항이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우, 그 상세한 설명을 생략한다.
BRIEF DESCRIPTION OF THE DRAWINGS The above and other features and advantages of the present invention will become more apparent by describing in detail preferred embodiments thereof with reference to the attached drawings in which: It is possible to quote the above. In the following detailed description of the principles of operation of the preferred embodiments of the present invention, it is to be understood that the present invention is not limited to the details of the known functions and configurations, and other matters may be unnecessarily obscured by the present invention. A detailed description thereof will be omitted.
도 1은 본 발명의 일 실시예에 따른 사용자 단말과 서버 간의 서버 인증을 도시한 블록도이다.
1 is a block diagram illustrating server authentication between a user terminal and a server according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 사용자 단말(110)은 통신부(111) 및 암호화부(112)로 구성되고, 서버(120)는 통신부(121) 및 복호화부(122)로 구성된다. 사용자 단말(110)은 입력부, 저장부, 또는 표시부를 더 포함할 수 있다. 사용자 단말(110)과 서버(120)는 개인 확인 메시지(PIM, Personal Identification Message)를 이용하여 서버를 인증한다. 사용자 단말(110)에서 선택되어 암호화된 개인 확인 메시지를 서버(120)에서 복호화하여 다시 사용자 단말(110)로 송신하여, 상기 서버(120)가 올바른 서버인지를 인증한다. 서버(120)가 복호화한 개인 확인 메시지가 사용자 단말에서 선택된 개인 확인 메시지와 동일하면, 상기 서버(120)는 올바른 서버로 인증하고, 서버(120)가 복호화한 개인 확인 메시지가 사용자 단말에서 선택된 개인 확인 메시지와 상이하면, 상기 서버(120)는 인증되지 못하고, 통신을 중단할 수 있다.The
사용자 단말(110)의 통신부(111)는 서버(120)의 통신부(121)와 통신을 수행함으로써 인증서를 송수신한다.The
보다 구체적으로, 서버(120)와 최초 통신시, 서버(120)로부터 사용자 인증서를 발급받기 위하여 상기 사용자 인증서를 수신한다. 이후, 서버(120)에 접속시, 서버 인증을 위하여, 서버(120)로부터 서버 인증서를 수신하고, 암호화된 개인 확인 메시지를 포함하는 사용자 인증서를 서버(120)에 송신하며, 서버(120)로부터 복호화된 개인 확인 메시지를 수신한다. 서버(120)와의 통신은 SSL/TLS 통신일 수 있다. 또는 서버 인증이 필요한 다양한 통신방법일 수 있다.More specifically, upon initial communication with the
사용자 단말(110)의 암호화부(112)는 서버(120)를 인증하는데 이용하고자 하는 개인 확인 메시지를 서버(120)의 공개키를 이용하여 암호화한다.The
보다 구체적으로, 상기 개인 확인 메시지는 서버(120)가 사용자가 통신하고자 하는 올바른 서버인지를 확인하는데 이용되며, 직관적으로 사용자가 서버를 인증할 수 있도록 상기 개인 확인 메시지는 문자, 숫자, 또는 그림 중 하나 이상으로 구성될 수 있다. 상기 개인 확인 메시지를 입력받기 위하여, 사용자 단말(110)은 입력부를 더 포함할 수 있다. 사용자로부터 입력받은 서버를 인증하기 위한 개인 확인 메시지는 암호화부(112)에서 서버(120)의 공개키를 이용하여 암호화되어, 최초 통신시 통신부(111)가 수신한 사용자 인증서에 저장된다. 암호화는 서버(120)의 공개키를 이용하여 기존 다양한 방법을 통해 암호화할 수 있다. 암호화된 개인 확인 메시지(EPIM, Encrypted Personal Identification Message)는 사용자 인증서의 항목 중 Subject Directory Attributes에 저장될 수 있다. 상기 암호화된 개인 확인 메시지는 서버(120)에서 복호화되어, 사용자 단말이 수신함으로써 서버를 인증하는데 이용된다.More specifically, the personal verification message is used to confirm whether the
사용자 단말(110)은 상기 암호화된 개인 확인 메시지를 포함하는 사용자 인증서를 저장하는 저장부를 더 포함할 수 있다. 또한, 서버(120)에서 복호화된 개인 확인 메시지를 사용자에게 확인받기 위하여, 상기 복호화된 개인 확인 메시지를 표시하는 표시부를 더 포함할 수 있다.The
서버(120)의 통신부(121)는 사용자 단말(110)의 통신부(111)와 서버 인증서, 사용자 인증서, 및 개인 확인 메시지를 송수신한다.The
보다 구체적으로, 사용자 단말(110)과 최초 통신시, 사용자에게 사용자 인증서를 발급하기 위하여, 사용자 인증서를 송신한다. 상기 사용자 인증서를 송신함에 있어서, 사용자가 서버 인증에 이용할 수 있는 개인 확인 메시지를 함께 송신할 수 있다. 사용자는 상기 수신한 개인 확인 메시지 중 하나를 선택하여 서버 인증을 위한 개인 확인 메시지로 이용할 수 있다. 사용자 인증서 발급이 완료된 이후, 사용자 단말과 통신시, 세션 설정을 위하여, 서버 인증서를 사용자 단말(110)에 송신하고, 사용자 단말(110)로부터 암호화된 개인 확인 메시지를 포함하는 사용자 인증서를 수신한다. 또한, 사용자가 서버 인증을 할 수 있도록 복호화부(122)에서 복호화한 개인 확인 메시지를 사용자 단말에 송신한다.More specifically, upon initial communication with the
복호화부(122)는 상기 암호화된 개인 확인 메시지를 복호화한다.The
보다 구체적으로, 복호화부(122)는 통신부(121)가 사용자 단말로부터 수신한 사용자 인증서에 포함된 암호화된 개인 확인 메시지를 서버(120)의 개인키를 이용하여 복호화한다. 상기 복호화된 개인 확인 메시지는 사용자 단말에 재송신되어, 사용자가 서버(120)를 인증하는데 이용된다.More specifically, the
사용자 단말(110)과 서버(120)는 상기와 같은, 서버 인증을 통하여, 인증서를 통한 기본 서버 인증과 더불어, 사용자 자신이 선택한 개인 확인 메시지를 확인하여 올바른 서버와 접속하고 있음을 직관적으로 확인할 수 있다. 서버(120)로부터 상기 개인 확인 메시지를 수신하지 못하거나, 개인 확인 메시지가 일치하지 않으며, 서버(120)는 조작된 서버로 판단하고 통신을 중단할 수 있다.
The
도 2는 본 발명의 일 실시예에 따른 사용자 단말에서의 서버 인증 방법의 흐름도이다.2 is a flowchart of a server authentication method in a user terminal according to an embodiment of the present invention.
210단계는 서버로부터 서버 인증서를 수신하는 단계이다.Step 210 is a step of receiving a server certificate from the server.
보다 구체적으로, 세션 설정을 위하여, 서버로부터 서버 인증서를 수신하는 단계이다. 상기 서버는 SSL/TLS를 제공하는 서버일 수 있고, 상기 서버와의 통신은 SSL/TLS 통신일 수 있다. SSL/TLS 통신 규약에 따라 세션 설정을 위하여, 서버로부터 서버 인증서를 수신한다. 상기 서버 인증서(Server Certificate)는 SSL/TLS 통신 시, 서버측 인증을 위해 이용되는 X.509 형식의 인증서일 수 있다.More specifically, it is a step of receiving a server certificate from a server for setting a session. The server may be a server providing SSL / TLS, and the communication with the server may be an SSL / TLS communication. And receives a server certificate from the server for session establishment according to the SSL / TLS communication protocol. The server certificate may be an X.509 format certificate used for server side authentication in SSL / TLS communication.
220단계는 상기 서버에 암호화된 개인 확인 메시지를 포함하는 사용자 인증서를 송신하는 단계이다.Step 220 is a step of transmitting a user certificate including an encrypted personal identification message to the server.
보다 구체적으로, 세션 설정 및 서버 인증을 위하여, 서버에 암호화된 개인 확인 메시지를 포함하는 사용자 인증서를 송신하는 단계이다. 상기 암호화된 개인 확인 메시지는 사용자가 상기 서버가 올바른 서버인지를 직관적으로 확인할 수 있는 메시지로, 상기 개인 확인 메시지는 문자, 숫자, 또는 그림 중 하나 이상으로 구성될 수 있으며, 서버의 공개키를 이용하여 암호화된다. 상기 사용자 인증서(Client Certificate)는 SSL/TLS 통신 시, 사용자측 인증을 위해 이용되는 X.509 형식의 인증서일 수 있다. 개인 확인 메시지의 선택 및 암호화는 도 4에서 자세히 다루도록 한다. More specifically, for session establishment and server authentication, the step of transmitting a user certificate including an encrypted personal identification message to the server is performed. The encrypted personal verification message can be intuitively confirmed that the server is a correct server, and the personal verification message can be composed of one or more of letters, numbers, or pictures. . The user certificate (Client Certificate) may be an X.509 format certificate used for user side authentication in SSL / TLS communication. The selection and encryption of the personal verification message is discussed in detail in FIG.
230단계는 상기 서버로부터 상기 암호화된 개인 확인 메시지를 복호화한 개인 확인 메시지를 수신하여 상기 서버를 인증하는 단계이다.Step 230 is a step of authenticating the server by receiving the personal verification message decrypting the encrypted personal verification message from the server.
보다 구체적으로, 서버에서 복호화된 개인 확인 메시지를 서버로부터 수신하고, 상기 수신된 개인 확인 메시지가 사용자의 개인 확인 메시지와 동일한지 비교 판단하여, 서버를 인증한다. 서버에서 복호화된 개인 확인 메시지가 사용자의 개인 확인 메시지와 동일한 경우, 상기 서버는 올바른 서버로 확인할 수 있고, 상기 인증된 서버와 통신을 계속 유지한다. 하지만, 서버로부터 복호화된 개인 확인 메시지를 수신하지 못하거나, 서버에서 복호화된 개인 확인 메시지가 사용자의 개인 확인 메시지와 상이한 경우, 상기 서버는 조작된 서버로 판단할 수 있다.
More specifically, the server receives the decrypted personal verification message from the server, compares the received personal verification message with the user's personal verification message, and authenticates the server. If the decrypted personal identification message in the server is identical to the user's personal verification message, the server can verify with the correct server and continue to communicate with the authenticated server. However, if the personal verification message decrypted from the server is not received, or if the personal verification message decrypted by the server is different from the personal verification message of the user, the server can determine that the server is a manipulated server.
도 3은 본 발명의 다른 실시예에 따른 사용자 단말에서의 서버 인증 방법의 흐름도이다.3 is a flowchart of a server authentication method in a user terminal according to another embodiment of the present invention.
310단계는 상기 개인 확인 메시지를 이용한 서버의 인증이 실패한 경우, 상기 서버와의 통신을 중단하는 단계이다.Step 310 is a step of stopping communication with the server when authentication of the server using the personal verification message fails.
보다 구체적으로, 230단계의 인증 결과, 서버로부터 복호화된 개인 확인 메시지를 수신하지 못하거나, 서버에서 복호화된 개인 확인 메시지가 사용자의 개인 확인 메시지와 상이한 경우, 상기 서버는 조작된 서버로 판단하고, 상기 서버와의 통신을 중단한다. 상기 서버는 피싱 또는 파밍 등의 사이버 공격하는 서버일 수 있는바, 상기 서버와의 통신을 중단한다.More specifically, if the personal verification message decrypted from the server is not received as a result of authentication in
도 3의 각 단계에 대한 상세한 설명은 도 1의 사용자 단말(110)에 대한 상세한 설명에 대응하는바, 도 1의 사용자 단말(110)에 대한 상세한 설명으로 대신한다.
The detailed description of each step of FIG. 3 corresponds to a detailed description of the
도 4는 본 발명의 또 다른 실시예에 따른 사용자 단말에서의 서버 인증 방법의 흐름도이다.4 is a flowchart of a server authentication method in a user terminal according to another embodiment of the present invention.
410단계는 상기 서버와 최초 통신시, 상기 서버로부터 사용자 인증서를 수신하는 단계이다.Step 410 is a step of receiving a user certificate from the server at the initial communication with the server.
보다 구체적으로, 서버와 최초 통신시, 사용자 인증을 위해 이용되는 사용자 인증서를 서버로부터 수신한다. 상기 수신한 사용자 인증서는 이후, 서버와의 통신시 사용자 인증을 위해 사용됨과 동시에, 개인 확인 메시지를 이용하여 서버를 인증하는데 이용된다.More specifically, upon initial communication with the server, a user certificate used for user authentication is received from the server. The received user certificate is then used to authenticate the user when communicating with the server and to authenticate the server using the personal authentication message.
420단계는 상기 서버를 인증하는데 이용할 개인 확인 메시지를 선택하는 단계이다.Step 420 is a step of selecting a personal confirmation message to be used for authenticating the server.
보다 구체적으로, 사용자는 서버 인증하는데 이용할 개인 확인 메시지(PIM, Personal Identification Message)을 선택한다. 상기 개인 확인 메시지는 문자, 숫자, 그림 등 사용자가 쉽게 외울 수 있고, 직관적으로 확인할 수 있는 것 중 하나 또는 그러한 것들의 조합일 수 있다. 상기 개인 확인 메시지는 사용자로부터 입력받거나, 개인 확인 메시지 후보군 중 선택될 수 있다. 상기 개인 확인 메시지 후보군은 상기 서버로부터 수신될 수도 있다.More specifically, the user selects a Personal Identification Message (PIM) to be used for server authentication. The personal identification message may be one of a character, a number, a picture, etc., which the user can easily memorize, intuitively confirm, or a combination thereof. The personal verification message may be received from a user or selected from a group of personal verification message candidates. The individual confirmation message candidate group may be received from the server.
430단계는 상기 선택된 개인 확인 메시지를 상기 서버의 공개키를 이용하여 암호화하는 단계이다.Step 430 is a step of encrypting the selected personal verification message using the public key of the server.
보다 구체적으로, 420단계에서 개인 확인 메시지가 선택되면, 상기 개인 확인 메시지를 이용한 인증을 통해 통신을 수행할 서버의 공개키를 이용하여 상기 개인 확인 메시지를 암호화한다. 서버의 공개키를 이용하여 개인 확인 메시지를 암호화함으로써, 상기 서버만을 인증하는데 이용한다.More specifically, when the personal verification message is selected in
440단계는 상기 암호화된 개인 확인 메시지를 상기 사용자 인증서에 저장하는 단계이다.In
보다 구체적으로, 430단계에서 암호화된 개인 확인 메시지를 상기 사용자 인증서에 저장함으로써 이후, 서버와 통신시, 상기 사용자 인증서와 함께 서버로 송신된다. 상기 암호화된 개인 확인 메시지(EPIM, Encrypted Personal Identification Message)는 사용자 인증서의 항목 중 Subject Directory Attributes에 저장될 수 있다. 상기 사용자 인증서의 다른 항목을 기입함으로써 사용자 인증서의 발급이 완료된다.More specifically, the encrypted personal identification message is stored in the user certificate in
도 4의 각 단계에 대한 상세한 설명은 도 1의 사용자 단말(110)에 대한 상세한 설명에 대응하는바, 도 1의 사용자 단말(110)에 대한 상세한 설명으로 대신한다.
The detailed description of each step of FIG. 4 corresponds to a detailed description of the
도 5는 본 발명의 일 실시예에 따른 서버에서의 서버 인증 방법의 흐름도이다.5 is a flowchart of a server authentication method in a server according to an embodiment of the present invention.
510단계는 사용자에게 서버 인증서를 송신하는 단계이다.Step 510 is a step of transmitting a server certificate to the user.
보다 구체적으로, 사용자 단말과의 세션 설정을 위하여, 사용자에게 서버 인증서를 송신한다. 상기 세션 설정은 SSL/TLS 통신 규약에 따라 세션 설정이고, SSL/TLS 통신을 통해 상기 서버 인증서를 송신할 수 있다.More specifically, for establishing a session with a user terminal, a server certificate is transmitted to the user. The session establishment is session establishment according to the SSL / TLS communication protocol, and the server certificate can be transmitted through SSL / TLS communication.
520단계는 상기 사용자로부터 암호화된 개인 확인 메시지를 포함하는 사용자 인증서를 수신하는 단계이다.Step 520 is a step of receiving a user certificate including the encrypted personal verification message from the user.
보다 구체적으로, 통신을 수행하고자 하는 사용자로부터 암호화된 개인 확인 메시지를 포함하는 사용자 인증서를 수신한다. 상기 암호화된 개인 확인 메시지는 사용자단말에서 서버의 공개키를 이용하여 암호화된 개인 확인 메시지이다.More specifically, a user certificate including an encrypted personal identification message is received from a user who intends to perform communication. The encrypted personal identification message is a personal identification message encrypted at the user terminal using the public key of the server.
530단계는 상기 수신된 사용자 인증서를 이용하여 상기 사용자와의 세션 설정을 수행하는 단계이다.Step 530 is a step of establishing a session with the user using the received user certificate.
보다 구체적으로, 520단계에서 수신한 사용자 인증서의 정보를 이용하여 상기 사용자와의 세션 설정을 수행한다. 상기 사용자 인증서를 이용하여 상기 사용자를 인증할 수 있다.More specifically, session establishment with the user is performed using the information of the user certificate received in
540단계는 상기 사용자 인증서에 포함된 암호화된 개인 확인 메시지를 서버의 개인키로 복호화하는 단계이다.Step 540 is a step of decrypting the encrypted personal verification message included in the user certificate with the private key of the server.
보다 구체적으로, 530단계의 세션 설정이 완료된 후, 상기 사용자 인증서에 포함된 암호화된 개인 확인 메시지를 서버의 개인키로 복호화한다. 상기 개인 확인 메시지는 서버의 공개키로 암호화되고, 서버의 개인키로 복호화된다. 상기 서버가 올바른 서버인지를 사용자에게 확인시켜 주기 위하여, 상기 암호화된 개인 확인 메시지를 복호화한다.More specifically, after the session setting in
550단계는 상기 복호화된 개인 확인 메시지를 상기 사용자에게 송신하는 단계이다.Step 550 is a step of transmitting the decrypted personal verification message to the user.
보다 구체적으로, 540단계에서 복호화된 개인 확인 메시지를 상기 사용자에게 송신함으로써 상기 서버가 올바른 서버인 것을 사용자에게 확인시킨다.More specifically, the personal verification message decrypted in
도 5의 각 단계에 대한 상세한 설명은 도 1의 서버(120)에 대한 상세한 설명에 대응하는바, 도 1의 서버(120)에 대한 상세한 설명으로 대신한다.The detailed description of each step of FIG. 5 corresponds to a detailed description of the
본 발명의 실시예에 따른 서버 인증 방법은 스마트 그리드 환경에서 서버/클라이언트 통신 시, 서버를 인증하는데 이용될 수 있다.
The server authentication method according to an embodiment of the present invention can be used to authenticate a server in server / client communication in a smart grid environment.
도 6은 개인 확인 메시지를 암호화하여 사용자 인증서에 저장하는 과정을 도시한 것이다.FIG. 6 illustrates a process of encrypting a personal verification message and storing it in a user certificate.
사용자 단말과 서버가 최초 통신시, 서버는 사용자 단말에 사용자 인증서(Client Certificate, 610)를 발급한다. 상기 사용자 단말은 서버를 인증하기 위한 방법으로 개인 확인 메시지(PIM)을 선택하고, 개인 확인 메시지를 서버의 공개키를 이용하여 암호화하여 암호화된 개인 확인 메시지(EPIM)를 생성한다.(620) 상기 생성된 암호화된 개인 확인 메시지는 상기 사용자 인증서(610)에 저장한다.(630) 상기 암호화된 개인 확인 메시지를 포함하는 사용자 인증서는 이후, 서버를 인증하는데 이용된다.
Upon initial communication between the user terminal and the server, the server issues a user certificate (Client Certificate) 610 to the user terminal. The user terminal selects a personal identification message (PIM) as a method for authenticating the server and generates an encrypted personal identification message (EPIM) by encrypting the personal verification message using the public key of the server. The generated encrypted personal verification message is stored in the
도 7은 본 발명의 다른 실시예에 따른 클라이언트와 서버 간의 통신을 도시한 것이다.7 illustrates communication between a client and a server according to another embodiment of the present invention.
사용자가 SSL/TLS를 제공하는 서버와 통신 시, SSL/TLS 통신 규약에 따라 세션 설정을 위해 서버로부터 서버 인증서를 수신한다. 서버 인증서를 수신 후 사용자는 서버에 사용자 인증서를 전송한다. 서버는 사용자 인증서를 수신 후, 인증서에 저장되어 있는 EPIM을 추출하여 서버의 개인키로 복호화 한다. 서버는 사용자와의 세션 설정을 완료 후, 복호화된 PIM을 사용자에게 송신한다. 사용자는 SSL/TLS이 제공하는 기본 서버 인증 기능 외에도, 자신이 인증서 발급시 선택한 PIM을 확인함으로써 올바른 서버와 접속하고 있음을 더 직관적으로 확인한다. 사용자가 PIM을 확인하지 못한다면, 이는 조작된 서버의 웹사이트로 판단하고 통신을 중단할 수 있다.
When a user communicates with a server providing SSL / TLS, it receives a server certificate from the server for session establishment according to the SSL / TLS communication protocol. After receiving the server certificate, the user sends the user certificate to the server. After receiving the user certificate, the server extracts the EPIM stored in the certificate and decrypts it with the private key of the server. After completing the session setup with the user, the server sends the decrypted PIM to the user. In addition to the basic server authentication functions provided by SSL / TLS, the user more intuitively confirms that he is connecting with the correct server by checking the PIM he selected when issuing the certificate. If the user can not verify the PIM, it can determine that the web site is a malformed server and stop the communication.
본 발명의 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Embodiments of the present invention may be implemented in the form of program instructions that can be executed on various computer means and recorded on a computer readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. As described above, the present invention has been described with reference to particular embodiments, such as specific elements, and specific embodiments and drawings. However, it should be understood that the present invention is not limited to the above- And various modifications and changes may be made thereto by those skilled in the art to which the present invention pertains.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Accordingly, the spirit of the present invention should not be construed as being limited to the embodiments described, and all of the equivalents or equivalents of the claims, as well as the following claims, belong to the scope of the present invention .
110: 사용자 단말
111, 121: 통신부
112: 암호화부
120: 서버
122: 복호화부110: User terminal
111, 121:
112:
120: Server
122:
Claims (8)
상기 서버에 암호화된 개인 확인 메시지를 포함하는 사용자 인증서를 송신하는 단계; 및
상기 서버로부터 상기 암호화된 개인 확인 메시지를 복호화한 개인 확인 메시지를 수신하여 상기 서버를 인증하는 단계를 포함하는 서버 인증 방법.Receiving a server certificate from a server;
Transmitting a user certificate including an encrypted personal identification message to the server; And
And receiving the personal verification message decrypting the encrypted personal verification message from the server and authenticating the server.
상기 서버와 최초 통신시,
상기 서버로부터 사용자 인증서를 수신하는 단계;
상기 서버를 인증하는데 이용할 개인 확인 메시지를 선택하는 단계;
상기 선택된 개인 확인 메시지를 상기 서버의 공개키를 이용하여 암호화하는 단계; 및
상기 암호화된 개인 확인 메시지를 상기 사용자 인증서에 저장하는 단계를 더 포함하는 서버 인증 방법.The method according to claim 1,
Upon initial communication with the server,
Receiving a user certificate from the server;
Selecting a personal verification message to be used to authenticate the server;
Encrypting the selected personal verification message using a public key of the server; And
And storing the encrypted personal verification message in the user certificate.
상기 개인 확인 메시지를 이용한 서버의 인증이 실패한 경우, 상기 서버와의 통신을 중단하는 단계를 더 포함하는 서버 인증 방법.The method according to claim 1,
And stopping communication with the server when authentication of the server using the personal verification message fails.
상기 개인 확인 메시지는 문자, 숫자, 또는 그림 중 하나 이상으로 구성되는 것을 특징으로 하는 서버 인증 방법.The method according to claim 1,
Wherein the personal verification message comprises at least one of a letter, a number, and a picture.
상기 서버와의 통신은 SSL/TLS 통신인 것을 특징으로 하는 서버 인증 방법.The method according to claim 1,
And the communication with the server is SSL / TLS communication.
상기 사용자로부터 암호화된 개인 확인 메시지를 포함하는 사용자 인증서를 수신하는 단계;
상기 수신된 사용자 인증서를 이용하여 상기 사용자와의 세션 설정을 수행하는 단계;
상기 사용자 인증서에 포함된 암호화된 개인 확인 메시지를 서버의 개인키로 복호화하는 단계; 및
상기 복호화된 개인 확인 메시지를 상기 사용자에게 송신하는 단계를 포함하고,
상기 개인 확인 메시지는 상기 사용자가 서버를 인증하는데 이용되는 것을 특징으로 하는 서버 인증 방법.Sending a server certificate to the user;
Receiving a user certificate including an encrypted personal verification message from the user;
Performing a session setup with the user using the received user certificate;
Decrypting the encrypted personal verification message included in the user certificate with the private key of the server; And
And transmitting the decrypted personal verification message to the user,
Wherein the personal verification message is used by the user to authenticate the server.
상기 사용자와의 통신은 SSL/TLS 통신인 것을 특징으로 하는 서버 인증 방법.The method according to claim 6,
And the communication with the user is SSL / TLS communication.
A computer-readable recording medium storing a program for causing a computer to execute the method according to any one of claims 1 to 7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130135566A KR20150053520A (en) | 2013-11-08 | 2013-11-08 | A server authentication method using PIM(Personal Identification Message) on SSL/TLS |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130135566A KR20150053520A (en) | 2013-11-08 | 2013-11-08 | A server authentication method using PIM(Personal Identification Message) on SSL/TLS |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20150053520A true KR20150053520A (en) | 2015-05-18 |
Family
ID=53390078
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130135566A KR20150053520A (en) | 2013-11-08 | 2013-11-08 | A server authentication method using PIM(Personal Identification Message) on SSL/TLS |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20150053520A (en) |
-
2013
- 2013-11-08 KR KR1020130135566A patent/KR20150053520A/en not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110708170B (en) | Data processing method and device and computer readable storage medium | |
CN103067401B (en) | Method and system for key protection | |
JP6105721B2 (en) | Start of corporate trigger type 2CHK association | |
US11120436B2 (en) | Authentication system and method for server-based payments | |
JP6012125B2 (en) | Enhanced 2CHK authentication security through inquiry-type transactions | |
EP4027576B1 (en) | Efficient methods for protecting identity in authenticated transmissions | |
KR101621254B1 (en) | Payment method, computer readable recording medium and system using virtual number based on otp | |
TWI497336B (en) | Data security devices and computer program | |
CN102801710B (en) | A kind of network trading method and system | |
CN107358441B (en) | Payment verification method and system, mobile device and security authentication device | |
EP4081921B1 (en) | Contactless card personal identification system | |
CN111431713B (en) | Private key storage method and device and related equipment | |
CN103078742B (en) | Generation method and system of digital certificate | |
US20130290718A1 (en) | Mobile storage device and the data processing system and method based thereon | |
CN102789607A (en) | Network transaction method and system | |
CN102694782B (en) | Security information exchange device based on internet and method | |
CN104182876B (en) | Secure payment transactions method and system | |
CN103036681B (en) | A kind of password safety keyboard device and system | |
CN104464117A (en) | Automatic tell machine money withdrawing method and system based on dynamic two-dimensional code | |
GB2522445A (en) | Secure mobile wireless communications platform | |
CN103139210A (en) | Method of safety authentication | |
CN104579659A (en) | Device for safety information interaction | |
CN108924822B (en) | Card-contained secure communication method based on trusted environment and mobile terminal | |
CN103312671B (en) | The method and system of validate service device | |
US20200344047A1 (en) | Systems and methods for secure communication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |