KR20050005763A - 안전한 액세스 구현 방법 - Google Patents

안전한 액세스 구현 방법 Download PDF

Info

Publication number
KR20050005763A
KR20050005763A KR1020040044524A KR20040044524A KR20050005763A KR 20050005763 A KR20050005763 A KR 20050005763A KR 1020040044524 A KR1020040044524 A KR 1020040044524A KR 20040044524 A KR20040044524 A KR 20040044524A KR 20050005763 A KR20050005763 A KR 20050005763A
Authority
KR
South Korea
Prior art keywords
certificate
server
user
acu
client
Prior art date
Application number
KR1020040044524A
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 노키아 코포레이션
Publication of KR20050005763A publication Critical patent/KR20050005763A/ko

Links

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/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • 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/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication

Abstract

이동 또는 다른 장치는 인터넷과 같은 공개적으로 액세스가능한 네트워크를 통해 서버에 접속한다. 상기 장치에 가상 사설 통신망(VPN) 클라이언트를 설치한 이후에, 상기 가상 사설 통신망(VPN) 클라이언트는 서버에 접속하여 VPN 프로파일을 다운로드한다. 일 실시예에 있어서, 장치는 공개/사설키 쌍을 생성하고 디지털 인증서의 등록을 요구한다. 다른 실시예에 있어서, 디지털 인증서 및 공개/사설키 쌍이 제공된다. 장치는 또한 서버로부터 디지털 인증서를 수신하고, 사용자에게 인증서에 대한 핑거프린트의 일부를 제공하도록 요구함으로써 서버 인증서를 검증한다. 본 발명은 추가로 VPN을 위한 사용자 프로파일을 다운로드하고, 인증서 등록을 요구하며, 신규 내용이 이용가능한 경우 VPN 클라이언트 및 다른 애플리케이션을 갱신하는 자동 내용 갱신(ACU) 클라이언트를 포함한다. 보안 서비스 관리자(SSM) 서버는 웹 서버, 다수의 데이터베이스, 등록 게이트웨이 및 내부 인증 기관(CA)을 포함하거나 통신한다. VPN 폴리시 관리자 애플리케이션은 VPN 프로파일 및/또는 폴리시를 생성하고 관리하며 SSM 서버와 통신한다. 기업 인트라넷에 있을 수 있는 SSM 서버는 추가로 하나 이상의 외부 CA들과 통신할 수 있다.

Description

안전한 액세스 구현 방법{Method of implementing secure access}
본 발명은 통신 네트워크로의 안전한 액세스 분야에 관한 것으로, 보다 상세하게는 공개적으로 액세스가능한 통신 네트워크를 통해 원격 서버 또는 다른 장치를 안전하게 액세스하는 분야에 관한 것이다.
본 출원은 동시에 출원된 대리인 문서 번호 제004770.00133호를 갖는 발명의 명칭이 "안전한 사내 통신 구현 방법(Method for Implementing Secure Corporate Communication)"인 미국 특허 출원과 관련되고, 그 내용은 본 명세서에 참조로써 통합된다.
디지털 인증서(digital certificates)가 공지되어 있다. 디지털 인증서의 기술 및 그 사용은 <http://www.webopedia.com/TERM/d/digital_certificate.html> 및 <http://wp.netscape.com/security/techbriefs/servercerts/index.html>(관련 링크 페이지를 포함하여)를 포함하는 많은 소스로부터 입수가능하고 본 명세서에 참조로써 통합된다. 간단히, 인증 기관(CA; Certification Authority)으로부터의 디지털인증서는 암호화된 형태로 공개 암호키 및 인증서 홀더(holder)에 대한 다른 식별 정보를 포함한다. 인증서는 인증서 홀더로부터 통신에 첨부되고, 인증 기관으로부터의 공개키를 사용하여 (적어도 그다지 많은 노력을 기울이지 않고) 암호해독될 수 있다. 수신되고 (CA 공개키를 사용하여) 암호해독되는 경우, 인증서 홀더의 공개키는 안전한 통신을 위해 인증서 홀더와의 안전한 소켓 계층(SSL; Secure Socket Layer) 접속을 생성하는데 사용될 수 있다. 디지털 인증서는 예를 들어 개인, 특정 사용자 장치, 서버, 및 다수의 다른 장치의 인증을 위해 사용될 수 있다.
하지만, 인터넷 및 다른 공개적으로 액세스가능한 네트워크를 통해 사내 인트라넷 및 다른 자원으로의 안전한 액세스를 얻기 위한 방법 및 스케일러블(scalable) 시스템이 필요하다. 이러한 필요성은 이동전화, 개인 휴대 정보 단말기(PDA; personal digital assistants), 이동 단말기 및 인터넷을 액세스할 수 있는 다른 장치들과 같은 이동 장치들의 경우에 특히 중요하다. 그러한 장치들에 있어서 용이한 전개가 종종 중요한데, 왜냐하면 다수의 장치들이 사용될 수 있기 때문이다. 더욱이, 상기 장치들은 전형적으로 개인용 컴퓨터(PC) 또는 랩탑 컴퓨터에 비해 제한된 능력을 갖는다.
SSL 또는 다른 안전한 세션을 시작하는데 어떠한 사용자 동작도 요구되지 않는 경우, 사용자는 종종 디지털 인증서를 거의 생각하지 않는 것으로 알려져 있다. 예를 들어, 최종 사용자는 서버에 대한 디지털 인증서가 유효한지 및/또는 사용자가 통신하기를 원하는 실체에 보유되어 있는지를 검증해야 한다. 사용자로부터 검증을 얻는 공통된 방식은 인증서 홀더의 이름을 보여주고 사용자에게 인증서를 수용하는지 또는 수용하지 않는지를 문의하는 것이다. 많은 사용자들이 항상 실제적인 고려를 하지 않고 수용한다. 따라서, 안전한 통신을 시작하기 위해 보다 안전한 방법 및 시스템이 필요하다.
본 발명이 이루고자 하는 기술적 과제는, 상기와 같은 단점들을 해결하기 위하여, 공개적으로 액세스가능한 통신 네트워크를 통해 원격 서버 또는 다른 장치를 안전하게 액세스하는 방법 및 장치를 제공하는 데 있다.
도 1은 본 발명의 다수의 실시예들에 따라 이동 장치가 원격으로 저장된 데이터를 액세스할 수 있는 예시적인 네트워크 환경을 나타내는 블록도이다.
도 2는 본 발명의 적어도 하나의 실시예에 따른 예시적인 시스템을 나타내는 블록도이다.
도 3은 본 발명의 적어도 하나의 실시예에 따른 예시적인 이동 장치를 나타내는 블록도이다.
도 4는 본 발명의 적어도 하나의 실시예에 따른 자동 내용 갱신 클라이언트 소프트웨어와 관련된 데이터의 저장을 나타내는 블록도이다.
도 5는 본 발명의 적어도 하나의 실시예에 따른 서버 및 다른 네트워크 구성요소들의 블록도이다.
도 6은 본 발명의 적어도 하나의 실시예에 따른 회사 네트워크의 블록도이다.
도 7은 본 발명의 적어도 하나의 실시예에 따른 ACU 메시지 처리 단계를 나타내는 흐름도이다.
도 8 내지 도 35는 본 발명의 적어도 하나의 실시예에 따른 이동 장치에서의 사용자 인터페이스 디스플레이의 예이다.
<도면의 주요 부분에 대한 부호의 설명>
10...이동 장치, 18...VPN 방화벽,
20...SSM 서버, 22...등록 게이트웨이,
24...VPN 게이트웨이, 26...폴리시 관리자 애플리케이션,
28...인증 기관.
본 발명은 상기한 기술적 과제를 달성하기 위하여, 다수의 사용자들로의 안전한 네트워크 액세스를 제공한다. 본 발명의 일 실시예에 있어서, 방법은 사용자 장치를 공개적으로 액세스가능한 네트워크를 통해 서버에 접속하는 단계를 포함한다. 상기 방법은 인증서를 수신하는 단계, 및 상기 수신된 인증서의 핑거프린트(fingerprint)를 계산하여 상기 핑거프린트를 문자열로 변환하는 단계를 더 포함한다. 상기 방법은 또한 상기 문자열로부터 적어도 하나의 임의 문자를 삭제하여 상기 핑거프린트를 수정하는 단계, 상기 수정된 문자열을 디스플레이하는 단계, 및 신뢰되는 매체를 통해 상기 핑거프린트를 이전에 제공받은 사용자로부터 상기 적어도 하나의 삭제된 문자에 대응하는 입력을 수신하는 단계를 포함한다. 상기 사용자 입력이 상기 적어도 하나의 삭제된 문자와 일치하는 경우에만 상기 서버로의 접속이 계속된다.
본 발명에 따른 사용자 장치는 공개적으로 액세스가능한 네트워크로의 인터페이스, 및 상기 인터페이스를 통해 멀리 떨어져있는 서버로부터 인증서를 수신하는 단계를 수행하도록 구성되는 프로세서를 포함한다. 상기 프로세서는 상기 수신된 인증서의 핑거프린트(fingerprint)를 계산하여 상기 핑거프린트를 문자열로 변환하고, 적어도 하나의 임의 문자를 삭제하여 상기 문자열을 수정한다. 그 다음 상기 프로세서는 상기 수정된 문자열을 디스플레이하고, 신뢰되는 매체를 통해 상기 핑거프린트를 이전에 제공받은 상기 장치의 사용자로부터 상기 적어도 하나의 삭제된 문자에 대응하는 입력을 수신한다. 상기 프로세서는 상기 사용자 입력이 상기 적어도 하나의 삭제된 문자와 일치하는 경우에만 상기 서버로의 접속을 계속한다.
본 발명의 다른 태양들 및 추가 태양들은 이하 설명 및 첨부된 도면을 참조함으로써 명백하게 될 것이다.
본 발명의 상기 요약 및 이하 바람직한 실시예의 상세한 설명은 첨부한 도면들과 관련하여 읽는 경우 더 잘 이해된다. 첨부한 도면들은 예로서 포함된 것이고, 본 발명의 청구범위를 제한하지 않는다.
다수의 예시적인 실시예들의 이하 설명에 있어서, 실시예의 일부를 형성하는 첨부한 도면들을 참조한다. 본 발명이 실행될 수 있는 다양한 실시예들이 예로서 도면들에 도시된다. 본 발명의 범위를 벗어나지 않으면서 다른 실시예들이 이용될 수 있고 구조적 기능적 수정이 수행될 수 있는 것으로 이해될 것이다.
이제 도면을 참조하면, 동일한 참조 번호는 동일한 부분을 나타낸다. 도 1은 백본(backbone) 패킷 데이터 네트워크(14)를 통해 분배되는 몇몇 가상 사설 통신망(VPN; virtual private network)의 블록도를 도시한다. 적어도 하나의 실시예에 있어서, 패킷 데이터 네트워크(14)는 인터넷이다. 도시된 바와 같이, VPN-A는 장치들(A1, A2 및 A3)간의 안전한 통신을 나타내는 터널(긴 점선으로 표시)에 의해 접속되어 있다. 유사하게, VPN-B는 장치들(B1, B2 및 B3)간의 안전한 터널(짧은 점선으로 표시)에 의해 접속되어 있다. VPN 네트워크(A 및 B)는 다수의 위치를 갖는 회사 또는 조직에 위치한다. 도 1에 도시된 VPN 구조는 회사 또는 조직의 직원 또는 구성원(또는 다른 인증된 사람)이 인터넷 또는 다른 백본 패킷 데이터 네트워크를 통해 안전한 터널에 의해 회사 또는 조직의 VPN에 접속한 후에 회사 또는 조직의 근거리 통신망(LAN)을 액세스하도록 허용한다. 적어도 하나의 실시예에 있어서, 안전한 소켓 계층(SSL; Secure Sockets Layer)과 같은 터널링 기법에 의해 접속이 보장된다. 하지만, 본 발명은 접속을 보장하기 위한 어떤 특정 기법에 제한되지 않는다. 이동 장치(10)는 이동 네트워크(12)를 통해 인터넷(14)과 통신할 수 있고, 그 다음 상이한 장치들(B1-B3)과 통신할 수 있다. 장치들(B1-B3)은 동일한 인트라넷의 부분이거나, 다수의 인트라넷 또는 다른 근거리 통신망(LAN) 또는 광역 통신망(WAN)에 분산되어 있을 수 있다.
도 2는 본 발명의 실시예에 따른 이동 가상 사설 통신망(VPN) 클라이언트 시스템을 나타내는 블록도이다. 시스템의 클라이언트가 구현될 수 있는 이동 장치의 일 예는 시리즈 60 또는 심비안 오에스(SYMBIAN OS)(즉, SYMBIAN OS는 영국 런던의 심비안 회사에서 입수가능한 운영 체계이다)이고, 이동 장치는 VPN 클라이언트 소프트웨어가 설치될 수 있다. 이러한 장치의 예들은 노키아 7650 및 3650 전화기 및 9210 커뮤니케이터(핀란드, 에스푸의 노키아 코포레이션에서 입수 가능)를 포함한다. 이동 장치들(10)은 무선 네트워크(12) 및 인터넷(14)을 통해 VPN 방화벽(firewall)(18) 및 VPN 게이트웨이(gateway)(24)에 통신한다. 방화벽(18)이 인트라넷(36)으로의 접속을 허용하는 경우 이동 장치들(10) 및 컴퓨터(11)는 VPN 터널 접속(19)을 설정할 수 있다.
우선, 보안 서비스 관리자(SSM; security service manager) 서버(20)와의 통신을 위해 이동 VPN 클라이언트 소프트웨어(VPN 클라이언트)가 이동 장치(10)에 설치된다. VPN 클라이언트는 이동 장치(10)내의 설치된 애플리케이션(72) 중의 하나로서 도 3에 도시되고 이하 더 상세하게 설명된다. 사용자는 적외선, 블루투스, 또는 WLAN 접속을 통해, 브로드캐스팅 또는 멀티캐스팅(예를 들어, DVB-T 또는 그 변형)을 통해, 전자우편을 통해, 또는 CD-ROM 또는 다른 이동가능한 매체를 통해 보통의 웹 브라우저를 이용하여 VPN 클라이언트를 다운로드할 수 있다. VPN 클라이언트는 이동 장치(10)에 용이하게 설치하기 위해 예를 들어 SYMBIAN OS 운영 체계 SIS 파일로서 전달된다.
웹 서버(90; 도 5에 도시)를 통해 SSM 서버(20)는 이동 장치(10)와 같은 원격 소스로부터 수신되는 요구를 필터링하기 위한 인터페이스를 구비한다. 인증된 사용자만이 SSM 서버(20)를 액세스할 수 있다. 사용자 인증은 원격 장치 사용자가 웹 서버(90)의 외부 사용자 인터페이스(UI)에 의해 제공되는 HTML 형식에 입력하는 사용자이름/패스워드 조합에 기초한다. 성공적인 인증은 SSM 서버(20)가 인증된 사용자를 위한 세션을 생성하게 한다. 웹 서버(90)에 저장된 페이지에 대한 URL에 세션 ID를 부호화함으로써 다음의 페이지 요구들간의 세션이 식별된다. 상세하게는,다음의 웹 페이지들로의 각 링크는 SSM 서버(20)가 페이지 요구를 확인하는데 사용하는 세션 ID 매개변수를 포함한다. 웹 서버(90)의 JSP 페이지 및 서블릿(Servlets)은 웹 페이지에 URL을 생성한다. 사용자는 웹 서버(90)에 의해 제공되는 웹 페이지의 링크를 사용하여 SSM 서버(20)로부터 로그아웃할 수 있다. 하지만, 사용자들은 항상 로그아웃하는 것을 기억하지 못하기 때문에, 사용자 세션은 짧은 타임아웃 값을 갖는다. 일 실시예에 있어서, 웹 서버(90)의 모든 페이지들은 SSL 접속을 통해서만 액세스 가능하다. 따라서 사용자 이름, 패스워드 및 세션 ID는 암호화된 접속을 통해서만 전송된다.
이동 전화의 사용자 인터페이스에 예시적인 VPN 클라이언트 설치
사용자 브라우저로부터의 요구를 포함하여, 이동 장치(10)로부터의 모든 요구는 하이퍼텍스트 전송 프로토콜(HTTP)을 통해 SSM 서버(20)로 전송된다. 적어도 하나의 실시예에 있어서, 인터넷(14)에서 이동 장치들(10)로부터의 HTTP 접속(19)은 VPN 게이트웨이(24) 및/또는 방화벽/프록시 서버(18)를 통과하고, SSM 서버(20)는 인터넷(14)에 직접 접속되지 않는다.
디스플레이 스크린, 키패드 및/또는 다른 입력 및 출력 장치를 포함하는 이동 장치(10)는 VPN 클라이언트를 설치하는 동안 사용자에게 다양한 인터페이스를 제공한다. 다운로드한 이후에, 디스플레이는 VPN 클라이언트를 포함하는 SIS 파일이 존재하는 것을 나타낸다(도 8). 상기 파일을 여는 경우, 사용자가 설치 과정을 시작하도록 "예"를 선택하여 소프트웨어를 설치하도록 촉구(prompt)한다(도 9). "아니오"를 선택하는 경우, 설치가 취소된다. 예를 선택하는 경우, 옵션 메뉴에 몇몇 선택들이 사용자에게 제공된다: "설치", "인증서 보기", 또는 "설치될 제품에 대한 상세"(도 10). "설치"를 선택한 후에, 장치에서 실행중인 모든 활동중인 애플리케이션을 종료할 것인지를 사용자에게 문의한다(도 11). 이것은 안전을 위해 다른 애플리케이션이 설치에 방해되지 않도록 한다. 어떤 다른 애플리케이션들을 종료한 후에, 실제적인 설치가 시작된다. 설치가 완료된 경우, 설치 과정은 사용자에게 장치를 다시 오프했다가 온할 것인지를 묻는다(도 12). 이것은 장치가 다시 턴온되는 경우 모든 낮은 레벨 성분들이 적합하게 설치되도록 보장한다. 설치한 이후에, 이동 VPN 클라이언트 아이콘이 애플리케이션 메뉴에 나타난다(도 13). 사용자는 상기 클라이언트 아이콘을 애플리케이션 메뉴의 어느 곳으로 이동하거나 어떤 폴더로 이동할 수 있다.
설치 과정은 자동 내용 갱신(ACU; Automatic Content Update) 서비스를 채용한다. 상기 ACU 서비스는 이동 장치(10) 및 SSM 서버(20)간의 프로토콜을 포함하고, 상기 프로토콜은 장치(10)가 SSM 서버(20)의 내용과 동기화된 국부적 내용 저장을 유지하도록 허용한다. 일 실시예에 있어서, ACU 서비스 클라이언트 소프트웨어(ACU 클라이언트)는 이동 VPN 클라이언트의 부분이고, VPN 클라이언트의 다른 성분들을 설치하기 전에 설치된다. ACU 클라이언트 설정 단계는 2개의 프로토콜 트랜잭션을 포함한다. 제1 트랜잭션은 ACU 클라이언트 구성 패키지를 이동 클라이언트에 다운로드하는데 사용되고, 제2 트랜잭션은 ACU 클라이언트 인증서를 등록하는데 사용된다. 상기 클라이언트 인증서는 ACU 요구를 서명(sign)하고 요구에 대한 응답을 인증하기 위해 다음의 ACU 통신에서 사용된다.
SSM 서버(20)는 데이터베이스(98; 도 5)를 포함하고, 추가 데이터베이스들을 포함한다. 구성 데이터베이스는 클라이언트로 하여금 SSM 서버(20)로부터 클라이언트 구성 패키지를 페치(fetch)하도록 허용한다. 인증서 등록 데이터베이스는 클라이언트가 SSM 서버(20)에 인증서를 등록할 수 있게 한다. 내용 메타데이터(metadata) 데이터베이스는 클라이언트가 내용 데이터베이스에 저장된 내용에 대한 메타데이터를 페치하도록 허용한다. 내용 데이터베이스는 클라이언트가 SSM 서버(20)로부터 실제 내용을 페치하도록 허용한다. 모든 데이터베이스들은 클라이언트가 페치할 수 있는 몇가지 종류의 데이터를 포함한다. 구성 데이터베이스는 클라이어트 구성 패키지만을 포함하지만, 내용 데이터베이스는 어떤 종류의 데이터를 포함할 수 있다. 데이터베이스내의 내용은 또한 하나 이상의 속성들로 할당된다. 상기 속성들이 원하는 데이터를 찾기 위하여 ACU 요구의 검색 필터에 포함된다. 예를 들어, 인증서 등록 데이터베이스는 실체 이름 및 PKCS #10(또는 다른 인증서 요구 구문(syntax))을 사용하여 준비된 인증서 요구와 같은 속성들을 지원하고, 내용 데이터베이스는 내용 ID 및 유형과 같은 속성들을 지원한다.
들어오는 ACU 요구 메시지들로부터의 상이한 레벨의 보안 인증이 상이한 데이터베이스로의 액세스에 요구된다. 적어도 하나의 실시예에 있어서, 3가지 레벨의 보안이 있다. Req1(최하), Req2(중간) 및 Req3(최상). 구성 데이터베이스는 모든 보안 레벨(Req1, Req2 및 Req3)을 받아들이지만, 내용 데이터베이스는 최상의 보안 레벨(Req3)을 요구한다. 표 1은 일 실시예에 있어서 SSM 서버(20)의 보안 레벨 요건, 내용 속성 및 내용 유형을 요약한다. 예를 들어, 인증서 등록 데이터베이스는X.509v3 인증서(예를 들어 "application/pkix-cert")를 저장하고 리턴한다. 해당 기술에 공지된 바와 같이, X.509는 디지털 인증서를 위한 국제 통신 연합 권고 표준을 나타낸다. 인증서 등록 데이터베이스를 목표로 하는 요구에서의 검색 필터는 3가지 속성들인 실체 이름, 요구 유형 및 PKCS#10 인증서 요구를 포함할 수 있다. 인증서 등록 데이터베이스는 보안 레벨(Req2 또는 Req3)을 갖는 요구를 필요로 한다.
데이터베이스 지원되는 요구보안 레벨 지원되는 내용 속성(검색 필터내에서) 저장되고 리턴되는 내용 유형
구성데이터베이스 Req1Req2Req3 ACUServerAddr(ACU 서버의 어드레스) 클라이언트 구성(예를 들어,"application/x-acu-client-config")
인증서등록데이터베이스 Req2Req3 실체 이름(EntityName)(서버에서 올바른 등록 서비스를 찾는데 사용될 수 있는 정보의 추가 부분)요구 유형(RequestType)- "신규" 신규 요구인 경우- "폴(poll)" 반복되는 요구인 경우, 즉 펜딩 상태이후에 인증서 폴- "갱신(renewal)" 인증서 갱신 요구인 경우- "갱신 폴(renewalpoll)" 반복되는 갱신 요구인 경우PKCS#10(DER-부호화된 PKCS#10 인증서 요구의 Base64-부호화) DER-부호화된 인증서의 Base64-부호화(예를 들어,"application/pkix-cert")
내용메타데이터데이터베이스 Req3 TargetContentID(내용 데이터베이스의 내용 항목의 ID)TargetContentType(내용 데이터베이스의 내용 항목의 유형)TargetContentTimestamp(내용 데이터베이스의 내용 항목의 타임스탬프) 메타데이터(예를 들어,"application/x-acu-metadata")
내용데이터베이스 Req3 ContentID(내용 항목의 ID)ContentType(내용 항목의 유형)ContentTimestamp(내용 항목의 ID 타임스탬프) 요청된 내용의 유형
SSM 서버(20)로부터 제1 응답 패키지를 수신한 경우, 이동 장치(10)는 SSM서버(20)와 신뢰 관계를 설정한다. 특히, 이동 장치(10)는 리턴된 SSM 서버 인증서를 확인하고 저장한다. 저장된 SSM 서버 인증서는 동일한 서버로부터 다음의 ACU 응답을 자동으로 확인하는데 사용된다.
(예를 들어, 장치(10)의 다른 애플리케이션으로부터의 내용을 갱신, 다른 애플리케이션에 의한 안전한 통신을 위해 VPN을 사용, 등과 같은) 다른 동작들을 시작하기 전에 이동 장치(10) 및 서버(20)는 ACU 및 VPN 클라이언트 설정 단계를 완료한다. 클라이언트 설정 동안 사용되는 타깃 데이터베이스는 변경될 수 있다. 하지만, ACU 클라이언트 설정 단계에서 사용되는 메시지 보안 레벨 및 예시적인 타깃 데이터베이스가 표 2 및 도 7에 기술된다.
메시지 타깃 데이터베이스 보안 레벨
1 ./acu_config_db Req1
2 N/A Resp1
3 ./acu_cert_db Req2
4 N/A Resp2
메시지 1은 ACU 클라이언트에 의해 ACU 서버(예를 들어, SSM 서버(20))로부터 ACU 클라이언트 구성 패키지를 페치하는데 사용된다. 상기 서버는 메시지 2를 사용하여 ACU 클라이언트 구성 패키지를 ACU 클라이언트에 리턴한다. ACU 클라이언트는 메시지 3을 사용하여 ACU 서버에 ACU 클라이언트 인증서를 등록한다. 상기 서버는 메시지 4를 사용하여 ACU 클라이언트 인증서를 ACU 클라이언트에 리턴한다. 다음의 동작 단계 동안, ACU 클라이언트는 ACU 서버로부터 내용 메타데이터 또는 실제 내용을 페치하거나, 인증서를 ACU 서버에 등록하기 위한 메시지를 전송한다(표 2 또는 도 7에 미도시). 이것은 SSM 서버(20)로부터 VPN 폴리시(policy)를 페치하는 것을 포함할 수 있다. 응답하여, 상기 서버는 내용 메타데이터, 실제 내용 또는 인증서를 ACU 클라이언트에 리턴한다. 이것은 VPN 폴리시를 ACU 클라이언트에 리턴하는 것을 포함할 수 있다.
SSM 서버 또는 클라이언트 인증서가 만료되거나 무효하게 되는 경우, 이동 장치(10)는 신규 클라이언트 설정 단계를 시작하고 적합한 초기화 단계를 수행한다. 이동 장치(10)가 성공적인 인증 상태를 수신하지만, 또한 이동 클라이언트 인증서가 곧 만료될 것이라는 지시를 수신하는 경우, 이동 장치(10)는 요구를 인증하기 위하여 만료 임박 인증서를 사용하여 신규 클라이언트 인증서를 등록할 수 있다. 일단 신규 인증서가 수신되는 경우, 상기 신규 인증서는 구 인증서를 대체한다.
이동 장치(10)로부터 SSM 서버(20)로의 메시지는 세션 ID(예를 들어, 번호) 및 메시지 ID(예를 들어, 번호), SSM 서버(20) 및 클라이언트 어드레스(들)를 정의하는 부분을 구비한다. 상기 클라이언트 어드레스 부분은 옵션으로 또한 인증 정보를 포함할 수 있다. 메시지의 본체 부분은 이 메시지에 사용되고 응답 패키지에 사용될 것으로 예상되는 ACU 프로토콜의 버전(예를 들어, "SyncML/1.0")을 식별한다. 상기 본체 부분은 클라이언트가 서버로부터 검색하기를 원하는 내용의 속성을 포함하는 문의를 더 포함한다. 예를 들어, 문의는 SSM 서버(20)의 절대 URI(예를 들어, "http://<acu-server-name>/acu")를 포함할 수 있다. 일 실시예에 있어서, 문의 값은 HTTP 레벨에 사용되는 수신지 균일 자원 식별자(URI)와 동일하다. 이동 장치(10)로부터의 메시지는 이동 장치(10)를 고유하게 식별하는 절대 URI 또는 국제 이동국 장치 아이덴티티(IMEI; international mobile station equipment identity) 균일 자원 번호(URN; uniform resource number)(예를 들어, "http://<client-name>:<port>" 또는 "IMEI:493005100592800")를 더 포함한다. 클라이언트 인증 및 아이덴티티 정보의 포함은 요구 메시지의 보안 레벨에 의존한다. 이동 장치(10)로부터의 메시지는 또한 메시지가 패키지의 최종 메시지인지 여부를 나타낸다. 적어도 하나의 실시예에 있어서, ACU 패키지는 항상 단일 메시지에 포함되고, 따라서 "최종 요소" 설명은 장치(10)로부터의 모든 ACU 메시지들에 존재할 것이다.
일 실시예에 있어서, SSM 서버(20)로부터의 ACU 응답 메시지의 본체는 다음을 포함한다. 예를 들어, ACU 프로토콜에 사용되는 확장성 생성 언어(XML; extensible markup language)의 버전(예를 들어 "1.0")의 식별자; SSM 서버(20) 또는 다른 수신자에 의한 상태 정보 요소의 처리 결과에 대해 특정 요소를 전송하는 애플리케이션에 통보하는데 사용되는 상태 정보 요소(예를 들어, 통신이 성공하지 못한 이유를 나타내는 에러 코드); ACU 프로토콜의 버전(예를 들어 "SyncML/1.0"); 클라이언트가 대응하는 요구에서 서버로부터 검색하기를 원하는 내용의 속성; 및 (있는 경우) 대응하는 요구 패키지의 추가 검색 요소들의 상태/결과 요소 쌍에 대한 정보. 결과 요소들은 대응하는 문의가 몇몇 내용을 리턴하는 경우에만 존재한다. 적어도 하나의 실시예에 있어서 대응하는 ACU 메타데이터의 ID 요소 값과 동일한 내용 항목의 ID가 내용 데이터베이스의 ACU 검색 필터의 ContentID 내용 속성의 값으로서 사용될 수 있다.
이동 장치(10)에서 동작하는 다양한 애플리케이션 프로그램들은 이동 장치에 설치되는 ACU 클라이언트를 채용할 수 있다. 애플리케이션이 내용 갱신 요구에서 내용 ID를 지정하는 경우, ACU 에이전트(74; 도 3)는 인터넷 프로토콜 보안(IPSec; Internet Protocol Security) 관리자(60)를 호출하여 갱신 과정이 수행될 서버의 아이덴티티를 획득하고, 장치의 사용자에게 VPN 클라이언트 패스워드를 제공하도록 촉구한다. ACU 에이전트(74)가 서버 아이덴티티(이 예에서 SSM 서버(20))를 갖는 경우, ACU 에이전트(74)는 원하는 내용 유형의 리스트에 대해 애플리케이션에 문의함으로써 갱신 과정을 계속한다. ACU 에이전트(74)는 추가로 원하는 내용에 대해 메타데이터(예를 들어, ID, 유형 및 타임스탬프)에 대해 애플리케이션에 문의한다. 식별된 서버(여기서, SSM 서버(20))와의 통신이 적합하게 초기화된 후에, ACU 에이전트(74)는 ACU 요구 메시지를 SSM 서버(20)에 생성한다. 상기 메시지는 SSM 서버(20)가 애플리케이션의 사용 및/또는 갱신을 요구하는 클라이언트 애플리케이션과 관련되었다는 내용에 관한 메타데이터를 페치한다. ACU 요구는 클라이언트 애플리케이션이 갱신되기를 원하는 모든 내용 유형을 나열하는 검색 필터를 포함한다. ACU 에이전트(74)는 이때 SSM 서버(20)에 의해 리턴되는 메타데이터를 갱신을 요구하는 애플리케이션의 메타데이터와 비교한다. 차이가 있는 경우, ACU 데이터 저장부(66; 도 3)에 있는 서버 내용 갱신 구성 매개변수(예를 들어, "ForceUpdates")를 세팅한다. 그 다음, ACU 에이전트(74)는 SSM 서버(20)로부터 모든 신규 및 변경된 내용(있는 경우)을 페치한다. 도 7은 본 발명의 일 실시예에 따라 ACU 메시지가 처리되는 방법을 나타내는 예시적인 흐름도이다.
이동 전화의 VPN 폴리시(Policy) 설치 UI
하나 이상의 VPN 폴리시는 SSM 서버(20)로부터 이동 장치(10)에 의해 검색되는 일 유형의 내용이다. VPN 폴리시는 적어도 하나의 실시예에서 회사 인트라넷(도 2)의 전자우편(32), 데이터베이스(34) 및 다른 기능을 액세스하도록 SSM 서버(20)로의 안전한 접속을 설정하기 위하여, 이동 장치(10)와 같은 VPN 클라이언트(예를 들어, "mVPNClient")를 갖는 이동 장치에 의해 요구되는 모든 정보를 포함한다. 일 실시예에 있어서, 상기 폴리시는 인증서 및 사설키와 같은 최종 사용자 아이덴티티 데이터를 포함한다. 인증서, 사설키 및 다른 사용자 지정 데이터를 갖지 않는 VPN 폴리시는 "프로파일(profile)"로 지칭된다. 다수의 최종 사용자들은 동일한 프로파일을 포함할 수 있고, 개별적인 폴리시를 생성할 수 있다. 일 실시예에 있어서, VPN 폴리시 및 프로파일은 SSM 서버(20)에서 관리되고, 상기 SSM 서버(20)는 폴리시 관리자 애플리케이션(26), 데이터베이스(98) 및 인증 기관(28)을 포함하고/하거나 통신한다.
단일 VPN 폴리시는 다수의 사용자 인증서를 요구할 수 있다. 예를 들어, 폴리시 관리자 애플리케이션(26)에 의해 생성되고 SSM 서버(20)의 데이터베이스(98)에 전송되는 폴리시는 몇몇 VPN 게이트웨이 정의를 포함할 수 있고, 각 정의는 인증서 인증을 이용하지만 상이한 인증 기관에 의존한다. 따라서, 단일 폴리시는 활성화가 준비되기 전에 다수의 인증서 등록 과정을 요구할 수 있다. 비록 폴리시가 다수의 관련된 사용자 인증서를 구비할 수 있지만, 적어도 하나의 실시예에 있어서 폴리시에 대해 주어진 크기의 단일 공개/사설키 쌍이 있다. 다시 말하면, 단일 폴리시와 관련되고 동일한 키 크기를 사용하는 모든 인증서는 동일한 공개/사설키 쌍을 나타낸다.
일 실시예에 있어서, 도 3에 도시된 바와 같이, VPN 폴리시를 구성하는 파일은 IPSec 폴리시 저장부(40)에 포함되고, 폴리시 정보 파일(46)(폴리시에 대한 일반적인 정보를 포함), 폴리시 파일(50)(IPSec 및 인터넷 키 교환(Internet Key Exchange), 또는 IKE 규칙을 포함), 하나 이상의 인증서 파일(48) 및 하나 이상의 사설키 파일(52)를 포함한다. 적어도 하나의 실시예에 있어서, IPSec 폴리시 저장부(40)는 VPN 클라이언트 뿐 아니라 공개/사설키 쌍(42), 인증서(48), 및 인증서 요구 및 어떤 애플리케이션에 대해 관련된 것(44)(후술)을 저장한다. IPSec 폴리시 저장부(40)는 ACU 에이전트(74)에 의해 요구될 수 있는 신규 내용 속성을 지원하도록 수정될 수 있다.
이동 장치(10)에서 동작하는 애플리케이션(72)은 ACU 에이전트(74)를 통해 ACU 클라이언트를 액세스한다. 일 실시예에 있어서, VPN 클라이언트는 IPSec 관리자(60)를 통해 ACU 에이전트(74)를 액세스한다.
내용 갱신 및 인증서 등록 과정의 다수의 단계에서, ACU 클라이언트(74)는 갱신, 등록 또는 다른 처리를 시작한 클라이언트 애플리케이션(예를 들어, VPN 클라이언트)과 통신한다.
ACU 데이터 저장부(66)는 VPN 클라이언트 정보(68)와 같은, ACU 클라이언트를 이용하는 클라이언트 애플리케이션에 대한 정보를 포함한다. ACU 데이터 저장부(66)는 또한 SSM 서버(20)와 같은, 클라이언트 애플리케이션를 대신하여 ACU에이전트(74)가 통신하는 서버에 대한 정보(70)를 포함한다. 서버로부터 페치된 실제 내용 및 내용 메타데이터는 갱신 또는 다른 ACU 서비스를 요구한 각 클라이언트 애플리케이션에 의해 저장된다. VPN 클라이언트의 경우, 내용 및 내용 메타데이터는 IPSec 폴리시 저장부(40)에 저장된다. 또한, 도 3에 도시된 바와 같이, 이동 장치(10)는 전화 및 달력 애플리케이션 뿐 아니라 CPU(76), 송수신기(64)와 같은 이동 네트워크(12)로의 인터페이스를 포함한다. 도시되지는 않았지만, 이동 장치(10)는 또한 하나 이상의 사용자 입력 장치(예를 들어, 키보드), 출력 장치(예를 들어, 디스플레이) 및 다른 공지된 구성요소를 구비할 것이다.
도 4는 ACU 데이터 저장부(66)에 저장된 것을 나타내는 블록도이다. ACUService 레코드(78)는 하나 이상의 ACU 서비스 인스턴스(instance)에 대한 정보("ID")를 포함한다. ClientApp 레코드(80)는 특정 ACU 서비스 인스턴스를 사용하는 애플리케이션에 대한 정보를 포함한다. 하나 보다 많은 애플리케이션이 특정 ACU 서비스 인스턴스를 사용할 수 있다. 서버 어카운트(ServerAccount) 레코드(82)는 특정 클라이언트 애플리케이션에 의해 사용되는 서버 어카운트(예를 들어, SSM 서버(22)에 대한)에 대한 정보를 포함한다. 서버 어카운트 레코드(82)에서의 정보는 클라이언트 구성 패키지에서 및/또는 클라이언트 초기화 과정의 결과로서 사용자 입력으로부터, 서버(예를 들어, SSM 서버(20))로부터 획득된다. 특정 애플리케이션은 하나보다 많은 서버 어카운트 레코드를 구비할 수 있다. 공개/사설키 쌍은 KeyPair 파일(84)에 저장된다. 상이한 레코드 및 파일은 클라이언트 애플리케이션에 의존하여 서로 통신할 수 있다. 서버 어카운트 레코드(82)의 IAPRef 필드는 장치(10)의 인터넷 액세스 포인트(IAP; Internet Access Point) 구성 엔트리를 나타낸다. 이 필드는 서버 어카운트 레코드에 명시된 서버(SSM 서버(20)와 같은)와 통신하는 경우 사용되는 액세스 포인트를 명시한다. 다른 사용을 위한 다른 이용가능한 IAP들이 상기 장치의 다른 곳에서 구성된다.
일 실시예에 있어서, 내용 갱신 및 IPSec 관리자(60)로의 인증서 등록 과정 동안에 ACU 클라이언트를 사용하는 각 애플리케이션과 ACU 에이전트(74)가 통신한다. 일 실시예에 있어서, IPSec 관리자(60)는 이동 장치(10)의 운영 체계 소프트웨어 일부이다(SYMBIAN OS 운영 체계와 같은). IPSec 관리자(60)는 인증서 및 사설키를 포함하는 IPSec 폴리시 저장부(40)를 관리한다. IPSec 관리자(60)는 또한 폴리시 저장부(42)에 저장된 사설키를 가지고 암호화 및 암호해독을 수행한다. 일 실시예에 있어서, 사설키는 암호화된 형태로 설치되고 저장되며, IPSec 관리자(60)는 사설키를 암호해독하고 암호화하는데 필요한 VPN 클라이언트 패스워드 및 폴리시 들여오기(import)를 관리한다. IPSec 관리자(60) 및/또는 다른 운영 체계 구성요소를 통해, VPN 클라이언트 소프트웨어는 사용자로부터 VPN 클라이언트 및 폴리시 설치 패스워드를 요구하기 위한 다이얼로그를 구현한다.
IPSec 관리자(60)는 추가로 공개/사설키 쌍의 생성 및 저장, 인증서의 저장 및 VPN 클라이언트 소프트웨어 및 다른 애플리케이션을 위한 인증서 요구의 생성 및 저장을 지원한다. IPSec 관리자(60)는 폴리시 갱신 및 인증서 등록 과정을 지원하는데 필요한 기능인 것으로 가정한다. 사용자가 명령으로 IPSec 관리자(60)에 폴리시 갱신 과정을 시작하는 경우, IPSec 관리자(60)는 (사용자 인터페이스를 통해)VPN 클라이언트 패스워드를 요구한다.
일 실시예에 있어서, VPN 클라이언트는 2가지 주요한 유형의 VPN 인증을 지원한다: 인증서 인증(certificate authentication) 및 레거시(legacy authentication) 인증. 인증서 인증은 사용자 공개키 기반구조(PKI; public key infrastructure) 데이터(예를 들어, 공개/사설키 쌍 및 대응하는 인증서)에 기초하지만, 레거시 인증은 사용자이름 및 패스워드/패스코드에 기초한다.
인증서 등록 과정은 2가지 형태로 이용가능하다: 자동 및 수동. 사용자는 인증서 등록을 요구하는 폴리시를 활성화함으로써 자동 인증서 등록 과정을 시작한다. 폴리시가 PKI 폴리시이고 모든 사용자 PKI 정보가 없는 경우 또는 사용자 PKI 정보가 불완전하거나 만료된 경우 폴리시는 인증서 등록을 요구한다. 사용자는 VPN 클라이언트 UI에서 인증서 등록을 요구하는 폴리시를 선택하고 클라이언트 메뉴로부터 특정 명령을 선택함으로써 수동 인증서 등록 과정을 시작한다.
일 실시예에 있어서, 프로파일은 VPN 폴리시 관리자 애플리케이션(26)을 사용하여 생성되고 게이트웨이로 및 클라이언트로 VPN 구조(예를 들어, 망 접속 형태(network topology))를 기술한다. 일 실시예에 있어서, VPN 게이트웨이(24)는 액세스 권한의 최종 검사를 수행하고, 폴리시의 클라이언트 버전은 올바른 게이트웨이로의 안전한 접속을 설정하는데 필요한 정보만을 포함한다.
몇몇 실시예들에 있어서, 폴리시 관리 애플리케이션(26)은 폴리시를 갖는 인증서 및 사용자 사설키를 포함한다. VPN 프로파일이 인증서 및 사설키의 사용을 정의하고 있지만 그것들을 포함하고 있지 않은 경우, VPN 클라이언트는 공개-사설키쌍 및 대응하는 인증서 요구를 생성하고 등록을 위해 인증 기관(CA)(28)에 요구를 전송할 것이다. 등록이 성공적인 경우, CA(28)는 인증서를 되돌려 전송하고 VPN 클라이언트는 안전한 접속이 준비된다.
인증서 등록 과정을 용이하게 하기 위하여, SSM 서버(20)의 일 실시예는 인증서 등록 게이트웨이로서 동작한다. 이러한 경우에 있어서, VPN 클라이언트는 CA(28) 대신에 SSM 서버(20)에 등록 요구를 전송하고, SSM 서버(20)만이 CA(28)와 통신한다. 그 다음, SSM 서버(20)는 인증서 등록을 완전 자동으로 하기 위하여 필요한 인증 및 인가를 수행한다. SSM 서버(20)는 사용자 데이터베이스(98) 또는 원격 인증 다이얼-인 사용자 서비스(RADIUS; remote authentication dial-in user service) 서버(30)에 사용자를 인증한다. 상기 RADIUS 서버(30)는 SECURID(매사추세츠, 베드포드의 RSA 보안 회사에서 입수 가능)와 같은 패스워드 토큰(token)의 사용을 가능하게 한다.
몇몇 실시예에 있어서, SSM 서버(20)는 내부 VPN 인증 기관으로서 기능한다. 이 경우에 있어서, VPN 인증서를 서명(sign)하기 위해 제3자(CA)를 사용할 필요가 없을 수 있고, 이것으로 PKI-기반 VPN 전개(deployment)에서 상당한 비용을 절감할 수 있다.
VPN 폴리시 및 프로파일은 처음 배치된 이후에 변경될 수 있다. 클라이언트는 다양한 방식으로 SSM 서버(20)로부터 폴리시를 갱신할 수 있다. 일 실시예에 있어서, VPN 클라이언트는 SSM 서버(20)에 접속한 경우 ACU 클라이언트를 사용하여 갱신 폴리시를 자동으로 검사한다. 갱신 폴리시를 발견한 경우, VPN 클라이언트는(ACU 클라이언트를 사용하여) 자동으로 입력하고 변경한다. ACU 프로토콜은 일 실시예에 있어서 SyncML에 기초하고 SYMBIAN OS-기반 VPN 클라이언트 소프트웨어와 협력한다. 자동 갱신은 전자우편 통지 및 브라우저-기반 다운로드의 필요성을 최소화한다.
폴리시 갱신 과정 동안, 그리고 폴리시 동작이 성공적인지 아닌지 여부에 상관없이, IPSec 관리자(60)는 폴리시 갱신이 시작되었는지 여부를 나타내는 매개변수를 세팅한다. 상기 세팅은 IPSec 관리자(60)의 초기화 파일(도 3에 미도시)에 저장된다. 그 다음, IPSec 관리자(60)는 대응하는 ACU 에이전트 방법을 호출하고 다양한 매개변수들을 전달함으로써 활성화된 폴리시에 대한 폴리시 갱신 과정을 시작한다. 상기 매개변수들은 폴리시 ID(내용 ID와 같은) 및 IPSec ACU 플러그-인(plug-in)의 ID(예를 들어, IPSec ACU 플러그-인의 DLL의 UID3)를 포함한다. ACU 에이전트(74)는 지정된 플러그-인을 로드하고 ACU 에이전트(74) 및 IPSec 관리자(60)간의 인터페이스로서 플러그-인(도 3에서 미도시)을 사용하여 갱신 과정이 수행되는 서버(예를 들어 SSM 서버(20))의 ID를 획득한다. 상기 플러그-인은 IPSec 관리자(60)를 호출함으로써 ACU 에이전트(74)로부터의 호출을 수행한다. 플러그-인이 서버 ID를 ACU 에이전트(74)에 리턴하지 않는 경우, 갱신 과정이 종료된다. 또한 ACU 데이터 저장부(66)의 클라이언트 애플리케이션 레코드가 지정된 서버 ID와 관련된 서버 어카운트(account)를 가지고 있지 않은 경우에도 상기 과정은 종료된다. 플러그-인이 유효한 서버 ID를 ACU 에이전트(74)에 리턴하는 경우, 폴리시 갱신 과정이 계속된다.
이동 클라이언트 UI에서의 프로비저닝
사용자는 UI를 통해 이동 장치(10)의 프로비저닝(provisioning)을 시작할 수 있다(예를 들어, 도 14에 도시된 바와 같이, 아이콘 위의 선택 상자를 이동하고 선택 키를 누름). 일 실시예에 있어서, 장치에 설치된 폴리시가 없는 경우 어떠한 데이터도 디스플레이되지 않는다(도 15). 상기 실시예에 있어서, 이동 장치(10)의 UI에서의 옵션(options) 메뉴는 사용자가 수행할 수 있는 다양한 기능을 나열하고 뒤로(back) 명령은 사용자를 메인 애플리케이션 메뉴로 복귀시킨다.
제1 폴리시를 획득하기 위하여, 사용자는 SSM 서버(20)에 접속한다. 옵션 메뉴로부터, 사용자는 폴리시 수신을 시작하기 위하여 "서버로부터의 갱신"(도 16)을 선택한다. 이동 장치(10)는 SSM 서버(20)에 접속하고 접속은 VPN 클라이언트 패스워드에 의해 보호된다. 장치가 처음으로 사용된 경우, 사용자는 VPN 클라이언트 패스워드를 생성하도록 요구될 수 있다. 패스워드를 입력하는 동안, 각 문자가 별표(asterisk)(도 17)로 변하기 전에 잠깐 표시된다. 문자들을 입력한 후에 "OK"를 누르면 패스워드가 받아들여지고 과정이 계속된다. "취소(Cancel)"을 누르면 사용자는 클라이언트 메인 화면으로 복귀된다. 다음 프로비저닝 단계에서 사용자는 SSM 서버(20)의 IP 어드레스 또는 URL을 입력한다(도 18). 일 실시예에 있어서, 서버 어드레스는 회사 보안 또는 네트워크 관리자에 의해 사용자에게 전달된다. "OK"를 입력한 후, 어드레스는 받아들여지고 과정이 계속된다. 상술된 바와 같이, "취소"는 사용자를 VPN 클라이언트 메인 화면으로 복귀시킨다. 그 다음, 사용자는 인터넷 액세스 포인트(IAP)를 선택하여 인터넷에 (또는 특정 다이얼-업 네트워크에)접속한다(도 19). 일 실시예에 있어서, 운영 체계는 애플리케이션이 인터넷 액세스를 요구하는 것으로 검출하는 경우 다이얼로그를 디스플레이한다. "선택(Select)"은 인터넷 액세스 포인트를 받아들이고, "취소"는 사용자를 VPN 클라이언트 메인 화면으로 복귀시킨다. 그 다음, 이동 장치(10)는 SSM 서버(20)에 접속한다. 일 실시예에 있어서, 디스플레이의 좌상 코너에 있는 상자내의 "G"는 GPRS 액세스가 이동 네트워크에서 활동중임을 사용자에게 통지한다(도 20). "취소"가 선택되는 경우 과정이 종료된다.
SSM 서버(20)에 대한 인증서 및 VPN 클라이언트에 대한 구성 정보가 존재하지 않는 (또는 무효한) 경우, 클라이언트 초기화 과정은 SSM 서버(20)로부터 클라이언트 구성 패키지를 페치한다(도 20). ACU 데이터 저장부(66)에 SSM 서버 인증서가 존재하지 않는 경우, ACU 에이전트(74)는 응답 및 응답을 전송한 서버를 자동적으로 신뢰할 수 없다. 신뢰를 설정하기 위하여, ACU 에이전트(74)는 사용자에게 서버 아이덴티티 코드를 입력하도록 요구한다. 일 실시예에 있어서, 이동 장치(10)의 소프트웨어는 들어오는 인증서의 "핑거프린트(fingerprint)" 또는 16 바이트 식별 코드로부터의 번호를 입력하도록 사용자에게 촉구하고, 사용자가 완전한 핑거프린트에 대해 검증하도록 나머지 번호를 디스플레이한다. 예를 들어, 핑거프린트 코드는 예를 들어 "12qwe34rtyqwe1234"의 형태를 가질 수 있다. 서버를 검증하는 경우, 사용자에게 불완전한 코드 또는 문자열, 예를 들어 "12qwexxrtyqwexx34"이 표시되고, 여기서, "x"는 삭제된 문자를 나타낸다. 서버를 검증하기 위하여, 사용자는 처음 2개의 x에는 "34"를 입력하고, 마지막 2개의 x에는 "12"를 입력해야 한다. 이동장치(10)는 접속하는 동안 수신된 인증서의 핑거프린트를 계산하여 읽을 수 있는 문자열로 변환한다. 상기 장치는 문자열로부터 하나 이상의 임의로 선택된 문자열을 삭제(예를 들어, "x", "_" 등으로 변환)하고, 수정된 문자열을 사용자에게 디스플레이한다. 임의 문자 선택은 이동 장치의 능력에 따라 조정될 수 있다. 예를 들어, 작은 키패드를 갖는 이동전화인 경우, 숫자만이 임의로 삭제된다. 장치 능력은 예를 들어 장치의 IMEI 코드에 의해 결정될 수 있다. 문자열에서 빠진 문자들의 수도 또한 변동될 수 있다. 핑거프린트 내의 임의로 삭제된 문자들의 위치는 상이한 액세스 시도마다 상이하다. ACU 에이전트(74)는 사용자가 입력한 숫자 또는 문자를 수신된 SSM 서버 인증서의 핑거프린트의 16바이트로부터 삭제된 문자와 비교한다. 코드가 핑거프린트와 일치하는 경우, 즉, 사용자가 입력한 문자가 서버 핑거프린트로부터 삭제된 문자와 일치하는 경우, ACU 에이전트(74)는 SSM 서버(20)를 신뢰할 수 있는 것으로 가정하고 상기 서버 인증서를 IPSec 관리자(60)를 호출함으로써 IPSec 폴리시 저장부(40)의 인증서 파일(48)에 저장한다. 이때, SSM 서버(60)로의 접속이 계속되도록 허용된다.
다음 절차로의 다른 예가 도 21에 도시된다. SSM 서버(20)는 서버 인증서의 해시(hash)를 생성하고 상기 해시를 핑거프린트로서 이동 장치(10)에 전송한다. 도 21의 예에서, 핑거프린트는 16 바이트의 16진수인 11:AF:93:B4:C8:B8:BA:CE:81:64:00:DB:9F:D5:91:59이다. 폴리시 프로비저닝 이전에, 네트워크 관리자는 이동 장치(10)의 사용자에게 안전한 방식으로, 예를 들어 핑거프린트가 찍힌 카드를 우편으로 보냄으로써 핑거프린트를 제공한다. 이동장치(10)는 핑거프린트(예를 들어, 인증서의 해시)를 계산하고 4개의 임의로 선택된 문자가 공백("_")으로 대체된 핑거프린트를 디스플레이한다. 이때 사용자는 4개의 빠진 문자들을 입력한다. 그것에 의해 사용자가 인증서를 실제로 검증하지 않고 받아들이는 것이 방지된다.
상기 절차를 이용하여, 사용자는 서버의 인증서를 검증하여 사용자가 부적당한 서버(원하는 서버인 것으로 가장하는 서버와 같은)가 아닌 정당한 서버에 접속하고 있다는 것을 확신한다. 이러한 검증은 인증서의 이전에 공개된 핑거프린트를 서버로부터 수신된 인증서로부터 계산된 핑거프린트와 비교함으로써 수행된다.
상술된 바와 같이, SSM 서버(20)의 핑거프린트 코드는 다수의 실시예에서 사용자에게 오프 라인으로 (프로비저닝 이전에) 제공된다. 서버의 관리자는 침입자에 의해 변경될 수 없는 몇몇 방식으로 (예를 들어, 회사 소식지, 개인 전달, 보통 우편 등) 인증서의 핑거프린트를 발행한다. 사용자의 클라이언트 소프트웨어는 핑거프린트를 계산하여 공백(또는 다른 문자)로 대체된 임의 문자를 갖는 핑거프린트를 사용자에게 디스플레이하고 사용자에게 빠진 문자들을 입력하도록 요구한다. 이것을 수행하기 위하여 사용자는 발행된 핑거프린트에 대해 표시된 불완전한 핑거프린트를 검증해야 한다. 사용자가 유효한 문자를 입력한 경우, 상기 사용자는 핑거프린트가 올바른 것으로 확인한 것이다(그렇지 않으면 사용자는 빠진 문자를 알지 못했을 것이다).
적어도 하나의 실시예에 있어서, VPN 클라이언트는 실질적으로 동시에 (사용자와의 상호 작용없이) 이동 장치(10)를 사내 네트워크(도 2의 인트라넷과 같은)에접속할 때마다 SSM 서버(20)로부터 인증서를 요구한다. 다시 말하면, VPN 클라이언트 소프트웨어는 상술된 인증서 확인 과정을 모든 서버 액세스 시도에 추가한다.
본 발명의 실시예는 집, 호텔, 공항, 카페 등에서 고속 인터넷 서비스를 받는 경우 사용자가 안전한 장치로의 접속을 확인할 수 있게 한다. 예를 들어, 사용자가 여행중이고 방문하고 있는 위치에서 고속 인터넷 액세스 포인트에 이동 장치(10)를 접속하기를 원할 수 있다. 이러한 액세스 포인트에 대한 인증서의 핑거프린트는 신뢰되는 매체를 통해 상기 액세스 포인트를 이용하기를 원하는 모든 사람에게 전달된다. 호텔에서는, 핑거프린트가 프런트 데스크 직원에 의해 제공될 수 있다. 핑거프린트는 또한 사용자에게 우편으로 보내질 수 있다. 핑거프린트는 케이스에 들어있거나 게시판에 도달하기 어렵게 하는 것과 같이 용이하게 변경될 수 없는 신뢰되는 환경에서 공개적으로 디스플레이될 수 있다. 상술된 절차와 유사하게, 이동 장치(10)는 고속 액세스 포인트로의 접속의 부분으로서 사용자에게 핑거프린트의 문자를 제공하도록 요구할 수 있다.
몇몇 실시예에 있어서, 상술된 바와 같이 인증서의 핑거프린트는 해시 함수를 통해서와 같이 인증서 자체로부터 계산된다.
장치(1)의 사용자가 SSM 서버(20)의 인증서를 검증한 후에, SSM 서버(20)는 사용자에게 상기 사용자가 요청한 당사자인지 및 어카운트가 상기 사용자에게 설정되어 있는지를 검증하도록 요구한다. 사용자는 SSM 서버(20)로의 액세스를 위해 사용자 이름 및 패스워드를 입력하도록 촉구된다(도 22). 몇몇 실시예에 있어서, 토큰(token) 또는 일회 패스워드가 사용될 수 있다. SSM 서버(20) 및 장치(10)가 서로를 인증한 후에, 장치(10)는 SSM 서버(20) 인증서를 저장하고 이용가능한 내용에 대한 정보를 수신한다(도 23). ACU 에이전트(74)는 SSM 서버(20)로부터 수신된 다른 클라이언트 구성 정보와 함께 ACU 데이터 저장부(66; 도 3)의 서버 어카운트 레코드(82; 도 4)의 수신된 인증서로의 참조를 저장한다. 사용자는 (예에서) ACU 인증서("ACUcert") 뿐 아니라 VPN 폴리시 관리자 애플리케이션(26)으로부터의 신규 VPN 폴리시("generic*")를 포함하는 이용가능한 내용의 리스트를 입수한다(도 24). ACU 인증서는 장치(10)를 SSM 서버(20)에 인증하는데 사용되는 사용자를 위한 장치 인증서이다. 장치(10)는 내용을 다운로드한다(도 25). 내용 다운로드가 완료된 경우, 장치(10)는 이용가능한 VPN 폴리시들을 나타낸다(도 26; 어떠한 인증서도 표시되어 있지 않다). 사용자는 이제 VPN 게이트웨이에 접속함으로써 신규 폴리시(들)를 이용할 수 있다.
이 시점에서, 장치(10)는 인증서 등록을 요구하는 폴리시를 수신했다. 다시 말하면, 폴리시는 아직 인증에 사용될 수 있는 첨부된 인증서를 구비하지 않고 있다. 클라이언트 인증서는 존재하지 않거나 무효한 경우, 클라이언트 초기화 과정은 클라이언트 인증서 등록을 계속한다.
장치(10)의 VPN 클라이언트는 VPN 폴리시가 인증서 인증 폴리시인지 여부와 인증서가 폴리시에 첨부되어 있는지 여부를 검사한다. 폴리시가 유효한 인증서를 포함하고 있지 않은 경우, 사용자가 인증서를 등록하기를 원하는지를 사용자에게 문의한다(도 27). "예"를 선택하는 경우, 인증서 요구의 생성을 나타내는 UI가 사용자에게 표시된다(도 28). 요구된 길이의 키 쌍이 이미 생성되지 않은 경우, 클라이언트 애플리케이션을 위한 공개/사설키 쌍의 생성부터 시작된다. 일 실시예에 있어서, 모든 서버는 ACU 에이전트(74)가 클라이언트 애플리케이션 사용을 위해 동일한 세트의 키 쌍을 생성하는 것으로 간주한다. 상기 세트는 서버에 의해 요구되는 각 상이한 키 길이를 갖는 단일 키 쌍을 포함한다. 키 쌍은 IPSec 관리자(60)로의 호출에 의해 생성된다. 생성된 키의 길이는 SSM 서버(20)로부터 페치된 클라이언트 구성 정보에 포함되는 매개변수에 의해 결정되고 ACU 데이터 저장부(66)의 대응하는 서버 어카운트 레코드(82)에 저장된다.
그 다음, ACU 에이전트(74)는 사용자로부터 레거시 인증 정보(사용자 이름 및 패스워드)를 요구할 수 있다(미도시). 레거시 인증 정보는 SSM 서버(20)에 전송된 인증서 등록 요구를 인증하는데 사용된다. 더욱이, 상기 사용자 이름은 클라이언트 인증서에 사용될 사용자 아이덴티티를 형성하기 위하여, ACU 클라이언트 구성 패키지(예를 들어, 다음 ACU 통신에서 사용되는 ACU 클라이언트 인증서)를 ACU 클라이언트에 다운로드하는데 사용되는 메시지 트랜잭션, 또는 클라이언트 구성 패키지에 포함되는 사용자 아이덴티티 정보와 결합될 수 있다.
일단 사용자 이름이 요구된 경우, 키 쌍이 준비되고 리턴되는 키 쌍 식별자는 ACU 데이터 저장부(66)의 적합한 서버 어카운트 레코드(82)에 저장되며, ACU 에이전트(74)는 IPSec 관리자(60)를 호출함으로써 제공된 사용자 아이덴티티 및 생성된 키 쌍에 대한 프라이버시 개선 우편(PEM; privacy enhanced mail) 부호화된 PKCS#10 인증서 요구를 획득한다. 클라이언트 인증서의 경우에 있어서, 인증서 요구의 챌린지(challenge) 패스워드 속성은 비어있다. IPSec 관리자(60)는 요구되는인증서 요구가 이미 IPSec 폴리시 저장부(40)에 존재하는지 (예를 들어, 캐시되어 있는지) 여부를 검사한다. 요구가 존재하지 않는 경우, IPSec 관리자(60)는 PKCS#10 모듈(도 3에 미도시)을 사용하여 상기 요구를 생성한다.
인증서 요구를 생성한 후에, IPSec 관리자(60)는 상기 요구를 IPSec 폴리시 저장부(40)에 저장(캐시)한다. 요구 캐시는 인증서 등록이 펜딩 상태로 한 번 이상 완료한 인증서 요구의 재생성을 피하는데 사용된다. ACU 에이전트(74)는 PKCS#10 요구를 포함하는 ACU 요구 메시지를 구성한다. 그 다음, 장치(10)는 인증서 등록을 위해 SSM 서버(20)에 메시지를 전송한다. 사용자는 인터넷 액세스 포인트를 선택하도록 촉구된다(도 29). ACU 에이전트(74)는 리턴되는 등록 상태(성공, 실패, 펜딩)를 ACU 데이터 저장부(66)의 적합한 서버 어카운트 레코드(82)에 저장한다. 도 30은 장치(10)에 의한 인증서의 수신을 나타내는 UI를 도시한다. 인증서 등록이 성공적인 경우, ACU 에이전트(74)는 IPSec 관리자(60)를 호출함으로써 IPSec 폴리시 저장부(40)에 리턴되는 클라이언트 인증서를 저장한다. ACU 에이전트(74)는 또한 ACU 데이터 저장부(66)의 적합한 서버 어카운트 레코드(82)에 저장된 인증서로의 참조를 저장한다. SSM 서버(20)가 성공 또는 실패(즉, 펜딩 요구가 아닌)를 나타내는 인증서 등록 리턴 코드를 리턴하는 경우, ACU 에이전트(74)는 IPSec 관리자(60)로부터 대응하는 인증서 요구를 삭제한다.
자동 인증서 등록 과정은 사용자가 IPSec UI를 통해 폴리시를 활성화하는 경우 시작된다. 폴리시 활성화 요구는 IPSec UI로부터 IPSec 애플리케이션 프로그래밍 인터페이스(API)로 그 다음 IPSec 관리자(60)로 전송된다. IPSec 관리자(60)가활성화될 폴리시가 인증서 등록을 요구하는 것으로 판단하는 경우, IPSec 관리자(60)는 폴리시를 활성화하지 않고 대응하는 리턴 코드를 IPSec API에 리턴한다. 인증서 등록이 필요함을 나타내는 리턴 코드를 수신하는 경우, IPSec API는 폴리시 활성화 과정을 중단하고 리턴 코드를 IPSec UI에 리턴한다. 인증서 등록이 필요함을 나타내는 리턴 코드를 수신하는 경우, IPSec UI는 우선 사용자가 다음 등록 과정을 받아들이거나 거부하도록 허용하는 확인 다이얼로그를 표시한다. 사용자가 등록을 받아들이는 경우, IPSec UI는 등록 과정이 계속되는 동안 표시되는 진행 다이얼로그를 오픈함으로써 계속된다. 진행 다이얼로그는 또한 사용자에게 진행중인 등록 과정을 중단하도록 허용한다. 일 실시예에 있어서, VPN 클라이언트 패스워드가 폴리시 활성화 과정(상기 확인 및 진행 다이얼로그 이전에)의 시작시에 요구되고 인증서 등록 과정 동안에는 다시 요구되지 않는다.
사용자는 인증서 등록 과정이 계속되는 동안 다른 애플리케이션으로 이동할 수 있다. 진행 다이얼로그만이 IPSec UI에 보여질 수 있지만, 갱신 과정 동안 사용자 상호작용을 요구하는 다이얼로그가 사용자가 액세스하는 다른 애플리케이션 위에 나타난다.
사용자가 IPSec UI에 등록을 다시 받아들인 후에, 명시된 폴리시에 대해 자동 인증서 등록을 수행하기 위하여 ACU 에이전트(74)에 호출함으로써 등록 과정이 계속된다. 상기 호출은 매개변수로서 등록 과정에서 사용되는 플러그-인의 ID(예를 들어, IPSec ACU Plug-in, 또는 ACU 에이전트(74)에 대한 IPSec 관리자(60)로의 인터페이스) 및 인증서 등록이 수행될 폴리시의 ID를 포함한다. ACU 에이전트(74)의관점에서 보면, 폴리시 ID는 클라이언트-특정 매개변수이고, 예를 들어 장치(10)의 사용자는 많은 그룹에 속할 수 있지만(후술), 상기 사용자는 하나의 폴리시 ID를 갖는다. 그 다음, ACU 에이전트(74)는 폴리시에 대해 등록 서버의 리스트를 리턴하기 위해 IPSec ACU 플러그-인을 호출한다. IPSec ACU 플러그-인은 IPSec 관리자(60)를 호출함으로써 호출을 수행한다. 리턴되는 리스트에 있는 서버 어드레스는 하나 이상의 인증서 요구가 전송될 서버(예를 들어, SSM 서버(20))를 나타낸다. 하지만, 단일 VPN 폴리시는 다수의 인증서를 참조할 수 있고 각 인증서는 상이한 서버에 등록될 수 있다.
등록 과정에서 그 다음으로, ACU 에이전트(74)는 리턴되는 서버 주소를 한번에 하나씩 가지며, 각 서버와의 통신이 적합하게 초기화되었는지 여부를 검사한다. 각 서버와의 통신이 적합하게 초기화되지 않은 경우, ACU 에이전트(74)는 사용자에게 서버와의 통신을 위해 사용될 IAP를 선택하도록 요구한다(예를 들어, 도 29). 이때, ACU 에이전트(74)는 서버에 대한 클라이언트 초기화 과정을 수행한다. 서버와의 통신이 적합하게 초기화된 경우, ACU 에이전트(74)는 명시된 폴리시-서버 조합을 위해 인증서 요구를 리턴하도록 플러그-인을 호출한다. 서버(예를 들어, SSM 서버(20))와 관련된 ACU 아이덴티티가 또한 상기 호출에 포함된다.
IPSec 관리자(60)가 어떤 폴리시를 위한 인증서 요구를 생성하고 리턴하는 요구를 수신하는 경우, 상기 IPSec 관리자(60)는 상기 요구를 처리한다. IPSec 관리자(60)에 의해 ACU 에이전트(74)에 리턴되는 리스트에 있는 각 인증서 요구는 PEM-부호화된 PKCS#10 인증서 요구 및 요구 식별자를 포함한다. 요구 식별자는 클라이언트 애플리케이션에 의해 정의되고 등록 응답으로 (대응하는 ACU 인터페이스를 통해) 애플리케이션에 되돌려 전송된다. VPN 클라이언트의 경우에 있어서, 요구 식별자는 VPN 클라이언트가 어떤 등록 응답이 관련되는 호스트 및 폴리시를 찾는데 사용할 수 있는 주체 아이덴티티 및 키 쌍 정보의 조합이다. ACU 에이전트(74)는 어떤 서버를 향하는 모든 인증서 요구를 포함하는 ACU 요구 메시지를 생성하고 상기 요구 메시지를 전송한다.
응답이 서버로부터 수신되는 경우, ACU 에이전트(74)는 상기 응답을 분석하고 리턴되는 인증서 등록 응답을 한번에 하나씩 IPSec ACU 플러그-인에 전달한다. 그 다음, 상기 플러그-인은 상기 응답을 IPSec 관리자(60)에 전달한다.
등록 응답은 폴리시 ID, 인증서 요구 ID 및 상태 코드를 포함하고, 인증서를 포함할 수 있다. 상기 인증서는 상태 코드가 성공적인 등록을 나타내는 경우에만 존재한다. 상태 코드가 실패를 나타내거나 등록 요구가 펜딩인 경우 인증서는 빠져있다.
IPSec 관리자(60)가 등록 응답을 수신하는 경우, 상기 IPSec 관리자(60)는 (리턴되는 경우) 인증서를 IPSec 폴리시 저장부(40)에 저장하고 등록 상태를 VPN 폴리시 파일(46)의 대응하는 등록 정보 필드에 저장한다. 상기 대응하는 등록 정보 필드는 리턴되는 인증서 요구 식별자에 따라 발견된다.
등록 상태 코드가 성공 또는 실패를 나타내고 펜딩 요구를 나타내지 않는 경우, IPSec 관리자(60)는 IPSec 폴리시 저장부(40)로부터 캐시된 인증서 요구를 삭제한다.
ACU 에이전트(74)가 어떤 폴리시에 대해 IPSec ACU 플러그-인에 의해 리턴되는 모든 인증서 요구를 처리하고 리턴되는 인증서를 상기 플러그-인에 되돌려 전달하는 경우, 상기 ACU 에이전트(74)는 인증서 등록 과정을 시작한 IPSec API에 성공/에러 코드를 리턴한다. IPSec API는 상기 코드를 IPSec UI에 리턴한다.
IPSec UI가 인증서 등록 호출에 대한 응답으로서 에러 리턴 코드를 수신하는 경우, 상기 IPSec UI는 등록이 실패했고 폴리시가 활성화될 수 없다는 것을 사용자에게 알리는 다이얼로그를 표시한다. IPSec UI가 성공 리턴 코드를 수신하는 경우, 등록이 성공했고 폴리시가 이제 활성화될 수 있다는 것을 사용자에게 알리는 다이얼로그를 표시한다. 이 다이얼로그에서, 사용자는 폴리시를 활성화되게 하거나 활성화를 취소할 수 있다. 활성화가 계속되는 경우, VPN 클라이언트 패스워드는 다시 요구되지 않는데, 왜냐하면, 상기 VPN 클라이언트 패스워드가 등록 과정이 시작되기 전에 획득되었기 때문이다.
폴리시 활성화
폴리시가 다운로드된 후에, 사용자는 상기 폴리시를 활성화해야 한다. 적어도 하나의 실시예에 있어서, 사용자는 폴리시를 선택(도 31)하고 옵션 메뉴에서 "활성화(Activate)"를 선택(도 32)함으로써 폴리시를 활성화한다. 폴리시 활성화는 VPN 클라이언트 패스워드에 의해 보호된다(도 33). 인증서 폴리시에 있어서, 이 패스워드는 또한 사설 키 기능을 언로크(unlock)한다. 사용자는 사내 네트워크에 접속하는데 사용하기를 원하는 인터넷 액세스 포인트(IAP)를 선택한다(도 34). 사용자가 IAP를 선택한 경우, 상기 장치는 GPRS 접속이 "미리 정의된 일반(predefinedgeneric)" 폴리시에 대해 활성화한다는 것을 사용자에게 나타냄으로써 VPN 게이트웨이로의 접속을 시작한다. 채색된 도트(110)는 초기화가 진행중임을 나타낸다(도 35). 접속을 성공적으로 설정한 경우, VPN 터널(tunnel)이 어떤 애플리케이션에 의한 사용을 위해 준비가 되고, 사용자 인터페이스는 "미리 정의된 일반(predefined generic)" 폴리시가 도트(110)의 색을 예를 들어 초록색으로 변경함으로써 활동중이라는 것을 알린다. 사용자는 적합한 애플리케이션을 선택함으로써 인트라넷의 사용자 데이터를 안전하게 액세스할 수 있다. 사용자는 폴리시 애플리케이션으로 리턴하여 옵션 메뉴로부터 "비활성화(Deactivate)"를 선택함으로써 VPN 터널 접속을 비활성화할 수 있다.
몇몇 실시예에 있어서, SSM 서버는 다양한 구성요소들 및 관리국을 포함한다. 이들 구성요소들은 단일 플랫폼으로 결합되거나 다수의 플랫폼으로 분할될 수 있다. 도 5를 참조하면, SSM 서버(20)가 등록 게이트웨이(EGW)(22), 웹 서버(90), 데이터베이스(98) 및 내부 CA(28)를 갖는 점선으로 된 상자내에 도시되고, 상기 구성요소들이 적어도 몇몇 실시예들에서 단일 장치에 있다는 것을 나타낸다. 다른 실시예들에 있어서, 상기 구성요소들 중 몇몇 또는 모두는 별개의 장치들에 있다. 또 다른 실시예들에 있어서, 다른 구성요소들(예를 들어, 전자우편 게이트웨이(32), RADIUS 서버(30) 또는 VPN 폴리시 관리자 애플리케이션(26))이 SSM 서버(20)를 갖는 장치와 동일한 장치에 있을 수 있다.
데이터베이스(98)는 사용자, 사용자 그룹, 클라이언트 폴리시, 다른 파일 및 그 속성들에 대한 정보를 저장하는 내장된 관련 데이터페이스이다. ACU 클라이언트는 예를 들어, Acu_config_db<name>과 같은 논리 식별자를 갖는 데이터베이스(98)내의 SSM 내용 객체를 참조하고, 예를 들어, Acu_cert_db<name>와 같은 논리 식별자를 사용하여 인증서 등록을 수행하며, 상기 식별자들은 SSM 서버(20)에 의해 인식되고 해석된다. SSM 서버(20)의 최종 사용자는 SSM 서버(20)의 기능 또는 정보로의 액세스를 수신하기 전에 자신을 인증한다. 인증은 인증자(인증 제공자)의 사용에 기초한다. 데이터베이스(98)에서의 사용자 아이덴티티는 USERFQDN(사용자 + 적임 도메인 네임(user + fully qualified domain name), 예를 들어, userid@domain)의 형태를 갖는다. 사용자로부터의 추가 정보는 성, 이름, 로그온 이름, 패스워드, 전자우편 주소, 이동 전화 번호 또는 IMEI, 인증 서버, 사용자 그룹, 셀프-프로비전닝 규칙, 및 매칭 규칙을 포함할 수 있다.
SSM 서버(20)는 사용자가 식별되었는지를 결정한다. 적어도 3개의 상이한 유형의 인증자(authenticator)가 있다. 제1 유형의 인증자는 SSM 인증자이고, 여기서 사용자 id/패스워드 조합이 데이터베이스(98)에서 검사된다. 이러한 인증서 유형을 갖는 단 하나의 인스턴트가 한번에 존재할 수 있다. 제2 유형의 인증자는 RADIUS 인증자이고, 여기서 사용자 id/패스워드 조합은 RADIUS 서버(30)에 대해 검사된다. 패스워드는 보통의 패스워드이거나 토큰 카드(SecurID와 같은)를 가지고 생성된 일회 패스워드일 수 있다. 이러한 인증자 유형을 갖는 몇몇 인스턴스들이 동시에 존재할 수 있다.
제3 유형의 인증자는 인증서 인증자이고, 여기서 사용자는 유효한 인증서 및 서명을 제시해야 한다. 인증서의 유효성은 신뢰되는 CA에 의해 서명되는 것을 요구하고, 만료되거나 폐지되지 않는다. 서명이 인증서와 함께 서명되는 경우, 상기 사용자는 인증된 것으로 고려된다. rfc822Name의 주체 대체 이름 확장 필드에 있는 전자우편 주소는 사용자를 SSM 사용자 id에 매핑하는데 사용된다. 인증서 요구 필드에서 인증서 주체의 아이덴티티가 rfc822Name(즉, "local-part@domain" 형태를 갖는 전자우편 주소)으로서 ACU 클라이언트 인증서의 주체 대체 이름 확장 필드에 삽입된다. 전자 우편 주소는 사용자로부터 요구된 사용자 이름/ID 및 FQDN 요소에 명시된 적임 도메인 네임으로부터 구성되고, 상기 값은 ACU 클라이언트 인증서의 주체 대체 이름 확장 필드에 저장되는 전자우편 주소에 도메인 부분으로서 사용된다. 주체 DN의 공통 이름은 rfc822Name의 로컬 부분과 동일하다. 주체 DN 접미어가 VPN 게이트웨이를 액세스하는데 사용되는 사용자 인증서에 존재하는 경우, 상기 주체 DN 접미어는 대응하는 등록 서비스 구성 값을 오버라이드(override)한다. 플래그는 VPN 게이트웨이를 액세스하는데 사용되는 사용자 인증서가 인증서의 주체 대체 이름 확장 필드의 rfc822Name으로서 사용자 아이덴티티를 포함하는지 여부를 나타낸다. 가능한 값은 0=아니오 및 1=예이다. 이 값이 존재하는 경우, 대응하는 등록 서비스 구성 값을 오버라이드한다. 사용되는 적임 도메인 네임(FQDN; fully qualified domain name)은 사용자 아이덴티티가 인증서의 주체 대체 이름 확장 필드의 rfc822Name으로서 포함되는 경우 rfc822Name 값이다. 이 값이 존재하는 경우, 이 값도 또한 대응하는 등록 서비스 구성값을 오버라이드한다. 사설키의 대응하는 공개키가 VPN 게이트웨이에서 사용되는 사용자 인증서에 포함되는 사설키의 예상 길이가 또한 제공될 수 있다. 이 값이 존재하는 경우, 이 값도 또한 대응하는 등록서비스 구성값을 오버라이드한다.
각 인증자는 인증자의 유형에 의존하는 속성의 변하는 번호 및 이름을 갖는다. 적어도 하나의 실시예에 있어서, 모든 인증자 구현은 공통 자바(Java) 인터페이스, 인증자 인터페이스를 지원한다.
인증 요구를 인증자와 관련시키는 것은 제공되는 자격 증명(credential) (사용자 id/패스워드 또는 인증서/서명), 사용자로의 인증자 매핑, 및 한 세트의 셀프-프로비저닝 규칙에 기초한다. 인증 요구를 한 사용자가 SSM 데이터베이스에 레코드를 갖는 경우, 상기 레코드에 명시된 인증자는 사용자를 인증하는데 사용된다. 상기 레코드가 인증자를 명시하지 못하는 경우, 인증은 실패한다.
인증 요구를 한 사용자가 SSM 데이터베이스에 레코드를 갖고 있지 않은 경우, 인증은 한 세트의 셀프-프로비저닝 규칙에 따라 수행된다. 일 실시예에 있어서, 셀프-프로비저닝 규칙은 3개의 정보를 함께 매핑한다: 도메인 ID, 인증자 및 사용자 그룹. 도메인 ID는 인증 요구에 포함된 사용자 이름으로부터 추출되고 셀프-프로비저닝 규칙에 대해 정의된 도메인 ID에 비교된다. 매칭 규칙이 발견된 경우, 상기 발견된 규칙에 명시된 인증자가 사용자를 인증하는데 사용된다. 매칭 규칙이 발견되지 않은 경우, 인증은 실패한다.
최종 사용자 아이덴티티없이 다른 구성요소들을 액세스하는 SSM 구성요소들(예를 들어, SSM 서버(20)로부터 인증서 폐지 리스트(CRL; certificate revocation list)를 요구하는 PKI 서버)이 또한 인증되어야 한다. 이것은 사용자가 구성요소를 설치하는 경우 시스템 관리자에 의해 제공된 공유된 비밀에 기초한다.
최종 사용자가 셀프-프로비저닝 규칙을 가지고 (예를 들어, 데이터베이스(98)에 사용자 레코드가 없는 경우) 성공적으로 인증된 경우, 신규 사용자 레코드가 데이터베이스(98)에 자동으로 생성된다. 신규 사용자 레코드는 사용자를 인증하는데 사용된 셀프-프로비저닝 규칙에서 디폴트 그룹으로 명시된 사용자 그룹과 자동으로 관련된다. 추가로, 신규 사용자 레코드는 사용자를 인증하는데 사용된 인증자와 관련된다.
디폴트 사용자 그룹은 관련된 어떤 수의 내용 엔트리를 가질 수 있다. 따라서 내용은 자동으로 사용자들과 관련될 수 있다. 비록 관리자가 어떤 사용자 정보를 생성하지 못했거나 SSM 서버(20)에 입력시키지 못한 경우에도 사용자는 SSM 서버(20)로부터 내용을 검색할 수 있다.
SSM 서버(20)에 접속된 경우, 사용자(클라이언트 사용자 또는 관리자)는 데이터베이스(98)에 정의된 허가에 따라 SSM 서버(20)를 사용할 수 있다. 허가 정보는 또한 외부 인증 서버에 대해 인증된 사용자들에 대해서도 데이터베이스(98)에 저장된다. 적어도 하나의 실시예에 있어서, 사용 허가는 롤(roles)로서 SSM에 정의된다. 롤은 그 롤에 있는 경우 사용자가 수행할 수 있는 행동 및 사용자가 액세스하도록 허용되는 객체의 정의이다. 일 실시예에 있어서, SSM 서버(20)는 4개의 상이한 유형의 사용자 그룹을 지원한다: 시스템 관리자, 사용자 관리자, 내용 관리자 및 클라이언트 사용자. 이러한 그룹 유형들 각각은 상기 그룹에 속하는 모든 사용자들에 의해 뿐 아니라 상기 유형의 모든 실제 그룹에 의해 승계되는 관련된 롤을 갖는다. 상이한 롤을 갖는 몇몇 사용자 그룹에 속하는 사용자는 최소 제한된 롤을승계한다. 일 실시예에 있어서, 디폴트 사용자 그룹 유형 및 그 롤은 SSM 서버(20) 구성 또는 ACU 구성에 정의되고 SSM 서버(20) 관리자 그래픽 사용자 인터페이스(GUI) 또는 명령 행 인터페이스(CLI)에 의하여 변경될 수 있다. 하지만, SSM 서버(20) 구성을 변경함으로써 디폴트 그룹 유형과 관련된 롤이 변경될 수 있다.
사용자 아이덴티티 없이 네트워크 상에서 기능하는 SSM 서버(20)를 액세스하는 구성요소는 상기 구성요소가 무엇을 할 수 있는지를 정의하는데 사용되는 특별한 구성요소 롤을 갖는다. 추가로, SSM 서버(20)에 의해 내부에서 사용되는 특별한 내부 롤이 있고, 상기 롤은 모든 객체를 액세스할 수 있고 모든 동작을 수행할 수 있다. 비록 VPN 클라이언트 소프트웨어 설치 패키지 및 VPN 폴리시/프로파일이 SSM에 의해 처리되는 내용의 유형이지만, SSM은 상기 내용 유형에 제한되지 않는다.
SSM 서버(20)가 전달하는 내용은 SSM 서버(20) 내에서 반드시 생성되는 것은 아니다. 오히려, 내용은 외부 시스템에서 생성되어 SSM 서버(20)에 파일로서 들여오기(import)될 수 있다. SSM 서버(20)내에서, 파일들은 어떤 다중목적 인터넷 우편 확장(MIME; multipurpose Internet mail extension) 유형을 갖는 내용 엔트리로 변환된다. 상기 들여오기 동작은 SSM 서버(20)의 CLI에서 시작될 수 있다. 몇몇 실시예들에 있어서, 들여오기되는 파일은 보통의 파일 시스템 동작을 통해 국부적으로 액세스될 수 있어야 한다.
SSM 서버(20)는 폴리시 관리 애플리케이션(PMA)(26)과 통합되어 폴리시 및 프로파일이 PMA(26)에 의해 생성되고 유지될 수 있고 SSM 서버(20)에보내기(export)될 수 있다. 이러한 동작은 PMA(26) 내에서 시작된다. PMA(26)는 예를 들어 이 목적을 위해 설계된 자바(JAVA) 인터페이스를 통해 SSM 서버(20)와 통신한다.
SSM 관리자는 사용자 및 사용자 그룹 정보를 외부 시스템으로부터 SSM 서버(20)에 들여오기할 수 있다. 사용자 및 사용자 그룹 정보에 추가하여, 사용자 대 그룹 및 그룹 대 그룹 매핑 정보가 또한 SSM 서버(20)에 들여오기될 수 있다. 예를 들어, 관리자는 사용자 및 사용자 그룹을 생성하고, 사용자 및 사용자 그룹을 검색하며, 사용자 및 사용자 그룹 속성을 수정하고, 사용자 및 사용자 그룹을 이동하고 삭제하며, 사용자를 사용자 그룹 및 내용 엔트리와 관련시키고, (예를 들어, 그룹 계층을 형성하기 위하여) 사용자 그룹을 다른 사용자 그룹과 관련시킬 수 있다.
도 6은 기업내의 다양한 사용자 그룹을 도시한다. 사용자 그룹은 단일 그룹(112, 114, 116 또는 118)이 하나의 부모(parent) 그룹(110)을 가질 수 있는 계층을 형성할 수 있다. 상기 그룹 계층은 또한 논리 승계 계층을 형성한다. 자식(child) 그룹(112, 114, 116, 118)은 자신의 부모 그룹(110)으로부터 어떤 속성을 물려받는다. 예를 들어, 그룹(110)과 관련된 내용 엔트리는 또한 자신의 자식 그룹(112, 114, 116, 118)과 간접적으로 관련된다. 승계 계층의 종단에는 사용자가 속하는 그룹으로부터 속성을 물려받는 사용자들이 있다.
도 6에서 그룹(110)은 단일 폴리시 및 단일 사용자와 관련된다. 하지만, 승계 메커니즘(영업부(sales)는 본사(company HQ)로부터 승계되는 런던 지사(Londonoffice)로부터 승계된다) 때문에, 사용자의 그룹(116)은 그룹(114 및 118)이 갖는 것과는 상이한 관련된 폴리시를 갖는다. 폴 보스(Paul Boss)는 하나의 관련된 폴리시, 본사 그룹(110)을 통한 본사 폴리시를 갖는다. 메리 스케리(Mary Scary)는 런던 지사에서 근무하고 2가지 관련된 폴리시, 본사(110) 및 런던(112) 폴리시를 갖는다. 팀 투스(Tim Tooth)는 런던 영업부에서 근무하고 3가지 관련된 폴리시를 갖는다: 본사(110), 런던(112) 및 영업부(116).
내용 엔트리가 사용자 그룹(110)과 관련되는 경우, 상기 엔트리는 또한 상기 그룹 또는 그 자식 그룹 중 어느 것에 속하는 모든 사용자 및 그룹과 간접적으로 관련된다. 이러한 간접 관련은 아래에서 위로 그룹 계층을 가로지르는 애플리케이션 로직에 의해 실행 시간에서 실시된다. 내용 엔트리가 삭제되는 경우, 사용자 및 사용자 그룹과 관련된 것 모두가 또한 삭제된다.
ACU 인증을 위한 EGW(22)(도 2, 도 5) 인증서는 SSM 내부 인증 기관(CA)(28)으로부터 발행된다. EGW(22)는 또한 내부 CA(28)로부터 VPN 인증을 위한 인증서를 발행할 수 있다. 대안으로(또는 추가로), EGW(22)는 클라이언트 인증서 등록 요구를 위한 제어 포인트로서 및 외부 CA로의 등록 기관(RA; Registration Authority)으로서 동작하는 외부 CA와 통신할 수 있고, 간단한 인증서 등록 프로토콜(SCEP; simple certificate enrollment protocol) 또는 인증서 요구 구문(CRS; certificate request syntax)을 이용하여 적합한 CA에 등록 요구를 전달할 수 있다. 몇몇 실시예에 있어서, EGW(22)는 등록 프로토콜 변환을 제공한다.
다수의 실시예에 있어서, 웹 서버(90)는 SSM 서버(20)로의 외부 인터페이스로서 동작한다. 이동 장치(10)는 인증서 등록 요구를 웹 서버(90)에 전송하고, 웹 서버(90)는 상기 인증서 등록 요구를 EGW(22)에 전달한다. 이동 장치(10)는 또한 SSM 데이터베이스(98)로부터 자동 내용 갱신을 위해 웹 서버(90)에 접속한다. VPN 폴리시 관리자 애플리케이션(26)은 클라이언트 폴리시(또는 프로파일)를 웹 서버(90)에 보내고 상기 웹 서버(90)는 상기 클라이언트 폴리시(또는 프로파일)를 SSM 데이터베이스(98)에 저장한다. 상술된 바와 같이, SSM 시스템은 다수의 서버 및 클라이언트 구성요소를 포함할 수 있다.
SSM 서버(20)는 외부 인증 서버와 통신하기 위하여 원격 인증 다이얼-인 사용자 서비스(RADIUS, RFC2138) 프로토콜을 사용한다. 이 프로토콜은 사용자 데이터그램 프로토콜(UDP; user datagram protocol) 상에서 전달된다.
몇몇 실시예에 있어서, SSM 서버(20)는 SSM 시스템의 중심 구성요소이고, 내부 데이터베이스 또는 외부 인증 서버를 액세스하는 유일한 구성요소이다.
EGW(22)는 SSM 공개키 기반 구조 서비스를 제공한다: SSM 내부 인증 기관(28)에서 발행된 ACU 인증을 위한 인증서 및 인증서 EGW(등록 게이트웨이)(22). VPN 인증을 위한 인증서는 SSM 내부 CA(28) 및/또는 외부 CA로부터 올 수 있다. 몇몇 실시예에 있어서, SSM 서버(20) 클래스만이 EGW(22)를 직접 액세스할 수 있고, 다른 구성요소들(예를 들어, 관리 애플리케이션, 웹 서브릿(web servlets)은 SSM 서버(20)의 관리 인터페이스를 통해서만 EGW(22)를 액세스한다.
EGW(22)SMS 인증서 등록 요구를 인증하고 권한을 부여할 뿐 아니라 영구 데이터(예를 들어, 인증서, CRL, 등)를 저장하기 위하여 SSM 서버(20)를 이용한다.
SSM 서버(20)는 SSM 서버 관리 기능으로의 관리 및 관리자 인터페이스를 제공하기 위하여 CLI 및/또는 GUI를 갖는다.
SSM 서버(2)는 폴리시, 프로파일 및 분배될 다른 내용을 들여오는데 사용되는 2개의 인터페이스를 나타낸다. 일반 HTTP-기반 내용 갱신 API는 어떤 외부 소프트웨어 구성요소에 의해 사용될 수 있다. HTTP 서브릿은 내용을 데이터베이스(98)에 들여온다. 웹 서버(90)는 SSM 최종 사용자 기능을 구현한다. 웹 서버(90)는 또한 ACU 요구의 XML 프로세싱을 처리하고 HTTP 요구를 EGW 서버(22)로 (SSM 서버(20)를 통해) 전달하며, HTTP 기반 들여오기 인터페이스를 제공하는 서브릿을 실행한다.
웹 서버(90)는 SSM 서버(20)를 위한 HTTP(S) 청취자(listener)이다. 적어도 하나의 실시예에 있어서, 웹 서버(90)는 외부 네트워크로부터 들어오는 요구를 청취하는 시스템내의 유일한 구성요소이다.
SSM 서버(20) 구성요소는 서로 또는 외부 시스템과 통신하기 위하여 몇몇 네트워크 인터페이스 및 프로토콜을 사용한다. EGW 서버(22) 및 SSM 서버(20)는 어떤 적합한 프로토콜을 사용하여 통신할 수 있다. 일 실시예에 있어서, 2개의 TCP/IP 접속(각 방향으로 하나씩)을 통해 요구/응답 프로토콜이 사용된다. 태그 길이 값(tag-length-value) 기반 프로토콜이 암호화되고 양 당사자는 그들이 설치동안 요구되는 공유 비밀로부터 유도되는 비밀키를 알고 있다는 사실에 의해 인증된다.
SSM 서버(20)는 전자 우편 통지를 최종 사용자에게 전송하기 위하여 TCP/IP를 통해 예를 들어 간단한 우편 전송 프로토콜(SMTP; Simple Mail TransferProtocol)을 사용한다. 전자우편 게이트웨이는 전자우편 메시지를 라우팅하는데 사용된다.
상술된 바와 같이, 적어도 하나의 실시예에 있어서, 이동 장치(10)의 VPN 클라이언트로부터, 또한 최종 사용자의 브라우저로부터의 모든 요구는 HTTP를 통해 웹 서버(90)에 들어온다. 상기 요구는 HTTPS 요구를 웹 서버(90)에 전송하는 사용자의 웹 브라우저를 포함하고, 상기 요구에 응답하여 웹 서버(90)는 HTML 페이지 및/또는 다운로드 파일을 제공한다. 이러한 접속은 SSL로 암호화된다. SSM 서버(20)는 인증서에 기초하여 인증되고 이동 장치는 사용자이름/패스워드를 가지고 인증된다. 웹 서버(90)는 또한 인증서 등록 요구를 이동 장치(10)의 VPN 클라이언트로부터 HTTP를 통해 수신한다. 상기 요구는 암호화되고 서명되며, 보통의 HTTP 접속이 사용될 수 있다. 웹 서버(90)는 또한 이동 장치(10)의 VPN 클라이언트로부터 자동 내용 갱신(ACU; Automatic Content Update) 요구를 수신한다. 이 요구는 암호화되고 서명된다. SSM 서버(20)는 인증서에 기초하여 인증되고 이동 장치(10)는 사용자이름/패스워드 또는 이 목적을 위해 발행된 인증서를 가지고 인증된다.
공용 인터넷(14)에서의 클라이언트(예를 들어, 장치(11))로부터의 HTTP 접속은 방화벽(18) 및/또는 프록시/게이트웨이(24)를 통과한다. 장치(11)에 있는 애플리케이션은 SSM 서버(20)로부터 폴리시를 들여오고 SSL로 암호화된 HTTP 접속(HTTPS)을 사용하여 폴리시를 갱신할 수 있다. SSM 서버(20)는 인증서에 기초하여 인증되고 장치(11)는 사용자이름/패스워드를 가지고 인증되며, 예를 들어 폴리시 관리 애플리케이션(26)이 SSM 서버(20)를 통해 폴리시를 푸시(push)하는 경우사용자는 내용 관리자 그룹에 속한다. SSM 서버(20)에 접속된 경우, 사용자(사용자(11) 또는 관리자)는 SSM에서 정의된 허용에 따라 SSM 서버(20)를 이용할 수 있다. 일 실시예에 있어서, 외부 인증 서버에서 인증된 사용자에 대해서도 허용 정보는 데이터베이스(98)에 저장된다.
VPN 게이트웨이(24)는 EGW(22)로부터 (웹 서버(90) 및 SSM 서버(20)를 통해) 인증서 폐기 목록(CRL)을 요구하는데 HTTP를 사용한다. CRL은 암호화되지 않고 보통의 HTTP 접속을 통해 전송될 수 있는 서명된 실체이다.
EGW(22)는 인증서 요구를 HTTP를 통해 전송하기 위하여 외부 인증 기관에 접속할 수 있다.
SSM 서버(20)는 VPN 폴리시 배치 도구로서 사용하는데 제한되지 않는다. SSM 서버(20)는 인증되고 권한이 부여된 최종 사용자들로의 어떤 내용의 안전한 분배 및 PKI의 스케일러블 전개(scalable deployment)를 지원한다. 스케일러블 PKI 데이터 생성은 VPN 클라이언트에 위임될 수 있다. 이러한 경우에 있어서, 사용자는 PKI 데이터를 갖지 않는 일반적인 폴리시(즉, 프로파일)을 수신하고, 사용자의 VPN 클라이언트는 폴리시가 사용되기 전에 PKI 데이터를 생성한다. 특히, 클라이언트는 공개/사설키 쌍 및 대응하는 인증서 등록 요구를 생성하고 상기 요구를 인증 기관(CA)에 전송한다. 상기 CA는 상기 인증서를 생성하여 리턴한다.
본 발명의 많은 특징 및 장점이 상기 상세한 설명으로부터 명백하고, 따라서 첨부된 청구범위에 의하여 본 발명의 범위 및 정신내에 있는 본 발명의 모든 특징 및 장점을 포함하는 것으로 의도된다. 다수의 변형 및 수정을 당업자가 생각할 것이고, 본 발명은 본 명세서에서 도시되고 기술된 정확한 구성 및 동작에 제한되지 않는다. 모든 적합한 변형 및 등가물은 본 발명의 범위내에 있다. 상기 설명은 제한한다기 보다는 예시적인 것으로 의도된다. 일 예로서, 본 발명은 SSM 서버(20)를 참조하여 설명되었다. 하지만, 본 발명에 따른 장치, 시스템 및 방법은 다수의 SSM 서버(20)를 포함(및/또는 다수의 SSM 서버(20)와의 통신을 포함)할 수 있다. 본 발명은 추가로 SSM 서버(20)에 관하여 설명된 모든 특징을 포함하지 않고/않거나 추가 특징을 포함하는 서버 및 장치를 포함(및/또는 서버 및 장치와의 통신을 포함)한다. 다른 예로서, 리턴되는 인증서는 원격 장치로부터 제1 응답이 되는 (ACU 메시지의 서명 요소를 제외하고) 전체 ACU 메시지를 계산한 해시에 기초하여 유효화될 수 있다. 상기 해시는 원격 장치에 의해 유지되는 사설키를 가지고 서명되고, 대응하는 인증서는 제1 응답에 포함되고 수신자에 의해 서명을 검증하고 송신자를 식별하며 인증하는데 사용된다. 상기 및 다른 수정이 첨부된 청구범위에 정의된 바와 같이 본 발명의 범위내에 있다.
상술한 바와 같이, 본 발명을 이용하면 공개적으로 액세스가능한 통신 네트워크를 통해 원격 서버 또는 다른 장치를 안전하게 액세스할 수 있다.

Claims (14)

  1. 안전한 통신을 수행하는 방법에 있어서,
    (a) 사용자 장치를 공개적으로 액세스가능한 네트워크를 통해 서버에 접속하는 단계;
    (b) 인증서를 수신하는 단계;
    (c) 상기 수신된 인증서의 식별자를 계산하여 상기 식별자를 문자열로 변환하는 단계;
    (d) 상기 문자열로부터 적어도 하나의 임의 문자를 삭제하여 상기 문자열을 수정하는 단계;
    (e) 상기 수정된 문자열을 디스플레이하는 단계;
    (f) 신뢰되는 매체를 통해 상기 식별자를 이전에 제공받은 사용자로부터 상기 적어도 하나의 삭제된 문자에 대응하는 입력을 수신하는 단계; 및
    (g) 상기 사용자 입력이 상기 적어도 하나의 삭제된 문자와 일치하는 경우에만 상기 서버로의 접속을 계속하는 단계를 포함하는 것을 특징으로 하는 안전한 통신 수행 방법.
  2. 제1항에 있어서,
    삭제를 위해 다수의 문자들을 임의로 선택하는 단계를 더 포함하는 것을 특징으로 하는 안전한 통신 수행 방법.
  3. 제2항에 있어서,
    상기 임의로 선택된 문자들은 교체를 나타내는 문자로 대체되는 것을 특징으로 하는 안전한 통신 수행 방법.
  4. 제2항에 있어서,
    상기 수정된 문자열은 상기 삭제된 문자들을 대체하는 공백으로 디스플레이되는 것을 특징으로 하는 안전한 통신 수행 방법.
  5. 제1항에 있어서,
    상기 장치는 이동전화이고 상기 적어도 하나의 삭제된 문자는 숫자인 것을 특징으로 하는 안전한 통신 수행 방법.
  6. 제1항에 있어서,
    상기 인증서를 수신하는 단계는 상기 인증서를 인증 기관으로부터 수신하는 단계를 포함하는 것을 특징으로 하는 안전한 통신 수행 방법.
  7. 제1항에 있어서,
    상기 문자열로부터 삭제되는 적어도 하나의 문자의 위치는 다음의 접속 시도시에는 달라지는 것을 특징으로 하는 안전한 통신 수행 방법.
  8. 제1항에 있어서,
    상기 적어도 하나의 삭제되는 문자는 상기 사용자 장치의 능력에 기초하여 삭제되는 것을 특징으로 하는 안전한 통신 수행 방법.
  9. 제1항에 있어서,
    상기 적어도 하나의 삭제된 문자에 대응하는 입력을 수신하는 단계는 우편 또는 회사 소식지 중 하나를 통해 상기 식별자를 이전에 제공받은 사용자로부터 입력을 수신하는 단계를 포함하는 것을 특징으로 하는 안전한 통신 수행 방법.
  10. 제1항에 있어서,
    상기 적어도 하나의 삭제된 문자는 숫자이고, 숫자가 아닌 문자들은 삭제되지 않는 것을 특징으로 하는 안전한 통신 수행 방법.
  11. 제1항에 있어서,
    상기 장치를 상기 서버에 접속하는 각 시도마다 단계들 (a) 내지 (g)를 반복하는 단계를 더 포함하는 것을 특징으로 하는 안전한 통신 수행 방법.
  12. 공개적으로 액세스가능한 네트워크를 통해 서버와의 안전한 통신을 위한 장치에 있어서,
    공개적으로 액세스가능한 네트워크로의 인터페이스; 및
    프로세서를 포함하고,
    상기 프로세서는
    상기 인터페이스를 통해 원격에 위치하는 서버로부터 인증서를 수신하는 단계;
    상기 수신된 인증서의 식별자를 계산하여 상기 식별자를 문자열로 변환하는 단계;
    상기 문자열로부터 적어도 하나의 임의 문자를 삭제하여 상기 문자열을 수정하는 단계;
    상기 수정된 문자열을 디스플레이하는 단계;
    신뢰되는 매체를 통해 상기 식별자를 이전에 제공받은 상기 장치의 사용자로부터 상기 적어도 하나의 삭제된 문자에 대응하는 입력을 수신하는 단계; 및
    상기 사용자 입력이 상기 적어도 하나의 삭제된 문자와 일치하는 경우에만 상기 서버로의 접속을 계속하는 단계를 수행하도록 구성되는 것을 특징으로 하는 안전한 통신을 위한 장치.
  13. (a) 사용자 장치를 공개적으로 액세스가능한 네트워크를 통해 서버에 접속하는 단계;
    (b) 인증서를 수신하는 단계;
    (c) 상기 수신된 인증서의 식별자를 계산하여 상기 식별자를 문자열로 변환하는 단계;
    (d) 상기 문자열로부터 적어도 하나의 임의 문자를 삭제하여 상기 문자열을 수정하는 단계;
    (e) 상기 수정된 문자열을 디스플레이하는 단계;
    (f) 신뢰되는 매체를 통해 상기 식별자를 이전에 제공받은 사용자로부터 상기 적어도 하나의 삭제된 문자에 대응하는 입력을 수신하는 단계; 및
    (g) 상기 사용자 입력이 상기 적어도 하나의 삭제된 문자와 일치하는 경우에만 상기 서버로의 접속을 계속하는 단계를 수행하기 위한 기계 실행가능한 명령어들을 구비하는 기계 독출가능 매체.
  14. 안전한 통신을 수행하는 방법에 있어서,
    (a) 사용자 장치를 공개적으로 액세스가능한 네트워크를 통해 서버에 접속하는 단계;
    (b) 인증서를 수신하는 단계;
    (c) 수정된 식별자를 수신하는 단계로서, 상기 식별자는 이전에 상기 사용자 장치 외부에서 상기 인증서에 대해 계산되고 상기 사용자 장치 외부에서 적어도 하나의 임의 문자를 삭제하여 수정된 단계;
    (e) 상기 수정된 식별자를 디스플레이하는 단계;
    (f) 신뢰되는 매체를 통해 상기 식별자를 이전에 제공받은 사용자로부터 상기 적어도 하나의 삭제된 문자에 대응하는 입력을 수신하는 단계; 및
    (g) 상기 사용자 입력이 상기 적어도 하나의 삭제된 문자와 일치하는 경우에만 상기 서버로의 접속을 계속하는 단계를 포함하는 것을 특징으로 하는 안전한 통신 수행 방법.
KR1020040044524A 2003-06-30 2004-06-16 안전한 액세스 구현 방법 KR20050005763A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/608,818 US7444508B2 (en) 2003-06-30 2003-06-30 Method of implementing secure access
US10/608,818 2003-06-30

Publications (1)

Publication Number Publication Date
KR20050005763A true KR20050005763A (ko) 2005-01-14

Family

ID=33435362

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040044524A KR20050005763A (ko) 2003-06-30 2004-06-16 안전한 액세스 구현 방법

Country Status (6)

Country Link
US (1) US7444508B2 (ko)
EP (1) EP1494428B1 (ko)
KR (1) KR20050005763A (ko)
AT (1) ATE352163T1 (ko)
DE (1) DE602004004325T2 (ko)
ES (1) ES2281760T3 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100810368B1 (ko) * 2006-07-10 2008-03-07 주식회사 한글과 컴퓨터 그룹 내 문서에 대한 유출 방지 및 접근 제어 시스템
KR101311657B1 (ko) * 2009-06-02 2013-09-25 알까뗄 루슨트 원격통신 네트워크를 보호하는 방법 및 그 방법을 구현하는 보안 라우터
KR101642223B1 (ko) * 2015-05-12 2016-07-22 주식회사 수산아이앤티 사설 인증서의 설치를 유도하는 방법
US10091198B2 (en) 2016-11-22 2018-10-02 Korea Internet & Security Agency Rule-based fingerprint generation methods and apparatus

Families Citing this family (125)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050033829A1 (en) * 2003-08-04 2005-02-10 Nokia Corporation System and method for wireless multicast downloading
US20050038879A1 (en) * 2003-08-14 2005-02-17 International Business Machines Corporation System and method for discovery of remote device driver functionality and interface
US10375023B2 (en) * 2004-02-20 2019-08-06 Nokia Technologies Oy System, method and computer program product for accessing at least one virtual private network
US20060089121A1 (en) * 2004-10-27 2006-04-27 Hani Elgebaly Method and apparatus for automatic connecting of virtual private network clients to a network
JP4654006B2 (ja) * 2004-11-16 2011-03-16 パナソニック株式会社 サーバ装置、携帯端末、通信システム及びプログラム
US20060230279A1 (en) * 2005-03-30 2006-10-12 Morris Robert P Methods, systems, and computer program products for establishing trusted access to a communication network
US20060230278A1 (en) * 2005-03-30 2006-10-12 Morris Robert P Methods,systems, and computer program products for determining a trust indication associated with access to a communication network
US20070031009A1 (en) * 2005-04-15 2007-02-08 Julius Mwale Method and system for string-based biometric authentication
US20060265737A1 (en) * 2005-05-23 2006-11-23 Morris Robert P Methods, systems, and computer program products for providing trusted access to a communicaiton network based on location
US7873994B1 (en) * 2005-06-27 2011-01-18 Juniper Networks, Inc. Management of session timeouts in an SSL VPN gateway
US8316226B1 (en) * 2005-09-14 2012-11-20 Juniper Networks, Inc. Adaptive transition between layer three and layer four network tunnels
US8443197B2 (en) * 2005-09-30 2013-05-14 The Invention Science Fund I, Llc Voice-capable system and method for authentication using prior entity user interaction
JP4829697B2 (ja) * 2006-06-20 2011-12-07 キヤノン株式会社 情報処理装置、情報処理方法、コンピュータプログラム及び記録媒体
KR101366277B1 (ko) * 2006-09-07 2014-02-20 엘지전자 주식회사 도메인에서 ro 이동을 위한 멤버쉽 확인 방법 및 장치
US8104084B2 (en) * 2006-11-07 2012-01-24 Ricoh Company, Ltd. Authorizing a user to a device
EP1927930A1 (en) * 2006-11-30 2008-06-04 Sap Ag Method and system for access control using resouce filters
EP1933522B1 (en) 2006-12-11 2013-10-23 Sap Ag Method and system for authentication
US8412192B2 (en) * 2007-01-08 2013-04-02 Research In Motion Limited Apparatus, and associated method, for providing an instance identifier to a network database node of a mobile network
WO2008099402A2 (en) * 2007-02-16 2008-08-21 Forescout Technologies A method and system for dynamic security using authentication server
US8150425B1 (en) * 2007-03-16 2012-04-03 At&T Mobility Ii Llc Systems and methods for merchandising new offers to mobile telephone users based on changes to the mobile telephone's components
US7974614B1 (en) 2007-03-16 2011-07-05 At&T Mobility Ii Llc Systems and methods for merchandising content to a second mobile telephone based on the content of a first mobile telephone
US8239548B2 (en) * 2007-07-17 2012-08-07 Adobe Systems Incorporated Endpoint discriminator in network transport protocol startup packets
US8799648B1 (en) * 2007-08-15 2014-08-05 Meru Networks Wireless network controller certification authority
US7954145B2 (en) * 2007-09-27 2011-05-31 Novell, Inc. Dynamically configuring a client for virtual private network (VPN) access
CA2703546A1 (en) 2007-10-25 2009-04-30 Trilliant Networks, Inc. Gas meter having ultra-sensitive magnetic material retrofitted onto meter dial and method for performing meter retrofit
EP2257884A4 (en) * 2007-11-25 2011-04-20 Trilliant Networks Inc SYSTEM AND METHOD FOR TRANSMITTING AND RECEIVING INFORMATION ABOUT A NEIGHBORHOOD ZONAL NETWORK
US8171364B2 (en) 2007-11-25 2012-05-01 Trilliant Networks, Inc. System and method for power outage and restoration notification in an advanced metering infrastructure network
US8332055B2 (en) 2007-11-25 2012-12-11 Trilliant Networks, Inc. Energy use control system and method
CA2705021A1 (en) * 2007-11-25 2009-05-28 Trilliant Networks, Inc. Proxy use within a mesh network
US8359580B2 (en) 2007-12-26 2013-01-22 Visa U.S.A. Inc. System and method for tracking testing of software modification projects
US20090169008A1 (en) * 2007-12-26 2009-07-02 Gonzales Jesus Orlando Ii System and method for tracking testing of software modification projects from a wireless mobile device
US8171147B1 (en) 2008-02-20 2012-05-01 Adobe Systems Incorporated System, method, and/or apparatus for establishing peer-to-peer communication
US20090234953A1 (en) * 2008-03-11 2009-09-17 Palm, Inc. Apparatus and methods for integration of third party virtual private network solutions
US8272039B2 (en) * 2008-05-02 2012-09-18 International Business Machines Corporation Pass-through hijack avoidance technique for cascaded authentication
US8312147B2 (en) * 2008-05-13 2012-11-13 Adobe Systems Incorporated Many-to-one mapping of host identities
JP2009278223A (ja) * 2008-05-13 2009-11-26 Panasonic Corp 電子証明システム及び秘匿通信システム
US8341401B1 (en) 2008-05-13 2012-12-25 Adobe Systems Incorporated Interoperable cryptographic peer and server identities
US8793757B2 (en) * 2008-05-27 2014-07-29 Open Invention Network, Llc User-directed privacy control in a user-centric identity management system
US20090307140A1 (en) 2008-06-06 2009-12-10 Upendra Mardikar Mobile device over-the-air (ota) registration and point-of-sale (pos) payment
DK2144460T3 (en) * 2008-07-10 2016-02-08 Teliasonera Ab A method, system, packet data gateway, and computer program for providing connection to the supply of data
KR101297519B1 (ko) * 2008-08-08 2013-08-16 삼성전자주식회사 Dcd 서비스에서 사용자 콘텐트 제출 방법 및 시스템
US20100064048A1 (en) * 2008-09-05 2010-03-11 Hoggan Stuart A Firmware/software validation
CN102197632A (zh) * 2008-10-29 2011-09-21 杜比实验室特许公司 网络互联域和密钥系统
US8826006B2 (en) * 2008-10-31 2014-09-02 Motorola Solutions, Inc. Method and device for enabling a trust relationship using an unexpired public key infrastructure (PKI) certificate
US8423761B2 (en) * 2008-10-31 2013-04-16 Motorola Solutions, Inc. Method and device for enabling a trust relationship using an expired public key infrastructure (PKI) certificate
US20100125897A1 (en) * 2008-11-20 2010-05-20 Rahul Jain Methods and apparatus for establishing a dynamic virtual private network connection
JP5270694B2 (ja) * 2008-11-28 2013-08-21 インターナショナル・ビジネス・マシーンズ・コーポレーション 機密ファイルを保護するためのクライアント・コンピュータ、及びそのサーバ・コンピュータ、並びにその方法及びコンピュータ・プログラム
US20100138907A1 (en) * 2008-12-01 2010-06-03 Garret Grajek Method and system for generating digital certificates and certificate signing requests
US8880894B2 (en) * 2008-12-30 2014-11-04 Motorola Mobility Llc Public key infrastructure-based first inserted subscriber identity module subsidy lock
DE102009009310A1 (de) 2009-02-17 2009-10-01 Daimler Ag Kommunikation und Identifizierung zwischen einem Kraftfahrzeugbenutzergerät mit Head Unit und davon entfernt gelegener Vorrichtung
US9432356B1 (en) 2009-05-05 2016-08-30 Amazon Technologies, Inc. Host identity bootstrapping
US20100325424A1 (en) * 2009-06-19 2010-12-23 Etchegoyen Craig S System and Method for Secured Communications
US8495359B2 (en) * 2009-06-22 2013-07-23 NetAuthority System and method for securing an electronic communication
US8510806B2 (en) * 2009-10-22 2013-08-13 Sap Ag System and method of controlling access to information in a virtual computing environment
US8280966B2 (en) * 2009-10-22 2012-10-02 Sap Ag System and method of controlling access to information in a virtual computing environment
EP2524471B1 (en) * 2010-01-12 2015-03-11 Visa International Service Association Anytime validation for verification tokens
JP5552870B2 (ja) * 2010-04-01 2014-07-16 ソニー株式会社 メモリ装置、ホスト装置、およびメモリシステム
US8473734B2 (en) 2010-06-30 2013-06-25 Juniper Networks, Inc. Multi-service VPN network client for mobile device having dynamic failover
US8474035B2 (en) * 2010-06-30 2013-06-25 Juniper Networks, Inc. VPN network client for mobile device having dynamically constructed display for native access to web mail
US8127350B2 (en) * 2010-06-30 2012-02-28 Juniper Networks, Inc. Multi-service VPN network client for mobile device
US8458787B2 (en) * 2010-06-30 2013-06-04 Juniper Networks, Inc. VPN network client for mobile device having dynamically translated user home page
US10142292B2 (en) 2010-06-30 2018-11-27 Pulse Secure Llc Dual-mode multi-service VPN network client for mobile device
US8549617B2 (en) * 2010-06-30 2013-10-01 Juniper Networks, Inc. Multi-service VPN network client for mobile device having integrated acceleration
US8464336B2 (en) 2010-06-30 2013-06-11 Juniper Networks, Inc. VPN network client for mobile device having fast reconnect
DE102010033231B4 (de) * 2010-08-03 2013-08-22 Siemens Aktiengesellschaft Verfahren und Vorrichtung zur manipulationssicheren Bereitstellung eines Schlüssel-Zertifikates
DE102010033232A1 (de) 2010-08-03 2012-02-09 Siemens Aktiengesellschaft Verfahren und Vorrichtung zum Bereitstellen eines Einmalpasswortes
WO2012027634A1 (en) 2010-08-27 2012-03-01 Trilliant Networkd, Inc. System and method for interference free operation of co-located tranceivers
KR101587003B1 (ko) * 2010-09-07 2016-01-20 삼성전자주식회사 무선 통신 시스템에서 와이 파이 연결 확인을 위한 장치 및 방법
US8832428B2 (en) 2010-11-15 2014-09-09 Trilliant Holdings Inc. System and method for securely communicating across multiple networks using a single radio
US8443435B1 (en) 2010-12-02 2013-05-14 Juniper Networks, Inc. VPN resource connectivity in large-scale enterprise networks
US8650620B2 (en) * 2010-12-20 2014-02-11 At&T Intellectual Property I, L.P. Methods and apparatus to control privileges of mobile device applications
US9032204B2 (en) * 2011-01-07 2015-05-12 Mastercard International Incorporated Methods and systems for providing a signed digital certificate in real time
US9083534B2 (en) 2011-01-07 2015-07-14 Mastercard International Incorporated Method and system for propagating a client identity
WO2012097204A1 (en) 2011-01-14 2012-07-19 Trilliant Holdings, Inc. Process, device and system for volt/var optimization
WO2012103072A2 (en) 2011-01-25 2012-08-02 Trilliant Holdings, Inc. Aggregated real-time power outages/restoration reporting (rtpor) in a secure mesh network
EP3429163B1 (en) 2011-02-10 2020-08-19 Trilliant Holdings, Inc. Device and method for facilitating secure communications over a cellular network
WO2012122310A1 (en) 2011-03-08 2012-09-13 Trilliant Networks, Inc. System and method for managing load distribution across a power grid
DE102011015711A1 (de) * 2011-03-31 2012-10-04 Giesecke & Devrient Gmbh Aktualisierung einer Datenträgerapplikation
US8625803B1 (en) * 2011-05-31 2014-01-07 Google Inc. Updating shared keys
EP2716094A4 (en) 2011-06-03 2014-12-03 Blackberry Ltd SYSTEM AND METHOD FOR ACCESSING PRIVATE NETWORKS
US8800007B1 (en) 2011-06-24 2014-08-05 Juniper Networks, Inc. VPN session migration across clients
US9015469B2 (en) * 2011-07-28 2015-04-21 Cloudflare, Inc. Supporting secure sessions in a cloud-based proxy service
US8898459B2 (en) 2011-08-31 2014-11-25 At&T Intellectual Property I, L.P. Policy configuration for mobile device applications
US8918841B2 (en) 2011-08-31 2014-12-23 At&T Intellectual Property I, L.P. Hardware interface access control for mobile applications
US8862767B2 (en) 2011-09-02 2014-10-14 Ebay Inc. Secure elements broker (SEB) for application communication channel selector optimization
US9001787B1 (en) 2011-09-20 2015-04-07 Trilliant Networks Inc. System and method for implementing handover of a hybrid communications module
EP2587715B1 (en) 2011-09-20 2017-01-04 BlackBerry Limited Assisted certificate enrollment
US8842840B2 (en) 2011-11-03 2014-09-23 Arvind Gidwani Demand based encryption and key generation and distribution systems and methods
EP2600274B1 (en) * 2011-12-02 2019-04-24 BlackBerry Limited Method Of Sending A Self-Signed Certificate From A Communication Device
US8949954B2 (en) 2011-12-08 2015-02-03 Uniloc Luxembourg, S.A. Customer notification program alerting customer-specified network address of unauthorized access attempts to customer account
AU2012100460B4 (en) 2012-01-04 2012-11-08 Uniloc Usa, Inc. Method and system implementing zone-restricted behavior of a computing device
AU2012100462B4 (en) 2012-02-06 2012-11-08 Uniloc Usa, Inc. Near field authentication through communication of enclosed content sound waves
US9083703B2 (en) * 2012-03-29 2015-07-14 Lockheed Martin Corporation Mobile enterprise smartcard authentication
CA2838356A1 (en) * 2012-12-31 2014-06-30 Aastra Technologies Limited Remote vpn provisioning of an endpoint
US9432336B2 (en) 2013-02-13 2016-08-30 Blackberry Limited Secure electronic device application connection to an application server
AU2013100355B4 (en) 2013-02-28 2013-10-31 Netauthority, Inc Device-specific content delivery
US8782774B1 (en) 2013-03-07 2014-07-15 Cloudflare, Inc. Secure session capability using public-key cryptography without access to the private key
US9608962B1 (en) 2013-07-09 2017-03-28 Pulse Secure, Llc Application-aware connection for network access client
WO2015018436A1 (en) * 2013-08-06 2015-02-12 Nec Europe Ltd. Method for operating a network and a network
US10348721B2 (en) 2013-10-30 2019-07-09 Hewlett Packard Enterprise Development Lp User authentication
US9736126B2 (en) * 2014-12-04 2017-08-15 International Business Machines Corporation Authenticating mobile applications using policy files
WO2016137517A1 (en) * 2015-02-27 2016-09-01 Hewlett Packard Enterprise Development Lp Manufacturer-signed digital certificate for identifying a client system
CN107079008B (zh) * 2015-03-27 2020-02-21 华为技术有限公司 用户认证方法、装置及系统
FI20155763A (fi) * 2015-10-26 2017-04-27 Online Solutions Oy Menetelmä ja järjestelmä sertifikaatin aitouden varmistamiseksi ssl-protokollaa käyttäen salatussa internet-yhteydessä verkkosivuun
US10149166B2 (en) 2016-01-14 2018-12-04 Blackberry Limited Verifying a certificate
KR101729887B1 (ko) * 2016-01-25 2017-04-25 엔에이치엔엔터테인먼트 주식회사 롱폴링 처리 방법 및 시스템
US10079796B2 (en) 2016-02-05 2018-09-18 Vaultcast, Inc. Method and system for secure private multi-party electronic communication
US10412048B2 (en) 2016-02-08 2019-09-10 Cryptzone North America, Inc. Protecting network devices by a firewall
US10270603B2 (en) * 2016-03-17 2019-04-23 Blackberry Limited Processing certificate validation warnings
US9990222B2 (en) 2016-03-18 2018-06-05 Airwatch Llc Enforcing compliance rules against hypervisor and virtual machine using host management component
US10142323B2 (en) * 2016-04-11 2018-11-27 Huawei Technologies Co., Ltd. Activation of mobile devices in enterprise mobile management
US9560015B1 (en) 2016-04-12 2017-01-31 Cryptzone North America, Inc. Systems and methods for protecting network devices by a firewall
US10749857B2 (en) 2016-09-26 2020-08-18 Expanse, Inc. Network mapping using a fingerprint
US10831838B2 (en) 2017-03-20 2020-11-10 Expanse, Inc. Triggered scanning based on network available data change
US10749692B2 (en) 2017-05-05 2020-08-18 Honeywell International Inc. Automated certificate enrollment for devices in industrial control systems or other systems
US10708139B2 (en) * 2017-08-01 2020-07-07 Servicenow, Inc. Automatic grouping of similar applications and devices on a network map
US11556364B2 (en) * 2018-09-20 2023-01-17 Cable Television Laboratories, Inc. Method and apparatus for enabling public key infrastructure in the generic cloud environment and the network function
US11139985B2 (en) * 2018-12-04 2021-10-05 Journey.ai Receiving information through a zero-knowledge data management network
US11451520B2 (en) * 2019-12-05 2022-09-20 Jonathan Cobb Private network and application provisioning system
US10903990B1 (en) 2020-03-11 2021-01-26 Cloudflare, Inc. Establishing a cryptographic tunnel between a first tunnel endpoint and a second tunnel endpoint where a private key used during the tunnel establishment is remotely located from the second tunnel endpoint
US11546176B2 (en) * 2020-08-26 2023-01-03 Rockwell Collins, Inc. System and method for authentication and cryptographic ignition of remote devices
CN114513314B (zh) * 2022-04-20 2022-07-15 北京亿赛通科技发展有限责任公司 一种数字证书检测方法、装置、电子设备及存储介质
US20240048382A1 (en) * 2022-08-03 2024-02-08 1080 Network, Llc Systems, methods, and computing platforms for executing credential-less network-based communication exchanges
CN115834529B (zh) * 2022-11-23 2023-08-08 浪潮智慧科技有限公司 一种边缘设备远程监测方法及系统
CN116996236B (zh) * 2023-09-27 2023-12-12 北京安华金和科技有限公司 一种数据库操作认证处理方法和装置

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU4785096A (en) 1995-04-27 1996-11-18 Ornella Lo Piano Method and security system for ensuring the security of a de vice
JPH10307799A (ja) 1997-02-28 1998-11-17 Media Konekuto:Kk コンピュータ通信網における身元確認方法及び身元確認装置
US6233618B1 (en) 1998-03-31 2001-05-15 Content Advisor, Inc. Access control of networked data
JP2001036423A (ja) 1999-05-20 2001-02-09 Yamaha Corp 番組再生システム及び番組再生方法
US6772331B1 (en) * 1999-05-21 2004-08-03 International Business Machines Corporation Method and apparatus for exclusively pairing wireless devices
US6853988B1 (en) 1999-09-20 2005-02-08 Security First Corporation Cryptographic server with provisions for interoperability between cryptographic systems
US6802000B1 (en) * 1999-10-28 2004-10-05 Xerox Corporation System for authenticating access to online content referenced in hardcopy documents
US7506034B2 (en) * 2000-03-03 2009-03-17 Intel Corporation Methods and apparatus for off loading content servers through direct file transfer from a storage center to an end-user
US6978364B1 (en) 2000-04-12 2005-12-20 Microsoft Corporation VPN enrollment protocol gateway
US7028333B2 (en) 2000-04-12 2006-04-11 Corente, Inc. Methods and systems for partners in virtual networks
US20020124090A1 (en) 2000-08-18 2002-09-05 Poier Skye M. Method and apparatus for data communication between a plurality of parties
US7103915B2 (en) 2000-11-13 2006-09-05 Digital Doors, Inc. Data security system and method
US7061874B2 (en) 2001-01-26 2006-06-13 Broadcom Corporation Method, system and computer program product for classifying packet flows with a bit mask
HU0101106D0 (en) 2001-03-14 2001-05-28 Tozai Trading Corp Id alsorithm
FI20010596A0 (fi) 2001-03-22 2001-03-22 Ssh Comm Security Oyj Turvallisuusjärjestelmä tietoliikenneverkkoa varten
MXPA04000611A (es) 2001-07-18 2005-02-17 Wireless Generation Inc Sistema y metodo para la evaluacion en la observacion de tiempo real.
US7197550B2 (en) 2001-08-23 2007-03-27 The Directv Group, Inc. Automated configuration of a virtual private network
US20030126085A1 (en) 2001-12-27 2003-07-03 Slamdunk Networks, Inc. Dynamic authentication of electronic messages using a reference to a certificate
US20030140257A1 (en) 2002-01-22 2003-07-24 Petr Peterka Encryption, authentication, and key management for multimedia content pre-encryption
EP1475721B1 (en) * 2002-02-13 2013-04-03 Passlogy Co., Ltd. User authentication method and user authentication system
US7522906B2 (en) 2002-08-09 2009-04-21 Wavelink Corporation Mobile unit configuration management for WLANs

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100810368B1 (ko) * 2006-07-10 2008-03-07 주식회사 한글과 컴퓨터 그룹 내 문서에 대한 유출 방지 및 접근 제어 시스템
KR101311657B1 (ko) * 2009-06-02 2013-09-25 알까뗄 루슨트 원격통신 네트워크를 보호하는 방법 및 그 방법을 구현하는 보안 라우터
KR101642223B1 (ko) * 2015-05-12 2016-07-22 주식회사 수산아이앤티 사설 인증서의 설치를 유도하는 방법
US10091198B2 (en) 2016-11-22 2018-10-02 Korea Internet & Security Agency Rule-based fingerprint generation methods and apparatus

Also Published As

Publication number Publication date
EP1494428B1 (en) 2007-01-17
EP1494428A1 (en) 2005-01-05
DE602004004325D1 (de) 2007-03-08
US7444508B2 (en) 2008-10-28
DE602004004325T2 (de) 2007-11-08
ATE352163T1 (de) 2007-02-15
US20040268142A1 (en) 2004-12-30
ES2281760T3 (es) 2007-10-01

Similar Documents

Publication Publication Date Title
US7444508B2 (en) Method of implementing secure access
US7448080B2 (en) Method for implementing secure corporate communication
Gutzmann Access control and session management in the HTTP environment
US7496755B2 (en) Method and system for a single-sign-on operation providing grid access and network access
US7395341B2 (en) System, method, apparatus and computer program product for facilitating digital communications
US9130758B2 (en) Renewal of expired certificates
US7725589B2 (en) System, method, apparatus, and computer program product for facilitating digital communications
US20090025080A1 (en) System and method for authenticating a client to a server via an ipsec vpn and facilitating a secure migration to ssl vpn remote access
US20100138907A1 (en) Method and system for generating digital certificates and certificate signing requests
US20080059804A1 (en) Method and apparatus for providing trusted single sign-on access to applications and internet-based services
US20080222714A1 (en) System and method for authentication upon network attachment
US20110113240A1 (en) Certificate renewal using enrollment profile framework
KR20040049822A (ko) 네트워크에 접근하기 위한 컴퓨터 시스템 제공시의 레벨증가의 자동화
EP2659645A1 (en) Shared registration system multi-factor authentication tokens
WO2001047232A2 (en) Secure enrollment of a device with a clearinghouse server for internet telephony system
KR20120007520A (ko) 실시간 통신을 위한 사용자-기반 인증
Basu et al. Strengthening Authentication within OpenStack Cloud Computing System through Federation with ADDS System
Szilagyi et al. Radius: A remote authentication dial-in user service
Ma et al. Authentication delegation for subscription-based remote network services
Breggeman et al. A Comparison of Authentication Protocols for Unified Client Applications
Vazquez et al. Securing the Directory
Straub et al. A multipurpose delegation proxy for WWW credentials
Pei et al. Network Working Group P. Hoyer Internet-Draft ActivIdentity Intended status: Standards Track T. Moses Expires: July 31, 2010 Entrust
Protocol draft-hallambaker-omnibroker-02
Stackpole Centralized authentication services

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application