KR20060084431A - 안전 메시지들을 송신하기 위한 시스템 및 방법 - Google Patents

안전 메시지들을 송신하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20060084431A
KR20060084431A KR1020067004762A KR20067004762A KR20060084431A KR 20060084431 A KR20060084431 A KR 20060084431A KR 1020067004762 A KR1020067004762 A KR 1020067004762A KR 20067004762 A KR20067004762 A KR 20067004762A KR 20060084431 A KR20060084431 A KR 20060084431A
Authority
KR
South Korea
Prior art keywords
certificate
messaging application
identified recipient
services
retrieved
Prior art date
Application number
KR1020067004762A
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 KR20060084431A publication Critical patent/KR20060084431A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

전자 메시지들이 송신 시스템으로부터 식별된 수신자로 송신되고 인증서에 포함된 정보를 사용해 인코딩된다. 키 저장 공간이, 수신자와 연관된 인증서가 존재하는지를 판정하기 위해 메시징 애플리케이션에 의해 액세스된다. 인증서가 키 저장 공간에 존재하면, 메시징 애플리케이션은 인증서를 획득하기 위해 하나 이상의 인증서 서비스들에 액세스한다. 검색된 인증서의 검정이 필요할 경우, 메시징 애플리케이션은 인증서 검정 프로세스를 호출한다. 검색된 인증서가 무효일 경우, 메시징 애플리케이션에 의해 하나 이상의 추가 인증서들이 획득된다.

Description

안전 메시지들을 송신하기 위한 시스템 및 방법{SYSTEM AND METHOD FOR SENDING SECURE MESSAGES}
본 발명은 일반적으로 통신 분야에 관한 것으로서, 보다 구체적으로는 안전 메시지들을 송신하기 위한 시스템 및 방법에 관한 것이다.
통신 네트워크를 통해 송신되는 메시지들은 인증, 암호화 및 부인-방지(non-repudiation)와 같은 하나 이상의 암호 서비스들을 제공하기 위해 통상적으로 인코딩된다. 메시지 송출기(message sender)는 수신자(recipient)에 대해 송출기를 인증하고, 전송되는 동안 메시지가 변조되지 않았음을 수신자에게 입증하기 위해, 메시지 수신자로 전송하기 전에 메시지에 디지털적으로 서명할 수 있다. 또한, 송출기는 수신자가 아닌 사람에 의한 메시지의 미허가 뷰잉을 방지하기 위해 메시지를 암호화할 수도 있다. 공지의 시스템들에서는 이러한 암호 서비스들을 지원하기 위해 사용자들에게 인증서들(certificates)이 발행된다. 인증서들은 암호 서비스들을 제공하는 알고리즘에서 사용될 수 있는 정보를 포함한다. 예를 들어, 인증서는 사용자에 대한 공개 키 및 인증서에 대한 유효 기간과 같은 정보를 포함할 수 있다.
송출기가 하나 이상의 수신자들에게 메시지를 송신할 때, Microsoft OutlookTM 또는 Lotus NotesTM와 같은 메시징 애플리케이션은 수신자들을 위한 인증서들을 검색하고 인증서들로부터 추출된 정보를 사용해 각 수신자에 대한 메시지를 인코딩한다. 일례로서, 메시징 애플리케이션은 수신자에 대한 메시지를 암호화하기 위해 인증서로부터 추출된 공개 키 정보를 사용할 수도 있다.
인증서들은 애플리케이션들이 인증서들을 검색하기 위해 액세스하는 키 저장 공간에 저장될 수 있다. 인증서가 키 저장 공간에서 이용 불가능하다면, 송출기는 인증서가 이용 가능해질 때까지 메시지를 송신할 수 없을 수도 있다. 이를 위해, 송출기는 메시지를 송신하기 전에, 필요한 인증서들을 검색해야 한다. 메시지가 이미 구성되었다면, 송출기는 인증서들을 검색하기 위한 2차 애플리케이션을 호출한 다음, 메시지를 송신하기 위한 메시징 애플리케이션으로 복귀해야 한다.
또한, 인증서들은 시간에 따라 무효가 될 수도 있다. 예를 들어, 인증서와 연관된 비밀 키와 같은 소정 정보가 충족되면, 인증서들은 파기될 수도 있다. 또한, 인증서들은 단순히 만료될 수도 있다. 메시지가 무효한 인증서로써 인코딩되었다면, 수신자들은 송출기를 인증할 수 없을 것이고, 또는 메시지가 무효한 공개 키와 연관된 비밀 키로써 서명되었거나 암호화되었다면, 수신자들은 메시지를 복호화할 수 없을 것이다.
여기에서 제공되는 내용들에 따르면, 안전 메시지들을 송신하기 위한 시스템들 및 방법들이 제공된다. 시스템 및 방법의 일례로서, 메시지 송신 시퀀스의 시작시에, 각각의 메시지 수신자를 위한 하나 이상의 인증서들이 키 저장 공간으로부터, 또는 키 저장 공간에서 이용 불가능하다면, 하나 이상의 인증서 서비스들로부터 검색된다. 인증서들이 검정(validation)을 요한다면, 각 인증서의 유효성 상태를 검색하기 위해 하나 이상의 인증서 상태 제공자들이 쿼리된다. 메시지는 연관된 인증서에 존재하는 정보를 사용해, 각각의 메시지 수신자에 대해 인코딩된 다음, 메시지 수신자들로 송신된다.
방법의 다른 일례로서, 메시징 애플리케이션을 포함하며 수신자들과 연관된 보안 인증서들의 저장을 위해 키 저장 공간에 액세스하도록 동작하는 송출기 시스템을 사용해 전자 메시지를 식별된 수신자로 송신하기 위한 방법이 제공되는데, 본 방법은
식별된 수신자와 연관된 보안 인증서가 존재하는지를 판정하기 위해, 메시징 애플리케이션이 키 저장 공간에 액세스하는 단계,
식별된 수신자와 연관된 인증서가 키 저장 공간에 존재한다는 조건에서, 메시지 애플리케이션이 보안 인증서를 검색하고, 메시징 애플리케이션이 검색된 인증서의 검정이 필요한지의 여부를 판정하며, 검정이 필요하다는 조건에서, 메시징 애플리케이션이 인증서 검정 프로세스를 호출하는 단계,
식별된 수신자와 연관된 보안 인증서가 액세스된 키 저장 공간에 존재하지 않는다는 조건에서, 식별된 수신자와 연관된 보안 인증서를 검색하기 위해, 메시징 애플리케이션이 하나 이상의 인증서 서비스들에 액세스하고, 메시징 애플리케이션이 검색된 인증서의 검정이 필요한지의 여부를 판정하며, 검정이 필요하다는 조건에서, 메시징 애플리케이션이 인증서 검정 프로세스를 호출하는 단계,
검색된 인증서가 유효하다는 조건에서, 메시징 애플리케이션이 검색된 인증서에 포함된 정보를 사용해 전자 메시지를 인코딩하는 단계, 및
메시징 애플리케이션이 인코딩된 메시지를 식별된 수신자로 송신하는 단계를 포함한다.
방법의 또 다른 일례로서, 검색된 인증서가 무효라는 조건에서, 메시징 애플리케이션이, 검색된 인증서를 대체하기 위한, 식별된 수신자와 연관된, 추가 인증서를 획득하기 위해 하나 이상의 추가 인증서 서비스들에 액세스하는 단계를 더 포함하는 상기 방법이 제공된다.
방법의 또 다른 일례로서, 송출기 시스템은 메시징 애플리케이션이 실행 중인 무선 휴대용 장치 및 호스트 시스템을 포함하고, 무선 휴대용 장치는 호스트 시스템에 접속하도록 동작될 수 있으며 키 저장 공간을 저장하기 위한 하나 이상의 메모리 장치들을 포함하고, 호스트 시스템은 하나 이상의 인증서 서비스들을 제공하는 상기 방법이 제공된다.
방법의 또 다른 일례로서,
사용자가 메시징 애플리케이션을 사용해 전자 메시지를 구성하는 단계,
메시지 애플리케이션이 사용자로부터, 전자 메시지를 식별된 수신자로 송신하라는 요청을 수용하는 단계, 및
메시징 애플리케이션이, 전자 메시지가 식별된 수신자로 안전하게 송신되어야 한다고 판정하는 단계의 초기 단계들을 더 포함하는 상기 방법이 제공된다.
시스템의 다른 일례로서, 전자 메시지를 식별된 수신자로 송신하기 위한 시스템이 제공되는데, 본 시스템은
식별된 수신자와 연관된 보안 인증서가 키 저장 공간에 존재하는지를 판정하기 위해 액세스될 수 있는 키 저장 공간,
식별된 수신자와 연관된 인증서가 키 저장 공간에 존재한다는 조건에서, 보안 인증서를 검색하고, 검색된 인증서의 검정이 필요한지의 여부를 판정하도록 동작하며, 검정이 필요하다는 조건에서, 인증서 검정 프로세스를 호출하도록 동작하는 메시징 애플리케이션 프로그램 코드,
식별된 수신자와 연관된 보안 인증서가 키 저장 공간에 존재하지 않는다는 조건에서, 식별된 수신자와 연관된 보안 인증서를 검색하기 위해 하나 이상의 인증서 서비스들에 액세스하고, 검색된 인증서의 검정이 필요한지의 여부를 판정하도록 동작하며, 검정이 필요하다는 조건에서, 인증서 검정 프로세스를 호출하도록 동작하는 메시징 애플리케이션 프로그램 코드,
검색된 인증서 상태가 유효하다는 조건에서, 검색된 인증서에 포함된 정보를 사용해 전자 메시지를 인코딩하도록 동작하는 메시징 애플리케이션 프로그램 코드,
인코딩된 메시지를 식별된 수신자로 송신하도록 동작하는 메시징 애플리케이션 프로그램 코드를 포함한다.
시스템의 또 다른 일례로서, 검색된 인증서가 무효라는 조건에서, 검색된 인증서를 대체하기 위한, 식별된 수신자와 연관된, 추가 인증서를 획득하기 위해 하나 이상의 인증서 서비스들에 액세스하도록 동작하는 메시징 애플리케이션 프로그램 코드를 더 포함하는 상기 시스템이 제공된다.
시스템의 또 다른 일례로서, 메시징 애플리케이션 프로그램 코드는
사용자가 전자 메시지를 구성하도록 동작하는 코드,
사용자로부터, 전자 메시지를 식별된 수신자로 송신하기 위한 요청을 수용하도록 동작하는 코드, 및
전자 메시지가 식별된 수신자로 안전하게 송신되어야 한다고 판정하도록 동작하는 코드를 더 포함하는 상기 시스템이 제공된다.
여기에서 제공되는 내용들에 따르면, 식별된 수신자로 송신될 전자 메시지에 대해 유효한 인증서들을 획득하기 위한 컴퓨팅 장치 프로그램 제품이 제공되는데, 프로그램 제품은 컴퓨팅 장치 프로그램 제품 매체상에 구현된 메시징 애플리케이션 프로그램 코드를 포함하고, 메시징 애플리케이션 프로그램 코드는
식별된 수신자와 연관된 보안 인증서가 키 저장 공간에 존재하는지를 판정하도록 동작하는 코드,
식별된 수신자와 연관된 인증서가 키 저장 공간에 존재한다는 조건에서, 보안 인증서를 검색하고, 검색된 인증서의 검정이 필요한지의 여부를 판정하도록 동작하며, 검정이 필요하다는 조건에서, 인증서 검정 프로세스를 호출하도록 동작하는 코드, 및
식별된 수신자와 연관된 보안 인증서가 키 저장 공간에 존재하지 않는다는 조건에서, 식별된 수신자와 연관된 보안 인증서를 검색하기 위해 하나 이상의 인증서 서비스들에 액세스하고, 검색된 인증서의 검정이 필요한지의 여부를 판정하도록 동작하며, 검정이 필요하다는 조건에서, 인증서 검정 프로세스를 호출하도록 동작하는 코드를 포함한다.
여기에서 제공되는 내용들에 따르면, 키 저장 공간을 저장하기 위한 메모리를 포함하는 휴대용 무선 장치로서, 무선 휴대용 장치로부터 식별된 수신자로 전자 메시지를 송신하기 위한 메시징 애플리케이션을 포함하는 휴대용 무선 장치가 제공되는데, 메시징 애플리케이션은
식별된 수신자와 연관된 보안 인증서가 키 저장 공간에 존재하는지를 판정하도록 동작하는 코드,
식별된 수신자와 연관된 인증서가 키 저장 공간에 존재한다는 조건에서, 보안 인증서를 검색하고, 검색된 인증서의 검정이 필요한지의 여부를 판정하며, 검정이 필요하다는 조건에서, 인증서 검정 프로세스를 호출하도록 동작하는 코드, 및
식별된 수신자와 연관된 보안 인증서가 키 저장 공간에 존재하지 않는다는 조건에서, 식별된 수신자와 연관된 보안 인증서를 검색하기 위해 하나 이상의 인증서 서비스들에 액세스하고, 검색된 인증서의 검정이 필요한지의 여부를 판정하도록 동작하며, 검정이 필요하다는 조건에서, 인증서 검정 프로세스를 호출하도록 동작하는 코드,
검색된 인증서 상태가 유효하다는 조건에서, 검색된 인증서에 포함된 정보를 사용해 전자 메시지를 인코딩하도록 동작하는 코드, 및
인코딩된 메시지를 식별된 수신자로 송신하도록 동작하는 코드를 포함한다.
알 수 있는 바와 같이, 본 발명은 상이한 다른 실시예들에 이용될 수 있으며, 본 발명의 몇가지 세부 사항들은 본 발명의 정신을 벗어나지 않으면서, 다양한 관점들에서 변경될 수 있다. 따라서, 다음에서 기술되는 바람직한 실시예들의 도면들 및 설명은 사실상 한정이 아닌 예시로서 간주되어야 한다.
도 1은 무선 통신 장치가 사용될 수 있는 예시적 통신 시스템의 개요이다.
도 2는 다수의 네트워크들 및 다수의 모바일 통신 장치들을 포함하는 추가적 일례의 통신 시스템의 블록도이다.
도 3은 사용자가 안전 메시지를 하나 이상의 수신자들로 송신하고자 하는 통상적 시나리오를 도시한다.
도 4는 안전 메시지들을 송신하기 위한 시스템 및 방법의 바람직한 실시예를 도시한다.
도 5는 무선 모바일 통신 장치의 개략도이다.
도 1은 무선 통신 장치가 사용될 수 있는 예시적 통신 시스템의 개요이다. 당업자라면, 수 백개의 상이한 토폴로지들이 존재할 수 있다는 것을 알 수 있겠지만, 도 1에 나타낸 시스템은 본 애플리케이션에서 설명되는 인코딩 메시지 프로세싱 시스템들 및 방법들의 연산을 설명하는데 도움이 된다. 또한, 다수의 메시지 송출기들 및 수신자들이 존재할 수도 있다. 도 1에 나타낸 간단한 시스템은 단지 예시적 목적을 위한 것이며, 대체로 보안이 사용되지 않는 가장 일반적인 인터넷 이-메일 환경을 나타낼 수도 있다.
도 1은 이-메일 송출기(10), 인터넷(20), 메시지 서버 시스템(40), 무선 게이트웨이(85), 무선 인프라스트럭처(90), 무선 네트워크(105) 및 모바일 통신 장치(100)를 나타낸다.
이-메일 송출기 시스템(10)은 예를 들어, 시스템(10)의 사용자가 그에 대한 어카운트(account)를 가지고 있는 회사내에 위치하는 ISP(Internet Service Provider)에 접속되고, 어쩌면 LAN(local area network)에 접속되어, 인터넷(20)에 접속되거나, AOL(America Online)과 같은 대형 ASP(application service provider)를 통해 인터넷(20)에 접속될 수도 있다. 이-메일 전송들은 대부분 도 1에 도시된 바와 같은 인터넷-접속형 구성들을 통해 실현되지만, 당업자들이라면, 도 1에 나타낸 시스템이 인터넷에 접속되는 대신에 WAN(wide area network)에 접속될 수도 있다.
메시지 서버(40)는 예를 들어, 회사 방화벽내의 네트워크 컴퓨터, ISP 또는 ASP 시스템내의 컴퓨터 등에 구현될 수 있으며, 인터넷(20)을 통한 이-메일 교환의 메인-인터페이스로서 동작한다. 다른 메시징 시스템들은 메시지 서버 시스템(40)을 요하지 않을 수도 있지만, 이-메일을 수신하며 어쩌면 송신하도록 구성된 모바일 장치(100)는 통상적으로 메시지 서버상의 어카운트와 연관될 것이다. 아마도 가장 일반적인 2개의 메시지 서버들이 Microsoft ExchangeTM 및 Lotus DominoTM일 것이다. 이러한 제품들은 대개, 메일을 라우팅하고 전달하는 인터넷 메일 라우터들과 함께 사용된다. 이러한 중간 컴포넌트들은 도 1에 도시되어 있지 않은데, 후술되는 안전 메시지 프로세싱에서 이들이 직접적인 역할을 수행하지는 않기 때문이다. 서버(40)와 같은 메시지 서버들은 통상적으로 단순한 이-메일 송수신 이상으로 확장하는데, 이들은 캘린더들, 할 일들(to-do lists), 태스크 리스트들, 이-메일 및 매뉴얼 같은 데이터를 위한 소정의 데이터베이스 포맷들을 가진 동적 데이터베이스 저장 엔진들도 포함한다.
무선 게이트웨이(85) 및 인프라스트럭처(90)는 인터넷(20)과 무선 네트워크(105)간에 링크를 제공한다. 무선 인프라스트럭처(90)는 소정 사용자의 위치를 확인하기에 가장 적합한 네트워크를 판정하고 그들이 나라들 또는 네트워크들 사이에서 로밍함에 따라 사용자를 추적한다. 그 다음, 메시지가 무선 전송을 통해 모바일 장치(100)로 전달되는데, 통상적으로, 무선 주파수(RF)에서, 무선 네트워크(105)의 기지국으로부터 모바일 장치(100)로 전달된다. 특정 네트워크(105)는 사실상, 그를 통해 모바일 통신 장치와 메시지들이 교환될 수 있는 임의의 무선 네트워크일 수 있다.
도 1에 나타낸 바와 같이, 구성된 이-메일 메시지(15)는 이-메일 송출기(10)에 의해 인터넷(20)상의 어딘가로 송신된다. 이 메시지(15)는 통상적으로, 전적으로 일반 문자이며(fully in tne clear), 기존의 SMTP(Simple Mail Transfer Protocol), RFC822 헤더들 및 MIME(Multipurpose Internet Mail Extension) 바디 부분들을 사용해 메일 메시지의 포맷을 정의한다. 이러한 기술들은 당업자들에게 널리 공지되어 있다. 메시지(15)는 메시지 서버(40)에 도달하고 통상적으로 메시지 저장 공간에 저장된다. 일반적인 메시징 시스템들은 소위 "풀(pull)" 메시지 액세 스 방식을 지원하는데, 이 경우, 모바일 장치(100)는 저장된 메시지들이 메시지 서버에 의해 모바일 장치(100)로 전달될 것을 요청해야 한다. 일부 시스템들은 모바일 장치(100)와 연관된 특정한 이-메일 어드레스를 사용해 어드레싱되는 메시지들의 자동 라우팅을 제공한다. 다음에서 부연되는 바람직한 실시예에서, 모바일 장치(100)의 사용자에게 속하는 홈 컴퓨터 또는 오피스 컴퓨터와 같은 호스트 시스템과 연관된 메시지 서버 어카운트로 어드레싱되는 메시지들은 메시지들이 수신됨에 따라, 메시지 서버(40)로부터 모바일 장치(100)로 방향 변경(redirection)된다.
모바일 장치(100)로의 메시지 전달을 제어하는 특정 메커니즘에 관계없이, 메시지(15) 또는 어쩌면 그것의 변환되거나 재포맷된 버전은 무선 게이트웨이(85)로 송신된다. 무선 인프라스트럭처(90)는 무선 네트워크(105)로의 일련의 접속들을 포함한다. 이러한 접속들은 인터넷 전체에 걸쳐 사용되는 TCP/IP 프로토콜을 사용하는 ISDN(Integrated Services Digital Network), Frame Relay 또는 T1 접속들일 수 있다. 여기에서 사용되는 바와 같이, "무선 네트워크"라는 용어는 상이한 3가지 유형의 네트워크들: (1) 데이터-중심의 무선 네트워크들, (2) 음성-중심의 무선 네트워크들 및 (3) 동일한 물리적 기지국들을 통해 음성과 데이터 통신 모두를 지원할 수 있는 듀얼-모드 네트워크들(dual-mode networks)을 포함하는 것이다. 조합형 듀얼-모드 네트워크들로는 (1) CDMA(Code Division Multiple Access) 네트워크들, (2) GSM(Groupe Special Mobile 또는 Global System for Mobile Communications) 및 GPRS(General Packet Radio Service) 네트워크들, 및 (3) EDGE(Enhanced Data-rates for Global Evolution) 및 UMTS(Universal Mobile Telecommunications Systems) 같은 미래의 3G(third-generation) 네트워크들을 들 수 있지만, 이에 한정되는 것은 아니다. 데이터-중심 네트워크의 좀더 오래된 예들로는 MobitexTM Radio Network 및 DataTACTM Radio Network를 들 수 있다. 음성-중심 네트워크의 좀더 오래된 예들로는 GSM 및 TDMA 시스템들 같은 PCS(Personal Communication Systems) 네트워크들을 들 수 있다.
도 2는 다수의 네트워크들 및 다수의 모바일 통신 장치들을 포함하는 추가적 일례의 통신 시스템의 블록도이다. 도 2의 시스템은 본질적으로 도 1의 시스템과 유사하지만, 호스트 시스템(30), 방향 변경 프로그램(45), 모바일 장치 크래들(65), 무선 VPN(virtual private network) 라우터(75), 추가 무선 네트워크(110) 및 다수의 모바일 통신 장치들(100)을 포함한다. 도 1과 관련하여 상술된 바와 같이, 도 2는 샘플 네트워크 토폴로지의 개요를 표현한다. 여기에서 설명되는 인코딩 메시지 프로세싱 시스템들 및 방법들이 다수의 상이한 토폴로지들을 가진 네트워크들에 적용될 수도 있지만, 도 2의 네트워크는 앞서 간략하게 언급된 자동적 이-메일 방향 변경 시스템을 이해하는데 도움이 된다.
중앙 호스트 시스템(30)은 통상적으로 회사의 사무실 또는 다른 LAN이겠지만, 메일 메시지들이 교환되는 홈 오피스 컴퓨터 또는 다른 사설 시스템일 수도 있다. 호스트 시스템(30)내에는 호스트 시스템 방화벽내의 소정 컴퓨터에서 실행 중이며, 호스트 시스템이 인터넷(20)과 이-메일을 교환하기 위한 메인 인터페이스로서 동작하는 메시지 서버(40)가 존재한다. 도 2의 시스템에서, 방향 변경 프로그램 (45)은 데이터 항목들의 서버(40)로부터 모바일 통신 장치(100)로의 방향 변경을 가능하게 한다. 방향 변경 프로그램(45)이 용이한 표현을 위해 메시지 서버(40)와 동일한 머신상에 상주하는 것으로 표시되어 있기는 하지만, 방향 변경 프로그램(45)이 메시지 서버상에 존재해야 할 필요는 없다. 방향 변경 프로그램(45)과 메시지 서버(40)는 정보의 모바일 장치들(100)로의 푸싱(pushing)을 허용하기 위해 협력하고 상호 동작하도록 설계된다. 이러한 설치에서, 방향 변경 프로그램(45)은 특정 사용자에 대한 기밀 및 비-기밀의 회사 정보를 취하고 회사의 방화벽을 통해 그것을 모바일 장치들(100)로 방향 변경한다. 방향 변경 소프트웨어(45)에 대한 좀더 상세한 설명은 여기에 참조로써 포함되어 있는 2001년 4월 17일에 "System and Method for Pushing Information From A Host System To A Mobile Data Communication Device Having A Shared Electronic Address"라는 명칭으로 즉시 출원(instant application)의 양수인에게 허가된 공동 소유의 미국특허 제 6,219,694호 ("'694 특허")에서 찾아볼 수 있다. 이러한 푸시 기술은 모든 정보를 무선에 적합한 인코딩, 압축 및 암호화 기술을 사용해 모바일 장치로 전달함으로써, 보안 방화벽을 호스트 시스템(30)과 연관된 각각의 모바일 장치(100)를 포함하도록 효과적으로 확장한다.
도 2에 나타낸 바와 같이, 정보를 모바일 장치(100)로 전달하기 위한 다수의 다른 경로들이 존재할 수 있다. 정보를 모바일 장치(100)로 로드하기 위한 일 방법은 지정된 포트(50)를 통해 장치 크래들(65)을 사용하는 것이다. 이 방법은 호스트 시스템(30) 또는 시스템(30)내의 컴퓨터(35)로써 모바일 장치(100)를 초기화할 때 흔히 수행되는 벌크 정보 업데이트들(bulk information updates)에 유용한 경향이 있다. 데이터 교환을 위한 여타의 주된 방법은 무선 네트워크들을 사용해 정보를 전달하는 전파에 의한 것이다. 도 2에 나타낸 바와 같이, 이것은 무선 VPN 라우터(75)를 통해 또는 상술된 바와 같이, 무선 게이트웨이(85) 및 무선 인프라스트럭처(90)로의 통상적인 인터넷 접속(95)을 통해 실현될 수 있다. 무선 VPN 라우터(75)의 개념은 무선 업계의 새로운 개념이고, 모바일 장치(100)로의 VPN 접속이 특정한 무선 네트워크(110)를 통해 직접적으로 확립될 수 있다는 것을 함축한다. 무선 VPN 라우터(75)를 사용할 가능성은 최근에 와서야 유효화 되었으며 새로운 IPV6(Internet Protocol(IP) Version 6)가 IP-기반 무선 네트워크들로 도달할 때 사용될 수 있다. 이러한 새로운 프로토콜은 매 모바일 장치(100)에 전용하기에 충분한 IP 어드레스들을 제공할 것이므로 언제든 모바일 장치(100)에 정보를 푸시하는 것을 가능하게 한다. 이러한 무선 VPN 라우터(75)를 사용하는 주된 이점은 그것이 상용의 VPN 컴포넌트일 수 있으므로, 별도의 무선 게이트웨이(85) 및 무선 인프라스트럭처(90)가 사용될 것을 필요로 하지 않으리라는 점이다. VPN 접속은 메시지들을 모바일 장치(100)로 직접적으로 전달하기 위한 TCP(Transmission Control Protocol)/IP 또는 UDP(User Datagram Protocol)/IP 접속인 것이 바람직할 것이다. 무선 VPN(75)이 이용될 수 없다면, 상술된 인터넷(20)으로의 링크(95)가 이용 가능한 가장 보편적 접속 메커니즘이다.
도 2의 자동적 방향 변경 시스템에서, 이-메일 송출기(10)를 떠나는 구성된 이-메일 메시지(15)는 메시지 서버(40)에 도달하고 방향 변경 프로그램(45)에 의해 모바일 장치(100)로 방향 변경된다. 이러한 방향 변경이 발생할 때, 메시지(15)는 80에서 지시되는 바와 같이, 재-포장된 다음, 어쩌면 사적인 압축 및 암호화 알고리즘이 원래 메시지(15)에 적용될 수도 있다. 이런 방법으로는 모바일 장치(100)에서 판독되는 메시지들은 메시지들이 방화벽내의 35와 같은 데스크탑 워크스테이션에서 판독될 때보다 신뢰가 떨어진다. 방향 변경 프로그램(45)과 모바일 장치(100) 사이에서 교환되는 모든 메시지들은 이러한 메시지 재실장(repackaging) 기술을 사용하는 것이 바람직하다. 이러한 외부 포장(outer envelope)의 다른 목표는 송출기와 수신자의 어드레스를 제외한 원래 메시지의 어드레싱 정보를 유지하는 것이다. 이것은 응답 메시지들이 적절한 수신지에 도달할 수 있게 할 뿐만 아니라 "from" 필드가 모바일 사용자의 데스크탑 어드레스를 반영할 수 있게 한다. 모바일 장치(100)로부터의 사용자 이-메일 어드레스를 사용하는 것으로 인해, 수신 메시지가 모바일 장치(100)가 아니라 사용자의 데스크탑 시스템(35)으로부터 기인하는 것처럼 표시될 수 있다.
모바일 장치(100)로의 포트(50) 및 크래들(65) 접속을 다시 참조하면, 이러한 접속 경로는 다수 항목들의 한번만의 데이터 교환을 가능하게 하기 위한 다수 이점들을 제공한다. PDA들(personal digital assistants)과 동기화의 당업자들의 경우, 이 링크를 통해 교환되는 가장 일반적인 데이터는 PIM(Personal Information Management) 데이터(55)이다. 처음으로 교환될 때, 이 데이터는 본질적으로 양이 많고 부피가 크며, 데이터가 진행 중에 사용될 수 있는 모바일 장치(100)로 로드되기 위해 큰 대역폭을 요한다. 이러한 직렬 링크는 S/MIME 또는 PGP 특정 개인 키와 같은 개인 보안 키(111), 사용자의 인증서(Cert) 및 그들의 CRL들(Certificate Revocation Lists)(60)을 설정하는 것을 포함하여, 다른 목적들을 위해서도 사용될 수 있다. 개인 키는 데스크탑(35)과 모바일 장치(100)가 모든 메일에 액세스하기 위한 하나의 인성(personality) 및 한가지 방법을 공유하도록, 교환되는 것이 바람직하다. Cert 및 CRL들은 S/MIME, PGP 및 다른 공개 키 보안 방법들을 위해 장치에 의해 요구되는 다량의 데이터를 표현하기 때문에, 통상적으로 이러한 링크를 통해 교환된다.
도 3은 사용자가 안전 메시지를 하나 이상의 수신자들로 송신하고자 하는 통상적 시나리오를 도시한다. 메시지를 구성하고 그것을 하나 이상의 수신자들로 어드레싱한 후, 사용자는 사용자에 의해 사용되는 메시징 애플리케이션에 의해 제공되는 Send 옵션을 선택하는 것에 의해 메시지를 송신하고자 한다. 사용자는 예를 들어, 메시지들을 항상 안전하게 송신하도록 메시징 애플리케이션을 구성하는 것에 의해, 메시지가 안전하게 송신되어야 할 것을 지시할 수 있다. 메시지가 안전하게 송신되면, 메시징 애플리케이션은 수신자들 각각과 연관된 인증서들(Cert들)을 위해 키 저장 공간을 점검한다. Cert가 이용될 수 없다면, 메시징 애플리케이션은 사용자에게, 필요한 Cert가 이용 불가능하며 메시지가 안전하게 수신자들로 송신될 수 없다는 것을 통지한다. 그 다음, 사용자는 비안전 메시지를 송신하거나 메시지를 송신하기 전에 필요한 Cert들을 검색하고자 할 것이다. 키 저장 공간에서 Cert들이 입수될 수 있다면, 메시지는 사용자들의 선호들에 따라 인코딩된 다음 수신자들로 전송될 수 있다. 그러나, Cert들 중 하나 이상이 무효라면, 수신자들은 메시 지를 복호화할 수 없을 것이고 그에 따라 암호화된 메시지에 포함되어 있는 송출기의 식별 정보를 인증할 수 없을텐데, 메시지가 무효한 Cert를 사용해 인코딩되었기 때문이다.
도 4는 안전 메시지들을 송신하기 위한 시스템 및 방법의 바람직한 실시예를 도시한다. 사용자는 메시징 애플리케이션을 사용해 하나 이상의 수신자들로 송신하기 위한 메시지를 구성한다. 그 다음, 사용자는 메시지 송신 시퀀스를 개시하기 위해 메시징 애플리케이션에 의해 제공되는 Send 옵션을 선택한다. 다양한 메시징 애플리케이션들은 메시징 애플리케이션에 의해 제공되는 명령 메뉴상의 이용 가능한 옵션을 통하는 것과 같이, 다양한 방법들로 Send 옵션을 제공한다.
사용자가 메시지가 안전하게 송신되어야 할 것을 지시하면, 메시징 애플리케이션은 수신자들 각각과 연관된 Cert들을 검색하도록 진행한다. 사용자가 메시지가 안전하게 송신되어야 할 것을 지시할 수 있는 다수 방법들이 존재한다. 사용자는 메시지 구성 동안 메시지가 안전하게 송신되어야 할 것을 특정할 수도 있다. 다른 방법으로, 사용자는 메시징 애플리케이션으로부터 송신되는 메시지들이 항상 안전하게 송신되어야 한다고 지시하거나, 소정 수신자들로 어드레싱되는 메시지들은 항상 안전하게 송신되어야 한다고 지시할 수도 있다. 다른 방법으로, 사용자와 연관된 IT 부문(IT department)이 메시징 애플리케이션에 대한 보안 정책을 강제함으로써, 메시지들이 항상 안전하게 송신될 수도 있다. 이러한 보안 정책들은 통상적으로, 메시징 애플리케이션이 상주할 수 있는 모바일 장치(10)와 같은 장치들로 주기적으로 다운로드된다.
필요한 Cert들은 메시징 애플리케이션이 그에 대한 액세스를 가지고 있는 키 저장 공간에서 발견될 수 있다. Cert가 키 저장 공간에 존재하지 않으면, 메시징 애플리케이션은 메시지를 인코딩하기 전에 필요한 Cert들을 검색하도록 진행한다. Cert들을 검색하기 위해, 메시징 애플리케이션은 Cert들을 요청하는 애플리케이션들에 Cert들을 제공하는 하나 이상의 Cert 서비스들을 쿼리할 수 있다. 일례로서, 메시징 애플리케이션이 그에 대한 액세스를 가지고 있는 네트워크에 대해 제공되는 지정된 인증서 서버가 존재할 수도 있다. 인증서 서버는 사용자와 연관된 IT 부문에 의해 조작되거나 이러한 Cert 서비스들을 제공하는 제3자에 의해 조작될 수 있다. 메시징 애플리케이션이 액세스할 수 있는 Cert 서비스들의 리스트는 사용자에 의해 또는 다른 방법으로, 사용자와 연관된 IT 부문에 의해 제공되는 보안 정책을 통해 구성될 수 있다. Cert 서비스들의 리스트는 선호도의 순서로 정렬될 수 있는데, 일부 Cert 서비스들이 다른 것들보다 좀더 신뢰할 수 있기 때문이다. 필요한 Cert가 Cert 서비스들 중 하나에서 입수될 수 있다면, 메시징 애플리케이션에 의해 또는 다른 방법으로, 메시징 애플리케이션을 대신해 Cert들을 검색하는 애플리케이션에 의해 Cert가 검색된다. 복수개 매칭 Cert들이 검색되면, 메시지는 그들 중 하나를 각각 사용해 인코딩된다.
일단 Cert 서비스들로부터 필요한 Cert들이 검색되고 나면, 또는 Cert들이 이미 키 저장 공간에 존재한다면, Cert들은 유효성을 위해 점검되어야 할 수도 있다. Cert의 유효성은 Cert와 연관된 개인 키가 소정 방법으로 충족되었거나 Cert가 단순히 만료된 경우와 같은 여러 원인들로 인해 시간에 따라 달라질 수 있다. 메시 지 애플리케이션이, Cert들이 일정 시간 동안 검정되지 않았다고 판정하면, Cert들은 검정되어야 할 것이다. 예를 들어, 보안 정책은 Cert 상태가 보안 정책에 의해 설정되는 주기로써 주기적으로 점검될 것을 요구할 수 있다. Cert가 특정된 기간내에 검정되지 않았다면, Cert는 "효력이 상실된 것"으로 간주되고, Cert를 사용하기 전에 유효성이 판정되어야 한다. 통상적으로, Cert의 유효성은 CRL을 통해 또는 메시징 애플리케이션이 액세스할 수 있는 Cert 상태 제공자를 통해 점검될 수 있다. 일부 경우들에서는 Cert 상태 제공자가, Cert를 검색하는데 사용되는 Cert 서비스와 동일할 수도 있다. 필요한 Cert들이 무효라면, Cert에 존재하는 정보를 사용해 어떠한 인코딩을 수행하기 전에, 유효한 Cert가 검색되어야 한다. 이 경우, 메시징 애플리케이션은 상술된 바와 같이 Cert들을 검색하고자 한다. Cert가 검색될 수 없다면, 사용자에게는 Cert들의 검색을 시도하기 위한 옵션이 제시된다.
일단 필요한 Cert들이 검색되고 검정되고 나면, 메시징 애플리케이션은 수신자의 공개 키와 같은 Cert들에서의 정보를 사용해 메시지를 인코딩하도록 진행한다. 알 수 있는 바와 같이, 메시징 애플리케이션은 상술된 프로세스의 단계들을 수행하도록 구성되어 있는 애플리케이션을 호출할 수도 있다. Cert를 찾을 수 없거나 검색된 Cert들을 검정하기 위한 모든 시도들이 실패하면, 사용자에게는 다른 수단을 사용해 유효한 Cert를 찾아내도록 수동적으로 개입할 것이 요구될 수 있다.
여기에서 개시되는 시스템들 및 방법들은 단지 일례로써 제시되는 것이며 본 발명의 범위를 한정하기 위한 것은 아니다. 상술된 시스템들 및 방법들의 다른 변형들이 당업자들에게는 명백할 것이며 그 또한 본 발명의 범위내인 것으로 간주된 다. 예를 들어, 여기에서 설명되는 프로세싱의 단계들 및 단계들의 순서는 변형되거나, 변경되거나, 그리고/또는 보완되어 여전히 소정 성과를 실현할 수도 있다.
다른 일례로서, 여기에서 개시되는 시스템들 및 방법들은 도 5에 도시된 무선 모바일 통신 장치와 같은 다수의 상이한 컴퓨터들 및 장치들과 함께 사용될 수도 있다. 도 5를 참조하면, 모바일 장치(100)는 듀얼-모드 모바일 장치이고 송수신기(311), 마이크로프로세서(338), 디스플레이(322), 비-휘발성 메모리(324), RAM(random access memory;326), 하나 이상의 보조 I/O 장치들(328), 직렬 포트(330), 스피커(334), 마이크로폰(336), 단거리 무선 통신 서브-시스템(340), 및 다른 장치 서브-시스템들(342)을 포함한다.
송수신기(311)는 수신기(312), 송신기(314), 안테나들(316 및 318), 하나 이상의 로컬 오실레이터(313), 및 DSP(digital signal processor;320)를 포함한다. 안테나들(316 및 318)은 다수-소자 안테나의 안테나 소자들일 수 있으며, 매입형 안테나들인 것이 바람직하다. 그러나, 여기에서 설명되는 시스템들 및 방법들은 결코 특정 유형의 안테나로 또는 심지어 무선 통신 장치들로 한정되지 않는다.
모바일 장치(100)는 음성 및 데이터 통신 기능들을 갖춘 양방향 통신 장치인 것이 바람직하다. 따라서, 예를 들어, 모바일 장치(100)는 아날로그 또는 디지털 셀룰러 네트워크들 중 하나와 같은 음성 네트워크를 통해 통신할 수 있으며, 데이터 네트워크를 통해 통신할 수도 있다. 음성 및 데이터 네트워크들은 도 5에 통신탑(319)으로써 도시되어 있다. 이러한 음성 및 데이터 네트워크들은 기지국들, 네트워크 컨트롤러들 등과 같은 별도의 인프라스트럭처를 사용하는 별도의 통신 네트 워크들일 수 있거나, 이들이 하나의 무선 네트워크로 통합될 수도 있다.
송수신기(311)는 네트워크(319)와 통신하는데 사용되고, 수신기(312), 송신기(314), 하나 이상의 로컬 오실레이터들(313) 및 DSP(320)를 포함한다. DSP(320)는 송수신기들(316 및 318)과 신호들을 송수신하는데 사용되고, 수신기(312) 및 송신기(314)에 제어 정보도 제공한다. 음성 및 데이터 통신이 단일 주파수 또는 주파수들의 아주-인접한 세트들에서 발생한다면, 수신기(312) 및 송신기(314)와 함께 하나의 로컬 오실레이터(313)가 사용될 수 있다. 다른 방법으로, 예를 들어, 음성 통신 대 데이터 통신을 위해 상이한 주파수들이 이용된다면, 복수개의 로컬 오실레이터들(313)이 사용되어 음성 및 데이터 네트워크들(319)에 대응되는 복수개 주파수들을 발생시킬 수 있다. 음성 및 데이터 정보 모두를 포함하는 정보가 DSP(320)와 마이크로프로세서(338)간의 링크를 통해 송수신기(311)로 그리고 송수신기(311)로부터 전달된다.
주파수 대역, 컴포넌트 선택, 전력 레벨 등과 같은 송수신기(311)의 세부적인 설계는 모바일 장치(100)가 동작할 통신 네트워크(319)에 의존할 것이다. 예를 들어, 북미 시장에서 동작될 모바일 장치는 Mobitex 또는 DataTAC 모바일 데이터 통신 네트워크들, AMPS, TDMA, CDMA, PCS 등과 같은 다양한 음성 통신 네트워크들 중 하나에서 동작하도록 설계된 송수신기(311)를 포함할 수 있는 반면, 유럽에서 사용될 모바일 장치(100)는 GPRS 데이터 통신 네트워크 및 GSM 음성 통신 네트워크에서 동작하도록 구성될 수 있다. 별도의 그리고 통합된, 데이터 및 음성 네트워크들의 다른 유형들이 모바일 장치(100)에 이용될 수도 있다.
네트워크 또는 네트워크들(319)의 유형에 따라, 모바일 장치(100)를 위한 액세스 요구 사항들도 달라질 수 있다. 예를 들어, Mobitex 및 DataTAC 데이터 네트워크들에서, 모바일 장치들은 각각의 모바일 장치와 연관된 고유 식별 번호를 사용해 네트워크에 등록된다. 그러나, GPRS 데이터 네트워크들에서는 네트워크 액세스가 모바일 장치의 가입자 또는 사용자와 연관된다. GPRS 장치는 통상적으로, 모바일 장치가 GPRS 네트워크에서 동작하기 위해 요구되는 "SIM(subscriber identity module)"을 필요로 한다. 로컬 또는 비-네트워크 통신 펑크션들은 (만약 존재한다면), SIM 장치 없이도, 동작 가능하지만, 모바일 장치는 '911' 긴급 전화와 같은 법적으로 필요한 조작들 이외에, 데이터 네트워크(319)를 통한 통신을 수반하는 어떠한 펑크션들도 수행할 수 없을 것이다.
필요한 네트워크 등록 또는 활성화 절차들이 완결된 후, 모바일 장치(100)는 네트워크들(319)을 통해, 음성 및 데이터 신호들을 포함하는 통신 신호들을 송수신할 수 있다. 안테나(316)에 의해 통신 네트워크(319)로부터 수신되는 신호들은 신호 증폭, 주파수 하향 변환, 필터링, 채널 선택 등을 제공하며 아날로그-디지털 변환을 제공할 수도 있는 수신기(312)로 라우팅된다. 수신된 신호의 아날로그-디지털 변환은 DSP(320)를 사용해 수행될 디지털 복조 및 디코딩과 같은 좀더 복잡한 통신 펑크션들을 가능하게 한다. 유사한 방식으로, 네트워크(319)로 전송될 신호들은 예를 들어, DSP(320)에 의한 변조 및 인코딩을 포함하여, 프로세싱된 다음, 디지털-아날로그 변환, 주파수 상향 변환, 필터링, 증폭, 및 안테나(318)를 통한 통신 네트워크(319)로의 전송을 위해 송신기(314)로 제공된다.
통신 신호들을 프로세싱하는 이외에, DSP(320)는 송수신기 제어도 제공한다. 예를 들어, 수신기(312) 및 송신기(314)의 통신 신호들에 적용되는 이득 레벨들은 DSP(320)에 구현된 자동적 이득 제어 알고리즘들을 통해 적응적으로 제어될 수 있다. 송수신기(311)의 좀더 정교한 제어를 제공하기 위해, DSP(320)에 다른 송수신기 제어 알고리즘들이 구현될 수도 있다.
마이크로프로세서(338)가 모바일 장치(100)의 전반적인 동작을 관리하고 제어하는 것이 바람직스럽다. 여기에서는 마이크로프로세서들 또는 마이크로컨트롤러들의 다수 유형들이 사용되거나, 다른 방법으로, 단일 DSP(320)가 마이크로프로세서(338)의 펑크션들을 수행하는데 사용될 수 있다. 최소한 데이터 및 음성 통신들을 포함하는 저-레벨 통신 펑크션들이 송수신기(311)의 DSP(320)를 통해 수행된다. 음성 통신 애플리케이션(324A) 및 데이터 통신 애플리케이션(324B)과 같은 다른 고-레벨 통신 애플리케이션들은 마이크로프로세서(338)에 의한 실행을 위해 비-휘발성 메모리(324)에 저장될 수 있다. 예를 들어, 음성 통신 모듈(324A)은 모바일 장치(100)와 복수개의 다른 음성 또는 듀얼-모드 장치들 사이에서 네트워크(319)를 통해 음성 호들을 송수신하도록 동작할 수 있는 고-레벨의 사용자 인터페이스를 제공할 수 있다. 마찬가지로, 데이터 통신 모듈(324B)은 모바일 장치(100)와 복수개의 다른 데이터 장치들 사이에서 네트워크(319)를 통해, 이-메일 메시지들, 파일들, 오거나이저(organizer) 정보, 단문 메시지들 등과 같은 데이터를 송수신하도록 동작할 수 있는 고-레벨의 사용자 인터페이스를 제공할 수 있다. 또한, 마이크로프로세서(338)는 디스플레이(322), RAM(326), 보조 I/O 서브시스템들(328), 직렬 포 트(330), 키보드(332), 스피커(334), 마이크로폰(336), 단거리 통신 서브시스템(340) 및 일반적으로 342로서 지시되는 여타의 장치 서브시스템들과 같은 다른 장치 서브시스템들과도 상호 동작한다.
도 5에 나타낸 서브시스템들 중 일부는 통신-관련 펑크션들을 수행하는 한편, 다른 서브시스템들은 "상주" 또는 온-디바이스 펑크션들을 제공할 수 있다. 명백하게, 키보드(332) 및 디스플레이(322)와 같은 일부 서브시스템들은 데이터 통신 네트워크를 통한 전송을 위해 텍스트 메시지를 입력하는 것과 같은 통신-관련 펑크션들과 계산기 또는 태스크 리스트와 같은 장치-상주 펑크션들 또는 다른 PDA형 펑크션들 모두에 대해 사용될 수 있다.
마이크로프로세서(338)에 의해 사용되는 오퍼레이팅 시스템 소프트웨어는 비-휘발성 메모리(324)와 같은 영구 저장 장치에 저장되는 것이 바람직하다. 비-휘발성 메모리(324)는 예를 들어, 플래시 메모리 컴포넌트로서 또는 배터리 백업 RAM으로서 구현될 수 있다. 모바일 장치(310)의 저-레벨 펑크션들을 제어하는 오퍼레이팅 시스템 이외에, 비-휘발성 메모리(324)는 음성 통신 모듈(324A), 데이터 통신 모듈(324B), 및 복수개의 다른 펑크션들을 수행하기 위한 복수개의 다른 동작 모듈들(324N)을 포함하여, 마이크로프로세서(338)(및/또는 DSP(320))에 의해 실행될 수 있는 복수개 소프트웨어 모듈들(324A-324N)을 포함한다. 이러한 모듈들은 마이크로프로세서(338)에 의해 실행되고 사용자와 모바일 장치(100) 사이에 고-레벨 인터페이스를 제공한다. 이러한 인터페이스는 통상적으로 디스플레이(324)를 통해 제공되는 그래픽 컴포넌트 및 보조 I/O(328), 키보드(332), 스피커(334), 및 마이크로폰 (336)을 통해 제공되는 입/출력 컴포넌트를 포함한다. 오퍼레이팅 시스템, 특정한 장치 애플리케이션들이나 모듈들, 또는 그것의 일부분들은 좀더 빠른 연산을 위해, RAM(326)과 같은 휘발성 저장 공간으로 임시적으로 로드될 수 있다. 또한, 수신된 통신 신호들도, 플래시 메모리(324)와 같은 영구 저장 공간에 위치하는 파일 시스템에 영구적으로 기입되기 전에, RAM(326)에 임시적으로 저장될 수 있다.
모바일 장치(100)로 로드될 수 있는 예시적 애플리케이션 모듈(324N)은 캘린더 이벤트들, 약속들, 및 태스크 항목들과 같은 PDA 기능을 제공하는 PIM(personal information manager) 애플리케이션이다. 이 모듈(324N)은 전화 호들, 음성 메일들 등을 관리하기 위해 음성 통신 모듈(324A)과도 상호 동작할 수 있으며, 이-메일 통신들 및 다른 데이터 전송들을 관리하기 위해 데이터 통신 모듈과도 상호 동작할 수 있다. 다른 방법으로, 음성 통신 모듈(324A) 및 데이터 통신 모듈(324B)의 기능 모두가 PIM 모듈로 통합될 수도 있다.
또한, 비-휘발성 메모리(324)는 PIM 데이터 항목들의 장치상으로의 저장을 용이하게 하기 위해 파일 시스템을 제공하는 것이 바람직하다. PIM 애플리케이션은 단독으로 또는 음성 및 데이터 통신 모듈들(324A, 324B)과 함께, 무선 네트워크들(319)을 통해 데이터 항목들을 송수신하는 능력을 포함하는 것이 바람직하다. PIM 데이터 항목들은 무선 네트워크들(319)을 통해 호스트 컴퓨터 시스템에 저장된 또는 호스트 컴퓨터 시스템과 연관된 데이터 항목들의 대응되는 세트로써 심리스하게 통합되고, 동기화되고, 업데이트됨으로써, 특정 사용자와 연관된 데이터 항목들에 대한 미러 시스템(mirroed system)을 생성하는 것이 바람직하다.
적어도 부분적으로 디코딩된 데이터 항목들 뿐만 아니라 완전하게 디코딩된 데이터 항목들을 표현하는 컨텍스트 오브젝트들은 모바일 장치(100)의 RAM(326)과 같은 휘발성, 비-영구 저장 공간에 저장되는 것이 바람직하다. 예를 들어, 저장 간격들이 비교적 짧아, 정보가 저장되자마자 메모리로부터 제거될 경우에는 이러한 정보가 비-휘발성 메모리(324)에 저장될 수도 있다. 그러나, 모바일 장치(100)가 전원 차단될 때 정보가 메모리로부터 삭제된다는 것을 보장하기 위해서는 이러한 정보의 RAM(326) 또는 다른 휘발성, 비-영구 저장 공간에서의 저장이 바람직하다. 이것은 예를 들어, 모바일 장치(100)로부터 메모리 칩을 제거하는 것에 의해, 인가되지 않은 사람이 저장되어 있는 디코딩된 또는 부분적으로 디코딩된 어떤 정보를 획득하는 것을 방지한다.
모바일 장치(100)는 모바일 장치(100)의 직렬 포트(330)를 컴퓨터 시스템 또는 장치의 직렬 포트에 커플링하는 인터페이스 크래들에 장치(100)를 배치하는 것에 의해, 호스트 시스템과 수동적으로 동기화될 수 있다. 또한, 직렬 포트(330)는 사용자가 외부 장치 또는 소프트웨어 애플리케이션을 통해 선호들을 설정하거나 설치를 위해 다른 애플리케이션 모듈들(324N)을 다운로드하는 것을 가능하게 하는데 사용될 수도 있다. 이러한 유선형 다운로드 경로는 암호화 키를 장치로 로드하는데 사용될 수도 있는데, 이것은 무선 네트워크(319)를 통해 암호화 정보를 교환하는 것보다 좀더 안전한 방법이다. 직렬 포트(330) 이외에 또는 직렬 포트(330) 대신에, 다른 유선형 다운로드 경로들을 위한 인터페이스들이 모바일 장치(100)에 제공될 수 있다. 예를 들어, USB 포트는 유사하게 장비된 퍼스널 컴퓨터로의 인터페이 스를 제공할 것이다.
추가적인 애플리케이션 모듈들(324N)은 네트워크(319)를 통해, 보조 I/O 서브시스템(328)을 통해, 직렬 포트(330)를 통해, 단거리 통신 서브시스템(340)을 통해, 또는 임의의 다른 적합한 서브시스템(324)을 통해 모바일 장치(100)로 로드되고, 사용자에 의해 비-휘발성 메모리(324) 또는 RAM(326)에 설치될 수 있다. 애플리케이션 설치에서의 이러한 호환성은 모바일 장치(100)의 기능을 증대시켜 향상된 온-디바이스 펑크션들, 통신-관련 펑크션들, 또는 그 모두를 제공할 수 있다. 예를 들어, 안전한 통신 애플리케이션들은 모바일 장치(100)를 사용해 전자 상거래 펑크션들 및 여타의 이러한 금융 트랜잭션들이 수행되는 것을 가능하게 할 수 있다.
모바일 장치(100)가 데이터 통신 모드에서 동작 중일 경우, 텍스트 메시지 또는 웹 페이지 다운로드와 같은 수신 신호는 송수신기 모듈(311)에 의해 프로세싱되어 마이크로프로세서(338)로 제공되는데, 마이크로프로세서(338)는 디스플레이(322)로의 또는 다른 방법으로, 보조 I/O 장치(328)로의 궁극적인 출력을 위해 상술된 바와 같이 다수 스테이지들에서 수신 신호를 추가적으로 프로세싱하는 것이 바람직하다. 모바일 장치(100)의 사용자는 공지의 DVORAK 스타일과 같은 다른 스타일의 완전한 영숫자 키보드들이 사용될 수도 있지만, QWERTY 스타일로 레이아웃된 완전한 영숫자 키보드인 것이 바람직한 키보드(332)를 사용해, 이-메일 메시지들과 같은 데이터 항목들을 구성할 수도 있다. 모바일 장치(100)로의 사용자 입력은 썸힐(thumbwheel) 입력 장치, 터치패드, 다양한 스위치들, 로커(rocker) 입력 스위치 등을 포함할 수 있는 복수개 보조 I/O 장치들(328)로써 더 향상된다. 그 다음, 사 용자에 의해 입력되는 구성된 데이터 항목들은 송수신기 모듈(311)을 경유하여 통신 네트워크들(319)을 통해 전송될 수 있다.
모바일 장치(100)가 음성 통신 모드에서 동작 중일 경우, 모바일 장치의 전반적인 동작은 수신된 신호들이 스피커(334)로 출력되는 것이 바람직하고 전송을 위한 음성 신호들이 마이크로폰(336)에 의해 발생된다는 것을 제외하면, 데이터 모드와 실질적으로 유사하다. 음성 메시지 레코딩 서브시스템과 같은 다른 음성 또는 오디오 I/O 서브시스템들이 모바일 장치(100)에 구현될 수도 있다. 음성 또는 오디오 신호 출력은 주로 스피커(334)를 통해 실현되는 것이 바람직하지만, 호출 당사자의 식별 정보에 대한 지시, 음성 호의 기간, 또는 다른 음성 호 관련 정보를 제공하기 위해 디스플레이(322)가 사용될 수도 있다. 예를 들어, 마이크로프로세서(338)는 음성 통신 모듈 및 오퍼레이팅 시스템 소프트웨어와 함께, 입력 중인 음성 호의 호출자 식별 정보를 검출하고 그것을 디스플레이(322)에 표시할 수 있다.
또한, 모바일 장치(100)에는 단거리 통신 서브시스템(340)도 포함된다. 서브시스템(340)은 예를 들어, 유사하게-인에이블된 시스템들 및 장치들과의 통신을 제공하기 위해, 적외선 장치 및 관련 회로들과 컴포넌트들 또는 BluetoothTM 모듈 또는 802.11 모듈과 같은 단거리 RF 통신 모듈을 포함할 수도 있다. 당업자들이라면, "Bluetooth" 및 "802.11"이, 각각, IEEE(Institute of Electrical and Electronics Engineers)로부터 입수 가능한, 무선 퍼스널 영역 네트워크들 및 무선 로컬 영역 네트워크들에 관한 스펙들의 세트들을 의미함을 알 수 있다.
시스템들과 방법들의 데이터는 하나 이상의 데이터 저장 공간들에 저장될 수 있다. 데이터 저장 공간들은 RAM, ROM, 플래시 메모리, 프로그래밍 데이터 구조들, 프로그래밍 변수들 등과 같은 상이한 다수 유형들의 저장 장치들 및 프로그래밍 구성체들일 수 있다. 데이터 구조들은 데이터를 데이터베이스들: 프로그램들, 메모리, 또는 컴퓨터 프로그램에 의한 사용을 위한 다른 컴퓨터-판독 가능 매체로 조직하고 저장하는데 사용하기 위한 포맷들을 설명할 수 있다.
시스템들 및 방법들은 프로세서에 의한 실행에 사용되어 여기에서 설명되는 방법들의 연산들을 수행하고 시스템들을 구현하기 위한 명령어들을 포함하는 컴퓨터 저장 메커니즘들(예를 들어, CD-ROM, 디스켓, RAM, 플래시 메모리, 컴퓨터의 하드 드라이브 등)을 포함하는 상이한 다수 유형들의 컴퓨터-판독 가능 매체들을 통해 제공될 수도 있다.
여기에서 설명되는 컴퓨터 컴포넌트들, 소프트웨어 모듈들, 펑크션들 및 데이터 구조들은 그들의 연산들을 위해 필요한 데이터 흐름을 허용하기 위해 서로 직접적으로 또는 간접적으로 접속될 수 있다. 또한, 모듈 또는 프로세서는 소프트웨어 연산을 수행하는 코드의 유닛을 포함하지만 이에 한정되는 것은 아니며, 예를 들어, 코드의 서브루틴 유닛으로서, 코드의 소프트웨어 펑크션 유닛으로서, (객체-지향 패러다임에서의) 객체로서, 애플릿(applet)으로서, 컴퓨터 스크립트 언어로, 또는 다른 유형의 컴퓨터 코드로서 구현될 수 있다.

Claims (31)

  1. 송출기 시스템을 사용해, 전자 메시지를 식별된 수신자로 송신하는 방법으로서, 상기 송출기 시스템은 메시징 애플리케이션을 포함하고, 상기 송출기 시스템은 수신자들과 연관된 보안 인증서들의 저장을 위해 키 저장 공간에 액세스하도록 동작하며, 상기 방법은,
    a. 상기 식별된 수신자와 연관된 보안 인증서가 존재하는지를 판정하기 위해 상기 메시징 애플리케이션이 상기 키 저장 공간에 액세스하는 단계,
    b. 상기 식별된 수신자와 연관된 인증서가 상기 키 저장 공간에 존재한다는 조건에서, 상기 메시징 애플리케이션이 상기 보안 인증서를 검색하고, 상기 메시징 애플리케이션이 상기 검색된 인증서의 검정이 필요한지의 여부를 판정하며, 상기 검정이 필요하다는 조건에서, 상기 메시징 애플리케이션이 인증서 검정 프로세스를 호출하는 단계,
    c. 상기 식별된 수신자와 연관된 보안 인증서가 상기 액세스된 키 저장 공간에 존재하지 않는다는 조건에서, 상기 메시징 애플리케이션이 상기 식별된 수신자와 연관된 보안 인증서를 검색하기 위해 하나 이상의 인증서 서비스들(certificate services)에 액세스하고, 상기 메시징 애플리케이션이 상기 검색된 인증서의 검정이 필요한지의 여부를 판정하며, 상기 검정이 필요하다는 조건에서, 상기 메시징 애플리케이션이 인증서 검정 프로세스를 호출하는 단계,
    d. 상기 검색된 인증서가 유효하다는 조건에서, 상기 메시징 애플리케이션이 상기 검색된 인증서에 포함된 정보를 사용해 상기 전자 메시지를 인코딩하는 단계, 및
    e. 상기 메시징 애플리케이션이 상기 인코딩된 메시지를 상기 식별된 수신자로 송신하는 단계를 포함하는 전자 메시지의 송신 방법.
  2. 제1항에 있어서, 상기 검색된 인증서가 무효라는 조건에서, 상기 메시징 애플리케이션이, 상기 검색된 인증서를 대체하기 위한, 상기 식별된 수신자와 연관된, 추가 인증서를 획득하기 위해 하나 이상의 추가 인증서 서비스들에 액세스하는 단계를 더 포함하는 전자 메시지의 송신 방법.
  3. 제1항에 있어서, 상기 메시징 애플리케이션이 하나 이상의 인증서 서비스들에 액세스하는 단계는 상기 메시징 애플리케이션에 액세스 가능한 네트워크상의 인증서 서버에 액세스하는 단계를 포함하는 전자 메시지의 송신 방법.
  4. 제1항에 있어서, 상기 메시징 애플리케이션이 하나 이상의 인증서 서비스들에 액세스하는 단계는 상기 메시징 애플리케이션이 인증 서비스들(serification services)의 리스트에 액세스하는 단계 및 상기 리스트로부터 액세스하기 위한 인증서 서비스들을 선택하는 단계를 포함하는 것인 전자 메시지의 송신 방법.
  5. 제4항에 있어서, 상기 인증 서비스들의 리스트는 정렬되고, 상기 리스트로부 터의 상기 인증서 서비스들의 선택은 상기 정렬에 의해 판정되는 것인 전자 메시지의 송신 방법.
  6. 제1항에 있어서, 상기 인증서를 검색하기 위해 하나 이상의 인증서 서비스들에 액세스하는 단계는 상기 송출기 시스템으로부터 호출될 수 있는 인증서 검색 애플리케이션을 호출하는 단계를 포함하는 것인 전자 메시지의 송신 방법.
  7. 제1항에 있어서, 상기 호출된 인증서 검정 프로세스는 인증서 폐기 리스트(certificate revocation list)에 액세스하는 단계 및/또는 상기 검색된 인증서를 검정하기 위해 인증서 상태 제공자에 액세스하는 단계를 포함하는 것인 전자 메시지의 송신 방법.
  8. 제1항에 있어서, 상기 검색된 인증서는 선행 검정을 지시하기 위한 시간 값을 포함하고,
    상기 검색된 인증서의 검정이 필요한지의 여부를 판정하는 단계는 보안 정책에서 정의된 시간을 상기 시간 값과 비교하는 단계를 포함하는 것인 전자 메시지의 송신 방법.
  9. 제1항에 있어서, 상기 검색된 인증서는 공개 키를 포함하고,
    상기 전자 메시지를 인코딩하는 단계는 상기 공개 키를 사용해 상기 전자 메 시지를 암호화하는 단계를 포함하는 것인 전자 메시지의 송신 방법.
  10. 제1항에 있어서, 상기 송출기 시스템은 무선 휴대용 장치 및 호스트 시스템을 포함하고,
    상기 메시징 애플리케이션은 상기 무선 휴대용 장치에서 실행 중이며,
    상기 무선 휴대용 장치는 상기 호스트 시스템에 접속하도록 동작될 수 있고, 상기 키 저장 공간을 저장하기 위한 하나 이상의 메모리 장치들을 포함하며,
    상기 호스트 시스템은 하나 이상의 인증서 서비스들을 제공하는 것인 전자 메시지의 송신 방법.
  11. 제10항에 있어서,
    i. 사용자가 상기 메시징 애플리케이션을 사용해 상기 전자 메시지를 구성하는 단계,
    ii. 상기 메시징 애플리케이션이, 상기 사용자로부터, 상기 전자 메시지를 상기 식별된 수신자로 송신하기 위한 요청을 수용하는 단계, 및
    iii. 상기 메시징 애플리케이션이, 상기 전자 메시지가 상기 식별된 수신자로 안전하게 송신되어야 한다고 판정하는 단계의 초기 단계들을 더 포함하는 전자 메시지의 송신 방법.
  12. 제11항에 있어서, 상기 메시징 애플리케이션이, 상기 전자 메시지가 상기 식 별된 수신자로 안전하게 송신되어야 한다고 판정하는 단계는 상기 장치에서 구성된 전자 메시지들에 대한 보안 정책을 표현하는 상기 휴대용 무선 장치상의 정보에 액세스하는 단계를 포함하는 것인 전자 메시지의 송신 방법.
  13. 전자 메시지를 식별된 수신자로 송신하기 위한 시스템으로서,
    a. 상기 식별된 수신자와 연관된 보안 인증서가 키 저장 공간에 존재하는지를 판정하기 위해 액세스 가능한 상기 키 저장 공간,
    b. 상기 식별된 수신자와 연관된 인증서가 상기 키 저장 공간에 존재한다는 조건에서, 상기 보안 인증서를 검색하고, 상기 검색된 인증서의 검정이 필요한지의 여부를 판정하며, 상기 검정이 필요하다는 조건에서, 인증서 검정 프로세스를 호출하도록 동작하는 메시징 애플리케이션 프로그램 코드,
    c. 상기 식별된 수신자와 연관된 보안 인증서가 상기 키 저장 공간에 존재하지 않는다는 조건에서, 상기 식별된 수신자와 연관된 보안 인증서를 검색하기 위해 하나 이상의 인증서 서비스들에 액세스하고, 상기 검색된 인증서의 검정이 필요한지의 여부를 판정하도록 동작하며, 상기 검정이 필요하다는 조건에서, 인증서 검정 프로세스를 호출하도록 동작하는 메시징 애플리케이션 프로그램 코드,
    d. 상기 검색된 인증서 상태가 유효하다는 조건에서, 상기 검색된 인증서에 포함된 정보를 사용해 상기 전자 메시지를 인코딩하도록 동작하는 메시징 애플리케이션 프로그램 코드, 및
    e. 상기 인코딩된 메시지를 상기 식별된 수신자로 송신하도록 동작하는 메시 징 애플리케이션 프로그램 코드를 포함하는 전자 메시지의 송신 시스템.
  14. 제13항에 있어서, 상기 검색된 인증서가 무효라는 조건에서, 상기 검색된 인증서를 대체하기 위한, 상기 식별된 수신자와 연관된 추가 인증서를 획득하기 위해 하나 이상의 인증서 서비스들에 액세스하도록 동작하는 메시징 애플리케이션 프로그램 코드를 더 포함하는 전자 메시지의 송신 시스템.
  15. 제13항에 있어서, 상기 하나 이상의 인증서 서비스들에 액세스하도록 동작하는 메시징 애플리케이션 프로그램 코드는 상기 메시징 애플리케이션에 액세스 가능한 네트워크상의 인증서 서버에 액세스하도록 동작하는 코드를 포함하는 것인 전자 메시지의 송신 시스템.
  16. 제13항에 있어서, 상기 식별된 수신자와 연관된 보안 인증서를 검색하기 위해 하나 이상의 인증서 서비스들에 액세스하도록 동작하는 코드는 인증 서비스들의 리스트에 액세스하고 상기 리스트로부터 상기 하나 이상의 인증서 서비스들을 선택하도록 동작하는 코드를 포함하는 것인 전자 메시지의 송신 시스템.
  17. 제16항에 있어서, 상기 인증 서비스들의 리스트는 정렬되고,
    상기 리스트로부터 상기 인증서 서비스들을 선택하도록 동작하는 코드는 상기 정렬에 의해 판정되는 대로 상기 인증서 서비스들을 선택하도록 동작하는 코드 를 포함하는 것인 전자 메시지의 송신 시스템.
  18. 제13항에 있어서, 상기 인증서를 검색하기 위해 상기 하나 이상의 인증서 서비스들에 액세스하도록 동작하는 코드는 인증서 검색 프로세스를 호출하도록 동작하는 코드를 포함하는 것인 전자 메시지의 송신 시스템.
  19. 제13항에 있어서, 상기 검색된 인증서는 선행 검정을 지시하기 위한 시간 값을 포함하고,
    상기 검색된 인증서의 검정이 필요한지의 여부를 판정하기 위한 코드는 보안 정책에서 정의된 시간을 상기 시간 값과 비교하도록 동작하는 코드를 포함하는 것인 전자 메시지의 송신 시스템.
  20. 제13항에 있어서, 상기 검색된 인증서는 공개 키를 포함하고,
    상기 전자 메시지를 인코딩하도록 동작하는 코드는 상기 공개 키를 사용해 상기 전자 메시지를 암호화하도록 동작하는 코드를 포함하는 것인 전자 메시지의 송신 시스템.
  21. 제13항에 있어서, 상기 송출기 시스템은 무선 휴대용 장치 및 호스트 시스템을 포함하고,
    상기 메시징 애플리케이션 프로그램 코드는 상기 무선 휴대용 장치에서 실행 중이며,
    상기 무선 휴대용 장치는 상기 호스트 시스템에 접속하도록 동작될 수 있고, 상기 키 저장 공간을 저장하기 위한 하나 이상의 메모리 장치들을 포함하며,
    상기 호스트 시스템은 하나 이상의 인증서 서비스들을 제공하는 것인 전자 메시지의 송신 시스템.
  22. 제21항에 있어서, 상기 메시징 애플리케이션 프로그램 코드는,
    i. 사용자가 상기 전자 메시지를 구성하도록 동작하는 코드,
    ii. 상기 사용자로부터, 상기 전자 메시지를 상기 식별된 수신자로 송신하기 위한 요청을 수용하도록 동작하는 코드, 및
    iii. 상기 전자 메시지가 상기 식별된 수신자로 안전하게 송신되어야 한다고 판정하도록 동작하는 코드를 더 포함하는 것인 전자 메시지의 송신 시스템.
  23. 제22항에 있어서, 상기 전자 메시지가 상기 식별된 수신자로 안전하게 송신되어야 한다고 판정하도록 동작하는 코드는 상기 장치에서 구성된 전자 메시지들에 대한 보안 정책을 표현하는 상기 휴대용 무선 장치상의 정보에 액세스하도록 동작하는 코드를 포함하는 것인 전자 메시지의 송신 시스템.
  24. 식별된 수신자로 송신될 전자 메시지에 대해 유효한 인증서들을 획득하기 위한 컴퓨팅 장치 프로그램 제품으로서, 상기 프로그램 제품은 컴퓨팅 장치 프로그램 제품 매체상에 구현된 메시징 애플리케이션 프로그램 코드를 포함하고, 상기 메시징 애플리케이션 프로그램 코드는,
    a. 상기 식별된 수신자와 연관된 보안 인증서가 키 저장 공간에 존재하는지를 판정하도록 동작하는 코드,
    b. 상기 식별된 수신자와 연관된 인증서가 상기 키 저장 공간에 존재한다는 조건에서, 상기 보안 인증서를 검색하고, 상기 검색된 인증서의 검정이 필요한지의 여부를 판정하며, 상기 검정이 필요하다는 조건에서, 인증서 검정 프로세스를 호출하도록 동작하는 코드,
    c. 상기 식별된 수신자와 연관된 보안 인증서가 상기 키 저장 공간에 존재하지 않는다는 조건에서, 상기 식별된 수신자와 연관된 보안 인증서를 검색하기 위해 하나 이상의 인증서 서비스들에 액세스하고, 상기 검색된 인증서의 검정이 필요한지의 여부를 판정하도록 동작하며, 상기 검정이 필요하다는 조건에서, 인증서 검정 프로세스를 호출하도록 동작하는 코드를 포함하는 것인 컴퓨팅 장치 프로그램 제품.
  25. 제24항에 있어서, 상기 컴퓨팅 장치 프로그램 코드는,
    상기 검색된 인증서가 무효라는 조건에서, 상기 검색된 인증서를 대체하기 위한, 상기 식별된 수신자와 연관된, 추가 인증서를 획득하기 위해 하나 이상의 인증서 서비스들에 액세스하도록 동작하는 코드를 더 포함하는 것인 컴퓨팅 장치 프로그램 제품.
  26. 제24항에 있어서, 상기 식별된 수신자와 연관된 보안 인증서를 검색하기 위해 하나 이상의 인증서 서비스들에 액세스하도록 동작하는 컴퓨팅 장치 프로그램 코드는 인증 서비스들의 리스트에 액세스하고 상기 리스트로부터 상기 하나 이상의 인증서 서비스들을 선택하도록 동작하는 코드를 포함하는 것인 컴퓨팅 장치 프로그램 제품.
  27. 제24항에 있어서, 상기 인증서를 검색하기 위해 상기 하나 이상의 인증서 서비스들에 액세스하도록 동작하는 컴퓨팅 장치 프로그램 코드는 인증서 검색 프로세스를 호출하도록 동작하는 코드를 포함하는 것인 컴퓨팅 장치 프로그램 제품.
  28. 제24항에 있어서, 상기 검색된 인증서는 공개 키를 포함하고,
    상기 전자 메시지를 인코딩하도록 동작하는 코드는 상기 공개 키를 사용해 상기 전자 메시지를 암호화하도록 동작하는 코드를 포함하는 것인 컴퓨팅 장치 프로그램 제품.
  29. 제24항에 있어서, 상기 컴퓨팅 장치 프로그램 코드는 무선 휴대용 장치에서 실행될 수 있고,
    상기 무선 휴대용 장치는 호스트 시스템에 접속하도록 동작될 수 있으며, 상기 키 저장 공간을 저장하기 위한 하나 이상의 메모리 장치들을 포함하고,
    상기 호스트 시스템은 하나 이상의 인증서 서비스들을 제공하는 것인 컴퓨팅 장치 프로그램 제품.
  30. 제29항에 있어서, 상기 컴퓨팅 장치 프로그램 코드는,
    i. 사용자가 상기 전자 메시지를 구성하도록 동작하는 코드,
    ii. 상기 사용자로부터, 상기 전자 메시지를 상기 식별된 수신자로 송신하기 위한 요청을 수용하도록 동작하는 코드, 및
    iii. 상기 전자 메시지가 상기 식별된 수신자로 안전하게 송신되어야 한다고 판정하도록 동작하는 코드를 더 포함하는 것인 컴퓨팅 장치 프로그램 제품.
  31. 키 저장 공간을 저장하기 위한 메모리 및 전자 메시지를 식별된 수신자로 송신하기 위한 메시징 애플리케이션을 포함하는 휴대용 무선 장치로서, 상기 메시징 애플리케이션은,
    상기 식별된 수신자와 연관된 보안 인증서가 키 저장 공간에 존재하는지를 판정하도록 동작하는 코드,
    상기 식별된 수신자와 연관된 인증서가 상기 키 저장 공간에 존재한다는 조건에서, 상기 보안 인증서를 검색하고, 상기 검색된 인증서의 검정이 필요한지의 여부를 판정하며, 상기 검정이 필요하다는 조건에서, 것인 인증서 검정 프로세스를 호출하도록 동작하는 코드,
    상기 식별된 수신자와 연관된 보안 인증서가 상기 키 저장 공간에 존재하지 않는다는 조건에서, 상기 식별된 수신자와 연관된 보안 인증서를 검색하기 위해 하나 이상의 인증서 서비스들에 액세스하고, 상기 검색된 인증서의 검정이 필요한지의 여부를 판정하도록 동작하며, 상기 검정이 필요하다는 조건에서, 인증서 검정 프로세스를 호출하도록 동작하는 코드,
    상기 검색된 인증서 상태가 유효하다는 조건에서, 상기 검색된 인증서에 포함된 정보를 사용해 상기 전자 메시지를 인코딩하도록 동작하는 코드, 및
    상기 인코딩된 메시지를 상기 식별된 수신자로 송신하도록 동작하는 코드를 포함하는 것인 휴대용 무선 장치.
KR1020067004762A 2004-05-05 2005-01-19 안전 메시지들을 송신하기 위한 시스템 및 방법 KR20060084431A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US56845104P 2004-05-05 2004-05-05
US60/568,451 2004-05-05

Publications (1)

Publication Number Publication Date
KR20060084431A true KR20060084431A (ko) 2006-07-24

Family

ID=35242001

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067004762A KR20060084431A (ko) 2004-05-05 2005-01-19 안전 메시지들을 송신하기 위한 시스템 및 방법

Country Status (10)

Country Link
US (2) US8074066B2 (ko)
EP (1) EP1654828B1 (ko)
JP (1) JP4463815B2 (ko)
KR (1) KR20060084431A (ko)
CN (1) CN1842990A (ko)
AU (1) AU2005238993B2 (ko)
BR (1) BRPI0506169B1 (ko)
CA (1) CA2535371C (ko)
SG (1) SG152298A1 (ko)
WO (1) WO2005107133A1 (ko)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7886144B2 (en) * 2004-10-29 2011-02-08 Research In Motion Limited System and method for retrieving certificates associated with senders of digitally signed messages
US7716139B2 (en) 2004-10-29 2010-05-11 Research In Motion Limited System and method for verifying digital signatures on certificates
US7756932B2 (en) 2005-07-29 2010-07-13 Research In Motion Limited System and method for processing messages being composed by a user
US7797545B2 (en) 2005-09-29 2010-09-14 Research In Motion Limited System and method for registering entities for code signing services
US8340289B2 (en) 2005-09-29 2012-12-25 Research In Motion Limited System and method for providing an indication of randomness quality of random number data generated by a random data service
EP1826695A1 (en) * 2006-02-28 2007-08-29 Microsoft Corporation Secure content descriptions
EP1801720A1 (en) * 2005-12-22 2007-06-27 Microsoft Corporation Authorisation and authentication
US7574479B2 (en) * 2006-01-24 2009-08-11 Novell, Inc. Techniques for attesting to content
EP1853028B1 (en) 2006-05-05 2013-02-27 Research In Motion Limited Method and system for sending secure messages
DE102007046079A1 (de) * 2007-09-26 2009-04-02 Siemens Ag Verfahren zur Herstellung einer sicheren Verbindung von einem Service Techniker zu einer von einem Störfall betroffenen Komponente einer ferndiagnostizierbaren und/oder fernwartbaren Automatisierungs-Umgebung
US20100031028A1 (en) * 2008-07-31 2010-02-04 Research In Motion Limited Systems and methods for selecting a certificate for use with secure messages
WO2011137346A2 (en) * 2010-04-30 2011-11-03 Peer Fusion Llc System and method of delivering confidential electronic files
US10200325B2 (en) 2010-04-30 2019-02-05 Shazzle Llc System and method of delivering confidential electronic files
JP5429880B2 (ja) * 2010-08-10 2014-02-26 Necビッグローブ株式会社 アプリケーション配布システム、アプリケーション配布方法、端末及びプログラム
US8942221B2 (en) * 2011-11-10 2015-01-27 Blackberry Limited Caching network discovery responses in wireless networks
US10205750B2 (en) * 2013-03-13 2019-02-12 Intel Corporation Policy-based secure web boot
US9276944B2 (en) 2013-03-13 2016-03-01 International Business Machines Corporation Generalized certificate use in policy-based secure messaging environments
JP5805144B2 (ja) * 2013-06-19 2015-11-04 ビッグローブ株式会社 携帯端末、ファイル配信システム、ファイル配信方法、およびファイル配信プログラム
JP6207340B2 (ja) * 2013-10-18 2017-10-04 キヤノン株式会社 画像形成装置及びその制御方法、並びにプログラム
US11102192B2 (en) 2018-02-14 2021-08-24 Zixcorp Systems, Inc. Harvesting and distributing a certificate based on a DNS name
US11611473B2 (en) 2014-01-14 2023-03-21 Zixcorp Systems, Inc. Provisioning a service using file distribution technology
US10742717B2 (en) * 2014-01-14 2020-08-11 Zixcorp Systems, Inc. Electronic content delivery with distributed recipient delivery preference
US11436197B2 (en) 2020-07-29 2022-09-06 Zixcorp Systems, Inc. Asynchronous method for provisioning a service using file distribution technology
US10389535B2 (en) * 2017-03-01 2019-08-20 International Business Machines Corporation Using public keys provided by an authentication server to verify digital signatures
US10581595B2 (en) 2017-03-01 2020-03-03 International Business Machines Corporation Generating public/private key pairs to deploy public keys at computing devices to verify digital signatures
US10834071B2 (en) 2018-02-14 2020-11-10 Zixcorp Systems, Inc. Harvesting and distributing a certificate based on a DNS name
US11303458B2 (en) 2018-04-09 2022-04-12 Blackberry Limited Method and system for reduced V2X receiver processing load using network based application layer message processing
CN112398643B (zh) * 2019-08-16 2023-08-18 丁爱民 一种通信数权保护方法及系统

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5606617A (en) * 1994-10-14 1997-02-25 Brands; Stefanus A. Secret-key certificates
US7743248B2 (en) * 1995-01-17 2010-06-22 Eoriginal, Inc. System and method for a remote access service enabling trust and interoperability when retrieving certificate status from multiple certification authority reporting components
US7353396B2 (en) * 1995-10-02 2008-04-01 Corestreet, Ltd. Physical access control
US5774552A (en) * 1995-12-13 1998-06-30 Ncr Corporation Method and apparatus for retrieving X.509 certificates from an X.500 directory
US6233577B1 (en) * 1998-02-17 2001-05-15 Phone.Com, Inc. Centralized certificate management system for two-way interactive communication devices in data networks
US6421781B1 (en) * 1998-04-30 2002-07-16 Openwave Systems Inc. Method and apparatus for maintaining security in a push server
US6760752B1 (en) * 1999-06-28 2004-07-06 Zix Corporation Secure transmission system
US6990578B1 (en) * 1999-10-29 2006-01-24 International Business Machines Corp. Method and apparatus for encrypting electronic messages composed using abbreviated address books
JP2001320356A (ja) * 2000-02-29 2001-11-16 Sony Corp 公開鍵系暗号を使用したデータ通信システムおよびデータ通信システム構築方法
US20020059144A1 (en) * 2000-04-28 2002-05-16 Meffert Gregory J. Secured content delivery system and method
US7290133B1 (en) * 2000-11-17 2007-10-30 Entrust Limited Method and apparatus improving efficiency of end-user certificate validation
JP2002163395A (ja) 2000-11-27 2002-06-07 Hitachi Software Eng Co Ltd 電子証明書有効性確認支援方法とそれを用いる情報処理装置
US7017041B2 (en) * 2000-12-19 2006-03-21 Tricipher, Inc. Secure communications network with user control of authenticated personal information provided to network entities
US20030037261A1 (en) * 2001-03-26 2003-02-20 Ilumin Corporation Secured content delivery system and method
CA2450631C (en) 2001-06-12 2011-09-13 Research In Motion Limited System and method for processing encoded messages for exchange with a mobile data communication device
WO2002101605A2 (en) 2001-06-12 2002-12-19 Research In Motion Limited System and method for compressing secure e-mail for exchange with a mobile data communication device
JP2005520364A (ja) * 2001-07-09 2005-07-07 リナックスプローブ株式会社 デジタル署名された証明書を更新しかつ拡張するシステムおよび方法
US6854057B2 (en) 2001-09-06 2005-02-08 America Online, Inc. Digital certificate proxy
JP2003107994A (ja) 2001-10-02 2003-04-11 Nippon Telegr & Teleph Corp <Ntt> 公開鍵証明証の経路検証装置及び経路検証方法
JP3711931B2 (ja) 2001-12-27 2005-11-02 日本電気株式会社 電子メールシステム、その処理方法及びそのプログラム
JP2003258786A (ja) 2002-02-27 2003-09-12 Nippon Telegr & Teleph Corp <Ntt> 公開鍵証明書検索装置、公開鍵証明書検索方法、コンピュータプログラムおよびコンピュータプログラムを記録した記録媒体
WO2003079627A2 (en) * 2002-03-20 2003-09-25 Research In Motion Limited System and method for supporting multiple certificate status providers on a mobile communication device
JP2004015252A (ja) 2002-06-05 2004-01-15 Nec Corp パーソナルデータベースシステム、携帯電話端末及びそれらに用いるデータ蓄積方法並びにそのプログラム
US7131003B2 (en) * 2003-02-20 2006-10-31 America Online, Inc. Secure instant messaging system
US20040133774A1 (en) * 2003-01-07 2004-07-08 Callas Jonathan D. System and method for dynamic data security operations
ES2301943T3 (es) 2004-04-30 2008-07-01 Research In Motion Limited Dispositivo de comunicacion inalambrico con proteccion por palabra de paso (password) de uso coaccionado y metodo relacionado.
ATE426965T1 (de) * 2004-05-04 2009-04-15 Research In Motion Ltd Anfrage-antwort-system und -verfahren

Also Published As

Publication number Publication date
BRPI0506169B1 (pt) 2018-06-26
EP1654828A1 (en) 2006-05-10
AU2005238993A1 (en) 2005-11-10
EP1654828B1 (en) 2018-09-05
CA2535371C (en) 2011-11-01
CA2535371A1 (en) 2005-11-10
WO2005107133A1 (en) 2005-11-10
BRPI0506169A (pt) 2006-10-31
SG152298A1 (en) 2009-05-29
US20120042161A1 (en) 2012-02-16
EP1654828A4 (en) 2007-05-16
US20050262552A1 (en) 2005-11-24
CN1842990A (zh) 2006-10-04
JP4463815B2 (ja) 2010-05-19
US8074066B2 (en) 2011-12-06
JP2007504723A (ja) 2007-03-01
AU2005238993B2 (en) 2009-04-23

Similar Documents

Publication Publication Date Title
KR20060084431A (ko) 안전 메시지들을 송신하기 위한 시스템 및 방법
US8526618B2 (en) Multiple-stage system and method for processing encoded messages
US8661267B2 (en) System and method for processing encoded messages
US8650258B2 (en) System and method for processing encoded messages
US9628269B2 (en) System and method for secure message key caching in a mobile communication device
US8442234B2 (en) System and method for obtaining certificate status of subkeys
US20100115264A1 (en) System and Method for Processing Encoded Messages for Exchange with a Mobile Data Communication Device
US8781443B2 (en) System and method for handling message receipt notification
CA2564904C (en) System and method for handling certificate revocation lists
WO2005106707A1 (en) System and method for searching secure electronic messages
EP1633094B1 (en) Multiple-stage system and method for processing encoded messages

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
E801 Decision on dismissal of amendment
B601 Maintenance of original decision after re-examination before a trial
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20080108

Effective date: 20080930