KR101358704B1 - 싱글 사인 온을 위한 인증 방법 - Google Patents

싱글 사인 온을 위한 인증 방법 Download PDF

Info

Publication number
KR101358704B1
KR101358704B1 KR1020120149476A KR20120149476A KR101358704B1 KR 101358704 B1 KR101358704 B1 KR 101358704B1 KR 1020120149476 A KR1020120149476 A KR 1020120149476A KR 20120149476 A KR20120149476 A KR 20120149476A KR 101358704 B1 KR101358704 B1 KR 101358704B1
Authority
KR
South Korea
Prior art keywords
terminal
random value
server
transmitted
token
Prior art date
Application number
KR1020120149476A
Other languages
English (en)
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 to KR1020120149476A priority Critical patent/KR101358704B1/ko
Application granted granted Critical
Publication of KR101358704B1 publication Critical patent/KR101358704B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/41User authentication where a single sign-on provides access to a plurality of computers
    • 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
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • 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/321Cryptographic 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 a third party or a trusted authority
    • H04L9/3213Cryptographic 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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 싱글 사인 온을 위한 인증 방법에 관한 것이다. 보다 상세하게는 싱글 사인 온(Single Sign On)이 구현된 시스템 상에서 재전송 공격(replay attack) 등에 효과적으로 대응할 수 있도록 하는 싱글 사인 온을 위한 인증 방법에 관한 것이다. 본 발명에 의하면 단말과 싱글 온 사인 시스템이 구현된 복수 개의 서버 각각에서 생성되는 랜덤 값을 이용하여 단말과 서버 간에 검증이 이루어지므로 기존 싱글 온 사인 시스템에서 문제가 되던 재전송 공격(replay attack) 등에 효과적으로 대응할 수 있어 싱글 온 사인 시스템의 보안성을 크게 향상시킬 수 있는 효과를 갖는다.

Description

싱글 사인 온을 위한 인증 방법 {Method of Authenticating for single sign on}
본 발명은 싱글 사인 온을 위한 인증 방법에 관한 것이다. 보다 상세하게는 싱글 사인 온(Single Sign On)이 구현된 시스템 상에서 재전송 공격(replay attack) 등에 효과적으로 대응할 수 있도록 하는 싱글 사인 온을 위한 인증 방법에 관한 것이다.
일반적으로 싱글 사인 온(Single Sine On) 시스템이란 한 번의 인증(예를 들어, 아이디/패스워드를 이용한 로그인)만으로 여러 개의 서비스 및 시스템을 인증된 것처럼 사용할 수 있는 시스템을 의미하며, 이를 이용할 경우 매번 인증을 거치지 않고 1개의 계정만으로도 다양한 서비스 및 시스템에 접속할 수 있으므로 사용자 편의성 증대 및 관리 비용 절감 등의 장점을 갖는다.
싱글 사인 온 시스템의 일 예로 웹 브라우저 상에서 싱글 사인 온을 구현하는 방법을 설명하면 다음과 같다.
먼저, 클라이언트의 브라우저를 통해 접속하고자 하는 특정 서버에 미리 등록된 아이디/패스워드를 입력하여 특정 서버에서 인증이 완료되면 특정 서버는 해당 서버에서만 확인가능한 토큰을 클라이언트 측으로 발행하게 되고, 클라이언트는 발행된 토큰을 브라우저 쿠키(Browser Cookie)에 저장한 후 서버 접속 시마다 쿠키에 포함된 토큰이 서버에 전달되도록 한다.
그리고, 다른 서버에 접속하는 경우 별도의 아이디/패스워드로 해당 서버에 인증을 하는 대신 해당 서버는 토큰을 복호화하여 이미 한번 인증을 했다는 것으로 판단한 후 별도의 인증을 패스하는 방식으로 싱글 사인 온 시스템이 구현될 수 있게 된다.
그러나, 상기 방법의 경우 공격자가 특정 클라이언트의 네트워크 트래픽을 감시하여 특정 클라이언트로부터 서버로 전송되는 HTTP header에 포함된 토큰 정보를 가로챈 후 가로챈 토큰 정보를 공격자 단말 browser cookie에 설정한 후 전송하는 재전송 공격(replay attack)에 의해 싱글 사인 온 시스템이 적용된 모든 시스템이 공격받을 수 있게 되는 문제점이 있었다.
이에 따라, 이러한 문제점을 해결하기 위한 종래 기술로써 클라이언트가 서버 측으로부터 SSL(Secure Socket Layer) 인증서를 구매하여 HTTP header 자체를 암호화하는 방법, 클라이언트에서 서버 측으로 아이디/비밀번호 외에 클라이언트의 MAC address 또는 hdd serial number 등을 추가적으로 전송하는 방법, 또는 서버에서 클라이언트 측으로 매번 다른 토큰을 발행하고 이전 토큰을 패기하는 방법 등이 개발되었다.
그러나, 상기 방법들의 경우에도 인증서 구매에 따른 비용이 추가적으로 발생하고 모든 트래픽이 암호화되므로 시스템의 성능 저하가 발생하는 문제점이 있었고, 추가적인 플러그인을 설치해야 하므로 불편함이 따르는 문제점이 있었으며, 매번 폐기되는 토큰을 관리하기 위한 별도의 중앙 서버가 요구되는 문제점이 있었다.
본 발명은 상기와 같은 문제점을 해결하고자 안출된 것으로 클라이언트와 서버 간의 인증을 위해 클라이언트로부터 전송되는 아이디/비밀번호 외에 클라이언트에서 별도의 랜덤 값을 생성하여 서버로 전송하면 서버가 이를 검증하여 클라이언트와 서버 간의 인증이 이루어지도록 하는 싱글 사인 온을 위한 인증 방법을 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 싱글 사인 온을 위한 인증 방법은 단말과 복수 개의 서버 간의 싱글 사인 온(Single Sine On)을 위한 인증 방법에 있어서, (a) 상기 단말 상에서 상기 복수 개의 서버 중 하나의 서버에 접속하기 위한 아이디 및 비밀번호가 입력되면 상기 단말이 제1 랜덤 값을 생성한 후 저장하는 단계; (b) 상기 단말이 상기 제1 랜덤 값을 암호화한 후 상기 하나의 서버로 전송하는 단계; (c) 상기 하나의 서버가 상기 전송된 제1 랜덤 값을 등록하는 단계; (d) 상기 입력된 아이디 및 비밀번호가 상기 하나의 서버로 전송되면 상기 하나의 서버가 상기 등록된 제1 랜덤 값이 포함된 토큰을 생성한 후 상기 단말로 전송하는 단계; (e) 상기 단말이 상기 하나의 서버에 접속 시 상기 하나의 서버가 상기 단말로부터 전송되는 토큰을 검증한 후 제2 랜덤 값을 생성하여 상기 단말로 전송하는 단계; (f) 상기 단말이 상기 제1 랜덤 값을 이용하여 상기 전송된 제2 랜덤 값을 암호화한 후 상기 하나의 서버로 전송하는 단계; 및 (g) 상기 하나의 서버가 상기 단말로부터의 상기 제2 랜덤 값 전송 시 함께 전송되는 토큰으로부터 추출되는 제1 랜덤 값을 이용하여 상기 제2 랜덤 값을 암호화한 후 상기 단말로부터 전송받은 암호화된 제2 랜덤 값과 상기 하나의 서버 상에서 암호화된 제2 랜덤 값을 비교하여 비교 결과에 따라 상기 단말의 인증을 완료하는 단계를 포함하는 것을 특징으로 한다.
또한, 상기 (a) 단계에서 상기 제1 랜덤 값은 상기 단말의 로컬 스토리지(local storage)에 저장될 수 있다.
또한, 상기 (c) 단계에서 상기 제1 랜덤 값은 상기 하나의 서버의 세션(session)에 등록될 수 있다.
또한, 상기 (d) 단계에 이어서 (d1) 상기 단말이 상기 하나의 서버로부터 전송된 토큰을 저장하는 단계를 더 포함할 수 있다.
또한, 상기 하나의 서버로부터 전송된 토큰은 상기 단말의 쿠키(cookie)에 저장될 수 있다.
또한, 상기 (b) 단계에서 상기 제1 랜덤 값은 공개키 암호화 알고리즘에 의해 암호화될 수 있다.
또한, 상기 (f) 단계 및 상기 (g) 단계에서 상기 제2 랜덤 값은 대칭키 암호화 알고리즘에 의해 암호화될 수 있다.
또한, 본 발명의 또 다른 바람직한 실시예에 따른 싱글 사인 온을 위한 인증 방법은 단말과 복수 개의 서버 간의 싱글 사인 온(Single Sine On)을 위한 인증 방법에 있어서, (a) 상기 단말 상에서 상기 복수 개의 서버 중 하나의 서버에 접속하기 위한 아이디 및 비밀번호가 입력되면 상기 단말이 랜덤 값을 생성한 후 저장하는 단계; (b) 상기 단말이 상기 랜덤 값을 암호화한 후 상기 하나의 서버로 전송하는 단계; (c) 상기 하나의 서버가 상기 전송된 랜덤 값을 등록하는 단계; (d) 상기 입력된 아이디 및 비밀번호가 상기 하나의 서버로 전송되면 상기 하나의 서버가 상기 등록된 랜덤 값이 포함된 토큰을 생성한 후 상기 단말로 전송하는 단계; (e) 상기 단말이 상기 랜덤 값 및 상기 단말의 현재 시간 정보를 포함하는 메시지 인증 코드(Message Authentication Code)를 생성한 후 상기 메시지 인증 코드 및 상기 토큰을 상기 하나의 서버로 전송하는 단계; (f) 상기 서버가 상기 토큰을 검증하는 단계; 및 (g) 상기 하나의 서버가 상기 등록된 랜덤 값 및 상기 서버의 현재 시간 정보를 포함하는 메시지 인증 코드를 생성한 후 상기 단말로부터 전송되는 메시지 인증 코드와 비교하여 비교 결과에 따라 상기 단말에 대한 인증을 완료하는 단계를 포함하는 것을 특징으로 한다.
또한, 상기 (a) 단계에서 상기 랜덤 값은 상기 단말의 로컬 스토리지(local storage)에 저장될 수 있다.
또한, 상기 (b) 단계에서 상기 랜덤 값은 공개키 암호화 알고리즘에 의해 암호화될 수 있다.
또한, 상기 (c) 단계에서 상기 랜덤 값은 상기 하나의 서버의 세션(session)에 등록될 수 있다.
또한, 상기 (d) 단계에 이어서 (d1) 상기 단말이 상기 하나의 서버로부터 전송된 토큰을 저장하는 단계를 더 포함할 수 있다.
또한, 상기 하나의 서버로부터 전송된 토큰은 상기 단말의 쿠키(cookie)에 저장될 수 있다.
또한, 상기 (e) 단계에서 상기 메시지 인증 코드는 상기 단말의 쿠키에 포함되어 상기 하나의 서버로 전송될 수 있다.
또한, 상기 (d) 단계에서 상기 단말의 로그인 시간 정보가 상기 하나의 서버로 더 전송되고 상기 하나의 서버는 상기 로그인 시간 정보를 이용하여 상기 하나의 서버와 상기 단말 간의 오차 시간 정보를 더 생성할 수 있다.
또한, 상기 (f) 단계에서 상기 하나의 서버는 상기 오차 시간 정보를 이용하여 상기 하나의 서버에서 생성되는 메시지 인증 코드에 포함된 현재 시간 정보 및 상기 단말로부터 전송된 메시지 인증 코드에 포함된 현재 시간 정보를 비교할 수 있다.
또한, 본 발명의 또 다른 바람직한 실시예에 따른 싱글 사인 온을 위한 인증 방법은 단말과 복수 개의 서버 간의 싱글 사인 온(Single Sine On)을 위한 인증 방법에 있어서, (a) 상기 단말 상에서 상기 복수 개의 서버 중 하나의 서버에 접속하기 위한 아이디 및 비밀번호가 입력되면 상기 단말이 제1 랜덤 값을 생성한 후 저장하는 단계; (b) 상기 단말이 상기 제1 랜덤 값을 암호화한 후 상기 입력된 아이디, 비밀번호, 및 상기 암호화된 제1 랜덤 값을 상기 하나의 서버로 전송하는 단계; (c) 상기 하나의 서버가 상기 전송된 제1 랜덤 값이 포함된 토큰을 생성하여 상기 단말로 전송하는 단계; (d) 상기 단말이 상기 하나의 서버에 접속 시 상기 하나의 서버가 상기 단말로부터 전송되는 토큰을 검증한 후 제2 랜덤 값을 생성하여 상기 단말로 전송하는 단계; (e) 상기 단말이 상기 제1 랜덤 값을 이용하여 상기 전송된 제2 랜덤 값을 암호화한 후 상기 하나의 서버로 전송하는 단계; 및 (f) 상기 하나의 서버가 상기 단말로부터의 상기 제2 랜덤 값 전송 시 함께 전송되는 토큰으로부터 추출되는 제1 랜덤 값을 이용하여 상기 제2 랜덤 값을 암호화한 후 상기 단말로부터 전송받은 암호화된 제2 랜덤 값과 상기 하나의 서버 상에서 암호화된 제2 랜덤 값을 비교하여 비교 결과에 따라 상기 단말의 인증을 완료하는 단계를 포함하는 것을 특징으로 한다.
본 발명에 의하면 단말과 싱글 온 사인 시스템이 구현된 복수 개의 서버 각각에서 생성되는 랜덤 값을 이용하여 단말과 서버 간에 검증이 이루어지므로 기존 싱글 온 사인 시스템에서 문제가 되던 재전송 공격(replay attack) 등에 효과적으로 대응할 수 있어 싱글 온 사인 시스템의 보안성을 크게 향상시킬 수 있는 효과를 갖는다.
또한, 인증을 위한 별도의 프로그램 또는 플러그인을 설치할 필요가 없으므로 싱글 온 사인 시스템 사용자의 편의성을 증대시킴과 동시에 기존의 싱글 온 사인 시스템에 적용이 용이한 효과를 갖는다.
도 1은 본 발명의 제1 실시예에 따른 싱글 사인 온을 위한 인증 방법의 순서도,
도 2는 본 발명의 제1 실시예에 따른 싱글 사인 온을 위한 인증 방법에 대한 참고도,
도 3은 본 발명의 제2 실시예에 따른 싱글 사인 온을 위한 인증 방법의 순서도, 및
도 4는 본 발명의 제3 실시예에 따른 싱글 사인 온을 위한 인증 방법의 순서도 이다.
이하, 본 발명의 바람직한 실시예를 첨부한 도면들을 참조하여 상세하게 설명한다. 우선 각 도면의 구성 요소들에 참조 부호를 첨가함에 있어서, 동일한 구성 요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어서, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. 또한, 이하에서 본 발명의 바람직한 실시예를 설명할 것이나, 본 발명의 기술적 사상은 이에 한정하거나 제한되지 않고 당업자에 의해 실시될 수 있음은 물론이다.
도 1은 본 발명의 제1 실시예에 따른 싱글 사인 온 시스템을 위한 인증 방법의 순서도, 도 2는 본 발명의 제1 실시예에 따른 싱글 사인 온 시스템을 위한 인증 방법에 대한 참고도이다.
여기에서, 본 발명의 제1 실시예에 따른 싱글 사인 온 시스템을 위한 인증 방법의 경우 단말에서 실행되는 웹 브라우저 상에서 적용될 수 있으며, 아래에서는 이를 기준으로 본 발명의 제1 실시예에 따른 싱글 사인 온 시스템을 위한 인증 방법을 설명하도록 한다.
도 1에 도시된 바와 같이 S10에서 단말(도 2의 browser) 상에서 복수 개의 서버 중 하나의 서버(도 2의 webserver1)에 접속하기 위한 아이디 및 비밀번호가 입력되면(도 2의 4) input id/password, 5) submit)), S20에서 상기 단말이 제1 랜덤 값을 생성한 후 저장한다.(도 2의 6. make R(random), 7. localStorage.setItem("sso_seq", R))
이때, S10에서 상기 제1 랜덤 값은 자바 스크립트(javascript) 기반으로 생성될 수 있고, S20에서 상기 제1 랜덤값은 상기 단말의 로컬 스토리지(local storage)에 저장될 수 있는데, 여기에서 로컬 스토리지란 네트워크로 전송되지 않는 웹브라우저 표준 저장소, 다시 말해서 HTML5 기반으로 웹 페이지의 데이터를 저장할 수 있도록 단말 상에 구현되는 별도의 저장 공간을 의미하며, 상기와 같은 로컬 스토리지에 저장되는 정보의 경우 웹브라우저를 닫는 경우에도 저장 상태가 유지될 뿐만 아니라 헤더(다시 말해서, http header)에 포함되지 않으므로 네크워크를 통해 상기 저장된 정보가 외부로 유출되는 것이 방지될 수 있다.
S30에서 상기 단말이 상기 제1 랜덤 값을 암호화한 후 상기 하나의 서버로 전송한다.(도 2의 8. ajax mkr.jsp?RSA(R), id)
이때, S30에서 상기 제1 랜덤 값은 RSA(Rivest Shamir Adleman) 등의 공개키 암호화 알고리즘에 의해 암호화될 수 있으며, 상기 공개키는 상기 하나의 서버로부터 미리 전송받은 상기 하나의 서버의 공개키일 수 있다.
여기에서, 상기 제1 랜덤 값을 상기 하나의 서버의 공개키를 이용한 공개키 암호화 알고리즘에 의해 암호화하는 이유는 상기 제1 랜덤 값을 안전하게 상기 하나의 서버로 전송할 수 있도록 함과 동시에 싱글 사인 온 시스템이 적용된 복수 개의 서버 각각에서 상기 하나의 서버의 공개키를 이용하여 상기 단말에서 생성되는 제1 랜덤 값을 검증할 수 있도록 하기 위함이다.
S40에서 상기 하나의 서버가 상기 단말로부터 전송된 암호화된 제1 랜덤 값을 등록한다.(도 2의 9. session add R)
이때, S40에서 상기 단말로부터 전송된 암호화된 제1 랜덤 값은 상기 하나의 서버의 세션(session)에 등록될 수 있다.
S50에서 상기 단말 상에서 입력된 아이디 및 비밀번호가 상기 하나의 서버로 전송되고(도 2의 10. real submit(id/password), S60에서 상기 하나의 서버가 S40에서 등록된 암호화된 제1 랜덤 값이 포함된 토큰을 생성한 후 상기 단말로 전송한다.(도 2의 11. T1=maketoken(id,old,R), 12. setcookie(token, T1)
이때, S60에서 상기 하나의 서버에서 생성되는 토큰은 상기 하나의 서버에서만 복호화될 수 있다.
S70에서 상기 단말이 상기 하나의 서버로부터 전송된 토큰을 저장한다.
이때, S70에서 상기 하나의 서버로부터 전송된 토큰은 상기 단말의 쿠키(cookie)에 저장될 수 있고, 이에 따라 상기 단말이 상기 하나의 서버에 접속 시마다 상기 단말의 쿠키에 포함된 토큰이 상기 하나의 서버로 전송될 수 있게 된다.
S80에서 상기 단말이 상기 하나의 서버에 접속 시(다시 말해서, 상기 단말이 상기 하나의 서버에 구현된 메인 페이지에 접속 시)(도 2의 13. main.jsp) 상기 하나의 서버가 상기 단말로부터 전송되는 토큰을 검증한 후 제2 랜덤 값을 생성하여 상기 단말로 전송한다.(도 2의 14. verifytoken(T1), 15. R2=Random, 16. sso_replay=R2(v.js))
이때, S80에서 상기 하나의 서버는 상기 단말로부터 전송된 토큰을 복호화하여 상기 단말로부터 전송된 토큰에 대한 검증을 수행할 수 있고, 상기 제2 랜덤 값은 자바 스크립트 기반으로 생성될 수 있다.
S90에서 상기 단말이 상기 제1 랜덤 값을 이용하여 상기 하나의 서버로부터 전송된 제2 랜덤 값을 암호화한 후 상기 하나의 서버로 전송한다.(도 2의 17. sso_reply=ENC(R,R2), 18. ajax(verify_r.jsp?sso_replay)
이때, S90에서 상기 단말은 상기 단말의 로컬 스토리지에 저장된 상기 제1 랜덤 값을 가져온 후 상기 제1 랜덤 값을 암호화 키로 사용하여 상기 제2 랜덤 값을 암호화할 수 있고, 상기 제2 랜덤 값은 SEED, ARIA, AES 등의 대칭키 암호화 알고리즘에 암호화될 수 있다.
S100에서 상기 하나의 서버가 S40에서 등록된 상기 제1 랜덤 값을 이용하여 (다시 말해서, 상기 토큰으로부터 상기 제1 랜덤 값을 추출하여)상기 제2 랜덤 값을 암호화한 후 상기 단말로부터 전송받은 상기 암호화된 제2 랜덤 값과 상기 하나의 서버 상에서 암호화된 제2 랜덤 값을 비교하여 비교 결과에 따라 상기 단말을 인증하면 종료가 이루어진다.(도 2의 19. extract R from T1, 20. ?ENC(R, R2) = sso_replay))
다시 말해서, 상기 단말로부터 전송받은 상기 암호화된 제2 랜덤 값과 상기 하나의 서버 상에서 암호화된 제2 랜덤 값이 일치하는 경우 상기 하나의 서버는 상기 단말에 대한 인증이 성공한 것으로 처리할 수 있고, 상기 단말로부터 전송받은 상기 암호화된 제2 랜덤 값과 상기 하나의 서버 상에서 암호화된 제2 랜덤 값이 일치하지 않는 경우 상기 하나의 서버는 상기 단말에 대한 인증이 실패한 것으로 처리할 수 있다.
또한, 상기 단말과 상기 하나의 서버 간의 인증이 완료된 후 상기 단말이 싱글 사인 온이 구현된 다른 서버에 접속하고자 하는 경우에는 상기 하나의 서버를 제외한 다른 서버가 상기 단말로부터 전송되는 쿠키에 포함된 토큰을 검증한 후 별도의 랜덤 값을 생성하여 상기 단말로 전송하고 상기 단말은 상기 제1 랜덤 값을 이용하여 별도의 랜덤 값을 암호화한 후 상기 다른 서버로 전송하며, 상기 다른 서버는 상기 단말로부터 전송된 암호화된 별도의 랜덤 값과 상기 다른 서버 상에서 상기 제1 랜덤 값을 이용하여 암호화되는 별도의 랜덤 값을 비교하여 비교 결과에 따라 상기 단말을 인증하는 방식으로 상기 단말이 상기 별도의 서버에 아이디 및 비밀번호를 입력하지 않더라도 상기 별도의 서버에 접속이 가능해진다.(도 2의 23. verifytoken(T1), 24. R3=Random, 25. ss0_replay=R3(v.js))
도 3은 본 발명의 제2 실시예에 따른 싱글 사인 온을 위한 인증 방법의 순서도 이다.
여기에서, 본 발명의 제2 실시예에 따른 싱글 사인 온을 위한 인증 방법의 경우도 상기 방법이 웹브라우저에 적용되는 것을 기준으로 설명하도록 한다.
도 3에 도시된 바와 같이 S110에서 단말 상에서 복수 개의 서버 중 하나의 서버에 접속하기 위한 아이디 및 비밀번호가 입력되며, S120에서 상기 단말이 랜덤 값을 생성한 후 저장한다.
이때, S120에서 상기 랜덤 값은 자바 스크립트(javascript) 기반으로 생성될 수 있고, 상기 단말의 로컬 스토리지(local storage)에 저장될 수 있다.
S130에서 상기 단말이 상기 랜덤 값을 암호화한 후 상기 하나의 서버로 전송한다.
이때, S130에서 상기 랜덤 값은 RSA(Rivest Shamir Adleman) 등의 공개키 암호화 알고리즘에 의해 암호화될 수 있으며, 상기 공개키는 상기 하나의 서버로부터 미리 전송받은 공개키일 수 있다.
S140에서 상기 하나의 서버가 상기 단말로부터 전송된 암호화된 랜덤 값을 등록한다.
이때, S140에서 상기 단말로부터 전송된 암호화된 랜덤 값은 상기 하나의 서버의 세션(session)에 등록될 수 있다.
S150에서 상기 단말 상에서 입력된 아이디 및 비밀번호가 상기 하나의 서버로 전송되고, S160에서 상기 하나의 서버가 S140에서 등록된 암호화된 랜덤 값이 포함된 토큰을 생성한 후 상기 단말로 전송한다.
이때, S150에서 상기 단말의 로그인 시간 정보가 상기 하나의 서버로 더 전송되고, 상기 하나의 서버는 상기 로그인 시간 정보를 이용하여 상기 하나의 서버와 상기 단말 간의 오차 시간 정보를 더 생성할 수 있다.
또한, S160에서 상기 하나의 서버에서 생성되는 토큰은 상기 하나의 서버에서만 복호화될 수 있다.
S170에서 상기 단말이 상기 하나의 서버로부터 전송된 토큰을 저장한다.
이때, S170에서 상기 하나의 서버로부터 전송된 토큰은 상기 단말의 쿠키(cookie)에 저장될 수 있고, 이에 따라 상기 단말이 상기 하나의 서버에 접속 시마다 상기 단말의 쿠키에 포함된 토큰이 상기 하나의 서버로 전송될 수 있게 된다.
S180에서 상기 단말이 상기 랜덤 값 및 상기 단말 상에서 계산되는 현재 시간 정보를 포함하는 메시지 인증 코드(Message Authentication Code)를 생성한 후 상기 메시지 인증 코드 및 상기 토큰을 상기 하나의 서버로 전송한다.
S190에서 상기 하나의 서버가 상기 단말로부터 전송된 토큰을 검증한 후 S200에서 상기 하나의 서버가 S140에서 등록된 암호화된 랜덤 값 및 상기 하나의 서버의 현재 시간 정보를 포함하는 메시지 인증 코드를 생성한 후 상기 단말로부터 전송되는 메시지 인증 코드와 비교하여 비교 결과에 따라 상기 단말에 대한 인증을 완료하면 종료가 이루어진다.
이때, S200에서 상기 하나의 서버는 상기 하나의 서버에서 생성되는 메시지 인증 코드에 포함된 암호화된 랜덤 값과 상기 단말로부터 전송되는 메시지 인증 코드에 포함된 랜덤 값을 비교하고, S150에서 계산된 오차 시간 정보를 이용하여 상기 하나의 서버에서 생성되는 메시지 인증 코드에 포함된 현재 시간 정보와 상기 단말로부터 전송되는 메시지 인증 코드에 포함된 현재 시간 정보를 비교하여 상기 단말에 대한 인증을 완료할 수 있다.
다시 말해서, 상기 단말로부터 전송받은 메시지 인증 코드와 상기 하나의 서버 상에서 생성된 메시지 인증 코드가 일치하는 경우 상기 하나의 서버는 상기 단말에 대한 인증이 성공한 것으로 처리할 수 있고, 상기 단말로부터 전송받은 메시지 인증 코드와 상기 하나의 서버 상에서 생성된 메시지 인증 코드가 일치하지 않는 경우 상기 하나의 서버는 상기 단말에 대한 인증이 실패한 것으로 처리할 수 있다.
또한, 상기 하나의 서버가 S150에서 계산된 오차 시간 정보를 이용하여 상기 하나의 서버에서 생성되는 메시지 인증 코드에 포함된 현재 시간 정보와 상기 단말로부터 전송되는 메시지 인증 코드에 포함된 현재 시간 정보를 비교하는 이유는 상기 단말의 현재 시간과 상기 하나의 서버의 현재 시간의 서로 다른 경우 이를 고려하기 위함이다.
도 4는 본 발명의 제3 실시예에 따른 싱글 사인 온을 위한 인증 방법의 순서도 이다.
여기에서, 본 발명의 제3 실시예에 따른 싱글 사인 온을 위한 인증 방법의 경우도 상기 방법이 웹브라우저에 적용되는 것을 기준으로 설명하도록 한다.
도 4에 도시된 바와 같이 S310에서 단말 상에서 상기 복수 개의 서버 중 하나의 서버에 접속하기 위한 아이디 및 비밀번호가 입력되면, S320에서 상기 단말이 제1 랜덤 값을 생성한 후 저장한다.
이때, S320에서 상기 제1 랜덤 값은 자바 스크립트(javascript) 기반으로 생성될 수 있고, 상기 생성된 제1 랜덤값은 상기 단말의 로컬 스토리지(local storage)에 저장될 수 있다.
S330에서 상기 단말이 상기 제1 랜덤 값을 암호화한 후 상기 단말 상에서 입력된 아이디, 비밀번호, 및 상기 암호화된 제1 랜덤 값을 상기 하나의 서버로 동시에 전송한다.
이때, S330에서 상기 제1 랜덤 값은 RSA(Rivest Shamir Adleman) 등의 공개키 암호화 알고리즘에 의해 암호화될 수 있고, 상기 공개키는 상기 하나의 서버로부터 미리 전송받은 공개키일 수 있으며, 상기와 같이 상기 단말이 상기 단말 상에서 입력된 아이디, 비밀번호, 및 상기 암호화된 제1 랜덤 값을 상기 하나의 서버로 동시에 전송함으로써 상기 단말과 상기 하나의 서버 간의 싱글 사인 온을 위한 인증 과정에 소요되는 처리 시간을 단축하는 것이 가능해진다.
S340에서 상기 하나의 서버가 상기 단말로부터 전송된 제1 랜덤 값이 포함된 토큰을 생성한 후 상기 단말로 전송한다.
이때, S340에서 상기 하나의 서버에서 생성되는 토큰은 상기 하나의 서버에서만 복호화될 수 있다.
S350에서 상기 단말이 상기 하나의 서버로부터 전송된 토큰을 저장하고, S360에서 상기 하나의 서버가 상기 단말이 상기 하나의 서버에 접속 시(다시 말해서, 상기 단말이 상기 하나의 서버에 구현된 메인 페이지에 접속 시) 상기 하나의 서바가 상기 단말로부터 전송되는 토큰을 검증한 후 제2 랜덤 값을 생성하여 상기 단말로 전송한다.
이때, S350에서 상기 하나의 서버로부터 상기 단말로 전송된 토큰은 상기 단말의 쿠키(cookie)에 저장될 수 있고, 이에 따라 상기 단말이 상기 하나의 서버에 접속할 시마다 상기 단말의 쿠키에 포함된 토큰이 상기 하나의 서버로 전송될 수 있게 된다.
또한, S360에서 상기 하나의 서버는 상기 단말로부터 전송된 토큰을 복호화하여 상기 단말로부터 전송된 토큰에 대한 검증을 수행할 수 있고, 상기 제2 랜덤 값은 자바 스크립트 기반으로 생성될 수 있다.
S370에서 상기 단말이 상기 제1 랜덤 값을 이용하여 상기 하나의 서버로부터 전송된 제2 랜덤 값을 암호화한 후 상기 하나의 서버로 전송한다.
이때, S370에서 상기 단말은 상기 단말의 로컬 스토리지에 저장된 상기 제1 랜덤 값을 가져온 후 상기 제1 랜덤 값을 암호화 키로 사용하여 상기 제2 랜덤 값을 암호화할 수 있고, 상기 제2 랜덤 값은 SEED, ARIA, AES 등의 대칭키 암호화 알고리즘에 암호화될 수 있다.
S380에서 상기 하나의 서버가 상기 제1 랜덤 값을 이용하여 (다시 말해서, 상기 토큰으로부터 상기 제1 랜덤 값을 추출하여) 상기 제2 랜덤 값을 암호화한 후 상기 단말로부터 전송받은 상기 암호화된 제2 랜덤 값과 상기 하나의 서버 상에서 암호화된 제2 랜덤 값을 비교하여 비교 결과에 따라 상기 단말을 인증하면 종료가 이루어진다.
본 발명의 싱글 사인 온을 위한 인증 방법은 단말과 서버 간의 인증을 위해 단말로부터 전송되는 아이디 및 비밀번호 외에 단말에서 제1 랜덤 값을 생성하여 암호화한 후 서버로 전송하고 서버는 암호화된 제1 랜덤 값이 포함된 토큰을 생성하여 단말로 전송한다.
그리고, 서버는 단말의 서버에 대한 접속에 따라 단말로부터 전송되는 토큰을 검증한 후 제2 랜덤 값을 생성하여 단말로 전송하고 단말은 제1 랜덤 값을 이용하여 제2 랜덤 값을 암호화한 후 서버로 전송하고 서버는 자체적으로 제1 랜덤 값을 이용하여 제2 랜덤 값을 암호화한 후 이를 서버로부터 전송받은 암호화된 제2 랜덤 값과 비교하여 서로 일치하는 경우에만 단말에 대한 인증이 성공한 것으로 처리하게 된다.
따라서, 기존 싱글 사인 온 시스템에서 문제가 되었던 재전송 공격(replay attack) 등에 보다 효과적으로 대응할 수 있어 싱글 온 사인 시스템의 보안성을 크게 향상시킬 수 있게 된다.
또한, 별도의 프로그램 또는 플러그인을 설치할 필요가 없으므로 싱글 온 사인 시스템 사용자의 편의성을 증대시킴과 동시에 기존의 싱글 온 사인 시스템에 적용이 용이하게 이루어질 수 있게 된다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경, 및 치환이 가능할 것이다. 따라서 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면들에 의해서 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구 범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (17)

  1. 단말과 복수 개의 서버 간의 싱글 사인 온(Single Sine On)을 위한 인증 방법에 있어서,
    (a) 상기 단말 상에서 상기 복수 개의 서버 중 하나의 서버에 접속하기 위한 아이디 및 비밀번호가 입력되면 상기 단말이 제1 랜덤 값을 생성한 후 저장하는 단계;
    (b) 상기 단말이 상기 제1 랜덤 값을 암호화한 후 상기 하나의 서버로 전송하는 단계;
    (c) 상기 하나의 서버가 상기 전송된 제1 랜덤 값을 등록하는 단계;
    (d) 상기 입력된 아이디 및 비밀번호가 상기 하나의 서버로 전송되면 상기 하나의 서버가 상기 등록된 제1 랜덤 값이 포함된 토큰을 생성한 후 상기 단말로 전송하는 단계;
    (e) 상기 단말이 상기 하나의 서버에 접속 시 상기 하나의 서버가 상기 단말로부터 전송되는 토큰을 검증한 후 제2 랜덤 값을 생성하여 상기 단말로 전송하는 단계;
    (f) 상기 단말이 상기 제1 랜덤 값을 이용하여 상기 전송된 제2 랜덤 값을 암호화한 후 상기 하나의 서버로 전송하는 단계; 및
    (g) 상기 하나의 서버가 상기 단말로부터의 상기 제2 랜덤 값 전송 시 함께 전송되는 토큰으로부터 추출되는 제1 랜덤 값을 이용하여 상기 제2 랜덤 값을 암호화한 후 상기 단말로부터 전송받은 암호화된 제2 랜덤 값과 상기 하나의 서버 상에서 암호화된 제2 랜덤 값을 비교하여 비교 결과에 따라 상기 단말의 인증을 완료하는 단계를 포함하는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  2. 제 1항에 있어서,
    상기 (a) 단계에서 상기 제1 랜덤 값은 상기 단말의 로컬 스토리지(local storage)에 저장되는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  3. 제 1항에 있어서,
    상기 (c) 단계에서 상기 제1 랜덤 값은 상기 하나의 서버의 세션(session)에 등록되는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  4. 제 1항에 있어서,
    상기 (d) 단계에 이어서,
    (d1) 상기 단말이 상기 하나의 서버로부터 전송된 토큰을 저장하는 단계를 더 포함하는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  5. 제 4항에 있어서,
    상기 하나의 서버로부터 전송된 토큰은 상기 단말의 쿠키(cookie)에 저장되는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  6. 제 1항에 있어서,
    상기 (b) 단계에서,
    상기 제1 랜덤 값은 공개키 암호화 알고리즘에 의해 암호화되는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  7. 제 1항에 있어서,
    상기 (f) 단계 및 상기 (g) 단계에서,
    상기 제2 랜덤 값은 대칭키 암호화 알고리즘에 의해 암호화되는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  8. 단말과 복수 개의 서버 간의 싱글 사인 온(Single Sine On)을 위한 인증 방법에 있어서,
    (a) 상기 단말 상에서 상기 복수 개의 서버 중 하나의 서버에 접속하기 위한 아이디 및 비밀번호가 입력되면 상기 단말이 랜덤 값을 생성한 후 저장하는 단계;
    (b) 상기 단말이 상기 랜덤 값을 암호화한 후 상기 하나의 서버로 전송하는 단계;
    (c) 상기 하나의 서버가 상기 전송된 랜덤 값을 등록하는 단계;
    (d) 상기 입력된 아이디 및 비밀번호가 상기 하나의 서버로 전송되면 상기 하나의 서버가 상기 등록된 랜덤 값이 포함된 토큰을 생성한 후 상기 단말로 전송하는 단계;
    (e) 상기 단말이 상기 랜덤 값 및 상기 단말의 현재 시간 정보를 포함하는 메시지 인증 코드(Message Authentication Code)를 생성한 후 상기 메시지 인증 코드 및 상기 토큰을 상기 하나의 서버로 전송하는 단계;
    (f) 상기 서버가 상기 토큰을 검증하는 단계; 및
    (g) 상기 하나의 서버가 상기 등록된 랜덤 값 및 상기 서버의 현재 시간 정보를 포함하는 메시지 인증 코드를 생성한 후 상기 단말로부터 전송되는 메시지 인증 코드와 비교하여 비교 결과에 따라 상기 단말에 대한 인증을 완료하는 단계를 포함하는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  9. 제 8항에 있어서,
    상기 (a) 단계에서 상기 랜덤 값은 상기 단말의 로컬 스토리지(local storage)에 저장되는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  10. 제 8항에 있어서,
    상기 (b) 단계에서,
    상기 랜덤 값은 공개키 암호화 알고리즘에 의해 암호화되는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  11. 제 8항에 있어서,
    상기 (c) 단계에서 상기 랜덤 값은 상기 하나의 서버의 세션(session)에 등록되는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  12. 제 8항에 있어서,
    상기 (d) 단계에 이어서,
    (d1) 상기 단말이 상기 하나의 서버로부터 전송된 토큰을 저장하는 단계를 더 포함하는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  13. 제 12항에 있어서,
    상기 하나의 서버로부터 전송된 토큰은 상기 단말의 쿠키(cookie)에 저장되는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  14. 제 8항에 있어서,
    상기 (e) 단계에서,
    상기 메시지 인증 코드는 상기 단말의 쿠키에 포함되어 상기 하나의 서버로 전송되는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  15. 제 8항에 있어서,
    상기 (d) 단계에서,
    상기 단말의 로그인 시간 정보가 상기 하나의 서버로 더 전송되고 상기 하나의 서버는 상기 로그인 시간 정보를 이용하여 상기 하나의 서버와 상기 단말 간의 오차 시간 정보를 더 생성하는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  16. 제 15항에 있어서,
    상기 (f) 단계에서,
    상기 하나의 서버는 상기 오차 시간 정보를 이용하여 상기 하나의 서버에서 생성되는 메시지 인증 코드에 포함된 현재 시간 정보 및 상기 단말로부터 전송된 메시지 인증 코드에 포함된 현재 시간 정보를 비교하는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
  17. 단말과 복수 개의 서버 간의 싱글 사인 온(Single Sine On)을 위한 인증 방법에 있어서,
    (a) 상기 단말 상에서 상기 복수 개의 서버 중 하나의 서버에 접속하기 위한 아이디 및 비밀번호가 입력되면 상기 단말이 제1 랜덤 값을 생성한 후 저장하는 단계;
    (b) 상기 단말이 상기 제1 랜덤 값을 암호화한 후 상기 입력된 아이디, 비밀번호, 및 상기 암호화된 제1 랜덤 값을 상기 하나의 서버로 전송하는 단계;
    (c) 상기 하나의 서버가 상기 전송된 제1 랜덤 값이 포함된 토큰을 생성하여 상기 단말로 전송하는 단계;
    (d) 상기 단말이 상기 하나의 서버에 접속 시 상기 하나의 서버가 상기 단말로부터 전송되는 토큰을 검증한 후 제2 랜덤 값을 생성하여 상기 단말로 전송하는 단계;
    (e) 상기 단말이 상기 제1 랜덤 값을 이용하여 상기 전송된 제2 랜덤 값을 암호화한 후 상기 하나의 서버로 전송하는 단계; 및
    (f) 상기 하나의 서버가 상기 단말로부터의 상기 제2 랜덤 값 전송 시 함께 전송되는 토큰으로부터 추출되는 제1 랜덤 값을 이용하여 상기 제2 랜덤 값을 암호화한 후 상기 단말로부터 전송받은 암호화된 제2 랜덤 값과 상기 하나의 서버 상에서 암호화된 제2 랜덤 값을 비교하여 비교 결과에 따라 상기 단말의 인증을 완료하는 단계를 포함하는 것을 특징으로 하는 싱글 사인 온을 위한 인증 방법.
KR1020120149476A 2012-12-20 2012-12-20 싱글 사인 온을 위한 인증 방법 KR101358704B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120149476A KR101358704B1 (ko) 2012-12-20 2012-12-20 싱글 사인 온을 위한 인증 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120149476A KR101358704B1 (ko) 2012-12-20 2012-12-20 싱글 사인 온을 위한 인증 방법

Publications (1)

Publication Number Publication Date
KR101358704B1 true KR101358704B1 (ko) 2014-02-13

Family

ID=50269924

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120149476A KR101358704B1 (ko) 2012-12-20 2012-12-20 싱글 사인 온을 위한 인증 방법

Country Status (1)

Country Link
KR (1) KR101358704B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101572598B1 (ko) 2014-07-28 2015-12-11 순천향대학교 산학협력단 Sso 인증 시스템 기반 인증 정보 재전송 공격에 안전한 사용자 인증 방법
CN107483459A (zh) * 2017-08-29 2017-12-15 四川长虹电器股份有限公司 防重放攻击的接口保护方法
WO2018217212A1 (en) * 2017-05-25 2018-11-29 Facebook, Inc. Systems and methods for preventing session fixation over a domain portal
KR102639244B1 (ko) * 2023-08-04 2024-02-21 (주)그리드텍 Sso에 기반한 통합 인증 솔루션을 제공하는 방법, 서버및 시스템

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030016073A (ko) * 2001-08-20 2003-02-26 엘지전자 주식회사 웹 상에서 쿠키를 통한 사용자 인증 방법 및 인증 시스템
KR20040082538A (ko) * 2003-03-19 2004-09-30 학교법인 이화학당 웹상에서의 싱글 사인온을 위한 안전한 쿠키 처리 방법
KR20070032805A (ko) * 2004-07-09 2007-03-22 마츠시타 덴끼 산교 가부시키가이샤 복수의 네트워크를 액세스하기 위한 싱글-사인-온을실현하도록 사용자 인증 및 승인을 관리하는 시스템 및방법
KR100807185B1 (ko) 2006-07-11 2008-02-28 김월영 Usb 토큰을 이용한 otp(일회용 암호)발생 방법 및인증방법,시스템,usb 토큰

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030016073A (ko) * 2001-08-20 2003-02-26 엘지전자 주식회사 웹 상에서 쿠키를 통한 사용자 인증 방법 및 인증 시스템
KR20040082538A (ko) * 2003-03-19 2004-09-30 학교법인 이화학당 웹상에서의 싱글 사인온을 위한 안전한 쿠키 처리 방법
KR20070032805A (ko) * 2004-07-09 2007-03-22 마츠시타 덴끼 산교 가부시키가이샤 복수의 네트워크를 액세스하기 위한 싱글-사인-온을실현하도록 사용자 인증 및 승인을 관리하는 시스템 및방법
KR100807185B1 (ko) 2006-07-11 2008-02-28 김월영 Usb 토큰을 이용한 otp(일회용 암호)발생 방법 및인증방법,시스템,usb 토큰

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101572598B1 (ko) 2014-07-28 2015-12-11 순천향대학교 산학협력단 Sso 인증 시스템 기반 인증 정보 재전송 공격에 안전한 사용자 인증 방법
WO2018217212A1 (en) * 2017-05-25 2018-11-29 Facebook, Inc. Systems and methods for preventing session fixation over a domain portal
US10454672B2 (en) 2017-05-25 2019-10-22 Facebook, Inc. Systems and methods for preventing session fixation over a domain portal
CN107483459A (zh) * 2017-08-29 2017-12-15 四川长虹电器股份有限公司 防重放攻击的接口保护方法
KR102639244B1 (ko) * 2023-08-04 2024-02-21 (주)그리드텍 Sso에 기반한 통합 인증 솔루션을 제공하는 방법, 서버및 시스템

Similar Documents

Publication Publication Date Title
US11757662B2 (en) Confidential authentication and provisioning
CN109088889B (zh) 一种ssl加解密方法、系统及计算机可读存储介质
CN107040369B (zh) 数据传输方法、装置及系统
CN108390851B (zh) 一种用于工业设备的安全远程控制系统及方法
US9838205B2 (en) Network authentication method for secure electronic transactions
US9231925B1 (en) Network authentication method for secure electronic transactions
CN104506534B (zh) 安全通信密钥协商交互方案
Dacosta et al. Trust no one else: Detecting MITM attacks against SSL/TLS without third-parties
TWI512524B (zh) 身份驗證系統及方法
CN111698225B (zh) 一种适用于电力调度控制系统的应用服务认证加密方法
CN109728909A (zh) 基于USBKey的身份认证方法和系统
US20150172064A1 (en) Method and relay device for cryptographic communication
CN108809633B (zh) 一种身份认证的方法、装置及系统
EP2984782A1 (en) Method and system for accessing device by a user
WO2020206014A1 (en) Digital rights management authorization token pairing
CN104243452B (zh) 一种云计算访问控制方法及系统
KR101358704B1 (ko) 싱글 사인 온을 위한 인증 방법
CN114553480B (zh) 跨域单点登录方法、装置、电子设备及可读存储介质
CN111935164B (zh) 一种https接口请求方法
CN116633530A (zh) 量子密钥传输方法、装置及系统
CN110855444A (zh) 一种基于可信第三方的纯软件cava身份认证方法
CN110225011B (zh) 用户节点的认证方法、设备及计算机可读存储介质
WO2023151427A1 (zh) 量子密钥传输方法、装置及系统
US20240121083A1 (en) Secure restoration of private key
RU2771928C2 (ru) Безопасный обмен данными, обеспечивающий прямую секретность

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170110

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180125

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190115

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20191125

Year of fee payment: 7