KR100979576B1 - 새로운 패스워드를 실현하기 위한 방법 및 컴퓨터 판독가능 매체 - Google Patents

새로운 패스워드를 실현하기 위한 방법 및 컴퓨터 판독가능 매체 Download PDF

Info

Publication number
KR100979576B1
KR100979576B1 KR1020030027200A KR20030027200A KR100979576B1 KR 100979576 B1 KR100979576 B1 KR 100979576B1 KR 1020030027200 A KR1020030027200 A KR 1020030027200A KR 20030027200 A KR20030027200 A KR 20030027200A KR 100979576 B1 KR100979576 B1 KR 100979576B1
Authority
KR
South Korea
Prior art keywords
authentication
new
password
client
server
Prior art date
Application number
KR1020030027200A
Other languages
English (en)
Other versions
KR20030085512A (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 마이크로소프트 코포레이션
Publication of KR20030085512A publication Critical patent/KR20030085512A/ko
Application granted granted Critical
Publication of KR100979576B1 publication Critical patent/KR100979576B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • 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/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0846Network architectures or network communication protocols for network security for authentication of entities using passwords using time-dependent-passwords, e.g. periodically changing passwords
    • 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/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • 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/45Structures or tools for the administration of authentication
    • G06F21/46Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
    • 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/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/162Implementing security features at a particular protocol layer at the data link layer

Abstract

인증 서버에 의해 인증되어 있는 인증 클라이언트가 그 인증의 효과를 더욱 높여서 새로운 통신 패스워드를 실현하기 위한 방법이 개시되어 있다. 인증 클라이언트는 그 사용자로부터 새로운 패스워드를 얻는다. 새로운 패스워드로부터 그리고 인증 서버에 의해 제공된 정보로부터, 인증 클라이언트는 "패스워드 검증자"를 도출한다. 이때, 패스워드 검증자는 인증 서버와 공유된다. 새로운 패스워드 자체는 결코 인증 서버에게 보내지지 않고, 패스워드 검증자로부터 새로운 패스워드를 도출하는 것은 기본적으로 불가능하다. 인증 클라이언트 및 인증 서버는 나란히 새로운 세트의 인증 및 암호화 보안 키를 새로운 패스워드 및 패스워드 검증자로부터 각각 도출한다. 이 프로세스는 소정의 한 특정 세트의 보안 키를 사용하여 보낸 데이타 양을 제한함으로써 소정의 통계적 공격자의 유효성을 제한하도록 반복될 수도 있다.
인증 클라이언트, 인증 서버, 보안 키, 패스워드, 패스워드 검증자

Description

새로운 패스워드를 실현하기 위한 방법 및 컴퓨터 판독가능 매체{METHODS FOR REMOTELY CHANGING A COMMUNICATIONS PASSWORD}
도 1은 인증 클라이언트, 인증 서버 및 도청자(eavesdropper)를 갖는 예시적인 통신 환경을 도시한 블록도.
도 2는 본 발명을 지원하는 예시적인 컴퓨팅 시스템을 전반적으로 도시한 개략도.
도 3a 내지 도 3c는 인증 클라이언트 및 인증 서버가 상호간에 서로 인증을 한 다음에 본 발명의 한 실시예에 따른 새로운 통신 패스워드를 실현할 때 패스된 정보 및 실행된 동작을 전반적으로 도시한 데이타 흐름도.
도 4는 새로운 통신 패스워드를 실현하는 프로세스 동안에 사용된 가능한 메시지를 도시한 데이타 구조도.
<도면의 주요 부분에 대한 부호의 설명>
100 : 네트워크
102 : 인증 클라이언트
104 : 억세스 서버
106 : 인증 서버
108 : 도청자
200 : 프로세싱 유닛
202 : 메모리
210 : 통신 채널
본 발명은 일반적으로 컴퓨터 통신에 관한 것으로, 더욱 구체적으로 패스워드에 기초한 보안을 컴퓨터 통신 세션에 제공하는 것에 관한 것이다.
컴퓨터 네트워크는 크게 성장하고 있으며, 훨씬 더 민감한 정보를 전달하고 있다. 보안을 위해, 네트워크를 사용하는 컴퓨팅 장치는 자신의 신원을 다른 장치에 증명하고("자신을 인증함"), 다른 인증된 장치하고만 민감한 정보를 통신한다. 그러나, 방대한 대다수의 인증된 통신은 여전히 보안 공격을 받기 쉽다. 한가지 형태의 보안 공격에 있어서, 공격자는 그럴듯하게 합법적인 장치를 흉내냄으로써 잘못 인증된다. 일단 인증되면, 공격자는 단지 합법적으로 인증된 장치용으로 정해진 정보로 억세스한다. 두번째 형태의 공격에 있어서, 공격자는 인증되지는 않지만, 보안 코드를 얻기 위해서 인증된 장치들 간의 통신을 도청한다. 입수한 이들 보안 코드를 가지고, 도청자는 인증된 장치에 의해 보내진 민감한 정보를 억세스할 수 있다. 이러한 보안 공격은 무선 기술을 통해 통신하는 장치에 특히 곤란한데, 그것은 이들의 통신으로의 물리적 억세스를 제한하는 것이 어렵거나 또는 불가능하기 때문이다.
이들 2가지 형태의 보안 공격에 대해서는 통신 보안의 2가지 중요한 양상에 의해 다루어진다. 첫째, 인증 기술은 불법의 공격자가 이들을 사용하지 못하도록 하기 위해 점점 더 정교해지고 있다. 전형적인 통신 환경은 모든 컴퓨팅 장치("인증 클라이언트"라 함)가 인증되고자 할 때 이들 모든 컴퓨팅 장치와 통신하는 인증 서버를 포함한다. 인증되기 위해, 인증 클라이언트는 보통 몇가지 인증서에 관한 자신의 지식을 증명해야 한다. 어떤 경우에, 인증서는 인증 클라이언트와 인증 서버 간에 공유된 비밀 통신 패스워드를 포함한다. 다른 경우에, 인증서는 공용/개인의 키 쌍들 및 보안 증명서에 기초하게 될 수도 있다. 소정의 경우에, 인증서에 관한 자신의 지식을 증명하는 경우에만 인증 클라이언트가 인증 서버에게 인증된다. 인증 프로세스는 보통 상호적인 것으로, 인증 서버 또한 인증 클라이언트에게 자신의 신원을 증명한다.
두번째 양상의 통신 보안에 있어서, 인증된 컴퓨팅 장치들 간에 전송된 정보는 암호화된다. 전형적인 암호화 방법에 있어서, 정보 송신자 및 수신자는 먼저 정보-인코딩 스킴(encoding scheme)에 대하여 동의한다. 인코딩 스킴은 종종 비밀 보안 키에 기초하지만, 송신자와 수신자 간에 항상 공유되는 것은 아니다. 비밀 보안 키는 인증에 사용된 동일한 통신 패스워드에 기초하게 될 수도 있다. 송신자는 동의된 인코딩 스킴을 사용하여 정보를 암호화한 다음에, 암호화된 정보를 수신자에게 보낸다. 수신 시에, 수신자는 동의된 인코딩 스킴을 사용하여 정보를 해독한다. 암호화된 정보는 여전히 도청될 수 있긴 하지만, 도청자는 보안 키를 알지못하고서 원래의 정보를 얻을 수는 없다.
그러나, 인증 및 암호화는 항상 충분한 보호를 제공하는 것은 아니다. 예를 들어, 암호화된 정보는 여전히 통계적 공격을 포함하여 다수의 공격을 받게 된다. 통계적 공격에 있어서, 도청자는 송신자 및 수신자에 의해 동의된 보안 스킴과 관련된 패턴들을 빼내기 위해 한 세트의 암호화된 메시지를 분석한다. 그 패턴들로부터, 도청자는 동의된 보안 스킴 밑에 깔려 있는 보안 키를 알아내어 이들을 사용해서 암호화된 정보를 해독할 수도 있다.
이러한 공격 방법의 통계적 특성 때문에, 그 정확도는 분석된 메시지의 수가 증가함에 따라 향상된다. 그러므로, 통계적 공격을 좌절시키는 한가지 방법은 소정의 한 보안 스킴을 사용하여 보낸 정보의 양을 제한하는 것이다. 이렇게 하기 위해, 동의된 보안 스킴 밑에 깔려 있는 보안 키는 자주 변경되어도 된다. 상호 인증 프로세스는 인증 클라이언트 및 인증 서버에 의해 사용된 보안 키를 변경한다. 그러나, 인증은 새로운 보안 키가 여전히 변하지 않은 통신 패스워드에 기초하고 있다는 사실을 바꾸지는 않는다. 시간이 지나면, 그 패스워드는 손상될 수 있으므로, 그것도 또한 자주 변경되어야 한다. 이것은 처음 출현시처럼 간단한 일이 아니다. 유용하게 되도록 하기 위해, 새로운 패스워드(또는 이것으로부터 도출된 정보)는 인증 클라이어언트 및 인증 서버 둘다에게 이용가능하게 될 필요가 있다. 새로운 패스워드를 인증 클라이언트 상에서 단순히 설정한 다음에 이것을 통신 링크를 통해 인증 서버에게 보내는 것은 그다지 안전하지 않다. 새로운 패스워드를 보내는 "아웃-오브-밴드(out-of-band)" 방법들(컴퓨터 통신 링크를 사용하지 않는 방법들)은 상당히 안전하긴 하지만, 특히 인증 서버가 인증 클라이언트로부터 멀리 떨어져 있는 경우에는 너무 번거로워서, 이들이 빈번한 패스워드 변경에 지장이 될 수도 있다.
필요한 것은, 인증 클라이언트 및 인증 서버가 새로운 패스워드를 명백하게 통신 링크를 통해 전송하지 않고서 새로운 통신 패스워드를 실현하기 위한 번거롭지 않은 방법이다.
상기 설명에 비추어보아, 본 발명은 인증 서버에 의해 인증되어 있는 인증 클라이언트가 그 인증의 효과를 더욱 높여서 새로운 통신 패스워드를 실현하기 위한 방법이 개시되어 있다. 인증 서버는 인증 클라이언트가 새로운 패스워드를 실현할 것을 요청한다. 인증 클라이언트는 그 사용자로부터 새로운 패스워드를 얻는다. 새로운 패스워드로부터 그리고 인증 서버에 의해 제공된 정보로부터, 인증 클라이언트는 "패스워드 검증자"를 도출한다. 이때, 패스워드 검증자는 인증 서버와 공유된다. 새로운 패스워드를 실현하는 프로세스 동안에, 인증 클라이언트와 인증 서버 간의 통신은 이전의 패스워드로부터 도출된 보안 키를 사용하여 보안된다. 새로운 패스워드 자체는 결코 인증 서버에게 보내지지 않고, 패스워드 검증자로부터 새로운 패스워드를 도출하는 것은 기본적으로 불가능하다. 장래의 재인증을 위해, 패스워드 검증자에 관한 인증 서버의 지식 및 새로운 패스워드 자체에 관한 인증 클라이언트의 지식은 인증서의 대용이 된다.
인증 클라이언트 및 인증 서버는 나란히 새로운 세트의 보안 키를 이들의 각 인증서의 지식으로부터 도출한다. 새로운 보안 키는 이 프로세스가 반복되어 더 새로운 세트의 보안 키가 더 새로운 패스워드로부터 도출될 때까지 인증 및 암호화에 이용된다. 이 프로세스는 소정의 한 특정 세트의 보안 키를 사용하여 보낸 데이타 양을 제한함으로써 유효한 소정의 통계적 공격자를 제한하도록 원하는 만큼 자주 반복될 수도 있다.
본 발명의 다른 양상에 있어서, 인증 서버는 현재의 통신 패스워드가 변경되어야 할 때를 결정하는데, 이러한 결정은 아마도 시간의 경과에 기초하거나 또는 현재의 패스워드를 사용하여 보낸 데이타의 양에 기초하게 될 것이다.
첨부된 청구범위는 특이성을 갖는 본 발명의 특징을 설명하고 있지만, 본 발명과 그 특징 및 장점은 첨부된 도면을 참조하여 설명된 다음의 상세한 설명으로부터 가장 잘 이해될 수 있을 것이다.
도면을 참조하면, 동일한 부분에는 동일한 참조부호를 사용하였으며, 본 발명은 적절한 컴퓨팅 환경에서 실현되는 것으로 도시되어 있다. 후속되는 설명은 본 발명의 실시예에 기초한 것으로, 명백하게 여기에서 설명되지 않은 대안적인 실시예와 관련하여 본 발명을 제한하고자 하는 것은 아니다.
후속되는 설명에 있어서, 본 발명은 달리 나타내지 않는 한, 하나 이상의 컴퓨팅 장치에 의해 실행되는 동작의 기호적 표현 및 작용에 관련하여 설명된다. 이와 같이, 컴퓨터 실행중인 것으로 때때로 언급되는 이러한 작용 및 동작은 구조화된 형식으로 데이터를 나타내는 전기 신호의 컴퓨팅 장치의 프로세싱 유닛에 의한 조작을 포함한다는 것을 이해할 수 있을 것이다. 이러한 조작은 데이터를 변환시 키거나, 또는 본 분야에 의해 숙련된 기술자들이 잘 이해할 수 있는 방식으로 장치의 동작을 재구성하거나 다르게 변경시키는 컴퓨팅 장치의 메모리 시스템 내의 위치에 이들을 유지시킨다. 데이터가 유지되는 데이터 구조는 데이터의 포맷에 의해 정해진 특정 성질을 갖는 메모리의 물리적 위치이다. 그러나, 본 발명은 상술된 상황에서 설명되고 있지만, 후술되는 여러가지 작용 및 동작이 또한 하드웨어로 실현될 수도 있다는 것을 본 분야에 숙련된 기술자들이 이해할 수 있는 바와 같이, 이것에 제한되는 것은 아니다.
도 1의 네트워크 환경(100)에 있어서, 인증 클라이언트(102)는 인증 서버(106)에게 자신의 신원을 증명했다("자신을 인증함"). 이것을 하기 위해, 인증 클라이언트(102)는, 인증 클라이언트(102)가 주장하고 있는 신원의 엔티티에게만 아마도 알려져 있는 보안 정보를 보유하고 있다는 것을 인증 서버(106)에게 증명했다. 이 보안 정보는 인증 클라이언트(102)의 "인증서"라고 불리운다.
어떤 환경(100)에서, 특히 무선 네트워크에서, 인증 클라이언트(102)는 로컬 억세스 서버(104)와 직접 통신할 수도 있다. 억세스 서버(104)는 멀리 떨어져 있을 수 있고 수개의, 어쩌면 수백의 네트워크(100)에 편의를 줄 수 있는 인증 서버(106)와 인증 클라이언트(102) 간의 통신을 패스한다. 가능한 존재의 억세스 서버(104)는 본 발명의 설명에 영향을 미치지 않으며, 다시 언급되지 않을 것이다.
성공적인 인증의 완료 시에, 인증 클라이언트(102) 및 인증 서버(106)는 이들 사이에 패스된 메시지의 암호화 및 인증 시에 이들이 사용할 수 있는 한 세트의 보안 키를 도출한다. 보안 키는 부분적으로 인증 클라이언트(102)의 인증서로부터 도출된다. 암호화 및 인증은 네트워크(100) 내에서 패스된 모든 메시지가 부당한 도청자(108)에 의해 인터셉트(intercept)되기 때문에 필요하다. 도청자(108)는 메시지를 인터셉트하여, 이들을 보호하기 위해 사용된 보안 키를 알아내고자 이들에게 통계적 방법을 적용한다. 이러한 공격의 통계적 특성때문에, 이것의 정확도는 분석된 메시지의 수가 증가함에 따라 향상된다. 이러한 통계적 공격을 좌절시키기 위해, 인증 클라이언트(102) 및 인증 서버(106)는 도청자(108)가 이러한 보안 키를 알아낼 수 있을 만큼 충분한 메시지를 인터셉트하기 전에 보안 키를 빨리 변경시켜야 한다.
보안 키를 변경시키는 공지된 방법들이 있다. 예를 들어, 각각의 인증 동안에는, 랜덤 값 또는 타임스탬프와 같은 "라이브니스(liveness)" 정보가 발생된다. 보안 키의 도출 시에 인증서와 함께 라이브니스 정보를 포함함으로써, 서로 다른 세트의 보안 키가 각각의 성공적인 인증마다 도출된다. 그러나, 각 세트의 보안 키는 여전히 동일한 인증서로부터 도출된다. 이들 인증서가 손상되면, 보안 키는 공격받기 쉽다. 이것을 방지하기 위해, 인증서는 이 인증서로부터 도출된 보안 키가 자주 변경되는 바와 같이, 주기적으로 변경되어야 한다.
인증 클라이언트(102)의 인증서 변경은 처음 출현시처럼 간단한 일이 아니다. 인증서는 인증 클라이언트(102) 상에서 용이하게 변경될 수 있을지 모르지만, 유용하게 되기 위해서, 그 변경은 인증 서버(106)와 조정되어야 한다. 그렇지 않으면, 인증 서버(106)는 여전히 기존 인증서에 관한 인증 클라이언트(102)의 지식의 증명을 요구할 것이다. (후술되는 바와 같이, 인증 서버(106)는 실제로 인증서 를 알 필요가 없다. 인증 서버(106)는 이들 인증서 자체를 모르고도 인증서에 관한 인증 클라이언트(102)의 지식을 검증할 수 있다.) 변경을 조정하는 한가지 간단한 방법은 인증서를 통신 링크를 통해 인증 서버(106)에게 보내는 것이다. 그러나, 이 방법은 가능한 존재의 도청자(108)가 있다고 하면 그다지 안전하지 않다. 변경을 조정하는 다른 공지된 방법은 보통 "아웃-오브-밴드" 통신(컴퓨터 통신 링크를 사용하지 않는 방법)을 수반한다. 상당히 안전하긴 하지만, 아웃-오브-밴드 방법은 특히 인증 서버(106)가 인증 클라이언트(102)로부터 멀리 떨어져 있는 경우에는 너무 번거로워서, 이들이 인증서에 대한 빈번한 변경에 지장을 줄 수 있다. 본 발명은 안전하면서도, 인증 클라이언트(102) 및 인증 서버(106)가 새로운 인증서의 실현을 조정하는 데에 번거롭지 않은 방법을 제공한다.
도 1의 인증 클라이언트(102)는 소정의 아키텍처로 될 수도 있다. 도 2는 본 발명을 지원하는 예시적인 컴퓨터 시스템을 개괄적으로 도시한 블럭도이다. 도 2의 컴퓨터 시스템은 적절한 환경의 한 예일 뿐이고, 본 발명의 사용 범위 또는 기능에 대해 소정의 제한을 주고자 하는 것은 아니다. 인증 클라이언트(102)가 도 2에 도시된 구성부품들 중의 소정의 하나 또는 이들의 결합에 관해 어떤 종속물이나 또는 요구물을 갖는 것으로 해석되어서는 안된다. 본 발명은 다수의 다른 범용 또는 전용 컴퓨팅 환경 또는 구성으로 동작 가능하다. 본 발명과 함께 사용하기에 적절한 널리 공지되어 있는 컴퓨팅 시스템, 환경 및 구성의 예들은 퍼스널 컴퓨터, 서버, 핸드-헬드 또는 랩탑 장치, 멀티프로세서 시스템, 마이크로프로세서 기반의 시스템, 셋탑 박스, 프로그램가능한 소비자 전자제품, 네트워크 PC들, 미니 컴퓨터, 메인프레임 컴퓨터, 및 상기 시스템 또는 장치들 중의 어떤 것을 포함하는 분산된 컴퓨팅 환경을 포함하는데, 이것에 제한되는 것은 아니다. 이것의 가장 기본적인 구성에 있어서, 인증 클라이언트(102)는 전형적으로 최소한 하나의 프로세싱 유닛(200) 및 메모리(202)를 포함한다. 메모리(202)는 (RAM과 같은) 휘발성, (ROM 또는 플래시 메모리와 같은) 불휘발성, 또는 이들 2개의 어떤 결합이 될 수도 있다. 이러한 가장 기본적인 구성은 도 2에 점선(204)으로 도시되어 있다. 인증 클라이언트(102)는 추가 특징 및 기능을 가질 수도 있다. 예를 들어, 인증 클라이언트(102)는 자기 및 광 디스크 및 테이프를 포함하는 추가 저장장치(착탈가능 및 착탈불가능)를 포함할 수도 있으며, 이것들에 제한되는 것은 아니다. 이러한 추가 저장장치는 착탈가능 저장장치(206) 및 착탈불가능 저장장치(208)로 도 2에 도시되어 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령들, 데이터 구조들, 프로그램 모듈들, 또는 그밖의 다른 데이터와 같은 정보를 저장하기 위한 소정의 방법 또는 기술로 실현된 휘발성 및 불휘발성, 착탈가능 및 착탈불가능 매체를 포함한다. 메모리(202), 착탈가능 저장장치(206) 및 착탈불가능 저장장치(208)는 모두 컴퓨터 저장 매체의 예들이다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리, 다른 메모리 기술, CD-ROM, DVD, 다른 광 저장장치, 자기 카세트, 자기 테이프, 자기 디스크 저장장치, 다른 자기 저장 장치, 및 원하는 정보를 저장하는데에 사용될 수 있고 인증 클라이언트(102)에 의해 억세스될 수 있는 소정의 다른 매체를 포함하는데, 이것에 제한되는 것은 아니다. 소정의 이러한 컴퓨터 저장 매체는 인증 클라이언트(102)의 부분이 될 수도 있다. 인증 클라이언트(102)는 또한, 장치가 다른 장치와 통신할 수 있게 하는 통신 채널(210)을 포함할 수도 있다. 통신 채널(210)은 통신 매체의 예들이다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령들, 데이터 구조들, 프로그램 모듈들, 또는 반송파 또는 다른 전송 메카니즘과 같은 변조 데이터 신호 내의 그밖의 다른 데이터를 구현하고, 소정의 정보 전달 매체를 포함한다. "변조 데이터 신호"라는 용어는 신호 내의 정보를 인코드하는 것과 같은 방식으로 하나 이상의 자체 특성이 설정 또는 변경되는 신호를 의미한다. 예를 들어(제한적인 것은 아님), 통신 매체는 광 매체와, 유선 네트워크 및 직접 유선 접속과 같은 유선 매체와, 음향, RF, 적외선 및 그 밖의 다른 무선 매체와 같은 무선 매체를 포함한다. 여기에서 사용된 "컴퓨터 판독가능 매체"라는 용어는 저장 매체 및 통신 매체 둘다를 포함한다. 인증 클라이언트(102)는 또한 키보드, 마우스, 펜, 음성-입력 장치, 터치-입력 장치 등과 같은 입력 장치(212)를 가질 수도 있다. 디스플레이, 스피커 및 프린터와 같은 출력 장치(214)가 포함될 수도 있다. 이러한 모든 장치들은 본 분야에 널리 공지되어 있으며, 여기에서 장황하게 설명될 필요가 없다.
도 3a 내지 3c의 데이타 흐름도는 본 발명을 실시하는 예시적인 방법을 도시한 것이다. 단계 300 내지 308은 스테이지를 설정한다. 단계 300 및 302에서, 인증 클라이언트(102) 및 인증 서버(106)는 공지된 인증 기술을 사용하여 서로 인증한다. 적절한 인증 기술의 한 예로는 전체적으로 본 명세서에서 사용된 IETF RFC(Internet Engineering Task Force Request for Comments) 2945의 "The SRP Authentication and Key Exchange System"을 고려할 수 있다. 단계 300 및 302가 상호 인증을 언급하고 있지만, 본 설명은 한 방향의 인증에 사용된 인증서를 갱신하는 데에 초점을 맞추겠다. 후속되는 예에 있어서는, 인증 클라이언트(102)를 인증 서버(106)에 대해 인증하는 것에 초점을 맞추고 설명하겠다. 본 발명의 방법은 인증 서버(106)를 인증 클라이언트(102)에 대해 인증하는 것에 대해서도 동일하게 응용가능하므로, 그러한 인증의 방향에 대해서는 더 이상 설명될 필요가 없다.
단계 300에서 인증 클라이언트(102)에 의해 사용된 인증서는 비밀 패스워드를 포함한다. 그 패스워드의 값은 아마도 인증 클라이언트(102) 상에 저장되지는 않겠지만, 사용자가 인증 서버(106)에 의해 인증되기를 바랄 때에 사용자 이름과 함께 인증 클라이언트(102)의 사용자에 의해 입력된다. 보안을 위해, 인증 서버(106)는 비밀 패스워드의 값을 알지 못한다. 그러나, 비밀 패스워드로부터 도출된 "패스워드 검증자"의 값은 알고 있다. 인증 서버(106)는 사용자 이름과 관련하여 패스워드 검증자를 저장한다. (패스워드 검증자가 인증 클라이언트(102)의 식별자보다는 사용자 이름과 관련하여 저장되기 때문에, 인증 클라이언트(102)가 인증되었다고 하기보다는 사용자 이름이 인증되었다고 하는 것이 더 적절할 것이다. 예를 들어, 사용자가 다른 클라이언트로 이동하여 동일한 사용자 이름과 패스워드를 사용하면, 인증 방법은 이전과 같이 작업할 것이다. 그러나, 표현을 쉽게 하기 위해, 본 설명은 인증 클라이언트(102)를 인증 서버(106)에 대해 인증하는 것에 관해 계속 논의하겠다.) 패스워드 검증자가 패스워드로부터 도출될 수 있는 방법의 한 예는 도 3b의 단계 316과 관련하여 아래에 설명된다. 이러한 설명의 시점에서, 도출은 "확정적"이고, "취소할 수 없다"는 것을 충분히 알 수 있다. 확정적 이라는 말은 도출 자체에 무질서도가 없다는 것을 의미하고, 즉 도출을 위한 입력(패스워드를 포함하고 다른 값을 포함할 수도 있음)이 일단 공지되면, 출력(패스워드 검증자)은 완전히 결정된다. 도출은 역행할 수 없다는 것은 도출의 출력을 안다고 해서 입력이 결정될 수 없다는 것을 의미한다. 그보다 더 유력하게, 한 당사자가 패스워드 검증자, 및 패스워드 이외의 도출을 위한 모든 입력을 아는 경우에, 그 당사자는 여전히 패스워드를 결정할 수 없다. 이러한 특성은, 인증 프로세스의 방법을 사용하여, 패스워드 자체를 아는 당사자만이 성공적으로 인증 클라이언트(102)가 될 것을 요구할 수 있다는 것을 함축한다. 인증 프로세스 동안에, 인증 서버(106)는 패스워드 검증자에 관한 자신의 지식을 사용하여 패스워드에 관한 인증 클라이언트(102)의 지식을 테스트한다.
패스워드로부터 패스워드 검증자를 도출하기 위한 다른 입력은 인증 클라이언트(102)와 인증 서버(106) 간에 공유된다. 이들 다른 값의 지식은 패스워드 자체의 지식이 없이 패스워드 검증자를 다시 만들어내기에는 불충분하기 때문에, 이들 다른 값은 인증 프로세스가 시작되기 전에 공표되기도 하고, 심지어 공용-표준 인증 프로토콜 내의 파라미터로서 설정되기도 한다.
인증 프로세스의 한 결과로서, 단계 304에서의 인증 클라이언트(102) 및 단계 306에서의 인증 서버(106)는 나란히 한 세트의 보안 키를 도출한다. 인증 클라이언트(102)는 비밀 패스워드로부터 보안 키를 도출하고, 인증 서버(106)는 패스워드 검증자로부터 비밀 패스워드를 도출한다. 성공적인 인증 프로세스는 2개의 장치에서 도출된 보안 키가 동일할 것을 보장한다. 인증 프로세스가 이것을 보장할 수 있는 방법과 보안 키가 도출될 수 있는 방법의 한 예로서는, 전체적으로 본 명세서에서 사용된 IETF RFC 2246의 "The TLS Protocol"을 참조하기 바란다.
보안 키의 도출은 또한 인증 클라이언트(102)와 인증 서버(106) 간에 공유된 라이브니스 정보를 수반한다. 도출 시의 공유된 라이브니스 정보의 사용은 인증 클라이언트(102)가 인증 서버(106)에게 자신을 인증할 때마다 보안 키가 달라지게 한다. 그렇지 않다면, 인증 클라이언트(102)는 모든 인증 후에 동일한 보안 키를 사용할 것이다. 이것을 안다면, 도청자(108)는 인증 클라이언트(102)가 인증될 때마다 통계적 공격을 재개하여, 인증 클라이언트(102)의 이전의 세션동안에 인터셉트된 메시지의 분석에 새로 인터셉트된 메시지를 추가할 것이다.
보안키의 세트는 보통 암호화 키(공유되거나 또는 한쌍의 한방향 키가 될 수 있음) 및 인증 키를 포함한다. 일단 키가 인증 클라이언트(102) 및 인증 서버(106)에 의해 도출되면, 이들 2개의 장치는 단계 308에서 키를 사용하여 이들의 통신을 보호할 수 있다. 보안키 사용의 예는 도 3b의 단계 312 및 318을 참조하여 아래에 설명된다. 물론, 인증 클라이언트(102) 및 인증 서버(106)가 단계 308에서 보안 키를 사용하여 통신하기 시작함에 따라, 도청자(108)도 또한 보안 키를 알아내고자 그 통신을 인터셉트하기 시작하여 통계적 공격을 받게 할 수도 있다(도시되지 않음).
단계 310에서, 인증 서버(106)는 새로운 비밀 패스워드를 실현할 것을 결정한다. 그러한 결정 이면의 이유로는 전형적으로 현재의 패스워드가 사용되고 있는 시간의 양, 현재의 패스워드 하에 보낸 정보의 양, 및 네트워크(100)의 고유한 보안을 포함할 수도 있다. 무선 네트워크는 보통 도청하는 것에 노출되어 있어서, 이들 네트워크 상에서 사용된 패스워드는 주기적으로 변경되어야 한다. 소정의 경우에, 인증 클라이언트(102)의 패스워드가 변경되어야 한다는 것을 결정하면, 인증 서버(106)는 단계 312에서 그러한 취지의 요청을 보낸다. "요청"은 대개는 이와 관련된 완곡어라는 것을 알기 바라며; 인증 클라이언트(102)가 자신의 패스워드를 변경함으로써 응답하지 않으면, 인증 서버(106)는 현재의 패스워드를 필시 불능케하여, 인증 클라이언트(102)가 자신을 인증하지 못하게 할 것이다.
단계 300 및 302의 인증 프로세스와 관련하여 상술된 바와 같이, 새로운 패스워드 검증자를 도출하는 프로세스는 새로운 패스워드 자체 이외에 다른 입력을 가질 수도 있다. 인증 서버(106)는 변경 패스워드 요청과 함께 이들 다른 입력에 대한 새로운 값을 보내도록 선택될 수도 있다. 이것은 새로운 패스워드 검증자가 새로운 패스워드로부터 그리고 패스워드가 변경된 마지막 시기에 사용된 다른 입력의 동일한 값으로부터 도출될 수 있는 바와 같이 엄격히 필요한 것은 아니다. 그러나, 보안은 최소한 이들 입력 중 몇몇을 또한 변경시킴으로써 증강된다. 단계 312에서 열거된 특정 예시적인 입력(프라임 모듈러스(prime modulus), 생성자(generator) 및 솔트(salt))은 단계 316과 관련하여 아래에 설명된다. 추가 보안을 위해, 이들 값은 단계 306에서 도출된 보안 키를 사용하여 암호화될 수도 있다. 변경 패스워드 요청이 이들 다른 입력들 중의 어느 것을 포함하면, 새로운 입력들을 커버하는 MAC(Message Authentication Code)가 또한 보내질 수도 있다. MAC는 역행할 수 없는 입력들의 해시(hash)이고, 변경 패스워드 요청의 내용이 인 증 서버(106)로부터 변경되어 수신되었는 지를 확인하기 위해 인증 클라이언트(102)에 의해 사용가능하다. MAC를 생성하는 방법의 한 예는 본 명세서에서 전체적으로 사용된 IETF RFC 2104의 "HMAC: Keyed-Hashing for Message Authentication"에서 찾아볼 수 있다.
인증 클라이언트(102)는 만일 있다면 새로운 입력 값들과 함께 변경 패스워드 요청을 수신한다. 소정의 새로운 입력 값이 있으면, MAC는 검증된다. 검증이 실패하면, 변경 패스워드 요청은 무시된다. 그렇지 않으면, 그 새로운 값은 이들을 암호화하는 데 사용된 동일한 보안 키를 사용하여 해독되고, 그 값은 나중에 사용하기 위해 저장된다. 단계 314에서, 인증 클라이언트(102)는 자신의 사용자에게 새로운 패스워드를 재촉한다. 예를 들어, 단계 314는 잘 알려진 프로세스의 형식을 취할 수도 있으며, 여기에서 사용자는 인증을 위한 기존의 패스워드를 입력한 다음에, 새로운 패스워드를 확인을 위해 두번 입력해야 한다. 어떤 실시예에 있어서, 새로운 패스워드는 받아들여지기 전에 여러가지 기준들에 대해 확인될 수도 있다. 이들 기준은 잘 알려져 있는 "최소한 8개의 문자 길이로 되어야 함", "문자와 숫자를 포함해야 함", "표준 사전에서 찾을 수 있는 것은 안됨", "최근에 사용된 패스워드의 치환이 되어서는 안됨", "당신의 배우자나 애완동물의 이름이 되어서는 안됨" 등을 포함 할 수도 있다.
인증 클라이언트(102)가 강요할 수 있는 모든 테스트를 통과한 새로운 패스워드를 사용자가 만들어내면, 인증 클라이언트(102)는 단계 316에서 새로운 패스워드로부터 새로운 패스워드 검증자를 도출한다. 상술된 바와 같이, 도출은 확정적 이고 역행할 수 없게 되어야 한다. IETF RFC 2945는 양쪽의 요구조건을 수행하는 다음의 도출 방법을 제안한다.
Password Verifier = G^SHA(salt|SHA(username|":"|password))% P
여기에서:
SHA(Secure Hash Algorithm)는 업계에서 널리 알려진 해시 함수;
salt는 인증 서버(106)와 공유된 랜덤 값;
|는 스트링 연쇄 연산자;
username 및 password는 인증 클라이언트(102) 사용자에 의해 입력됨;
":"는 콜론 문자로 구성된 스트링;
^는 지수 연산자;
%는 모듈로(정수 나머지) 연산자;
P는 "프라임 모듈러스", 인증 서버(106)와 공유된 큰(보안을 위해 적어도 512비트) 소수(prime number); 및
삭제
G는 인증 서버(106)와 공유된 P의 생성자, 즉 P 미만의 어떤 자연수A
에 대해, G^B%P=A가 되는 다른 수 B가 존재함.
인증 서버(106)가 단계 312에서 프라임 모듈러스, 생성자 또는 솔트에 대한 새로운 값을 보내면, 이들 새로운 값은 패스워드 검증자의 도출에 사용된다.
인증 클라이언트(102)는 새로운 패스워드 검증자를 획득하여, 이것을 단계 306에서 도출된 보안 키로 암호화하고, 이것을 MAC로 커버하여, 이것을 단계 318에서 인증 서버(106)에게 보낸다. 패스워드 검증자가 성공적으로 보내진 후, 인증 클라이언트(102) 상의 이것의 존재는 더 이상 쓸모가 없으므로 버려질 수도 있다. 인증 서버(106)는 MAC를 검증하고, 새로운 패스워드 검증자를 이것을 암호화하는 데에 사용된 동일한 보안 키로 해독하여, 새로운 패스워드 검증자를 사용자 이름과 관련하여 저장하고, 또 변경된 도출 프로세스를 위한 어떤 다른 입력과 관련하여 저장한다. 어떤 실시예에서, 프라임 모듈러스 및 생성자는 극히 드물게 변경되지만, 새로운 솔트는 패스워드가 변경될 때마다 생성된다.
한 주기의 기간 후에, 인증 서버(106)가 이것의 변경 패스워드 요청에 대한 응답을 수신하지 않으면, 요청을 다시 보낼 수도 있다. 상술된 바와 같이, 패스워드를 변경하려는 시도가 반복 실패된 후, 인증 서버(106)는 현재의 패스워드를 불능케하라고 결정할 수도 있다.
인증서의 변경을 조정하는 프로세스는 완료된다. 보안을 위해, 인증 클라이언트(102)는 인증 서버(106)에게 단계 320에서 자신을 재인증함으로써 새로운 인증서를 즉시 사용할 것을 권한다. 재인증이 성공적이면, 단계 304 및 306과 나란히 단계 324 및 326에서, 인증 클라이언트(102) 및 인증 서버(106)는 각각 새로운 인증서에 기초하여 새로운 세트의 보안 키를 도출한다. 단계 328에서, 새로운 보안 키는 통신을 보호하는데 사용된다. 새로운 패스워드 및 새로운 패스워드 검증자는 인증 서버(106)가 패스워드를 다시 변경하라고 결정하여 단계 310으로 돌아가기 전까지 인증서로서 여전히 사용된다.
인증 클라이언트(102)와 인증 서버(106) 간에 사용하는 통신 프로토콜은 단계 312 및 318에서 정보를 보내기 위해 사용된 실제 포맷을 결정할 수도 있다. 도 4는 변경 패스워드 요청 메시지에 대한 아이템(400) 및 변경 패스워드 응답 메시지에 대한 아이템(402)의 2가지 예시적인 데이터 구조를 제공한다. 도 4는 단지 예시적인 메시지의 데이터 필드를 도시한 것으로, 사용된 통신 프로토콜은 이들 데이터 필드에 헤더 및 트레일러(trailer)들을 추가할 수도 있다. 이들 2가지 메시지는, 예를 들어 2가지 새로운 EAP-SRP(Extensible Authentication Protocol-Secure Remote Password) 메시지로 구현될 수도 있다. EAP-SRP는 또한 이들 데이터 필드를 전달하기 위해 사용될 수도 있는 벤더(vendor)-특정 메시지를 정의한다. 그밖의 다른 통신 프로토콜은 이와 유사한 편의를 제공한다.
본 발명의 방법은 인증 클라이언트(102)와 인증 서버(106) 간의 통신을 전혀 방해하지 않으면서 인증서가 변경될 수 있게 한다. 또한, 본 발명은 안전하면서도, 인증 클라이언트(102)와 인증 서버(106)가 새로운 인증서의 실현을 조정하는 데에 번거롭지 않은 방법을 제공할 수 있다.
본 발명의 원리가 적용될 수 있는 다수의 가능한 실시예에 비추어, 도면과 관련하여 여기에 설명된 실시예들은 단지 실례를 들기 위한 것이지 본 발명의 범위를 제한하는 것으로 여겨져서는 안된다. 본 분야에 숙련된 기술자들은 데이터 필드 크기 및 메시지 포맷과 같은 몇가지 실현 상세가 특정 상황에 선택된 프로토콜에 의해 결정되고 공용화된 표준에서 찾아볼 수 있게 된다는 것을 인식할 것이다. 본 발명은 소프트웨어 모듈 또는 구성요소, 몇가지 프로세스, 특히 암호화 방법과 관련하여 설명되었지만, 하드웨어 구성요소에 의해 동등하게 실행될 수도 있다. 그러므로, 여기에서 설명된 본 발명은 다음의 청구범위와 그 등가물의 범위 내에 들 수 있는 모든 실시예를 고려할 수 있다.

Claims (53)

  1. 인증 클라이언트와 인증 서버를 갖고 있으며, 상기 인증 클라이언트가 상기 인증 서버에 대해 인증되어 있고, 상기 인증 클라이언트의 인증은, 상기 인증 클라이언트에게 공지된 기존의 패스워드(password), 상기 인증 서버에게 공지된 기존의 패스워드 검증자(verifier), 및 상기 인증 클라이언트와 상기 인증 서버 둘다에게 공지된 사용자 이름, 기존의 프라임 모듈러스(prime modulus), 상기 기존의 프라임 모듈러스의 기존의 생성자(generator) 및 기존의 솔트(salt)에 기초하는 컴퓨팅 환경에서, 새로운 패스워드를 실현하기 위한 방법에 있어서,
    상기 인증 서버에 의해, 상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하는 단계,
    상기 인증 서버에 의해, 상기 인증 클라이언트에 대해 새로운 솔트를 억세스 가능하게 하는 단계,
    상기 인증 클라이언트 상에서, 상기 인증 클라이언트의 사용자로부터 새로운 패스워드를 요청하여 수신하는 단계,
    상기 인증 클라이언트 상에서, 상기 새로운 솔트 및 상기 사용자 이름을 컴퓨팅을 위한 입력으로서 패스하여, 새로운 패스워드 검증자를 컴퓨팅하는 단계,
    상기 인증 클라이언트에 의해, 상기 인증 서버에 대해 상기 새로운 패스워드 검증자를 억세스 가능하게 하는 단계, 및
    상기 인증 서버 상에서, 상기 사용자 이름, 상기 새로운 패스워드 검증자 및 상기 새로운 솔트를 저장하는 단계
    를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  2. 제1항에 있어서,
    상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하는 단계는 EAP-SRP(Extensible Authentication Protocol-Secure Remote Password) 서버 변경 패스워드(Server Change Password) 메시지를 보내는 단계를 포함하고,
    상기 새로운 패스워드 검증자를 억세스 가능하게 하는 단계는 EAP-SRP 클라이언트 변경 패스워드(Client Change Password) 메시지를 보내는 단계를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  3. 제1항에 있어서,
    상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하는 단계는 EAP-SRP 벤더-특정 변경 패스워드 요청(Vendor-Specific Change Password Request) 메시지를 보내는 단계를 포함하고,
    상기 새로운 패스워드 검증자를 억세스 가능하게 하는 단계는 EAP-SRP 벤더-특정 변경 패스워드 응답(Vendor-Specific Change Password Response) 메시지를 보내는 단계를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  4. 제1항에 있어서,
    상기 새로운 솔트는 상기 기존의 솔트와 동일하고,
    상기 새로운 솔트를 억세스 가능하게 하는 단계는, 상기 인증 서버에 의해, 상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하기 이전에, 상기 새로운 솔트를 상기 인증 클라이언트와 공유하는 단계를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  5. 제1항에 있어서,
    상기 새로운 솔트는 상기 기존의 솔트와 동일하지 않고,
    상기 새로운 솔트를 억세스 가능하게 하는 단계는, 상기 인증 서버에 의해,
    상기 새로운 솔트를 포함하고 있는 메시지를 상기 인증 클라이언트에게 보내는 단계;
    상기 새로운 솔트를 상기 인증 서버 및 상기 인증 클라이언트가 억세스 가능한 위치에 포스트하는(posting) 단계; 및
    상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하기 이전에, 상기 새로운 솔트를 상기 인증 클라이언트와 공유하는 단계
    로 이루어진 그룹으로부터 선택된 기술을 이용하는 단계를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  6. 제5항에 있어서, 상기 새로운 솔트를 억세스 가능하게 하는 단계는,
    상기 인증 서버에 의해, 상기 새로운 솔트를 커버하는(covering) 제1 MAC를 컴퓨팅하는 단계 - 상기 제1 MAC는 상기 인증 클라이언트의 인증 동안에 도출된 인증-클라이언트 대 인증-서버 인증 키에 기초함 -,
    상기 인증 서버에 의해 상기 인증 클라이언트에 대해 제1 MAC를 억세스 가능하게 하는 단계, 및
    상기 인증 클라이언트 상에서, 상기 새로운 솔트를 커버하는 제2 MAC를 컴퓨팅하는 단계 - 상기 제2 MAC는 상기 인증-클라이언트 대 인증-서버 인증 키에 기초함 -
    를 더 포함하고,
    상기 새로운 패스워드를 요청하여 수신하는 단계, 및 상기 새로운 패스워드 검증자를 컴퓨팅하는 단계, 억세스 가능하게 하는 단계 및 저장하는 단계는 상기 제1 MAC가 상기 제2 MAC와 일치하는 경우에만 실행되는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  7. 제1항에 있어서, 상기 기존의 프라임 모듈러스 및 상기 기존의 프라임 모듈러스의 상기 기존의 생성자를 상기 컴퓨팅을 위한 또 다른 입력으로서 패스하는 단계를 더 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  8. 제7항에 있어서, 상기 새로운 패스워드 검증자를 컴퓨팅하는 단계는, 상기 인증 클라이언트 상에서,
    제1 중간 값에 해시 함수를 실행한 결과를 할당하는 단계 - 상기 해시 함수에 대한 입력은 상기 사용자 이름 및 상기 새로운 패스워드를 포함함 -,
    제2 중간 값에 해시 함수를 실행한 결과를 할당하는 단계 - 상기 해시 함수에 대한 입력은 상기 새로운 솔트 및 상기 제1 중간 값을 포함함 -,
    제3 중간 값에, 상기 제2 중간 값의 제곱을 한 상기 기존의 생성자(the old generator raised to a power of the second intermediate value)를 할당하는 단계, 및
    상기 새로운 패스워드 검증자에, 상기 제3 중간 값을 상기 기존의 프라임 모듈러스로 모듈로(modulo)한 값을 할당하는 단계
    를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  9. 제1항에 있어서, 상기 새로운 패스워드 검증자를 억세스 가능하게 하는 단계는,
    상기 인증 클라이언트 상에서, 상기 인증 클라이언트의 인증 동안에 도출된 인증-서버 대 인증-클라이언트 암호화 키를 사용하여 상기 새로운 패스워드 검증자를 암호화하는 단계,
    상기 인증 클라이언트에 의해, 상기 인증 서버에 대해 암호화된 새로운 패스워드 검증자를 억세스 가능하게 하는 단계, 및
    상기 인증 서버 상에서, 상기 인증-서버 대 인증 클라이언트 암호화 키를 사용하여 상기 암호화된 새로운 패스워드 검증자를 해독하는 단계
    를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  10. 제9항에 있어서, 상기 새로운 패스워드 검증자를 억세스 가능하게 하는 단계는,
    상기 인증 클라이언트 상에서, 상기 암호화된 새로운 패스워드 검증자를 커버하는 제1 MAC를 컴퓨팅하는 단계 - 상기 제1 MAC는 상기 인증 클라이언트의 인증 동안에 도출된 인증-서버 대 인증-클라이언트 인증 키에 기초함 -,
    상기 인증 클라이언트에 의해, 상기 인증 서버에 대해 상기 제1 MAC를 억세스 가능하게 하는 단계, 및
    상기 인증 서버 상에서, 상기 암호화된 새로운 패스워드 검증자를 커버하는 제2 MAC를 컴퓨팅하는 단계 - 상기 제2 MAC는 상기 인증-서버 대 인증-클라이언트 인증 키에 기초함 -
    를 더 포함하고,
    상기 사용자 이름, 상기 새로운 패스워드 검증자 및 상기 새로운 솔트를 저장하는 단계는 상기 제1 MAC가 상기 제2 MAC와 일치하는 경우에만 실행되는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  11. 제1항에 있어서,
    상기 인증 서버 상에서, 상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하는 것과 타이머를 연관시키는 단계, 및
    상기 타이머의 완료 시에, 상기 인증 클라이언트에 의해 억세스 가능하게 된 새로운 패스워드 검증자가 없으면, 상기 인증 서버 상에서 상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하는 것을 반복하는 단계
    를 더 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  12. 제1항에 있어서,
    상기 인증 클라이언트를 상기 인증 서버에 대해 2회째 인증하는 단계를 더 포함하고, 상기 2회째 인증은,
    상기 인증 클라이언트에게 공지된 상기 새로운 패스워드, 상기 인증 서버에게 공지된 상기 새로운 패스워드 검증자, 및 상기 인증 클라이언트와 상기 인증 서버 둘다에게 공지된 상기 사용자 이름, 상기 기존의 프라임 모듈러스, 상기 기존의 프라임 모듈러스의 상기 기존의 생성자 및 상기 새로운 솔트에 기초하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  13. 제1항에 있어서,
    상기 인증 서버에 의해 상기 인증 클라이언트에 대해 새로운 프라임 모듈러스 및 상기 새로운 프라임 모듈러스의 새로운 생성자를 억세스 가능하게 하는 단계를 더 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  14. 제13항에 있어서, 새로운 솔트, 새로운 프라임 모듈러스, 및 상기 새로운 프라임 모듈러스의 새로운 생성자를 억세스 가능하게 하는 단계는,
    상기 인증 서버 상에서, 상기 새로운 솔트, 상기 새로운 프라임 모듈러스 및 상기 새로운 생성자를 커버하는 제1 MAC를 컴퓨팅하는 단계 - 상기 제1 MAC는 상기 인증 클라이언트의 인증 동안에 도출된 인증-클라이언트 대 인증-서버 인증 키에 기초함-,
    상기 인증 서버에 의해, 상기 인증 클라이언트에 대해 상기 제1 MAC를 억세스 가능하게 하는 단계, 및
    상기 인증 클라이언트 상에서, 상기 새로운 솔트, 상기 새로운 프라임 모듈러스 및 상기 새로운 생성자를 커버하는 제2 MAC를 컴퓨팅하는 단계 - 상기 제2 MAC는 상기 인증-클라이언트 대 인증-서버 인증 키에 기초함 -
    를 포함하고,
    상기 새로운 패스워드를 요청하여 수신하는 단계, 및 상기 새로운 패스워드 검증자를 컴퓨팅하는 단계, 억세스 가능하게 하는 단계 및 저장하는 단계는 상기 제1 MAC와 상기 제2 MAC가 일치하는 경우에만 실행되는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  15. 제13항에 있어서, 상기 새로운 프라임 모듈러스 및 상기 새로운 생성자를 상기 컴퓨팅을 위한 또 다른 입력으로서 패스하는 단계를 더 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  16. 제15항에 있어서, 상기 새로운 패스워드 검증자를 컴퓨팅하는 단계는, 상기 인증 클라이언트 상에서,
    제1 중간 값에 해시 함수를 실행한 결과를 할당하는 단계 - 상기 해시 함수에 대한 입력은 상기 사용자 이름 및 상기 새로운 패스워드를 포함함 -,
    제2 중간 값에 해시 함수를 실행한 결과를 할당하는 단계 - 상기 해시 함수에 대한 입력은 상기 새로운 솔트 및 상기 제1 중간 값을 포함함 -,
    제3 중간 값에, 상기 제2 중간 값의 제곱을 한 상기 새로운 생성자를 할당하는 단계, 및
    상기 새로운 패스워드 검증자에, 상기 제3 중간 값을 상기 새로운 프라임 모듈러스로 모듈로한 값을 할당하는 단계
    를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  17. 제13항에 있어서,
    상기 인증 클라이언트를 상기 인증 서버에 대해 2회째 인증하는 단계를 더 포함하고, 상기 2회째 인증은,
    상기 인증 클라이언트에게 공지된 상기 새로운 패스워드, 상기 인증 서버에게 공지된 상기 새로운 패스워드 검증자, 및 상기 인증 클라이언트와 상기 인증 서버 둘다에게 공지된 상기 사용자 이름, 상기 새로운 프라임 모듈러스, 상기 새로운 프라임 모듈러스의 상기 새로운 생성자 및 상기 새로운 솔트에 기초하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  18. 새로운 패스워드를 실현하는 방법을 실행하기 위한 명령들(instructions)을 포함하고 있는 컴퓨터 판독가능 저장매체에 있어서,
    인증 클라이언트가 인증 서버에 대해 인증되어 있고, 상기 인증 클라이언트의 인증은 상기 인증 클라이언트에게 공지된 기존의 패스워드, 상기 인증 서버에게 공지된 기존의 패스워드 검증자, 및 상기 인증 클라이언트와 상기 인증 서버 둘다에게 공지된 사용자 이름, 기존의 프라임 모듈러스, 상기 기존의 프라임 모듈러스의 기존의 생성자 및 기존의 솔트에 기초하고,
    상기 방법은,
    상기 인증 서버에 의해, 상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하는 단계,
    상기 인증 서버에 의해 상기 인증 클라이언트에 대해 새로운 솔트를 억세스 가능하게 하는 단계,
    상기 인증 클라이언트 상에서, 상기 인증 클라이언트의 사용자로부터 새로운 패스워드를 요청하여 수신하는 단계,
    상기 인증 클라이언트 상에서, 상기 새로운 솔트 및 상기 사용자 이름을 컴퓨팅을 위한 입력으로서 패스하여, 새로운 패스워드 검증자를 컴퓨팅하는 단계,
    상기 인증 클라이언트에 의해, 상기 인증 서버에 대해 상기 새로운 패스워드 검증자를 억세스 가능하게 하는 단계, 및
    상기 인증 서버 상에서, 상기 사용자 이름, 상기 새로운 패스워드 검증자 및 상기 새로운 솔트를 저장하는 단계
    를 포함하는 것을 특징으로 하는 컴퓨터 판독가능 저장매체.
  19. 인증 클라이언트와 인증 서버를 갖고 있으며, 상기 인증 클라이언트가 상기 인증 서버에 대해 인증되어 있고, 상기 인증 클라이언트의 인증은 상기 인증 클라이언트에게 공지된 기존의 패스워드, 상기 인증 서버에게 공지된 기존의 패스워드 검증자, 및 상기 인증 클라이언트와 상기 인증 서버 둘다에게 공지된 사용자 이름, 기존의 프라임 모듈러스, 상기 기존의 프라임 모듈러스의 기존의 생성자 및 기존의 솔트에 기초하는 컴퓨팅 환경에서, 상기 인증 서버가 상기 인증 클라이언트로 하여금 새로운 패스워드를 실현하게 하는 방법에 있어서,
    상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하는 단계,
    상기 인증 클라이언트에 대해 새로운 솔트를 억세스 가능하게 하는 단계,
    상기 인증 클라이언트로부터 새로운 패스워드 검증자를 수신하는 단계, 및
    상기 사용자 이름, 상기 새로운 패스워드 검증자 및 상기 새로운 솔트를 저장하는 단계
    를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  20. 제19항에 있어서,
    상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하는 단계는 EAP-SRP 서버 변경 패스워드 메시지를 보내는 단계를 포함하고,
    상기 인증 클라이언트로부터 새로운 패스워드 검증자를 수신하는 단계는 EAP-SRP 클라이언트 변경 패스워드 메시지를 수신하는 단계를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  21. 제19항에 있어서,
    상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하는 단계는 EAP-SRP 벤더-특정 변경 패스워드 요청 메시지를 보내는 단계를 포함하고,
    상기 인증 클라이언트로부터 새로운 패스워드 검증자를 수신하는 단계는 EAP-SRP 벤더-특정 변경 패스워드 응답 메시지를 수신하는 단계를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  22. 제19항에 있어서,
    상기 새로운 솔트는 상기 기존의 솔트와 동일하고,
    상기 인증 클라이언트에 대해 상기 새로운 솔트를 억세스 가능하게 하는 단계는, 상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하기 이전에, 상기 새로운 솔트를 상기 인증 클라이언트와 공유하는 단계를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  23. 제19항에 있어서,
    상기 새로운 솔트는 상기 기존의 솔트와 동일하지 않고,
    상기 인증 클라이언트에 대해 상기 새로운 솔트를 억세스 가능하게 하는 단계는,
    상기 새로운 솔트를 포함하고 있는 메시지를 상기 인증 클라이언트에게 보내는 단계;
    상기 인증 서버 및 상기 인증 클라이언트가 억세스 가능한 위치에 상기 새로운 솔트를 포스트하는 단계; 및
    상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하기 이전에 상기 새로운 솔트를 상기 인증 클라이언트와 공유하는 단계로 이루어진 그룹으로부터 선택된 기술을 이용하는 단계를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  24. 제23항에 있어서, 상기 인증 클라이언트에 대해 새로운 솔트를 억세스 가능하게 하는 단계는,
    상기 새로운 솔트를 커버하는 MAC를 컴퓨팅하는 단계 - 상기 MAC는 상기 인증 클라이언트의 인증 동안에 도출된 인증-클라이언트 대 인증-서버 인증 키에 기초함 -, 및
    상기 인증 클라이언트에 대해 상기 MAC를 억세스 가능하게 하는 단계
    를 더 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  25. 제19항에 있어서, 상기 인증 클라이언트로부터 새로운 패스워드 검증자를 수신하는 단계는,
    상기 인증 클라이언트로부터 암호화된 새로운 패스워드 검증자를 수신하는 단계, 및
    상기 인증 클라이언트의 인증 동안에 도출된 인증-서버 대 인증-클라이언트 암호화 키를 사용하여 상기 암호화된 새로운 패스워드 검증자를 해독하는 단계
    를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  26. 제25항에 있어서, 상기 인증 클라이언트로부터 새로운 패스워드 검증자를 수신하는 단계는,
    상기 인증 클라이언트로부터 MAC를 수신하는 단계, 및
    상기 암호화된 새로운 패스워드 검증자를 커버하는 MAC를 컴퓨팅하는 단계 -상기 MAC는 상기 인증 클라이언트의 인증 동안에 도출된 인증-서버 대 인증-클라이언트 인증 키에 기초함 -
    를 더 포함하고,
    상기 사용자 이름, 상기 새로운 패스워드 검증자 및 상기 새로운 솔트를 저장하는 단계는 수신된 MAC가 컴퓨팅된 MAC와 일치하는 경우에만 실행되는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  27. 제19항에 있어서,
    상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하는 것과 타이머를 연관시키는 단계, 및
    상기 타이머의 완료 시에, 상기 인증 클라이언트로부터 수신된 새로운 패스워드 검증자가 없으면, 상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하는 것을 반복하는 단계
    를 더 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  28. 제19항에 있어서, 상기 인증 클라이언트를 상기 인증 서버에 대해 2회째 인증하는 단계를 더 포함하고, 상기 2회째 인증은,
    상기 인증 클라이언트에게 공지된 상기 새로운 패스워드, 상기 인증 서버에게 공지된 상기 새로운 패스워드 검증자, 및 상기 인증 클라이언트와 상기 인증 서버 둘다에게 공지된 상기 사용자 이름, 상기 기존의 프라임 모듈러스, 상기 기존의 프라임 모듈러스의 상기 기존의 생성자 및 상기 새로운 솔트에 기초하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  29. 제19항에 있어서, 상기 인증 클라이언트에 대해 새로운 프라임 모듈러스 및 상기 새로운 프라임 모듈러스의 새로운 생성자를 억세스 가능하게 하는 단계를 더 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  30. 제29항에 있어서, 상기 인증 클라이언트에 대해 새로운 솔트, 새로운 프라임 모듈러스 및 상기 새로운 프라임 모듈러스의 새로운 생성자를 억세스 가능하게 하는 단계는
    상기 새로운 솔트, 상기 새로운 프라임 모듈러스 및 상기 새로운 생성자를 커버하는 MAC를 컴퓨팅하는 단계 - 상기 MAC는 상기 인증 클라이언트의 인증 동안에 도출된 인증-클라이언트 대 인증-서버 인증 키에 기초함- , 및
    상기 인증 클라이언트에 대해 상기 MAC를 억세스 가능하게 하는 단계
    를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  31. 제29항에 있어서, 상기 인증 클라이언트를 상기 인증 서버에게 2회째 인증하는 단계를 더 포함하고, 상기 2회째 인증은,
    상기 인증 클라이언트에게 공지된 상기 새로운 패스워드, 상기 인증 서버에게 공지된 상기 새로운 패스워드 검증자, 및 상기 인증 클라이언트와 상기 인증 서버 둘다에게 공지된 상기 사용자 이름, 상기 새로운 프라임 모듈러스, 상기 새로운 프라임 모듈러스의 상기 새로운 생성자 및 상기 새로운 솔트에 기초하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  32. 인증 서버가 인증 클라이언트로 하여금 새로운 패스워드를 실현하게 하는 방법을 실행하기 위한 명령들을 포함하고 있는 컴퓨터 판독가능 저장매체에 있어서,
    상기 인증 클라이언트가 상기 인증 서버에 대해 인증되어 있고, 상기 인증 클라이언트의 인증은, 상기 인증 클라이언트에게 공지된 기존의 패스워드, 상기 인증 서버에게 공지된 기존의 패스워드 검증자, 및 상기 인증 클라이언트와 상기 인증 서버 둘다에게 공지된 사용자 이름, 기존의 프라임 모듈러스, 상기 기존의 프라임 모듈러스의 기존의 생성자 및 기존의 솔트에 기초하고,
    상기 방법은,
    상기 인증 클라이언트에게 자신의 패스워드를 변경할 것을 요청하는 단계,
    상기 인증 클라이언트에 대해 새로운 솔트를 억세스 가능하게 하는 단계,
    상기 인증 클라이언트로부터 새로운 패스워드 검증자를 수신하는 단계, 및
    상기 사용자 이름, 상기 새로운 패스워드 검증자 및 상기 새로운 솔트를 저장하는 단계
    를 포함하는 것을 특징으로 하는 컴퓨터 판독가능 저장매체.
  33. 인증 클라이언트와 인증 서버를 갖고 있으며, 상기 인증 클라이언트가 상기 인증 서버에게 인증되어 있고, 상기 인증 클라이언트의 인증은, 상기 인증 클라이언트에게 공지된 기존의 패스워드, 상기 인증 서버에게 공지된 기존의 패스워드 검증자, 및 상기 인증 클라이언트와 상기 인증 서버 둘다에게 공지된 사용자 이름, 기존의 프라임 모듈러스, 상기 기존의 프라임 모듈러스의 기존의 생성자 및 기존의 솔트에 기초하는 컴퓨팅 환경에서, 상기 인증 클라이언트가 새로운 패스워드를 실현하기 위한 방법에 있어서,
    상기 인증 클라이언트는 자신의 패스워드를 변경하라는 요청을 상기 인증 서버로부터 수신하는 단계,
    상기 인증 서버로부터 새로운 솔트를 수신하는 단계,
    상기 인증 클라이언트의 사용자로부터 새로운 패스워드를 요청하여 수신하는 단계,
    상기 새로운 솔트 및 상기 사용자 이름을 컴퓨팅을 위한 입력으로서 패스하여, 새로운 패스워드 검증자를 컴퓨팅하는 단계, 및
    상기 인증 서버에 대해 상기 새로운 패스워드 검증자를 억세스 가능하게 하는 단계
    를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  34. 제33항에 있어서,
    상기 인증 클라이언트는 자신의 패스워드를 변경하라는 요청을 수신하는 단계는 EAP-SRP 서버 변경 패스워드 메시지를 수신하는 단계를 포함하고,
    상기 인증 서버에 대해 상기 새로운 패스워드 검증자를 억세스 가능하게 하는 단계는 EAP-SRP 클라이언트 변경 패스워드 메시지를 보내는 단계를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  35. 제33항에 있어서,
    상기 인증 클라이언트는 자신의 패스워드를 변경하라는 요청을 수신하는 단계는 EAP-SRP 벤더-특정 변경 패스워드 요청 메시지를 수신하는 단계를 포함하고, 상기 인증 서버에 대해 상기 새로운 패스워드 검증자를 억세스 가능하게 하는 단계는 EAP-SRP 벤더-특정 변경 패스워드 응답 메시지를 보내는 단계를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  36. 제33항에 있어서,
    상기 새로운 솔트는 상기 기존의 솔트와 동일하고,
    상기 인증 서버로부터 상기 새로운 솔트를 수신하는 단계는, 상기 인증 클라이언트가 자신의 패스워드를 변경하라는 요청을 수신하기 이전에, 상기 새로운 솔트를 상기 인증 서버와 공유하는 단계를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  37. 제33항에 있어서,
    상기 새로운 솔트는 상기 기존의 솔트와 동일하지 않고,
    상기 인증 서버로부터 상기 새로운 솔트를 수신하는 단계는,
    상기 새로운 솔트를 포함하고 있는 메시지를 상기 인증 서버로부터 수신하는 단계;
    상기 인증 서버 및 상기 인증 클라이언트에 대해 억세스 가능한 위치에서 상기 새로운 솔트에 억세스하는 단계; 및
    상기 인증 클라이언트가 자신의 패스워드를 변경하라는 요청을 수신하기 이전에 상기 새로운 솔트를 상기 인증 서버와 공유하는 단계
    로 이루어진 그룹으로부터 선택된 기술을 이용하는 단계를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  38. 제37항에 있어서, 상기 인증 서버로부터 상기 새로운 솔트를 수신하는 단계는,
    상기 인증 서버로부터 MAC를 수신하는 단계, 및
    상기 새로운 솔트를 커버하는 MAC를 컴퓨팅하는 단계 - 상기 MAC는 상기 인증 클라이언트의 인증 동안에 도출된 인증-클라이언트 대 인증-서버 인증 키에 기초함 -
    를 더 포함하고,
    상기 새로운 패스워드 검증자를 컴퓨팅하는 단계, 및 상기 새로운 패스워드 검증자를 상기 인증 서버에 대해 억세스 가능하게 하는 단계는, 수신된 MAC가 컴퓨팅된 MAC와 일치하는 경우에만 실행되는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  39. 제33항에 있어서, 상기 기존의 프라임 모듈러스 및 상기 기존의 프라임 모듈러스의 상기 기존의 생성자를 상기 컴퓨팅을 위한 또 다른 입력으로서 패스하는 단계를 더 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  40. 제39항에 있어서, 상기 새로운 패스워드 검증자를 컴퓨팅하는 단계는,
    제1 중간 값에 해시 함수를 실행한 결과를 할당하는 단계 - 상기 해시 함수에 대한 입력은 상기 사용자 이름 및 상기 새로운 패스워드를 포함함 -,
    제2 중간 값에 해시 함수를 실행한 결과를 할당하는 단계 - 상기 해시 함수에 대한 입력은 상기 새로운 솔트 및 상기 제1 중간 값을 포함함 -,
    제3 중간 값에, 상기 제2 중간 값의 제곱을 한 상기 기존의 생성자를 할당하는 단계, 및
    상기 새로운 패스워드 검증자에, 상기 제3 중간 값을 상기 기존의 프라임 모듈러스로 모듈로한 값을 할당하는 단계
    를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  41. 제33항에 있어서, 상기 인증 서버에 대해 상기 새로운 패스워드 검증자를 억세스 가능하게 하는 단계는,
    상기 인증 클라이언트의 인증 동안에 도출된 인증-서버 대 인증-클라이언트 암호화 키를 사용하여 상기 새로운 패스워드 검증자를 암호화하는 단계, 및
    상기 인증 서버에 대해 암호화된 새로운 패스워드 검증자를 억세스 가능하게 하는 단계
    를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  42. 제41항에 있어서, 상기 인증 서버에 대해 상기 새로운 패스워드 검증자를 억세스 가능하게 하는 단계는,
    상기 암호화된 새로운 패스워드 검증자를 커버하는 MAC를 컴퓨팅하는 단계 - 상기 MAC는 상기 인증 클라이언트의 인증 동안에 도출된 인증-서버 대 인증-클라이언트 인증 키에 기초함- , 및
    상기 인증 서버에 대해 상기 MAC를 억세스 가능하게 하는 단계
    를 더 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  43. 제33항에 있어서, 상기 인증 클라이언트를 인증 서버에 대해 2회째 인증하는 단계를 더 포함하고, 상기 2회째 인증은,
    상기 인증 클라이언트에게 공지된 상기 새로운 패스워드, 상기 인증 서버에게 공지된 상기 새로운 패스워드 검증자, 및 상기 인증 클라이언트와 상기 인증 서버 둘다에게 공지된 상기 사용자 이름, 상기 기존의 프라임 모듈러스, 상기 기존의 프라임 모듈러스의 상기 기존의 생성자 및 상기 새로운 솔트에 기초하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  44. 제33항에 있어서, 상기 인증 서버로부터 새로운 프라임 모듈러스 및 상기 새로운 프라임 모듈러스의 새로운 생성자를 수신하는 단계를 더 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  45. 제44항에 있어서, 상기 인증 서버로부터 새로운 솔트, 새로운 프라임 모듈러스 및 상기 새로운 프라임 모듈러스의 새로운 생성자를 수신하는 단계는,
    상기 인증 서버로부터 MAC를 수신하는 단계, 및
    상기 새로운 솔트, 상기 새로운 프라임 모듈러스 및 상기 새로운 생성자를 커버하는 MAC를 컴퓨팅하는 단계 - 상기 MAC는 상기 인증 클라이언트의 인증 동안에 도출된 인증-클라이언트 대 인증-서버 인증 키에 기초함-
    를 포함하고,
    상기 새로운 패스워드 검증자를 컴퓨팅하는 단계, 및 상기 새로운 패스워드 검증자를 상기 인증 서버에 대해 억세스 가능하게 하는 단계는 수신된 MAC가 컴퓨팅된 MAC와 일치하는 경우에만 실행되는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  46. 제44항에 있어서, 상기 새로운 프라임 모듈러스 및 상기 새로운 생성자를 상기 컴퓨팅을 위한 또 다른 입력으로서 패스하는 단계를 더 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  47. 제46항에 있어서, 상기 새로운 패스워드 검증자를 컴퓨팅하는 단계는,
    제1 중간 값에 해시 함수를 실행한 결과를 할당하는 단계 - 상기 해시 함수에 대한 입력은 상기 사용자 이름 및 상기 새로운 패스워드를 포함함- ,
    제2 중간 값에 해시 함수를 실행한 결과를 할당하는 단계 - 상기 해시 함수에 대한 입력은 상기 새로운 솔트 및 상기 제1 중간 값을 포함함- ,
    제3 중간 값에, 상기 제2 중간 값의 제곱을 한 상기 새로운 생성자를 할당하는 단계, 및
    상기 새로운 패스워드 검증자에, 상기 제3 중간 값을 상기 새로운 프라임 모듈러스로 모듈로한 값을 할당하는 단계
    를 포함하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  48. 제44항에 있어서, 상기 인증 클라이언트를 상기 인증 서버에 대해 2회째 인증하는 단계를 더 포함하고, 상기 2회째 인증은,
    상기 인증 클라이언트에게 공지된 상기 새로운 패스워드, 상기 인증 서버에게 공지된 상기 새로운 패스워드 검증자, 및 상기 인증 클라이언트와 상기 인증 서버 둘다에게 공지된 상기 사용자 이름, 상기 새로운 프라임 모듈러스, 상기 새로운 프라임 모듈러스의 상기 새로운 생성자 및 상기 새로운 솔트에 기초하는 것을 특징으로 하는 새로운 패스워드 실현 방법.
  49. 인증 클라이언트가 새로운 패스워드를 실현하는 방법을 실행하기 위한 명령들을 포함하는 컴퓨터 판독가능 저장매체에 있어서,
    상기 인증 클라이언트가 인증 서버에 대해 인증되어 있고, 상기 인증 클라이언트의 인증은, 상기 인증 클라이언트에게 공지된 기존의 패스워드, 상기 인증 서버에게 공지된 기존의 패스워드 검증자, 및 상기 인증 클라이언트와 상기 인증 서버 둘다에게 공지된 사용자 이름, 기존의 프라임 모듈러스, 상기 기존의 프라임 모듈러스의 기존의 생성자 및 기존의 솔트에 기초하고,
    상기 방법은,
    상기 인증 서버로부터 상기 인증 클라이언트가 자신의 패스워드를 변경하라는 요청을 수신하는 단계,
    상기 인증 서버로부터 새로운 솔트를 수신하는 단계,
    상기 인증 클라이언트의 사용자로부터 새로운 패스워드를 요청하여 수신하는 단계,
    상기 새로운 솔트 및 상기 사용자 이름을 컴퓨팅을 위한 입력으로서 패스하여, 새로운 패스워드 검증자를 컴퓨팅하는 단계, 및
    상기 인증 서버에 대해 상기 새로운 패스워드 검증자를 억세스 가능하게 하는 단계
    를 포함하는 것을 특징으로 하는 컴퓨터 판독가능 저장매체.
  50. 변경 패스워드 요청 데이터 구조가 저장되어 있는 컴퓨터 판독가능 저장매체에 있어서, 상기 변경 패스워드 요청 데이터 구조는,
    솔트를 나타내는 데이터를 포함하고 있는 제1 데이터 필드,
    프라임 모듈러스를 나타내는 데이터를 포함하고 있는 제2 데이터 필드,
    상기 프라임 모듈러스의 생성자를 나타내는 데이터를 포함하고 있는 제3 데이터 필드, 및
    상기 솔트, 상기 프라임 모듈러스 및 상기 생성자를 커버하는 MAC를 나타내는 데이터를 포함하고 있는 제4 데이터 필드
    를 포함하고 있는 것을 특징으로 하는 컴퓨터 판독가능 저장매체.
  51. 제50항에 있어서, 상기 솔트, 상기 프라임 모듈러스, 상기 생성자 및 상기 MAC는 EAP-SRP 서버 변경 패스워드 메시지 및 EAP-SRP 벤더-특정 변경 패스워드 요청 메시지로 이루어진 그룹으로부터 선택된 메시지의 부분들로서 포맷되는 것을 특징으로 하는 컴퓨터 판독가능 저장매체.
  52. 변경 패스워드 응답 데이터 구조가 저장되어 있는 컴퓨터 판독가능 저장매체에 있어서, 상기 변경 패스워드 응답 데이터 구조는,
    패스워드 검증자를 나타내는 데이터를 포함하고 있는 제1 데이터 필드, 및
    상기 패스워드 검증자를 커버하는 MAC를 나타내는 데이터를 포함하고 있는 제2 데이터 필드
    를 포함하고 있는 것을 특징으로 하는 컴퓨터 판독가능 저장매체.
  53. 제52항에 있어서, 상기 패스워드 검증자 및 상기 MAC는 EAP-SRP 클라이언트 변경 패스워드 메시지 및 EAP-SRP 벤더-특정 변경 패스워드 응답 메시지로 이루어진 그룹으로부터 선택된 메시지의 부분들로서 포맷되는 것을 특징으로 하는 컴퓨터 판독가능 저장매체.
KR1020030027200A 2002-04-30 2003-04-29 새로운 패스워드를 실현하기 위한 방법 및 컴퓨터 판독가능 매체 KR100979576B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/135,043 US20030204724A1 (en) 2002-04-30 2002-04-30 Methods for remotely changing a communications password
US10/135,043 2002-04-30

Publications (2)

Publication Number Publication Date
KR20030085512A KR20030085512A (ko) 2003-11-05
KR100979576B1 true KR100979576B1 (ko) 2010-09-01

Family

ID=22466241

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030027200A KR100979576B1 (ko) 2002-04-30 2003-04-29 새로운 패스워드를 실현하기 위한 방법 및 컴퓨터 판독가능 매체

Country Status (19)

Country Link
US (1) US20030204724A1 (ko)
EP (1) EP1359491B1 (ko)
JP (1) JP2004030611A (ko)
KR (1) KR100979576B1 (ko)
CN (1) CN100388244C (ko)
AT (1) ATE310272T1 (ko)
AU (1) AU2003203712B2 (ko)
BR (1) BR0301154A (ko)
CA (1) CA2424833A1 (ko)
DE (1) DE60302276T2 (ko)
ES (1) ES2250771T3 (ko)
HK (1) HK1062052A1 (ko)
MX (1) MXPA03003710A (ko)
MY (1) MY130400A (ko)
NO (1) NO20031913L (ko)
PL (1) PL359840A1 (ko)
RU (1) RU2307391C2 (ko)
TW (1) TWI288552B (ko)
ZA (1) ZA200302773B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140109952A (ko) * 2012-01-13 2014-09-16 마이크로소프트 코포레이션 유효하지 않은 에스크로 키의 검출 기법

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7529933B2 (en) * 2002-05-30 2009-05-05 Microsoft Corporation TLS tunneling
US7386877B2 (en) * 2002-07-12 2008-06-10 Sun Microsystems, Inc. Specifying a repository for an authentication token in a distributed computing system
US8261062B2 (en) 2003-03-27 2012-09-04 Microsoft Corporation Non-cryptographic addressing
US7154378B1 (en) * 2003-09-11 2006-12-26 Stryker Corporation Apparatus and method for using RFID to track use of a component within a device
US7976461B2 (en) * 2004-02-12 2011-07-12 Stryker Corporation Endoscopy device with integrated RFID and external network capability
US7734929B2 (en) * 2004-04-30 2010-06-08 Hewlett-Packard Development Company, L.P. Authorization method
US7929689B2 (en) * 2004-06-30 2011-04-19 Microsoft Corporation Call signs
US7941671B2 (en) * 2004-10-14 2011-05-10 Oracle International Corporation Method and apparatus for accommodating multiple verifier types with limited storage space
US7596225B2 (en) * 2005-06-30 2009-09-29 Alcatl-Lucent Usa Inc. Method for refreshing a pairwise master key
US7698555B2 (en) * 2005-08-29 2010-04-13 Schweitzer Engineering Laboratories, Inc. System and method for enabling secure access to a program of a headless server device
US20070220134A1 (en) * 2006-03-15 2007-09-20 Microsoft Corporation Endpoint Verification Using Call Signs
US8086842B2 (en) 2006-04-21 2011-12-27 Microsoft Corporation Peer-to-peer contact exchange
KR100877593B1 (ko) * 2006-05-09 2009-01-07 (주)씽크에이티 랜덤하게 맵핑되는 가변 패스워드에 의한 인증 보안 방법
US7874011B2 (en) * 2006-12-01 2011-01-18 International Business Machines Corporation Authenticating user identity when resetting passwords
WO2008126507A1 (ja) * 2007-03-30 2008-10-23 Nec Corporation ユーザ認証制御装置、ユーザ認証装置、データ処理装置、及びユーザ認証制御方法等
US20080288781A1 (en) * 2007-05-18 2008-11-20 Richard Lee Lawson Systems and methods for secure password change
US8233615B2 (en) * 2008-01-15 2012-07-31 Inside Secure Modular reduction using a special form of the modulus
US7522723B1 (en) * 2008-05-29 2009-04-21 Cheman Shaik Password self encryption method and system and encryption by keys generated from personal secret information
CN101741823B (zh) * 2008-11-12 2013-01-16 北京大学 一种交叉验证的安全通讯方法及系统
KR101094577B1 (ko) 2009-02-27 2011-12-19 주식회사 케이티 인터페이스 서버의 사용자 단말 인증 방법과 그 인터페이스 서버 및 사용자 단말
CN102958100B (zh) * 2011-08-25 2015-09-09 华为终端有限公司 无线局域网连接的实现方法及装置
CN103095659B (zh) * 2011-11-03 2016-01-20 北京神州泰岳软件股份有限公司 一种互联网中账户登录方法和系统
WO2015004528A2 (en) * 2013-07-08 2015-01-15 Assa Abloy Ab One-time-password generated on reader device using key read from personal security device
US9122888B2 (en) 2013-07-22 2015-09-01 Dell Products, Lp System and method to create resilient site master-key for automated access
US9077710B1 (en) * 2013-12-18 2015-07-07 Sabaki Corporation Distributed storage of password data
CN104065653B (zh) * 2014-06-09 2015-08-19 北京石盾科技有限公司 一种交互式身份验证方法、装置、系统和相关设备
CN104915592B (zh) * 2015-05-28 2017-03-08 东莞盛世科技电子实业有限公司 密码设定方法及其设备
US9697351B1 (en) * 2015-06-29 2017-07-04 EMC IP Holding Company LLC Providing a high security password from an initial character string of lowercase letter and numbers, and inclusion of one or more other characters
CN104994115B (zh) * 2015-08-06 2018-02-13 上海斐讯数据通信技术有限公司 一种登录认证方法及系统
DE102019001731A1 (de) * 2019-03-12 2020-09-17 data-team Datendienste GmbH Autorisierungsverfahren mittels Einmalpasswörtern
CN112115437B (zh) * 2020-09-04 2023-12-29 上海上讯信息技术股份有限公司 通过Linux设备远程修改Windows设备密码的方法与设备
CN114978704B (zh) * 2022-05-24 2023-07-04 北京天融信网络安全技术有限公司 基于服务器的密码修改方法及服务器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5749941A (en) 1994-03-25 1998-05-12 Nederlandse Organisatie Voor Toegepast-Natuurwetenschappelijk Onderzoek Tno Method for gas absorption across a membrane
KR20010090167A (ko) * 2000-03-23 2001-10-18 윤종용 패스워드를 기반으로 한 상호 인증 및 키 교환방법과 그장치

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5241599A (en) * 1991-10-02 1993-08-31 At&T Bell Laboratories Cryptographic protocol for secure communications
US5440635A (en) * 1993-08-23 1995-08-08 At&T Corp. Cryptographic protocol for remote authentication
WO1995008885A1 (en) * 1993-09-20 1995-03-30 International Business Machines Corporation System and method for changing the key or password in a secure distributed communications network
JP2596361B2 (ja) * 1993-12-24 1997-04-02 日本電気株式会社 パスワード更新方式
US5706349A (en) * 1995-03-06 1998-01-06 International Business Machines Corporation Authenticating remote users in a distributed environment
US5719941A (en) * 1996-01-12 1998-02-17 Microsoft Corporation Method for changing passwords on a remote computer
US5953420A (en) * 1996-10-25 1999-09-14 International Business Machines Corporation Method and apparatus for establishing an authenticated shared secret value between a pair of users
US6766454B1 (en) * 1997-04-08 2004-07-20 Visto Corporation System and method for using an authentication applet to identify and authenticate a user in a computer network
US6539479B1 (en) * 1997-07-15 2003-03-25 The Board Of Trustees Of The Leland Stanford Junior University System and method for securely logging onto a remotely located computer
US6064736A (en) * 1997-09-15 2000-05-16 International Business Machines Corporation Systems, methods and computer program products that use an encrypted session for additional password verification
FI974341A (fi) * 1997-11-26 1999-05-27 Nokia Telecommunications Oy Datayhteyksien tietosuoja
JP3430896B2 (ja) * 1998-01-13 2003-07-28 日本電気株式会社 パスワード更新装置及び記録媒体
US6230269B1 (en) * 1998-03-04 2001-05-08 Microsoft Corporation Distributed authentication system and method
US6976164B1 (en) * 2000-07-19 2005-12-13 International Business Machines Corporation Technique for handling subsequent user identification and password requests with identity change within a certificate-based host session

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5749941A (en) 1994-03-25 1998-05-12 Nederlandse Organisatie Voor Toegepast-Natuurwetenschappelijk Onderzoek Tno Method for gas absorption across a membrane
KR20010090167A (ko) * 2000-03-23 2001-10-18 윤종용 패스워드를 기반으로 한 상호 인증 및 키 교환방법과 그장치

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Secure Remote Password(SRP) http://grouper.ieee.org/groups/802/11/Documents/CocumentHolder/1-524.zip
Secure Remote Password(SRP) http://www.ietf.org/rfc/rfc2945.txt

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140109952A (ko) * 2012-01-13 2014-09-16 마이크로소프트 코포레이션 유효하지 않은 에스크로 키의 검출 기법
KR102133606B1 (ko) * 2012-01-13 2020-07-13 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 유효하지 않은 에스크로 키의 검출 기법

Also Published As

Publication number Publication date
RU2307391C2 (ru) 2007-09-27
EP1359491A1 (en) 2003-11-05
TWI288552B (en) 2007-10-11
ES2250771T3 (es) 2006-04-16
MXPA03003710A (es) 2005-04-11
CN1455341A (zh) 2003-11-12
JP2004030611A (ja) 2004-01-29
NO20031913L (no) 2003-10-31
ATE310272T1 (de) 2005-12-15
CN100388244C (zh) 2008-05-14
CA2424833A1 (en) 2003-10-30
DE60302276T2 (de) 2006-06-08
US20030204724A1 (en) 2003-10-30
EP1359491A8 (en) 2004-07-21
MY130400A (en) 2007-06-29
BR0301154A (pt) 2004-08-17
HK1062052A1 (en) 2004-10-15
TW200402981A (en) 2004-02-16
PL359840A1 (en) 2003-11-03
EP1359491B1 (en) 2005-11-16
ZA200302773B (en) 2003-10-14
NO20031913D0 (no) 2003-04-29
AU2003203712A1 (en) 2003-11-20
KR20030085512A (ko) 2003-11-05
AU2003203712B2 (en) 2008-06-05
DE60302276D1 (de) 2005-12-22

Similar Documents

Publication Publication Date Title
KR100979576B1 (ko) 새로운 패스워드를 실현하기 위한 방법 및 컴퓨터 판독가능 매체
US10652015B2 (en) Confidential communication management
US8132020B2 (en) System and method for user authentication with exposed and hidden keys
KR100827650B1 (ko) 그룹에 참여하도록 초대된 잠재적 회원을 인증하는 방법
US8130961B2 (en) Method and system for client-server mutual authentication using event-based OTP
US8209744B2 (en) Mobile device assisted secure computer network communication
US9491174B2 (en) System and method for authenticating a user
WO2016065321A1 (en) Secure communication channel with token renewal mechanism
US11316685B1 (en) Systems and methods for encrypted content management
US10057060B2 (en) Password-based generation and management of secret cryptographic keys
US10158487B2 (en) Dynamic second factor authentication for cookie-based authentication
CN111740995A (zh) 一种授权认证方法及相关装置
KR100381710B1 (ko) 회원제 운용 인터넷 서버의 보안 방법 및 그에 관한 서버시스템
Tsai et al. Cloud encryption using distributed environmental keys
Kleppmann et al. Strengthening Public Key Authentication Against Key Theft (Short Paper)
JP2005217665A (ja) 通信システム、送信装置、受信装置及び通信方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee