KR100690417B1 - 컴퓨터 네트워크 내에서 응용 프로그램 코드와 콘텐트데이터의 분배 제어 - Google Patents

컴퓨터 네트워크 내에서 응용 프로그램 코드와 콘텐트데이터의 분배 제어 Download PDF

Info

Publication number
KR100690417B1
KR100690417B1 KR1020037013301A KR20037013301A KR100690417B1 KR 100690417 B1 KR100690417 B1 KR 100690417B1 KR 1020037013301 A KR1020037013301 A KR 1020037013301A KR 20037013301 A KR20037013301 A KR 20037013301A KR 100690417 B1 KR100690417 B1 KR 100690417B1
Authority
KR
South Korea
Prior art keywords
client
server
embedded
key
message
Prior art date
Application number
KR1020037013301A
Other languages
English (en)
Other versions
KR20030094337A (ko
Inventor
크래프트데이비드
듀베이프라딥쿠마르
홉스티함
카힐제임스
Original Assignee
인터내셔널 비지네스 머신즈 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 인터내셔널 비지네스 머신즈 코포레이션
Publication of KR20030094337A publication Critical patent/KR20030094337A/ko
Application granted granted Critical
Publication of KR100690417B1 publication Critical patent/KR100690417B1/ko

Links

Images

Classifications

    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/102Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measure for e-commerce

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

통신 보안 방법이 제공된다. 클라이언트 장치는 서비스 공급자가 운영하는 서버로부터 응용 프로그램 코드 및/또는 콘텐트 데이터를 다운로드 받도록 구성된다. 클라이언트 개인키, 클라이언트 일련 번호, 및 서버 공개키의 복사본이 클라이언트 내에 내장된다. 클라이언트는 클라이언트 일련 번호를 포함하는 요청을 형성하고, 이 요청을 서버의 공개키를 사용하여 암호화하여 서버에게 다운로드 요청을 전송한다. 서버는 서버의 개인키로써 요청을 해독하고 클라이언트를 인증한다. 수신된 클라이언트 일련 번호는 내장된 클라이언트 개인키에 대응하는 클라이언트 공개키를 검색하는 데 이용된다. 서버는 요청된 정보를 포함하는 자신의 응답을 요청 클라이언트의 클라이언트 공개키를 사용하여 암호화함으로써, 서버로부터 다운로드된 정보는 오직 요청 클라이언트의 개인키로써만 해독된다.
공개키, 개인키, 통신, 보안, 암호화, 해독.

Description

컴퓨터 네트워크 내에서 응용 프로그램 코드와 콘텐트 데이터의 분배 제어{CONTROLLED DISTRIBUTION OF APPLICATION CODE AND CONTENT DATA WITHIN A COMPUTER NETWORK}
H04L 9/00
본 발명은 개선된 데이터 처리 시스템에 관한 것이며, 구체적으로 멀티컴퓨터 데이터 전송에 관한 방법 및 장치에 관한 것이다. 더 구체적으로, 본 발명은 컴퓨터간 보안 통신에 관한 방법 및 장치를 제공한다.
소비자는 많은 독립되고 각각이 특유의 목적을 가지는 전자 장치를 구매하고 사용하는 데 익숙하다. 일반적으로, 각 장치류의 제조는 각 장치의 의도한 목적을 달성하고 많은 경제적 고려와 제조와 의도한 목적사이의 트레이드오프를 고려하여 맞춰지게 된다. 그러므로, 과거에는 많은 전자 장치를 다양하고 상이한 목적에 요구되는 계산 능력이 있는 하나의 장치로 합체하는 것에 대한 진전이 미미했다. 더욱이, 이러한 유형의 합체는 별다른 필요성도 없었다.
예컨대, 과거에, 다른 부류의 장치로부터의 출력을 표출하는 것이 가능한 비디오 디스플레이의 품질은 매우 편차가 컸다. 명백한 역사적 이유, 즉 대부분의 가 정은 텔레비전 세트는 가지고 있으나 컴퓨터 모니터는 그렇지 않았기 때문에 가정용 텔레비전 세트는 게임용 콘솔이 부착될 수 있는 유일한 디스플레이 장치라는 것으로 인하여, 통상적으로 게임 콘솔은 표준형 텔레비전 세트에 부착된다. 가정용 텔레비전 세트는 게임 콘솔에 의해 생성되는 화상이 더 높은 해상도를 가지는 디스플레이 장치에서보다 더 나아 보이지 않았기 때문에 오랜동안 적합한 디스플레이 장치였다. 그 동안, 개인용 컴퓨터와 워크스테이션은 이들이 더 좋은 모니터를 필요로 하고 경제적 고려 측면에서도 정당화되므로 더 놓은 해상도와 화상 품질을 가지는 모니터를 가지게 되었다.
디스플레이 장치가 원래는 의도하지 않은 목적으로 이용될 수 있다 하더라도, 그 결과는 일반적으로 좋지 않다. 예컨대, 웹 페이지가 표준 텔레비전 스크린에서 표출되는 것은 컴퓨터 모니터에서보다, 심지어 소형 컴퓨터 모니터에서보다 웹 브라우징면에서 열악하다.
열악한 시청 품질은 WebTV™ 또는 다른 유사한 제안이 성공하지 못하는 이유를 설명한다. 따라서, 일반적으로, 소비자의 전자 장치가 원래 제조된 바와 다르게 인터페이스되는 능력이 적을 뿐만 아니라, 대부분의 소비자 전자 장치가 그렇게 되도록 이용될 수 있는 기능도 결여하고 있다.
그러나, 기술이 발전하여 대중 시장의 소비자 오락 장치의 계산 요건이 개인용 컴퓨터의 요건을 초과하고 어떤 경우는 개인용 워크스테이션에서 가능한 계산 능력까지도 초월하는 선에 이르렀다. 예컨대, 현재 게임 콘솔에 특화된 그래픽 처리 요건은 개인용 컴퓨터가 요구하거나 제공할 수 있는 선을 넘어선다. 반도체 기 술이 소비자 전자 장치가 경제적으로 많은 요망되는 특성을 가질 수 있는 정도에 이름에 따라, 많은 소비자 전자 장치는 다른 장치의 유사한 기능에 비하여 유사한 정도의 품질을 가지는 기능을 수용할 것이다. 예컨대, 가까운 장래에, 다른 부류의 디스플레이 장치간의 품질 차이는 사라지고 대부분의 그래픽 워크스테이션 디스플레이를 포함한 컴퓨터 모니터의 화상 품질보다 더 높은 해상도를 가지는 고화질 텔레비전(HDTV)의 출현으로 실질적으로 역전될 것이다.
이에 더하여, 게임 콘솔은 개인용 컴퓨터를 능가하는 그래픽 처리 능력을 가질 것이다. 그러므로, 현재 개인용 컴퓨터가 담당하고 있는 용도에 대하여 게임 콘솔과 유사한 장치와 HDTV 수신기의 조합을 이용하려는 소비자의 욕구가 점점 증가한다. 비록 어떤 소비자는 게임 콘솔 유사 장치와 HDTV 품질의 디스플레이의 이점을 얻는 데 있어서 컴퓨터 하드웨어와 컴퓨터 소프트웨어를 대체하질 않길 원하며 종래 소프트웨어에 많은 투자를 하지만, 게임 콘솔 유사 장치의 성능은 다양한 컴퓨터 프로세서의 소프트웨어 에뮬레이션을 허용하고, 그 에뮬레이션은 일반 업무용 응용프로그램을 수행하기에 충분하고도 남을 것이다.
비록 HDTV 수신기가 상대적으로 새로운 것이며 고가이나, 게임 콘솔 유사 장치 및 HDTV 시스템은 모두 더 폭넓게 확산된다면 제조 단계의 규모의 경제로 인한 상당한 가격 이점을 누릴 것이다. 워크스테이션 및 개인용 컴퓨터 시스템의 판매량은 연관된 텔레비전 또는 게임 콘솔로 인하여 축소되고, 그 결과 현저하게 낮은 하드웨어 제조 단가가 예상된다. 더욱 중요한 것은, 게임 콘솔 유사 장치는 상대적으로 저렴하게 제조될 수 있고, 내구성 면도기보다 일회용 면도기 날의 판매가 훨씬 많은 면도기에 대한 판매 모델과 유사한 방식으로 판매될 수 있다. 게임 콘솔 유사 장치의 경우, 콘솔 장치의 판매에 따른 이윤과 손실이 적을 수 있으나, 이윤은 후속의 게임, 콘텐트, 또는 그 외 소프트웨어의 판매시의 높은 마진으로 얻어질 수 있다. 대조적으로, 워크스테이션 또는 개인용 컴퓨터의 제조자는 하드웨어 시스템 및 주변 장치의 판매로부터만 이윤을 얻을 수 있다.
전술한 모든 사항을 고려하면, 많은 산업 전문가에 의해 예상되듯이, 진보된 게임 콘솔 유사 장치는 고품질 디스플레이 장치 및 광대역 네트워크 접속과 함께 종국에는 최근의 셋탑 박스 및 디지털 비디오 리코더를 포함하는 개인용 컴퓨터 및 비디오 카세트 리코더와 같은 많은 전자 장치를 대체할 것이다. 극도로 현실적이고 섬세한 개인 및 멀티 플레이어 비디오 게임에 더하여, 진보된 게임 콘솔 유사 장치는 다양한 종래의 컴퓨터 응용, 예컨대 웹 브라우징, 이메일, 또는 워드 프로세싱이나 더 진보된 응용, 예컨대 영화나 음악 콘텐트의 다운로딩 및 재생, 전자 상거래, 인터넷 기반 전화, 원격 교육 및 기타 응용을 제공할 것이다.
이러한 기술 발전에 더하여, "사용별 지급(pay-per-use)" 사업 모델의 확산이 현저하게 전개되고 있는데, 이는 클라이언트 시스템의 사용자가 응용 프로그램 코드와 영상 및 음성 콘텐트를 필요에 따라 다운로드하고 규정된 제한 사용에 대한 지불을 하는 모델이다. 이 사업 모델은 소프트웨어 응용 프로그램 제공자가 항상 최근 버전의 코드를 채택할 수 있도록 보장해줌으로써, 모든 문제를 소스 코드에서 해결하기 때문에 호환성 문제를 감소시키고 서비스 품질을 개선한다. 부가적으로, 더욱 예측 가능한 수입 흐름이 형성되며 개인들에도 저렴한 단가로 공급 가능하다. 예컨대, 복잡한 업무 소프트웨어 응용 프로그램 수트에 대하여, 개별 사용자는 수트의 특징중 일부를 구매할 수 있고, 현재로서는 이와 대조적으로 단지 일부만이 필요한 경우에도 전체 수트를 구매해야한다. 유사한 주장이 디지털 뮤직 콘텐트에 대해 적용되는데, 소비자는 노래 전체 모음을 구매하기 보다 일부의 노래만을 다운로드 받길 원할 수 있다.
종합하면, 이들 고려 사항은 그래픽 디스플레이로써 HDTV 시스템을 이용하는 많은 수의 고성능의 계산형 오락 장치의 폭넓은 채택과 함께 소비자 전자 장치 시장에 귀결된다. 이들 소비자 시스템은 콘텐트 서버에 광대역 링크를 통해 클라이언트/서버 구성으로서 연결된다. 사용자 인터페이스는 무선 키보드, 마우스, 및/또는 조이스틱과 같은 무선 입력 장치를 이용할 것이며, 무선 전화 핸드셋 및 원격 제어기가 부가되고 종래의 컴퓨터 주변장치 역시 부착될 수 있다. 가장 중요한 것은, 전부는 아닐지라도 대부분의 응용 프로그램 코드 및 콘텐트가 필요시 사용별 지급 또는 가입자 기반의 사업 모델을 이용하여 구매되고 다운로드될 것이 예상된다는 것이다.
이러한 계산 환경에서는, 다운로드되는 응용프로그램 코드 및 콘텐트의 제어를 유지하고 클라이언트 장치와 서버간의 통신 보안을 보장하는 것이 중요한 요건이다. 그러한 콘텐트가 중요한 가치를 가진다면, 사용에 따른 적합한 과금과 함께 특정 클라이언트 시스템이 검증되고 그 다음 요청된 콘텐트를 수신하도록 인가되도록 보장될 필요가 있다. 전자 상거래, 기타 금융 거래, 및 일반 통신의 보안도 보장되어야 한다.
따라서, 콘텐트 제어 메커니즘의 교란 방지와, 코드가 바이러스나 기타 해로운 코드를 포함하지 않는 것을 보장하는 방식으로 다운로드의 진정함을 검증하는 시스템 및 방법은 이로운 것이다. 클라이언트가 서비스 제공자로부터의 소득을 빼돌리는 식의 부적합한 방식, 예컨대 실행 가능 코드 또는 지불 요구되는 음성/영상 콘텐트를 불법으로 복사하는 등으로 다운로드된 콘텐트를 이용하지 않도록 보장하는 것은 특히 중요하다.
본 발명은 클라이언트와 서버간의 안전한 통신을 위한 방법, 시스템, 장치 및 컴퓨터 프로그램 제품을 제공한다. 클라이언트 장치는 응용프로그램 코드 및/또는 콘텐트 데이터를 서비스 공급자에 의하여 운영되는 서버로부터 다운로드하도록 구성된다. 클라이언트 개인키, 고유 클라이언트 일련 번호, 서버 공개키의 복사본이 클라이언트 프로세서 칩에 내장되거나 고정된다. 클라이언트는 클라이언트 일련 번호를 포함하는 요청 메세지를 형성하고, 이 요청을 서버의 공개키로 암호화하여, 다운로드 요청을 서버로 전송한다. 서버는 요청 메세지를 서버의 개인키로 해독하고 클라이언트 장치를 인증한다. 수신된 요청내의 클라이언트 일련 번호는 클라이언트에 내장된 클라이언트 개인키에 대응하는 클라이언트 공개키를 탐색하는 데 이용된다. 요청된 정보를 다운로드하기 전에, 서버는 그 정보를 요청 클라이언트의 클라이언트 공개키로 암호화하고, 이럼으로써 서버로부터 다운로드되는 정보의 해독에는 오직 요청 클라이언트의 프로세서 칩에 내장된 개인키만 이용될 수 있다.
따라서, 본 발명은 반도체 칩의 구성에 대한 방법을 제공하며, 이 방법은, 개인 암호화키를 선택하는 단계와, 공개 암호화키를 선택하는 단계와, 개인 암호화 키 및 공개 암호화키를 반도체 칩의 읽기 전용 메모리에 내장하는 단계를 포함하고, 상기 개인 암호화키와 공개 암호화키는 암호화키쌍 관계에 있지 아니한 방법이다.
바람직하게, 이 방법은 반도체 칩이 클라이언트에서의 인터페이스 처리를 제공한다. 이 방법은 반도체 칩과 연관된 일련 번호를 내장하는 단계를 더 포함한다. 이 방법은 일련 번호와 연관된 공개 암호화키를 데이터베이스에 저장하는 단계를 더 포함한다. 이 방법은 개인 암호화키와 읽기 전용 메모리내의 공개 암호화키가 반도체 칩의 입/출력 단자로는 접근 불가능하게 한다.
본 발명의 제2 면에 따르면, 내장된 개인키를 수용하는 제1 읽기 전용 메모리 구조와, 내장된 공개키를 수용하는 제2 읽기 전용 메모리 구조를 포함하고, 공개 암호화키와 개인 암호화키는 암호화키 쌍 관계에 있지 아니한 것인 제조 물품이 제공된다.
바람직하게는, 위 제조 물품은 반도체 칩이고, 반도체 칩은 클라이언트 측에서 인터페이스 처리를 제공할 수 있다. 바람직하게, 제조 물품은 CPU 칩의 암호화 유닛내에 수용된 제1 읽기 전용 메모리 구조 및 제2 읽기 전용 메모리 구조를 제공한다.
본 발명의 제3면에 따르면, 데이터 처리 시스템의 클라이언트와 서버간의 통신 보안이 제공된다. 그 방법은, 클라이언트에서 클라이언트 메세지를 생성하는 단계와, 클라이언트내의 제조 물품내의 읽기 전용 메모리로부터 서버의 공개키를 추출하는 단계와, 내장된 서버의 공개키를 사용하여 클라이언트 메세지를 암호화하는 단계와, 클라이언트 메세지를 서버로 전송하는 단계를 포함한다.
바람직하게, 이 방법은, 클라이언트 인증 데이터를 추출하는 단계와, 내장된 클라이언트 개인키를 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조로부터 추출하는 단계와, 클라이언트 인증 데이터를 내장된 클라이언트 개인키로써 암호화하는 단계와, 암호화된 클라이언트 인증 데이터를 클라이언트 메세지내에 저장하는 단계를 포함한다.
바람직하게, 이 방법은, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조로부터 내장된 클라이언트 일련 번호를 추출하는 단계와, 상기 내장된 클라이언트 일련 번호의 복사본을 클라이언트 메세지에 저장하는 단계를 더 포함한다.
본 발명의 제4면에 따르면, 데이터 처리 시스템의 클라이언트와 서버간의 통신 보안에 관한 장치가 제공되며, 이 장치는 클라이언트에서 클라이언트 메세지를 생성하는 수단과, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조로부터 내장된 서버의 공개키를 추출하는 수단과, 내장된 서버의 공개키를 사용하여 클라이언트 메세지를 암호화하는 수단과, 클라이언트 메세지를 서버로 전송하는 수단을 포함한다.
바람직하게, 이 장치는, 클라이언트 인증 데이터를 추출하는 수단과, 내장된 클라이언트 개인키를 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조로부터 추출하는 수단과, 클라이언트 인증 데이터를 내장된 클라이언트 개인키로써 암호화하는 수단과, 암호화된 클라이언트 인증 데이터를 클라이언트 메세지내에 저장하는 수단을 더 포함한다.
바람직하게, 이 장치는, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조로부터 내장된 클라이언트 일련 번호를 추출하는 수단과, 상기 내장된 클라이언트 일련 번호의 복사본을 클라이언트 메세지에 저장하는 수단을 더 포함한다.
본 발명의 제5면에 따르면, 클라이언트와 서버간의 통신 보안을 위하여 데이터 처리 시스템에서 이용되는 컴퓨터 판독 가능한 매체내의 컴퓨터 프로그램 제품을 제공하며, 이 컴퓨터 프로그램 제품은 클라이언트에서 클라이언트 메세지를 생성하는 명령어와, 클라이언트내의 제조 물품내의 읽기 전용 메모리로부터 서버의 공개키를 추출하는 명령어와, 내장된 서버의 공개키를 사용하여 클라이언트 메세지를 암호화하는 명령어와, 클라이언트 메세지를 서버로 전송하는 명령어를 포함한다.
바람직하게, 이 컴퓨터 프로그램 제품은, 클라이언트 인증 데이터를 추출하는 명령어와, 내장된 클라이언트 개인키를 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조로부터 추출하는 명령어와, 클라이언트 인증 데이터를 내장된 클라이언트 개인키로써 암호화하는 명령어와, 암호화된 클라이언트 인증 데이터를 클라이언트 메세지내에 저장하는 명령어를 포함한다.
바람직하게, 이 컴퓨터 프로그램 제품은, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조로부터 내장된 클라이언트 일련 번호를 추출하는 명령어와, 상기 내장된 클라이언트 일련 번호의 복사본을 클라이언트 메세지에 저장하는 명령어를 더 포함한다.
본 발명의 제6면에 따르면, 데이터 처리 시스템의 클라이언트와 서버간의 통신 보안이 제공된다. 그 방법은, 서버에서 서버 메세지를 생성하는 단계와, 클라이 언트에 의해 요청된 정보를 추출하는 단계와, 상기 추출된 정보를 상기 서버 메세지에 저장하는 단계와, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조 내에 내장된 클라이언트 개인키에 대응하는 클라이언트 공개키를 추출하는 단계와, 서버 메세지를 클라이언트 공개키로 암호화하는 단계와, 클라이언트로 서버 메세지를 전송하는 단계를 포함한다.
바람직하게, 이 방법은, 서버 인증 데이터를 추출하는 단계와, 서버 개인키를 추출하는 단계와, 서버 인증 데이터를 서버 개인키로써 암호화하는 단계와, 암호화된 서버 인증 데이터를 서버 메세지내에 저장하는 단계를 더 포함한다.
본 발명의 제7면에 따르면, 데이터 처리 시스템의 클라이언트와 서버간의 통신 보안 장치가 제공된다. 그 장치는, 서버에서 서버 메세지를 생성하는 수단과, 클라이언트에 의해 요청된 정보를 추출하는 수단과, 상기 추출된 정보를 상기 서버 메세지에 저장하는 수단과, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조내에 내장된 클라이언트 개인키에 대응하는 클라이언트 공개키를 추출하는 수단과, 서버 메세지를 클라이언트 공개키로 암호화하는 수단과, 클라이언트로 서버 메세지를 전송하는 수단을 포함한다.
바람직하게, 이 장치는, 서버 인증 데이터를 추출하는 수단과, 서버 개인키를 추출하는 수단과, 서버 인증 데이터를 서버 개인키로써 암호화하는 수단과, 암호화된 서버 인증 데이터를 서버 메세지내에 저장하는 수단을 더 포함한다.
본 발명의 제8면에 따르면, 데이터 처리 시스템의 클라이언트와 서버간의 통신 보안을 위한 데이터 처리 시스템에 이용되는 컴퓨터 판독 가능 매체내의 컴퓨터 프로그램 제품이 제공된다. 그 컴퓨터 프로그램 제품은, 서버에서 서버 메세지를 생성하는 명령어와, 클라이언트에 의해 요청된 정보를 추출하는 명령어와, 상기 추출된 정보를 상기 서버 메세지에 저장하는 명령어와, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조내에 내장된 클라이언트 개인키에 대응하는 클라이언트 공개키를 추출하는 명령어와, 서버 메세지를 클라이언트 공개키로 암호화하는 명령어와, 클라이언트로 서버 메세지를 전송하는 명령어를 포함한다.
바람직하게, 이 장치는, 서버 인증 데이터를 추출하는 명령어와, 서버 개인키를 추출하는 명령어와, 서버 인증 데이터를 서버 개인키로써 암호화하는 명령어와, 암호화된 서버 인증 데이터를 서버 메세지내에 저장하는 명령어를 더 포함한다.
본 발명의 제9면에 따르면, 데이터 처리 시스템내의 클라이언트와 서버간의 통신 보안을 위한 방법이 제공되는데, 그 방법은, 클라이언트로부터 클라이언트 메세지를 수신하는 단계와, 서버의 개인키를 추출하는 단계와, 서버의 개인키로써 클라이언트 메세지를 해독하는 단계와, 해독된 클라이언트 메세지로부터 클라이언트 일련 번호를 추출하는 단계와, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조에 내장된 클라이언트 개인키에 대응하고, 추출된 클라이언트 일련 번호와 연관되게 저장된 클라이언트 공개키를 추출하는 단계를 포함한다.
바람직하게, 그 방법은, 클라이언트 메세지로부터 암호화된 클라이언트 인증 데이터를 추출하는 단계와, 추출된 클라이언트 공개키를 사용하여 클라이언트 인증 데이터를 해독하는 단계와, 해독된 클라이언트 인증 데이터를 검증하는 단계를 더 포함한다.
본 발명의 제10면에 따르면, 데이터 처리 시스템내의 클라이언트와 서버간의 통신 보안을 위한 장치가 제공되는데, 그 장치는, 클라이언트로부터 클라이언트 메세지를 수신하는 수단과, 서버의 개인키를 추출하는 수단과, 서버의 개인키로써 클라이언트 메세지를 해독하는 수단과, 해독된 클라이언트 메세지로부터 클라이언트 일련 번호를 추출하는 수단과, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조에 내장된 클라이언트 개인키에 대응하고, 추출된 클라이언트 일련 번호와 연관되게 저장된 클라이언트 공개키를 추출하는 수단을 포함한다.
바람직하게, 그 장치는, 클라이언트 메세지로부터 암호화된 클라이언트 인증 데이터를 추출하는 수단과, 추출된 클라이언트 공개키를 사용하여 클라이언트 인증 데이터를 해독하는 수단과, 해독된 클라이언트 인증 데이터를 검증하는 수단을 더 포함한다.
본 발명의 제11면에 따르면, 클라이언트와 서버간의 통신 보안을 위하여 데이터 처리 시스템에서 이용되는 컴퓨터 판독 가능 장치내의 컴퓨터 프로그램 제품이 제공되는데, 그 컴퓨터 프로그램 제품은, 클라이언트로부터 클라이언트 메세지를 수신하는 명령어와, 서버의 개인키를 추출하는 명령어와, 서버의 개인키로써 클라이언트 메세지를 해독하는 명령어와, 해독된 클라이언트 메세지로부터 클라이언트 일련 번호를 추출하는 명령어와, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조에 내장된 클라이언트 개인키에 대응하고, 추출된 클라이언트 일련 번호와 연관되게 저장된 클라이언트 공개키를 추출하는 명령어를 포함한다.
바람직하게, 그 프로그램 제품은, 클라이언트 메세지로부터 암호화된 클라이언트 인증 데이터를 추출하는 명령어와, 추출된 클라이언트 공개키를 사용하여 클라이언트 인증 데이터를 해독하는 명령어와, 해독된 클라이언트 인증 데이터를 검증하는 명령어를 더 포함한다.
본 발명의 12면에 따르면, 데이터 처리 시스템내의 클라이언트와 서버간의 통신 보안을 위한 방법이 제공되는데, 그 방법은, 서버로부터 서버 메세지를 수신하는 단계와, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조로부터 내장된 클라이언트 개인키를 추출하는 단계와, 상기 내장된 클라이언트 개인키로써 상기 서버 메세지를 해독하는 단계를 포함한다.
이 방법은 바람직하게, 서버 메세지로부터 암호화된 서버 인증 데이터를 추출하는 단계와, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조로부터 내장된 서버 공개키를 추출하는 단계와, 상기 내장된 서버 공개키를 사용하여 상기 서버 인증 데이터를 해독하는 단계와, 해독된 서버 인증 데이터를 검증하는 단계를 더 포함한다.
바람직하게, 이 방법은, 서버 메세지로부터 요청된 정보를 추출하는 단계와, 해독된 서버 인증 데이터가 검증되었는지의 결정에 따라 요청된 정보를 처리하는 단계를 더 포함한다.
본 발명의 13면에 따르면, 데이터 처리 시스템내의 클라이언트와 서버간의 통신 보안을 위한 장치가 제공되는데, 그 장치는, 서버로부터 서버 메세지를 수신하는 수단과, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조로부터 내장된 클라이언트 개인키를 추출하는 수단과, 상기 내장된 클라이언트 개인키로써 상기 서버 메세지를 해독하는 수단을 포함한다.
이 장치는 바람직하게, 서버 메세지로부터 암호화된 서버 인증 데이터를 추출하는 수단과, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조로부터 내장된 서버 공개키를 추출하는 수단과, 상기 내장된 서버 공개키를 사용하여 상기 서버 인증 데이터를 해독하는 수단과, 해독된 서버 인증 데이터를 검증하는 수단을 더 포함한다.
바람직하게, 이 장치는, 서버 메세지로부터 요청된 정보를 추출하는 수단과, 해독된 서버 인증 데이터가 검증되었는지의 결정에 따라 요청된 정보를 처리하는 수단을 더 포함한다.
본 발명의 14면에 따르면, 클라이언트와 서버간의 통신 보안을 위하여 데이터 처리 시스템에서 이용하는 컴퓨터 판독 가능 매체내의 컴퓨터 프로그램 제품이 제공되는데, 그 컴퓨터 프로그램 제품은, 서버로부터 서버 메세지를 수신하는 명령어와, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조로부터 내장된 클라이언트 개인키를 추출하는 명령어와, 상기 내장된 클라이언트 개인키로써 상기 서버 메세지를 해독하는 명령어를 포함한다.
이 컴퓨터 프로그램 제품은 바람직하게, 서버 메세지로부터 암호화된 서버 인증 데이터를 추출하는 명령어와, 클라이언트내의 제조 물품내의 읽기 전용 메모리 구조로부터 내장된 서버 공개키를 추출하는 명령어와, 상기 내장된 서버 공개키를 사용하여 상기 서버 인증 데이터를 해독하는 명령어와, 해독된 서버 인증 데이터를 검증하는 명령어를 더 포함한다.
바람직하게, 이 컴퓨터 프로그램 제품은, 서버 메세지로부터 요청된 정보를 추출하는 명령어와, 해독된 서버 인증 데이터가 검증되었는지의 결정에 따라 요청된 정보를 처리하는 명령어를 더 포함한다.
도 1a는 본 발명이 실시될 통상의 분산 데이터 처리 시스템을 도시한 도면.
도 1b는 본 발명이 실시될 데이터 처리 시스템내에 이용될 수 있는 통상의 컴퓨터 구조를 도시한 도면.
도 2는 본 발명의 바람직한 실시예에 따른, 영구적이고 하드웨어로 구현된, 암호화키를 이용하여 응용프로그램 코드 및 콘텐트의 안전한 통신을 위한 데이터 처리 시스템을 묘사한 블록도.
도 3은 본 발명의 바람직한 실시예에 따른, 도 2에 대하여 기술된 바와 같이 클라이언트 CPU 칩을 수용한 클라이언트 시스템이 암호화된 응용프로그램 코드 및 암호화된 콘텐트 데이터를 요청하고 획득하는 처리를 묘사한 흐름도.
도 4는 본 발명의 바람직한 실시예에 따른, 요구되는 서버 개인키에 대한 정보를 가지는 서버 시스템에 의해 수행되며, 클라이언트로부터 암호화된 응용프로그램 코드 및/또는 암호화된 콘텐트 데이터에 대한 요청을 수신하고 인증하는 처리를 묘사한 흐름도.
도 5는 본 발명의 바람직한 실시예에 따른, 서버 시스템이 요청된 서버 개인키에 대한 정보를 가지는 서버가 응용프로그램 코드 및/또는 암호화된 데이터를 검 색하고 클라이언트로 전송하는 처리를 묘사한 흐름도.
도 6은 본 발명의 바람직한 실시예에 따른, 클라이언트 시스템이 요청된 암호화된 응용프로그램 코드 및/또는 암호화된 콘텐트 데이터를 수신하는 처리를 묘사한 흐름도.
본 발명은 데이터 처리 시스템내에서 응용 프로그램 코드 및 콘텐트 데이터의 분배를 제어하기 위한 시스템 및 방법이다. 배경 기술로서, 분산 데이터 처리 시스템내의 하드웨어 및 소프트웨어의 통상의 조직을 본 발명을 더욱 자세히 기술하기 전에 설명하도록 한다.
도 1a는, 본 발명이 수용되거나 및/또는 동작하는 각각의 데이터 처리 시스템의 통상의 네트워크를 도시하고 있다. 분산 데이터 처리 시스템(100)은 분산 데이터 처리 시스템(100)내에서 함께 연결된 다양한 장치 및 컴퓨터들 사이의 통신 링크를 제공하는 데 이용될 수 있는 매체인 네트워크(101)를 포함한다. 네트워크(101)는 와이어 또는 광섬유 케이블과 같은 영구 접속, 또는 전화 또는 무선 통신을 통한 일시 접속을 포함할 수 있다. 묘사된 예에서, 서버(102) 및 서버(103)는 저장 유닛(104)과 함께 네트워크(101)에 연결된다. 부가하여, 클라이언트(105-107)가 네트워크에 연결된다. 클라이언트(105-107) 및 서버(102, 103)는 메인프레임, 개인용 컴퓨터, 개인용 디지털 보조기(PDA) 등과 같은 다양한 연산 장치를 대표할 수 있다. 분산 데이터 처리 시스템(100)은 추가의 서버, 클라이언트, 라우터, 기타 장치 및 도시되지 않은 피어투피어 구조를 포함할 수 있다.
묘사된 예에서, 분산 데이터 처리 시스템(100)은 경량 디렉토리 접근 프로토콜(LDAP), 전송 제어 프로토콜/인터넷 프로토콜(TCP/IP), 하이퍼텍스트 전송 프로토콜(HTTP), 무선 응용 프로토콜(WAP)등과 같은 다양한 프로토콜을 이용하여 상호간 통신하는 네트워크 및 게이트웨이의 범지구적 집합을 대표하는 인터넷(Internet)을 네트워크(101)에 포함할 수 있다. 물론, 분산 데이터 처리 시스템(100)은 많은 수의 상이한 네트워크, 예컨대 로컬 네트워크(LAN), 또는 광역 네트워크(WAN)등을 포함할 수 있다. 예컨대, 서버(102)는 무선 링크(112)를 병합한 클라이언트(109) 및 네트워크(110)를 직접 지원한다. 네트워크-기동 폰(111)이 무선 링크(112)를 경유하여 네트워크(110)에 연결되고, PDA(113)이 무선 링크(114)를 경유하여 네트워크(110)에 연결된다. 폰(111) 및 PDA(113)는 세칭 개인영역 네트워크(personal area network, personal ad-hoc networks)를 생성하기 위하여 블루투쓰 무선 기술과 같은 적절한 기술을 이용하는 무선 링크(115)를 통하여 상호간에 직접 데이터를 전송할 수 있다. 유사한 방식으로 PDA(113)는 무선 통신 링크(116)을 경유하여 PDA(107)로 데이터를 전송할 수 있다.
본 발명은 다양한 하드웨어 플랫포옴 상에서 구현될 수 있다. 도 1b는 본 발명의 구조상 한계를 보여주기 위한 것이 아니라 이종 컴퓨팅 환경을 예시할 것을 의도한 것이다. 데이터 처리 시스템(120)은 하나 이상의 중앙 처리 유닛(CPU)(122)을 포함하며, 이는 RAM(124), ROM(126)과, 프린터(130), 디스크 유닛(132) 또는 음향 출력 시스템같은 기타 도시되지 않은 장치 등을 지원하는 입출력 어댑터(128)와 상호 연결되어 있다. 시스템 버스(123)역시 통신 링크(136)로의 접속을 제공하는 통신 어댑터(134)와 연결된다. 사용자 인터페이스 어댑터(148)는 키보드(140), 마우스(142)와, 터치스크린, 스타일러스, 마이크로폰 등과 같은 도시되지 않은 다양한 사용자 장치와 연결된다. 디스플레이 어댑터(144)는 시스템 버스(123)를 디스플레이 장치(146)에 연결한다.
해당 분야에 통상의 지식을 가진 자라면, 알 수 있듯이, 도 1b의 하드웨어는 시스템 구현에 따라 변화할 수 있다. 예컨대, 시스템은 디지털 신호 프로세서(DSP) 및 다른 유형의 전용 프로세서 및 하나 이상의 유형의 휘발성 및 비휘발성 메모리를 포함하는, 하나 이상의 프로세서를 구비할 수 있다. 다른 주변 장치가 도 1b에 묘사된 하드웨어에 부가되거나 대체되어 이용될 수 있다. 달리 말하면, 해당 분야에 통상의 지식을 가진 자라면, 웹-구동 가능 또는 네트워크- 구동 가능 전화기 및 모든 특징을 가지는 데스트탑 워크스테이션내의 유사한 구성품 또는 구조를 발견할 수 있을 것이다. 묘사되는 실시예는 본 발명의 구조적 한계를 암시하는 것은 아니다.
다양한 하드웨어 플랫폼에 구현될 수 있다는 것에 더하여, 본 발명은 다양한 소프트웨어 환경에서 구현될 수 있다. 통상의 운영체제가 프로그램이 실행을 제어하기 위하여 각 데이터 처리 시스템내에서 이용될 수 있다. 예컨대, 한 장치는 유닉스 운영체제에서 동작되고, 다른 장치는 단순한 자바 런타임 환경을 포함할 수 있다. 대표적인 컴퓨터 플랫폼은 예컨대 그래픽 파일, 워드 프로세서 파일, 확장 마크업 언어(XML), 하이퍼텍스트 마크업 언어(HTML), 수하용 장치 마크업 언어(Handheld Device Markup Language; HDML), 무선 마크업 언어(WML), 및 기타의 다양한 형식과 유형의 파일과 같은 다양한 형식의 하이퍼텍스트 문서를 접근할 수 있는 널리 알려진 소프트웨어 응용 프로그램인 부라우저를 포함할 수 있다.
더 구체적으로, 본 발명은 데이터 처리 시스템내의 응용 프로그램 코드 및 콘텐트 데이터의 분산 제어용 장치 및 방법이지만, 본 발명은 전술한 바와 같이 다양한 하드웨어 및 소프트웨어 플랫폼에서 구현될 수 있다. 이를 위하여, 본 발명은 인증(authentication) 및 인가(authorization) 처리를 위한 신규한 방법으로 암호화키를 이용한다. 본 발명을 구체적으로 설명하기 전에, 본 발명의 동작상 효율성과 기타의 이점을 평가할 수 있도록, 공개키 암호화에 관한 다소의 배경 지식을 제공한다.
공개키 암호화는 각 파티(party)가 공개키 및 개인키로 구성되는 키쌍을 가지기 위하여 통신하거나 트랜잭션(transaction)하는 과정이 개재된다. 각 파티의 공개키는 배포되거나 다른 쪽 파티에 제공될 수 있는 반면, 개인키는 비밀리에 유지된다. 공개키는 특정 개체에 연관된 번호이며, 그 개체와의 신뢰있는 상호 작용을 요하는 모든 이에게 알려지도록 의도된 것이다. 개인키는 특정 개체에만 알려지도록 고안된 것, 즉 비밀 상태에 있는 번호이다. 통상의 공개키 암호화 시스템에서, 한 개인키는 정확히 하나의 공개키에 대응한다.
공개키 암호화 시스템에서, 모든 통신은 공개키만을 다루며 개인키는 전송되거나 공유되지 않고, 비밀 메세지는 공개 정보만을 이용하여 생성될 수 있고 의도된 수신자만이 보유하는 개인키를 이용하여 해독될 수 있다. 더욱이, 공개키 암호화는 비밀 유지, 즉 암호화뿐만 아니라, 인증, 즉 전자 서명에도 이용될 수 있다.
암호화는 비밀 해독키가 없다면 판독할 수 없는 형태로 데이터를 변형하는 것이다. 암호화는 의도된 이외의 자로부터 설령 이자가 암호화된 데이터를 볼 수 있더라도 정보 내용을 감춤으로써 비밀을 보장한다. 인증은 디지털 메세지의 수신자가 송신자 및/또는 메세지의 무결성을 확신할 수 있도록 하는 처리이다.
예컨대, 송신자가 메세지를 암호화할 때, 수신자의 공개키가 원래의 메세지내의 데이터를 암호화 메세지의 내용으로 변환하는데 이용된다. 송신자는 공개키를 암호화하는 데 이용하고, 수신자는 개인키로써 암호화된 메세지를 해독한다.
데이터 인증에 있어서, 데이터는 서명자의 데이터 및 개인키로부터 전자 서명을 계산함으로써 서명될 수 있다. 데이터가 전자적으로 서명되면, 이것은 서명자의 식별자와 함께 저장되고 서명은 서명자로부터의 데이터라는 것이 입증된다. 서명자는 데이터를 서명할 때 개인키를 쓰며, 수신자는 서명 검증에 공개키를 이용한다.
전술한 바와 같이, 본 발명은 데이터 처리 시스템내의 응용 프로그램 코드 및 콘텐트 데이터의 분산 제어용 장치 및 방법에 관한 것이다. 이 목적을 달성하기 위하여, 나머지 도면과 함께 더욱 상세히 설명될 시스템 구조 및 한 묶음의 프로세스를 이용한다.
도 2를 참조하면, 블록도가 발명에 따르는, 영구적인 하드웨어 내장된 암호화키를 이용하여 응용 프로그램 코드 및 콘텐트 데이터의 안전한 통신을 위한 데이터 처리 시스템을 묘사하고 있다. 시스템(200)에서, 클라이언트(202)는 클라이언트 통신 유닛(204)을 이용하고 통신 링크(210)를 경유하여 서버(208)의 서버 통신 유 닛(206)과 통신한다. 잘 알려지거나 독점적인 네트워크 통신 프로토콜을 이용하는 외에, 클라이언트(202) 및 서버(208)는 이들 사이의 임의의 필한 응용 세션을 확립하기 위하여 요청된 메세지를 교환하고 메세지에 응답하기에 적절한 프로토콜을 이용할 수 있다. 예컨대, 이하에서 더욱 상세히 설명되듯이, 클라이언트(202)는 적절한 프로토콜 및 메세지 형식을 이용하여 안전한 응용 프로그램 코드 및 콘텐트 데이터를 서버(208)로부터 다운로드할 수 있다.
도 2에 도시된 분산 데이터 처리 시스템(200)은 도 1a에 도시된 시스템(100)과 유사하며, 클라이언트(202) 및 서버(208)는 도 1b에 도시된 시스템(120)과 유사하다. 시스템(200)은 복수의 클라이언트(202) 및 복수의 서버(208)를 포함할 수 있다.
더욱 중요한 것은, 도 2에 도시된 클라이언트(202)가 클라이언트 CPU(212)를 포함하지만, 이것은 전용 처리 유닛 또는 구조, 즉 암호화 유닛(214)을 포함한다. 클라이언트 CPU(212)는 도시되지 않은 캐쉬 등과 같은 기타의 표준형 처리 유닛 및 구조도 포함한다.
클라이언트 CPU(212)는 특별 목적의 클라이언트-시스템, 프로세서 칩으로서 특별히 제작된 칩의 부류에 속한다. 이들 클라이언트 시스템 CPU 칩은 암호화 기능을 가지도록 설계되어 특정 목적하에 이하에서 더 자세히 기술되는 시스템(200)과 같은 특정의 분산 데이터 처리 시스템내에서 선택적으로 이용될 수 있다. 각 클라이언트 CPU 칩이 제조되고 테스트된 후, 각 클라이언트 CPU 칩은 고유한 클라이언트 일련 번호 및 고유한 클라이언트 공개/개인 키쌍에 할당된다. 클라이언트 CPU 칩의 제조자는 제조자에게 알려지지 않을 수도 있는 서버의 개인키와 연관된 서버의 공개키에 대해 알고 있다.
각 클라이언트 CPU 칩은 프로그램 가능 메모리 저장장치를 수용하도록 제조된 암호화 유닛을 가진다. 클라이언트 CPU 칩을 배포하기 전에, 제조자는 클라이언트 일련 번호, 할당된 클라이언트 개인키, 및 서버의 공개키를 CPU 칩에 영구적으로 내장시키거나 고정시킨다. 도 2에 도시된 바와 같이, 클라이언트 CPU 칩(212)은 암호화 유닛(214)을 포함하고, 이것은 클라이언트 일련 번호(216), 클라이언트 개인키(218), 및 서버 공개키(220)를 포함한다. DRAM 제조시 사용되는 반도체 퓨즈의 제거와 같은 다양한 공지된 방법은 반도체 칩에 이진 데이터를 내장하는 데 유용하다.
그 다음, 클라이언트 CPU 칩의 제조자는 클라이언트 개인키(218)의 모든 잔존 복사본을 파괴하고, 클라이언트 일련 번호(216)와 클라이언트 개인키(218)에 대응하는 클라이언트 공개키는 후속의 사용 및 전개(deployment)를 위하여 서버의 클라이언트 공개키 저장소내에 저장하는 것과 같이 연관되게 수용한다. 한편, 서버의 공개키(220)에 대응하는 서버의 개인키(224)는 비밀 저장소내에 저장되는 등과 같이 비밀리에 저장된다. 시스템(200)은 복수의 서버(208)를 포함하며, 클라이언트(202)와 통신할 필요가 있는 각 서버는 서버 개인키(224)로의 접근을 요구할 것이다.
클라이언트(202)는 자신의 클라이언트 CPU(212)를 이용하여 서버(208)와 통신하여 암호화된 응용 프로그램 코드 및 암호화된 콘텐트 데이터를 요청하고 다운 로드하고, 이는 나머지 첨부 도면을 참고하여 이하에서 상세히 기술한다.
도 3은, 도 2를 참조하여 설명한 바와 같이, 본 발명의 바람직한 실시예에 따라 암호화된 응용 프로그램 코드 및 콘텐트 데이터를 요청하는, 클라이언트 CPU 칩을 수용하는 클라이언트 시스템이 처리하는 프로세스를 묘사한 플로우차트이다. 암호화 및 해독 단계와 함께 도 3의 단계들은 클라이언트 CPU에서 내장된 클라이언트 값이 누설되는 것으로부터 보호하는 방식으로 이루어진다. 달리 말하면, 바람직한 실시예에서, 암호화 처리를 위한 모든 연신 및 저장 자원은 도 2에 도시된 암호와 유닛(214)과 같이, 클라이언트 CPU 칩내의 자체-수용된 유닛으로서 완전히 내장되어야 한다.
도 3에 도시된 흐름도에서, 도 2의 클라이언트(202)와 같은 클라이언트 시스템의 조작자 또는 사용자는 도 2의 서버(204)와 같은 해당 서버를 운영하는 특정 응용 프로그램 서비스 제공자 및/또는 콘텐트 서비스 제공자로부터 안전한 응용 프로그램 코드 및/또는 콘텐트 데이터를 요청하려한다. 사용자는 서비스 제공자로부터 클라이언트 장치를 구매했을 수도 있고, 대신에, 클라이언트 장치의 제조자 및 서비스 제공자는 계약적으로 결합되어 클라이언트 장치의 구매자는 서비스 제공자로부터의 서비스를 구매할 수 있는 식으로 될 수도 있다. 어떤 경우든, 적절한 초기화, 구성, 및 자금 처리 또는 구성이 완전히 또는 그렇지 않으면 서비스 제공자의 서버 장치가 사용자의 클라이언트 장치와 예상되는 방식으로 상호작용하는 코드 및/또는 콘텐트를 제공하는 것이 가정된다.
클라이언트가 서버로 전송할 클라이언트 요청 메세지를 생성하는 것으로 프 로세스가 시작된다(단계 302). 내장된 클라이언트 일련 번호가 클라이언트 요청 메세지에 저장되고(단계 304), 특정 응용 프로그램 또는 코드 식별을 위하거나 임의의 방식으로 요청을 확인하기 위한 임의의 필요한 요청 파라미터가 클라이언트 요청 메세지에 저장된다(단계 306).
그 다음, 클라이언트 인증 데이터가 추출되고(단계 308), 내장된 클라이언트 개인키를 이용하여 암호화된다(단계 310). 클라이언트 인증 데이터의 내용은 본 발명의 실시 양태에 따라 변화될 수 있다. 양호하게는, 서버에 의해 용이하게 검증될 수 있는 데이터 항목이다. 가장 단순한 경우에, 클라이언트 인증 데이터는 내장된 클라이언트 일련 번호의 복사본이거나, 추가의 보안을 위하여, 클라이언트 인증 데이터는 서비스 제공자에 대한 유효 계정과 연관된 사용자 식별자를 포함할 수 있다. 그 다음, 암호화된 클라이언트 인증 데이터는 클라이언트 요청 메세지에 저장된다(단계 312).
이럼으로써 클라이언트 요청 메세지 전체가 내장된 서버 공개키를 사용하여 암호화되고(단계 314), 암호화된 클라이언트 요청 메세지가 적절한 네트워크 패킷내의 과금 데이터로서 저장된다(단계 316). 네트워크 패킷은 서비스 제공자의 서버로 전송되고(단계 318), 클라이언트 요청의 생성 프로세스가 완료된다.
도 4를 참조하면, 본 발명의 바람직한 실시예에 따른, 암호화된 응용 프로그램 코드 및 콘텐트 데이터에 대한 클라이언트로부터의 요청을 수신하고 인증하는데 필요한 서버 개인키에 대한 정보를 가지는 서버 시스템에 의한 프로세스를 묘사한 흐름도가 개시되어 있다. 도 4 및 도 5의 단계는 서비스 제공자에 의해 제어되는 데이터 처리 환경에서 수행된다. 단일 서버내에 모든 단계가 처리될 필요는 없으나, 서버 개인키의 안전을 지키기 위한 필요한 사전 조치가 있다고 가정한다.
프로세스는 서버가 요청 클라이언트 장치로부터 암호화된 클라이언트 요청 메세지를 수신하는 것으로부터 시작한다(단계 402). 암호화된 클라이언트 요청 메세지는 네트워크 패킷으로부터 언로드되고 서버의 개인키를 이용하여 해독된다(단계 404). 그러면, 해독된 클라이언트 요청 메세지로부터 클라이언트 일련 번호가 추출되고(단계 406), 적절한 데이터베이스 또는 사전에서 연관된 클라이언트 공개키를 탐색하는데 이용된다(단계 408). 클라이언트 공개키를 찾으면, 이를 추출하고(단계 410), 해독된 클라이언트 요청 메세지로부터 암호화된 클라이언트 인증 데이터를 추출한 후(단계 412), 암호화된 클라이언트 인증 데이터는 클라이언트 공개키를 사용하여 해독된다(단계 414). 클라이언트 인증 데이터를 적절한 방식으로 검증한 후(단계 416), 클라이언트 요청 메세지의 수신 및 인증 처리가 완료되고, 서버는 그 요청에 응답하여 다운로드 프로세스를 진행한다.
도 5는, 본 발명의 바람직한 실시예에 따르는, 필요한 서버 개인키에 대해 아는 서버 시스템이 요청된 암호화된 응용 프로그램 코드 및/또는 콘텐트 데이터를 추출하고 전송하는 프로세스에 대한 흐름도이다. 서버가 서버 응답 메세지를 생성함으로써 프로세스가 시작되고(단계 502), 클라이언트에 의해 요청된 응용 프로그램 코드 및/또는 콘텐트 데이터를 추출한다(단계 504). 요청된 응용 프로그램 및/또는 콘텐트 데이터는 서버 응답 메세지 내에 저장된다(단계 506).
그러면, 서버 인증 데이터가 추출되고(단계 508), 서버 개인키를 이용하여 암호화되고(단계 510), 서버 응답 메세지에 저장된다(단계 512). 서버 인증 데이터의 내용은 본 발명의 실시 양태에 따라 변화할 수 있다. 클라이언트 의하여 용이하게 검증 가능한 것이 바람직하다. 가장 단순한 경우는, 서버 인증 데이터가 내장된 서버 공개키의 복사본인 경우거나, 또는 추가의 보안을 위하여, 서버 인증 데이터가 서비스 제공자에 대한 계정과 연관된 사용자 식별자를 포함할 수 있다.
서버 응답 메세지의 전체는 요청한 클라이언트의 클라이언트 공개키를 사용하여 암호화되고(단계 514), 암호화된 서버 응답 메세지는 적절한 네트워크 패킷내의 과금 데이터로서 저장된다(단계 516). 네트워크 패킷은 요청 클라이언트 장치로 전송되고(단계 518), 서비스 공급자로부터 요청된 정보를 제공하는 프로세스가 완료된다.
도 6은, 본 발명의 바람직한 실시예에 따른, 요청된 암호화된 응용 프로그램 데이터 및/또는 콘텐트 데이터를 수신하는 클라이언트 시스템에서의 프로세스를 도시한 흐름도이다. 다시, 도 6에 도시된 단계는 내장된 클라이언트 값이 누설되는 것으로부터 보호되는 방식으로 클라이언트 CPU내에서 일어나는 암호화 및 해독 단계이다. 달리 말하면, 바람직한 실시예에서, 암호화 처리에 필요한 모든 연산 및 메모리 자원이 클라이언트 CPU내에 내장되어야 하고, 도 2에 도시된 암호화 유닛(214)과 같이 클라이언트 CPU내에 자체 수용된 것이 바람직하다.
프로세스는 암호화된 서버 응답 메세지를 클라이언트가 수신함으로써 개시된다(단계 602). 클라이언트는 내장된 클라이언트 개인키로써 암호화된 서버 응답 메세지를 해독한다(단계 604). 암호화된 서버 인증 데이터가 추출되고(단계 606), 내장된 서버 공개키로 해독되고(단계 608), 적절한 방식으로 검증된다(단계 610). 인 증 데이터가 검증되면, 요청된 응용 프로그램 코드 또는 콘텐트 데이터가 해독된 서버 응답 메세지로부터 추출되고(단계 612), 그 다음 응용 프로그램 코드가 실행되거나 콘텐트 데이터가 적절한 방식으로 클라이언트 장치에 의해 표현된다(단계 614). 대안으로서, 응용 프로그램 코드 및 콘텐트 데이터는 후속의 이용을 위하여 암호화되고 안전한 방식으로 저장된다. 요청된 응용 프로그램 코드 및/또는 콘텐트 데이터를 수신하고 이용하는 처리가 완료된다.
도 3내지 도 6에 도시된 암호화 및 해독 단계 중 어느 것이라도 실패하면, 적절한 에러 평가가 수행될 수 있다. 전송 중의 비트 에러가 전송 프로토콜을 이용한 클라이언트 및 서버의 통신 유닛에 의해 관리되고 정정되기 때문에 암호화 또는 해독 단계가 실패하지 않는다고 가정하면, 클라이언트 또는 서버는 적절하게 에러 신호, 에러 메세지, 에러 통지, 에러 로그, 등을 생성할 것이다. 다른 조치가 적절히 취해질 수 있다. 예컨대, 클라이언트 요청에 대한 반복된 인증 실패는 클라이언트 장치에 대한 서비스를 종료하거나 서비스 요청을 생성할 것이다.
클라이언트 CPU의 구조는 내장된 클라이언트 일련 번호, 내장된 클라이언트 개인키, 및 내장된 서버 공개키가 클라이언트 CPU의 암호화 유닛으로부터 CPU의 다른 유닛으로 읽혀지지 않도록 구성됨으로써, 내장된 값의 안전하게 하고 다운로드된 암호화된 응용 프로그램 코드 및 콘텐트 데이터가 서버의 응답이 지향하는 클라이언트에만 읽혀지는 것을 보장한다. 달리 말하면, 암호화 처리에 필요한 모든 연산 및 메모리 자원은 클라이언트 프로세서 칩, 예컨대 도 2에 도시된 암호화 유닛(214)내에 있어야 하며, 해로운 개체에 의하여 외부 정보의 흐름이 감지되지 않아야 한다.
더욱 중요한 것은, 클라이언트 CPU의 구조는 내장된 값이 암호화 유닛에 의해 이용되도록 구성되어야 한다는 것이다. 달리 말하면, 암호화 유닛은 내장된 값 이외의 다른 암호화키 값을 사용할 수 없다. 그러므로, 공격자는 내장된 값을 판독하거나 다른 암호화키 값의 대체 시도를 할 수 없다. 그렇지 않으면, 공격자가 다음의 방식으로 트로이의 목마 공격을 시도할 수 있다. 공격자는 공격자에게 알려진 개인키에 대응하는 서버의 불량 공개키를 클라이언트 CPU에 삽입한다. 클라이언트 CPU가 공격자로부터 해로운 코드를 수신하면, 이것은 주입된 불량 공개키로 올바르게 해독될 것이기 때문에 암호화된 응용 프로그램 코드의 정당한 패킷처럼 보일 것이다. 클라이언트 CPU 구조가 허용한다면, 클라이언트 개인키를 범용 레지스터에 로드하는 것에 의해, 해로운 코드의 후속의 실행은 내장된 클라이언트 개인키를 얻는데 이용될 것이다.
바람직한 실시예에서, 클라이언트 CPU의 구조는 다운로드된 응용 프로그램 코드가 전술한 방식으로 인증되지 않으면 클라이언트 CPU를 제어함으로써 서비스 공급자의 서버로부터 다운로드된 응용 프로그램 코드를 허용하지 않을 것이다. 달리 말하면, 서버로부터 다운로드된 응용 프로그램 코드가 실행되기 전에, 믿을 수 있는 서버로부터 유래되었는지를 인증받아야만 한다. 이것은 다운로드된 코드가 진정으로 믿을 수 있는 서버에 유래되었는지를 보장하며, 이럼으로써 클라이언트 장치에 해로운 공격이 이루어지지 않는 것을 보장한다. 클라이언트 장치가 믿을 수 있는 서버에서 다운로드된 것으로 믿는 모든 응용 프로그램 코드에 대해 인증 처리 를 하는 것은 시간 소모적인 반면, 모든 콘텐트 및 다운로드된 응용 프로그램 코드에 대해 공개키 알고리즘을 실행할 필요는 없다. 예컨대, 다운로드된 코드의 일부가 공개키 알고리즘을 이용하여 인증하고, 나머지 부분은 연산 비용이 덜 드는 무결성 검사 알고리즘(integrity checking algorithm)을 이용하여 검사할 수 있다. 암호화 알고리즘의 대칭키 부류는 이러한 기법의 한 예이다. 이들은 암호화/해독에 계산을 덜 필요로 하지만, 통신 세션이 시작되기 전에 클라이언트와 서버간에 보안키의 교환일 필요하다. 이러한 유형의 검증을 위하여, 서버 공개키를 이용하여 인증된 응용 프로그램 코드가 대칭키를 이용하여 다운로드를 수행하는 작은 프로그램을 포함할 수 있다. 작은 프로그램이 인증된 후, 이것이 나머지 응용 프로그램 코드 또는 콘텐트 데이터를 다운로드한다.
본 발명의 이점은 전술한 본 발명의 상세한 설명에 의하여 명백하게 드러난다. 신규한 방식으로 프로세서 칩에 암호화키를 저장하고 이용하는 것에 의하여, 본 발명은 다운로드된 응용 프로그램 코드 및 콘텐트의 안전 제어를 가능하게 한다. 이에 부가하여, 클라이언트 장치 및 서버간의 통신 보안, 클라이언트 및 서버간의 인증 및 인가, 및 안전한 전자상거래 및 기타 금융 거래와 같은 통상의 보안 요건도 제공한다.
그러나, 더욱 중요한 것은 콘텐트 제어 메커니즘의 방해를 방지할 수 있고, 다운로드된 코드 인증에 대한 검증 역시 코드가 바이러스 또는 해로운 코드를 포함하지 않는다는 것을 보장하는 방식으로 행해질 수 있다. 목적지 클라이언트 프로세서 칩내에 내장되는 것은 클라이언트 개인키, 일련 번호, 및 하나 이상의 서버 공개키이다. 서버가 응용 프로그램 코드 또는 콘텐트 데이터를 다운로드하기 전에, 요청 클라이언트의 공개키를 사용하여 정보가 암호화되고, 요청 클라이언트의 CPU내의 개인키만이 서버로부터 다운로드된 정보를 해독할 수 있다. 그러므로, 암호화된 정보가 유사한 CPU 칩에 의해 가로채어져도, 다운로드된 정보는 가로챈 클라이언트에는 아무런 소용이 없다. 더욱이, 서버의 공개키 복사본은 다운로드된 정보의 합법성을 검증하는 데 이용될 수 있고, 이럼으로써 다운로드된 응용 프로그램 코드가 바이러스나 기타 해로운 코드를 포함하지 않았다는 것을 보장한다. 이에 부가하여, 다른 클라이언트 시스템으로 전달된, 다운로드된 정보의 불법 복사본은 가치가 없다. 복수의 서버 공개키가 상이한 목적으로 내장될 수 있다. 예컨대, 서버 공개키 중의 하나는 인터넷 통신에 이용되고, 다른 서버 공개키는 무선 통신에 이용될 수 있다. 다른 예로는, 상이한 서버 공개키는 상이한 서비스 공급자에 대응할 수 있고, 또는 서버 공개키가 훼손되는 것으로 결정되면 복수의 서버 공개키가 여분 또는 백업용으로 저장될 수 있다.
본 발명이 데이터 처리 시스템에 대한 완전히 기능적으로 기술로 설명되었지만, 해당 분야에 통상의 지식을 가진 자라면 본 발명과 연관된 몇몇 프로세스가 배포에 이용되는 신호 매체를 포함하여 컴퓨터 판독 가능 매체 및 기타의 다양한 유형의 매체에 수록된 형태로 배포될 수 있다는 것을 이해해야한다. 컴퓨터 판독 가능 매체의 예는 EPROM, ROM, 테이프, 종이, 플로피디크스, 하드 디스크 드라이브, RAM 및 CD-ROM과, 디지털 및 아날로그 통신 링크와 같은 전송형 매체를 포함한다.
특히, 요청 클라이언트를 식별하기 위하여 일련 번호를 서버에게로 전송하는 것이 필수적인 것이 아니라는 것을 이해하여야한다. 각 클라이언트가 고유한 공개 암호화키 쌍이 있으면, 이것이 대신 전송된다. 이 경우 서버는 이미 해독이 되었다면 필요한 공개키를 클라이언트 요청 메세지로부터 직접 얻게 되므로, 클라이언트 일련 번호 및 연관된 공개 암호화키의 데이터베이스를 보유할 필요가 없다. 그러나, 등록된 공개키의 목록을 유지할 필요는 있으며, 진행 전에 그러한 목록에 수신된 키가 있다는 것이 보장되어야 한다. 이렇게 되지 않으면, 요청 방식과 인증 데이터 필드에 대한 정보를 가지는 공격자가 임의의 암호화키 쌍을 선택하여 유효한 요청을 생성할 수 있다. 일련 번호의 사용은 유효 요청을 생성하기 위해서는 공격자가 이 일련 번호 및 대응하는 공개키 모두를 알아야되도록 한다. 비록 이들 키가 "공개"라는 용어로 칭하지만, 이것은 이들이 공중에 반포되어야 한다는 것을 의미하는 것이 아니고, 이들은 클라이언트가 연결된 서비스 공급자의 서버의 안전한 장소에 보유되는 것이 바람직하다.
마지막으로, 비록 본 발명이 프로세서 칩의 관점에서 기술되었으나, 네트워크 인터페이스 카드, 또는 칩, 또는 임의의 종류의 인터페이스 처리 장치 또는 시스템에 적용되는 것도 가능하며 범용 프로세서에 제한되는 것이 아니라는 것을 인지하여야 한다. 종래의 TCPA 부시스템 칩은 한 예이다.
본 명세서에 기술된 본 발명의 관한 기재는 설명을 위한 것이며 본 발명을 개시된 실시예에 제한하려는 것이 아니다. 다양한 변경과 변형은 해당 분야에 통상의 지식을 가진 자에게 명백할 것이다. 실시예는 본 발명의 사상과 이에 대한 실제적 응용 사례를 설명하기 위해 선택된 것이고, 해당 분야의 통상의 지식을 가진 자 가 본 발명을 이해하고 다른 이용에 다양하게 적용할 수 있도록 하는 데 있다.
본 발명에 의하면, 데이터 처리 시스템을 구성하는 클라이언트와 서버사이의 통신을 안전하고 효율적으로 수행할 수 있다.

Claims (20)

  1. 반도체 칩을 구성하는 방법에 있어서,
    개인 암호화키를 선택하는 단계와,
    공개 암호화키 - 상기 공개 암호화키와 상기 개인 암호화키는 공개/개인 암호화키 쌍의 관계에 있지 않음 - 를 선택하는 단계와,
    상기 개인 암호화키 및 상기 공개 암호화키를 반도체 칩의 읽기 전용 메모리(ROM)에 내장하는 단계와,
    상기 개인 암호화키에 연관된 제2 공개 암호화키를 상기 반도체 칩 외부에만 저장하는 단계
    를 포함하는 반도체 칩 구성 방법.
  2. 청구항 2은(는) 설정등록료 납부시 포기되었습니다.
    제1항에 있어서, 상기 반도체 칩은 클라이언트에서의 인터페이스 처리를 제공하는 것인 방법.
  3. 삭제
  4. 청구항 4은(는) 설정등록료 납부시 포기되었습니다.
    제1항에 있어서, 상기 반도체 칩에 관련한 일련 번호와 연관되어 상기 공개 암호화키를 데이터베이스에 저장하는 단계를 더 포함하는 것인 방법.
  5. 청구항 5은(는) 설정등록료 납부시 포기되었습니다.
    제1항에 있어서, 상기 개인 암호화키와 읽기 전용 메모리내의 공개 암호화키는 반도체 칩의 입/출력 단자로는 접근 불가능한 것인 방법.
  6. 내장된 개인 암호화키 - 상기 내장된 개인 암호화키는 제 1 읽기 전용 메모리 구조의 외부에만 저장되어 있는 공개 암호화키와 연관되어 있는 것임 - 를 포함하는 제1 읽기 전용 메모리 구조와,
    내장된 공개 암호화키 - 상기 내장된 공개 암호화키와 상기 내장된 개인 암호화키는 공개/개인 암호화키 쌍 관계에 있지 않은 것임 - 를 포함하는 제2 읽기 전용 메모리 구조
    를 포함하는 것인 반도체 칩.
  7. 데이터 처리 시스템의 클라이언트와 서버 간의 통신 보안 방법으로서,
    상기 클라이언트에서 클라이언트 메세지를 생성하는 단계와;
    상기 클라이언트 내의 반도체 칩에 있는 읽기 전용 메모리로부터 상기 내장된 서버 공개키를 추출하는 단계 - 상기 읽기 전용 메모리는 내장된 클라이언트 개인키를 구비하며, 상기 내장된 서버 공개키와 상기 내장된 클라이언트 개인키는 공개/개인 키 쌍 관계에 있지 않으며, 상기 내장된 클라이언트 개인키는 상기 클라이언트의 외부에만 저장되어 있는 클라이언트 공개키와 연관되어 있는 것임 - 와;
    상기 내장된 서버 공개키를 사용하여 상기 클라이언트 메세지를 암호화하는 단계와;
    상기 클라이언트 메세지를 상기 서버로 전송하는 단계
    를 포함하는 통신 보안 방법.
  8. 청구항 8은(는) 설정등록료 납부시 포기되었습니다.
    제7항에 있어서,
    클라이언트 인증 데이터를 추출하는 단계와,
    상기 내장된 클라이언트 개인키를 상기 클라이언트 내의 반도체 칩의 읽기 전용 메모리 구조로부터 추출하는 단계와,
    상기 클라이언트 인증 데이터를 상기 내장된 클라이언트 개인키를 사용하여 암호화하는 단계와,
    상기 암호화된 클라이언트 인증 데이터를 상기 클라이언트 메세지 내에 저장하는 단계
    를 더 포함하는 것인 방법.
  9. 청구항 9은(는) 설정등록료 납부시 포기되었습니다.
    제8항에 있어서,
    상기 클라이언트 내의 반도체 칩의 읽기 전용 메모리 구조로부터 내장된 클라이언트 일련 번호를 추출하는 단계와,
    상기 내장된 클라이언트 일련 번호의 복사본을 상기 클라이언트 메세지에 저장하는 단계
    를 더 포함하는 것인 방법.
  10. 데이터 처리 시스템의 클라이언트와 서버 간의 통신 보안에 관한 장치에 있어서,
    상기 클라이언트에서 클라이언트 메세지를 생성하는 수단과,
    상기 클라이언트 내의 반도체 칩의 읽기 전용 메모리 구조로부터 내장된 서버의 공개키를 추출하는 수단 - 상기 읽기 전용 메모리 구조는 내장된 클라이언트 개인키를 구비하고, 상기 내장된 서버 공개키와 상기 내장된 클라이언트 개인키는 공개/개인 키 쌍 관계에 있지 않으며, 상기 내장된 클라이언트 개인키는 상기 클라이언트 외부에만 저장되어 있는 클라이언트 공개키와 연관되어 있음 - 과,
    상기 내장된 서버의 공개키를 사용하여 클라이언트 메세지를 암호화하는 수단과,
    상기 클라이언트 메세지를 상기 서버로 전송하는 수단
    을 포함하는 통신 보안 장치.
  11. 청구항 11은(는) 설정등록료 납부시 포기되었습니다.
    클라이언트와 서버간의 통신 보안을 위하여 데이터 처리 시스템에서 이용되는 컴퓨터 판독 가능한 프로그램을 포함하는 기록 매체로서,
    상기 클라이언트에서 클라이언트 메세지를 생성하는 명령어와,
    상기 클라이언트 내의 반도체 칩의 읽기 전용 메모리 구조로부터 서버의 공개키를 추출하는 명령어 - 상기 읽기 전용 메모리 구조는 내장된 클라이언트 개인키를 구비하고, 상기 내장된 서버 공개키 및 상기 내장된 클라이언트 개인키는 공개/개인 키 쌍 관계에 있지 않고, 상기 내장된 클라이언트 개인키는 상기 클라이언트 외부에만 저장되어 있는 클라이언트 공개키와 연관되어 있는 것임 - 과;
    상기 내장된 서버의 공개키를 사용하여 상기 클라이언트 메세지를 암호화하는 명령어와,
    상기 클라이언트 메세지를 서버로 전송하는 명령어
    를 포함하는 컴퓨터 판독 가능한 프로그램을 포함하는 기록 매체.
  12. 데이터 처리 시스템의 클라이언트와 서버간의 통신 보안 방법으로서,
    상기 서버에서 서버 메세지를 생성하는 단계와,
    상기 클라이언트에 의해 요청된 정보를 추출하는 단계와,
    상기 추출된 정보를 상기 서버 메세지에 저장하는 단계와,
    상기 클라이언트내의 상기 반도체칩의 읽기 전용 메모리 구조내에 내장된 클라이언트 개인키에 대응하는 클라이언트 공개키를 추출하는 단계 - 상기 클라이언트 공개키는 상기 클라이언트 외부에만 저장되어 있음 - 와,
    상기 서버 메세지를 클라이언트 공개키를 사용하여 암호화하는 단계와,
    상기 클라이언트로 상기 서버 메세지를 전송하는 단계
    를 포함하는 통신 보안 방법.
  13. 데이터 처리 시스템의 클라이언트와 서버간의 통신 보안 장치에 있어서,
    상기 서버에서 서버 메세지를 생성하는 수단과;
    상기 클라이언트에 의해 요청된 정보를 추출하는 수단과;
    상기 추출된 정보를 상기 서버 메세지에 저장하는 수단과;
    상기 클라이언트 내의 반도체의 읽기 전용 메모리 구조 내에 내장된 클라이언트 개인키에 대응하는 클라이언트 공개키를 추출하는 수단 - 상기 클라이언트 공개키는 상기 클라이언트 외부에만 저장되어 있음 - 과;
    상기 서버 메세지를 상기 클라이언트 공개키를 사용하여 암호화하는 수단과;
    클라이언트로 서버 메세지를 전송하는 수단
    을 포함하는 통신 보안 장치.
  14. 청구항 14은(는) 설정등록료 납부시 포기되었습니다.
    데이터 처리 시스템의 클라이언트와 서버 간의 통신 보안을 위한 데이터 처리 시스템에 이용되는 컴퓨터 판독 가능한 프로그램을 포함하는 기록 매체로서,
    상기 서버에서 서버 메세지를 생성하는 명령어와;
    상기 클라이언트에 의해 요청된 정보를 추출하는 명령어와;
    상기 추출된 정보를 상기 서버 메세지에 저장하는 명령어와;
    상기 클라이언트 내의 반도체 칩의 읽기 전용 메모리 구조 내에 내장된 클라이언트 개인키에 대응하는 클라이언트 공개키를 추출하는 명령어 - 상기 클라이언트 키는 상기 클라이언트 외부에만 저장되어 있음 - 와;
    상기 서버 메세지를 상기 클라이언트 공개키를 사용하여 암호화하는 명령어와;
    상기 클라이언트로 상기 서버 메세지를 전송하는 명령어
    를 포함하는 컴퓨터 판독 가능한 프로그램을 포함하는 기록 매체.
  15. 데이터 처리 시스템 내의 클라이언트와 서버 간의 통신 보안을 위한 방법으로서,
    상기 클라이언트로부터 클라이언트 메세지를 수신하는 단계와;
    서버 개인키를 추출하는 단계와;
    상기 서버 개인키를 사용하여 상기 클라이언트 메세지를 해독하는 단계와;
    상기 해독된 클라이언트 메세지로부터 클라이언트 일련 번호를 추출하는 단계와;
    상기 추출된 클라이언트 일련 번호와 연관되게 저장된 클라이언트 공개키를 추출하는 단계 - 상기 클라이언트 공개키는 상기 클라이언트 내의 반도체 칩의 읽기 전용 메모리 구조 내에 내장된 클라이언트 개인키에 대응하고 상기 클라이언트 외부에만 저장되어 있음 -
    를 포함하고,
    상기 읽기 전용 메모리 구조는 내장된 서버 공개키를 구비하고, 상기 내장된 버 공개키 및 상기 내장된 클라이언트 개인키는 공개/개인 키 쌍 관계에 있지 않은 것인 통신 보안 방법.
  16. 데이터 처리 시스템내의 클라이언트와 서버간의 통신 보안을 위한 장치에 있어서,
    상기 클라이언트로부터 클라이언트 메세지를 수신하는 수단과,
    서버 개인키를 추출하는 수단과,
    상기 서버 개인키를 사용하여 상기 클라이언트 메세지를 해독하는 수단과,
    상기 해독된 상기 클라이언트 메세지로부터 클라이언트 일련 번호를 추출하는 수단과,
    상기 추출된 클라이언트 일련 번호와 연관되게 저장된 클라이언트 공개키를 추출하는 수단 - 상기 클라이언트 공개키는 상기 클라이언트 내의 반도체 칩의 읽기 전용 메모리 구조에 내장된 클라이언트 개인키에 대응하고 상기 클라이언트 외부에만 저장되어 있음 -
    을 포함하고,
    상기 읽기 전용 메모리 구조는 내장된 서버 공개키를 구비하고, 상기 내장된 버 공개키 및 상기 내장된 클라이언트 개인키는 공개/개인 키 쌍 관계에 있지 않은 것인 통신 보안 장치.
  17. 청구항 17은(는) 설정등록료 납부시 포기되었습니다.
    클라이언트와 서버간의 통신 보안을 위하여 데이터 처리 시스템에서 이용되는 컴퓨터 판독 가능한 프로그램을 포함하는 기록 매체에 있어서,
    상기 클라이언트로부터 클라이언트 메세지를 수신하는 명령어와,
    서버 개인키를 추출하는 명령어와,
    상기 서버 개인키로써 상기 클라이언트 메세지를 해독하는 명령어와,
    상기 해독된 클라이언트 메세지로부터 클라이언트 일련 번호를 추출하는 명령어와,
    상기 추출된 클라이언트 일련 번호와 연관되게 저장된 클라이언트 공개키를 추출하는 명령어 - 상기 클라이언트 공개키는 상기 클라이언트 내의 반도체 칩의 읽기 전용 메모리 구조에 내장된 클라이언트 개인키에 대응하고 상기 클라이언트 외부에만 저장되어 있음 -
    를 포함하고,
    상기 읽기 전용 메모리 구조는 내장된 서버 공개키를 구비하고, 상기 내장된 버 공개키 및 상기 내장된 클라이언트 개인키는 공개/개인 키 쌍 관계에 있지 않은 것인 컴퓨터 판독 가능한 프로그램을 포함하는 기록 매체.
  18. 데이터 처리 시스템 내의 클라이언트와 서버 간의 통신 보안을 위한 방법으로서,
    상기 서버로부터 서버 메세지를 수신하는 단계와;
    상기 클라이언트의 반도체 칩 내의 읽기 전용 메모리 구조로부터 내장된 클라이언트 개인키를 추출하는 단계 - 상기 내장된 클라이언트 개인키는 상기 클라이언트 외부에만 저장되어 있는 클라이언트 공개키와 연관되어 있음 - 와;
    상기 내장된 클라이언트 개인키를 사용하여 상기 서버 메세지를 해독하는 단계
    를 포함하는 통신 보안 방법.
  19. 데이터 처리 시스템내의 클라이언트와 서버간의 통신 보안을 위한 장치로서,
    상기 서버로부터 서버 메세지를 수신하는 수단과,
    상기 클라이언트 내의 반도체 칩의 읽기 전용 메모리 구조로부터 내장된 클라이언트 개인키를 추출하는 수단 - 상기 내장된 클라이언트 개인키는 상기 클라이언트 외부에만 저장되어 있는 클라이언트 공개키와 연관되어 있음 - 과,
    상기 내장된 클라이언트 개인키를 사용하여 상기 서버 메세지를 해독하는 수단
    을 포함하는 통신 보안 장치.
  20. 청구항 20은(는) 설정등록료 납부시 포기되었습니다.
    클라이언트와 서버간의 통신 보안을 위하여 데이터 처리 시스템에서 이용하는 컴퓨터 판독 가능한 프로그램을 포함하는 기록 매체로서,
    상기 서버로부터 서버 메세지를 수신하는 명령어와,
    상기 클라이언트 내의 반도체 칩의 읽기 전용 메모리 구조로부터 내장된 클라이언트 개인키를 추출하는 명령어 - 상기 내장된 클라이언트 개인키는 상기 클라이언트 외부에만 저장되어 있는 클라이언트 공개키와 연관되어 있음 - 와,
    상기 내장된 클라이언트 개인키를 사용하여 상기 서버 메세지를 해독하는 명령어
    를 포함하는 컴퓨터 판독 가능한 프로그램을 포함하는 기록 매체.
KR1020037013301A 2001-04-12 2002-04-12 컴퓨터 네트워크 내에서 응용 프로그램 코드와 콘텐트데이터의 분배 제어 KR100690417B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/833,342 2001-04-12
US09/833,342 US7603703B2 (en) 2001-04-12 2001-04-12 Method and system for controlled distribution of application code and content data within a computer network
PCT/GB2002/001738 WO2002084938A2 (en) 2001-04-12 2002-04-12 Controlled distribution of application code and content data within a computer network

Publications (2)

Publication Number Publication Date
KR20030094337A KR20030094337A (ko) 2003-12-11
KR100690417B1 true KR100690417B1 (ko) 2007-03-09

Family

ID=25264155

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020037013301A KR100690417B1 (ko) 2001-04-12 2002-04-12 컴퓨터 네트워크 내에서 응용 프로그램 코드와 콘텐트데이터의 분배 제어

Country Status (7)

Country Link
US (3) US7603703B2 (ko)
JP (1) JP2004529561A (ko)
KR (1) KR100690417B1 (ko)
CN (1) CN1502186A (ko)
AU (1) AU2002251285A1 (ko)
TW (1) TW200731736A (ko)
WO (1) WO2002084938A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101745482B1 (ko) * 2015-06-11 2017-06-20 아주대학교산학협력단 스마트홈 시스템에서의 통신 방법 및 그 장치

Families Citing this family (150)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7379731B2 (en) * 2001-05-14 2008-05-27 Ntt Docomo Inc. System for managing program applications storable in a mobile terminal
US7890771B2 (en) 2002-04-17 2011-02-15 Microsoft Corporation Saving and retrieving data based on public key encryption
US20040078584A1 (en) * 2002-08-23 2004-04-22 General Instrument Corp. Interchip transport bus copy protection
US7832011B2 (en) * 2002-08-30 2010-11-09 Symantec Corporation Method and apparatus for detecting malicious code in an information handling system
US7509679B2 (en) * 2002-08-30 2009-03-24 Symantec Corporation Method, system and computer program product for security in a global computer network transaction
US7748039B2 (en) * 2002-08-30 2010-06-29 Symantec Corporation Method and apparatus for detecting malicious code in an information handling system
US7331062B2 (en) * 2002-08-30 2008-02-12 Symantec Corporation Method, computer software, and system for providing end to end security protection of an online transaction
AU2002368304A1 (en) * 2002-10-28 2004-05-13 Nokia Corporation Device keys
US7284126B2 (en) * 2002-11-12 2007-10-16 Agilent Technologies, Inc. Device authentication using pre-configured security keys
JP2004171416A (ja) * 2002-11-21 2004-06-17 Ntt Docomo Inc 通信端末、価値実体提供サーバ、アプリケーション配信サーバ、電子購買支援システム、電子購買支援方法、及び電子購買支援プログラム
EP1586054A4 (en) * 2002-12-13 2010-12-08 Symantec Corp METHOD, SYSTEM, AND SECURING COMPUTER PROGRAM WITHIN A GLOBAL COMPUTER NETWORK
JP3941700B2 (ja) * 2003-01-28 2007-07-04 ソニー株式会社 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
TW595195B (en) * 2003-04-04 2004-06-21 Benq Corp Network lock method and related apparatus by ciphered network lock and inerasable deciphering key
US8145710B2 (en) * 2003-06-18 2012-03-27 Symantec Corporation System and method for filtering spam messages utilizing URL filtering module
US7266519B2 (en) * 2003-06-30 2007-09-04 Qualcomm Incorporated Billing system with authenticated wireless device transaction event data
KR20060132547A (ko) * 2003-09-04 2006-12-21 마츠시타 덴끼 산교 가부시키가이샤 디지털 저작물 보호 시스템 및 디지털 저작물 보호 방법
US8271588B1 (en) 2003-09-24 2012-09-18 Symantec Corporation System and method for filtering fraudulent email messages
US7721104B2 (en) * 2003-10-20 2010-05-18 Nokia Corporation System, method and computer program product for downloading pushed content
US7941490B1 (en) 2004-05-11 2011-05-10 Symantec Corporation Method and apparatus for detecting spam in email messages and email attachments
US7760882B2 (en) 2004-06-28 2010-07-20 Japan Communications, Inc. Systems and methods for mutual authentication of network nodes
US7725716B2 (en) 2004-06-28 2010-05-25 Japan Communications, Inc. Methods and systems for encrypting, transmitting, and storing electronic information and files
US8306920B1 (en) * 2004-07-28 2012-11-06 Ebay Inc. Method and system to securely store customer data in a network-based commerce system
GB0416857D0 (en) * 2004-07-29 2004-09-01 Ingenico Uk Ltd Electronic financial transactions
US7802110B2 (en) * 2004-08-25 2010-09-21 Microsoft Corporation System and method for secure execution of program code
US20060047959A1 (en) * 2004-08-25 2006-03-02 Microsoft Corporation System and method for secure computing
US7653802B2 (en) * 2004-08-27 2010-01-26 Microsoft Corporation System and method for using address lines to control memory usage
US7356668B2 (en) * 2004-08-27 2008-04-08 Microsoft Corporation System and method for using address bits to form an index into secure memory
US7734926B2 (en) * 2004-08-27 2010-06-08 Microsoft Corporation System and method for applying security to memory reads and writes
US7444523B2 (en) * 2004-08-27 2008-10-28 Microsoft Corporation System and method for using address bits to signal security attributes of data in the address space
US7822993B2 (en) * 2004-08-27 2010-10-26 Microsoft Corporation System and method for using address bits to affect encryption
US20060048236A1 (en) * 2004-09-01 2006-03-02 Microsoft Corporation Licensing the use of software to a particular user
US7849329B2 (en) * 2004-09-01 2010-12-07 Microsoft Corporation Licensing the use of a particular feature of software
US20060064761A1 (en) * 2004-09-22 2006-03-23 Microsoft Corporation Issuing unlock codes from a server with third party billing
JP2006148614A (ja) * 2004-11-22 2006-06-08 Hitachi Ltd コンテンツ受信装置、コンテンツ送信装置、コンテンツ受信方法、コンテンツ送信方法及びネットワークシステム
US7725929B2 (en) * 2005-02-22 2010-05-25 Microsoft Corporation Systems and methods for free demonstration of online premium content prior to purchase
JP4781692B2 (ja) * 2005-03-08 2011-09-28 インターナショナル・ビジネス・マシーンズ・コーポレーション クライアントのi/oアクセスを制限する方法、プログラム、システム
KR100749868B1 (ko) * 2005-04-27 2007-08-16 노키아 코포레이션 장치 키
US8010609B2 (en) * 2005-06-20 2011-08-30 Symantec Corporation Method and apparatus for maintaining reputation lists of IP addresses to detect email spam
US7739337B1 (en) 2005-06-20 2010-06-15 Symantec Corporation Method and apparatus for grouping spam email messages
KR20070029864A (ko) * 2005-09-09 2007-03-15 삼성전자주식회사 일 대 일로 데이터를 안전하게 송수신하는 방법 및 장치
KR100667820B1 (ko) * 2005-09-30 2007-01-12 삼성전자주식회사 보안 방법 및 시스템, 그 방법을 기록한 컴퓨터 판독가능한 기록매체
CN1956449B (zh) * 2005-10-28 2011-05-18 北京书生国际信息技术有限公司 数据资源防复制加密传输方法及设备系统
US20070098175A1 (en) * 2005-10-31 2007-05-03 Systech Corporation Security enabler device and method for securing data communications
CN101043325B (zh) * 2006-03-25 2010-05-12 华为技术有限公司 一种网络认证方法
KR100706511B1 (ko) 2006-06-07 2007-04-13 주식회사 케이티프리텔 복제폰이 차단되는 무선인터넷 서비스 제공 방법 및 시스템
US20080010538A1 (en) * 2006-06-27 2008-01-10 Symantec Corporation Detecting suspicious embedded malicious content in benign file formats
US20100048193A1 (en) * 2006-07-13 2010-02-25 Jean-Michel Ortion Secure upgrade of a mobile device with an individual upgrade software over the air
US20110191377A1 (en) * 2006-12-17 2011-08-04 Robert Allen Wilson Software installation authorization system
US20080313707A1 (en) * 2007-06-18 2008-12-18 Techporch, Inc. Token-based system and method for secure authentication to a service provider
US8290152B2 (en) * 2007-08-30 2012-10-16 Microsoft Corporation Management system for web service developer keys
JP5112812B2 (ja) * 2007-10-19 2013-01-09 パナソニック株式会社 遠隔医療システム
US8627079B2 (en) 2007-11-01 2014-01-07 Infineon Technologies Ag Method and system for controlling a device
US8908870B2 (en) * 2007-11-01 2014-12-09 Infineon Technologies Ag Method and system for transferring information to a device
US8135783B2 (en) * 2007-11-27 2012-03-13 Mitel Networks Corporation Method and apparatus for identifying occurrences of a given network address
US9281947B2 (en) * 2008-01-23 2016-03-08 Microsoft Technology Licensing, Llc Security mechanism within a local area network
JP4475343B2 (ja) * 2008-04-04 2010-06-09 村田機械株式会社 電子メールゲートウェイ装置
DE102008021567B4 (de) * 2008-04-30 2018-03-22 Globalfoundries Inc. Computersystem mit sicherem Hochlaufmechanismus auf der Grundlage einer Verschlüsselung mit symmetrischem Schlüssel
US20090313171A1 (en) * 2008-06-17 2009-12-17 Microsoft Corporation Electronic transaction verification
JP5319238B2 (ja) * 2008-10-29 2013-10-16 真二 栗本 情報処理システム、情報処理装置、情報処理方法、および情報処理プログラム
US9042387B2 (en) * 2009-01-16 2015-05-26 Broadcom Corporation Utilizing a gateway for brokering and/or arbitrating service consumption options
US20110004615A1 (en) * 2009-07-06 2011-01-06 Verizon Patent And Licensing System for and method of distributing device information in an internet protocol multimedia subsystem (ims)
US9565207B1 (en) 2009-09-04 2017-02-07 Amazon Technologies, Inc. Firmware updates from an external channel
US8214653B1 (en) 2009-09-04 2012-07-03 Amazon Technologies, Inc. Secured firmware updates
US8887144B1 (en) 2009-09-04 2014-11-11 Amazon Technologies, Inc. Firmware updates during limited time period
US10177934B1 (en) 2009-09-04 2019-01-08 Amazon Technologies, Inc. Firmware updates inaccessible to guests
US8971538B1 (en) 2009-09-08 2015-03-03 Amazon Technologies, Inc. Firmware validation from an external channel
US8601170B1 (en) 2009-09-08 2013-12-03 Amazon Technologies, Inc. Managing firmware update attempts
US8102881B1 (en) 2009-09-08 2012-01-24 Amazon Technologies, Inc. Streamlined guest networking in a virtualized environment
US8640220B1 (en) 2009-09-09 2014-01-28 Amazon Technologies, Inc. Co-operative secure packet management
US8959611B1 (en) 2009-09-09 2015-02-17 Amazon Technologies, Inc. Secure packet management for bare metal access
US8300641B1 (en) 2009-09-09 2012-10-30 Amazon Technologies, Inc. Leveraging physical network interface functionality for packet processing
US8381264B1 (en) 2009-09-10 2013-02-19 Amazon Technologies, Inc. Managing hardware reboot and reset in shared environments
US20110199946A1 (en) * 2010-02-17 2011-08-18 Qualcomm Incorporated Method and apparatus for supporting adaptive channel state information feedback rate in multi-user communication systems
US8923219B2 (en) 2010-02-17 2014-12-30 Qualcomm Incorporated Method and apparatus for supporting adaptive channel state information feedback rate in multi-user communication systems
CN101808097B (zh) * 2010-03-25 2013-07-10 杭州华三通信技术有限公司 一种防arp攻击方法和设备
US9098333B1 (en) 2010-05-07 2015-08-04 Ziften Technologies, Inc. Monitoring computer process resource usage
CN101923616A (zh) * 2010-08-03 2010-12-22 鸿富锦精密工业(深圳)有限公司 版权保护中的服务提供装置、用户终端及版权保护方法
US9525548B2 (en) * 2010-10-21 2016-12-20 Microsoft Technology Licensing, Llc Provisioning techniques
US8805434B2 (en) 2010-11-23 2014-08-12 Microsoft Corporation Access techniques using a mobile communication device
US9509686B2 (en) 2010-12-03 2016-11-29 Microsoft Technology Licensing, Llc Secure element authentication
WO2012097363A2 (en) * 2011-01-14 2012-07-19 Robert Wilson Software installation authorization system
EP2506176A1 (en) * 2011-03-30 2012-10-03 Irdeto Corporate B.V. Establishing unique key during chip manufacturing
US9092646B2 (en) * 2011-06-30 2015-07-28 Sonic Ip, Inc. Systems and methods for identifying consumer electronic products based on a product identifier
US8799647B2 (en) 2011-08-31 2014-08-05 Sonic Ip, Inc. Systems and methods for application identification
US9122870B2 (en) 2011-09-21 2015-09-01 SunStone Information Defense Inc. Methods and apparatus for validating communications in an open architecture system
EP3584994A1 (en) * 2011-09-30 2019-12-25 eBay, Inc. Differential client-side encryption of information originating from a client
US9787655B2 (en) 2011-12-09 2017-10-10 Airwatch Llc Controlling access to resources on a network
US8713646B2 (en) 2011-12-09 2014-04-29 Erich Stuntebeck Controlling access to resources on a network
US10257194B2 (en) 2012-02-14 2019-04-09 Airwatch Llc Distribution of variably secure resources in a networked environment
US9705813B2 (en) 2012-02-14 2017-07-11 Airwatch, Llc Controlling distribution of resources on a network
US9680763B2 (en) 2012-02-14 2017-06-13 Airwatch, Llc Controlling distribution of resources in a network
US10404615B2 (en) 2012-02-14 2019-09-03 Airwatch, Llc Controlling distribution of resources on a network
EP2672418A1 (fr) * 2012-06-06 2013-12-11 Gemalto SA Procédé d'anonymisation
US20140108804A1 (en) * 2012-10-11 2014-04-17 Sling Media Inc. System and method for verifying the authenticity of an electronic device
US9247432B2 (en) 2012-10-19 2016-01-26 Airwatch Llc Systems and methods for controlling network access
CN104737189B (zh) 2012-11-20 2021-05-04 电子湾有限公司 用于使能电子交易的环境和方法
US8832785B2 (en) 2012-12-06 2014-09-09 Airwatch, Llc Systems and methods for controlling email access
US8862868B2 (en) 2012-12-06 2014-10-14 Airwatch, Llc Systems and methods for controlling email access
US9021037B2 (en) 2012-12-06 2015-04-28 Airwatch Llc Systems and methods for controlling email access
US8978110B2 (en) 2012-12-06 2015-03-10 Airwatch Llc Systems and methods for controlling email access
US8826432B2 (en) 2012-12-06 2014-09-02 Airwatch, Llc Systems and methods for controlling email access
US9892239B2 (en) * 2013-01-29 2018-02-13 Mobitv, Inc. Digital rights management for HTTP-based media streaming
US20140280955A1 (en) 2013-03-14 2014-09-18 Sky Socket, Llc Controlling Electronically Communicated Resources
US9473417B2 (en) 2013-03-14 2016-10-18 Airwatch Llc Controlling resources used by computing devices
US9203820B2 (en) 2013-03-15 2015-12-01 Airwatch Llc Application program as key for authorizing access to resources
US9148416B2 (en) 2013-03-15 2015-09-29 Airwatch Llc Controlling physical access to secure areas via client devices in a networked environment
US9401915B2 (en) 2013-03-15 2016-07-26 Airwatch Llc Secondary device as key for authorizing access to resources
US9819682B2 (en) 2013-03-15 2017-11-14 Airwatch Llc Certificate based profile confirmation
US9378350B2 (en) 2013-03-15 2016-06-28 Airwatch Llc Facial capture managing access to resources by a device
US8997187B2 (en) 2013-03-15 2015-03-31 Airwatch Llc Delegating authorization to applications on a client device in a networked environment
US10652242B2 (en) 2013-03-15 2020-05-12 Airwatch, Llc Incremental compliance remediation
US9275245B2 (en) 2013-03-15 2016-03-01 Airwatch Llc Data access sharing
US9787686B2 (en) 2013-04-12 2017-10-10 Airwatch Llc On-demand security policy activation
US10754966B2 (en) 2013-04-13 2020-08-25 Airwatch Llc Time-based functionality restrictions
US8914013B2 (en) 2013-04-25 2014-12-16 Airwatch Llc Device management macros
US9123031B2 (en) 2013-04-26 2015-09-01 Airwatch Llc Attendance tracking via device presence
US9219741B2 (en) 2013-05-02 2015-12-22 Airwatch, Llc Time-based configuration policy toggling
US9246918B2 (en) 2013-05-10 2016-01-26 Airwatch Llc Secure application leveraging of web filter proxy services
US9058495B2 (en) 2013-05-16 2015-06-16 Airwatch Llc Rights management services integration with mobile device management
US9900261B2 (en) 2013-06-02 2018-02-20 Airwatch Llc Shared resource watermarking and management
US9584437B2 (en) 2013-06-02 2017-02-28 Airwatch Llc Resource watermarking and management
US20140358703A1 (en) 2013-06-04 2014-12-04 SkySocket, LLC Item Delivery Optimization
US9270777B2 (en) 2013-06-06 2016-02-23 Airwatch Llc Social media and data sharing controls for data security purposes
US9535857B2 (en) 2013-06-25 2017-01-03 Airwatch Llc Autonomous device interaction
US8924608B2 (en) 2013-06-25 2014-12-30 Airwatch Llc Peripheral device management
US8756426B2 (en) 2013-07-03 2014-06-17 Sky Socket, Llc Functionality watermarking and management
US8775815B2 (en) 2013-07-03 2014-07-08 Sky Socket, Llc Enterprise-specific functionality watermarking and management
US8806217B2 (en) 2013-07-03 2014-08-12 Sky Socket, Llc Functionality watermarking and management
US9226155B2 (en) 2013-07-25 2015-12-29 Airwatch Llc Data communications management
US9112749B2 (en) 2013-07-25 2015-08-18 Airwatch Llc Functionality management via application modification
US9665723B2 (en) 2013-08-15 2017-05-30 Airwatch, Llc Watermarking detection and management
US9516005B2 (en) 2013-08-20 2016-12-06 Airwatch Llc Individual-specific content management
US10129242B2 (en) 2013-09-16 2018-11-13 Airwatch Llc Multi-persona devices and management
CA2925733A1 (en) * 2013-09-30 2015-04-02 Huawei Technologies Co., Ltd. Encryption and decryption processing method, apparatus, and device
US9544306B2 (en) 2013-10-29 2017-01-10 Airwatch Llc Attempted security breach remediation
US9258301B2 (en) 2013-10-29 2016-02-09 Airwatch Llc Advanced authentication techniques
US10776457B1 (en) * 2014-07-22 2020-09-15 Epic Games, Inc. System and method for preventing execution of unauthorized code
US9584964B2 (en) 2014-12-22 2017-02-28 Airwatch Llc Enforcement of proximity based policies
US9413754B2 (en) 2014-12-23 2016-08-09 Airwatch Llc Authenticator device facilitating file security
US9948625B2 (en) 2015-01-07 2018-04-17 Cyph, Inc. Encrypted group communication method
US9794070B2 (en) * 2015-01-07 2017-10-17 Cyph, Inc. Method of ephemeral encrypted communications
US10129218B2 (en) * 2016-01-08 2018-11-13 Nicolaas Gustav Temme Method and system for receiving, processing, storing and sending data of internet connected devices
US9916446B2 (en) 2016-04-14 2018-03-13 Airwatch Llc Anonymized application scanning for mobile devices
US9917862B2 (en) 2016-04-14 2018-03-13 Airwatch Llc Integrated application scanning and mobile enterprise computing management system
US10210344B2 (en) * 2016-06-09 2019-02-19 JPS Engineering Corp. Systems and methods for cybersecurity
TWI676160B (zh) * 2017-08-02 2019-11-01 學習王科技股份有限公司 能自動調整輸出畫質的教學影片儲存裝置
CN108200063B (zh) * 2017-12-29 2020-01-03 华中科技大学 一种可搜索公钥加密方法、采用该方法的系统和服务器
EP3512231B1 (en) * 2018-01-12 2022-03-16 Deutsche Telekom AG Method for providing an enhanced level of authentication related to distribution of a secure software client application; as well as corresponding system and computer program product.
CN108599941A (zh) * 2018-04-28 2018-09-28 陶宁宇 随机非对称扩充字节通信数据加密方法
TWI815039B (zh) * 2020-09-11 2023-09-11 虹光精密工業股份有限公司 兼具安全及便利的文件付費處理裝置及系統

Family Cites Families (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US389016A (en) * 1888-09-04 Carriage for spi nning-lvi ules
US4200770A (en) * 1977-09-06 1980-04-29 Stanford University Cryptographic apparatus and method
CA2053261A1 (en) * 1989-04-28 1990-10-29 Gary D. Hornbuckle Method and apparatus for remotely controlling and monitoring the use of computer software
US5224166A (en) 1992-08-11 1993-06-29 International Business Machines Corporation System for seamless processing of encrypted and non-encrypted data and instructions
JP3082882B2 (ja) 1992-09-18 2000-08-28 日本電信電話株式会社 Icクレジットカードシステム
US5396558A (en) * 1992-09-18 1995-03-07 Nippon Telegraph And Telephone Corporation Method and apparatus for settlement of accounts by IC cards
JPH06276188A (ja) 1993-03-22 1994-09-30 Toshiba Corp 電子通信装置
NZ279622A (en) * 1994-01-13 1998-04-27 Certco Llc Encrypted secure and verifiable communication: cryptographic keys escrowed
JPH07219762A (ja) 1994-01-31 1995-08-18 Matsushita Electric Ind Co Ltd ソフトウェア保護システム
US5787172A (en) * 1994-02-24 1998-07-28 The Merdan Group, Inc. Apparatus and method for establishing a cryptographic link between elements of a system
US5598470A (en) * 1994-04-25 1997-01-28 International Business Machines Corporation Method and apparatus for enabling trial period use of software products: Method and apparatus for utilizing a decryption block
US5586186A (en) * 1994-07-15 1996-12-17 Microsoft Corporation Method and system for controlling unauthorized access to information distributed to users
US6076077A (en) * 1995-10-27 2000-06-13 Mitsubishi Corporation Data management system
US5604800A (en) * 1995-02-13 1997-02-18 Eta Technologies Corporation Personal access management system
US5559889A (en) 1995-03-31 1996-09-24 International Business Machines Corporation System and methods for data encryption using public key cryptography
US5852665A (en) * 1995-04-13 1998-12-22 Fortress U & T Ltd. Internationally regulated system for one to one cryptographic communications with national sovereignty without key escrow
US5960086A (en) * 1995-11-02 1999-09-28 Tri-Strata Security, Inc. Unified end-to-end security methods and systems for operating on insecure networks
US5708709A (en) * 1995-12-08 1998-01-13 Sun Microsystems, Inc. System and method for managing try-and-buy usage of application programs
US5802284A (en) * 1995-12-13 1998-09-01 Silicon Graphics, Inc. System and method using cover bundles to provide immediate feedback to a user in an interactive television environment
US6085320A (en) * 1996-05-15 2000-07-04 Rsa Security Inc. Client/server protocol for proving authenticity
US5848246A (en) * 1996-07-01 1998-12-08 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server session manager in an interprise computing framework system
US5913033A (en) * 1996-12-20 1999-06-15 International Business Machines Corporation Apparatus and method for retrieving information using standard objects
US6381741B1 (en) * 1998-05-18 2002-04-30 Liberate Technologies Secure data downloading, recovery and upgrading
US5875327A (en) * 1997-02-18 1999-02-23 International Business Machines Corporation Hierarchy of preferences and preference groups
US5920696A (en) * 1997-02-25 1999-07-06 International Business Machines Corporation Dynamic windowing system in a transaction base network for a client to request transactions of transient programs at a server
US5970147A (en) * 1997-09-30 1999-10-19 Intel Corporation System and method for configuring and registering a cryptographic device
US6925182B1 (en) * 1997-12-19 2005-08-02 Koninklijke Philips Electronics N.V. Administration and utilization of private keys in a networked environment
US6084969A (en) * 1997-12-31 2000-07-04 V-One Corporation Key encryption system and method, pager unit, and pager proxy for a two-way alphanumeric pager network
US6393127B2 (en) * 1998-03-02 2002-05-21 Motorola, Inc. Method for transferring an encryption key
US6336121B1 (en) * 1998-03-24 2002-01-01 Entrust Technologies, Ltd. Method and apparatus for securing and accessing data elements within a database
JPH11282667A (ja) 1998-03-31 1999-10-15 Nakamichi Corp 多重鍵方式の暗号処理機能を有するマイクロプロセッサ
US6446109B2 (en) * 1998-06-29 2002-09-03 Sun Microsystems, Inc. Application computing environment
JP2000059354A (ja) 1998-08-07 2000-02-25 Dainippon Printing Co Ltd 可搬記録媒体を利用したセッション鍵の生成方法およびデータ配送システム
JP2000148012A (ja) * 1998-11-12 2000-05-26 Fuji Xerox Co Ltd 認証装置および方法
US6694025B1 (en) * 1999-06-02 2004-02-17 Koninklijke Philips Electronics N.V. Method and apparatus for secure distribution of public/private key pairs
US6975727B1 (en) * 1999-06-22 2005-12-13 Entrust Limited Dynamic security credential generation system and method
US6574729B1 (en) * 1999-08-26 2003-06-03 Lucent Technologies Inc. System for remotely identifying and providing information of unknown software on remote network node by comparing the unknown software with software audit file maintained on server
US7310735B1 (en) * 1999-10-01 2007-12-18 International Business Machines Corporation Method, system, and program for distributing software between computer systems
US7039810B1 (en) * 1999-11-02 2006-05-02 Medtronic, Inc. Method and apparatus to secure data transfer from medical device systems
US6636975B1 (en) * 1999-12-15 2003-10-21 Identix Incorporated Accessing a secure resource using certificates bound with authentication information
JP3801833B2 (ja) 2000-02-14 2006-07-26 株式会社東芝 マイクロプロセッサ
US6895501B1 (en) * 2000-03-13 2005-05-17 Wrq, Inc. Method and apparatus for distributing, interpreting, and storing heterogeneous certificates in a homogenous public key infrastructure
US6766353B1 (en) * 2000-07-11 2004-07-20 Motorola, Inc. Method for authenticating a JAVA archive (JAR) for portable devices
JP4153653B2 (ja) 2000-10-31 2008-09-24 株式会社東芝 マイクロプロセッサおよびデータ保護方法
GB2368935A (en) * 2000-11-14 2002-05-15 Itt Mfg Enterprises Inc Updating a searchable database of descriptive information describing information stored at a plurality of addressable logical locations
US6970562B2 (en) * 2000-12-19 2005-11-29 Tricipher, Inc. System and method for crypto-key generation and use in cryptosystem
US7065642B2 (en) * 2000-12-19 2006-06-20 Tricipher, Inc. System and method for generation and use of asymmetric crypto-keys each having a public portion and multiple private portions
US7305545B2 (en) * 2001-02-14 2007-12-04 Globalcerts, Lc Automated electronic messaging encryption system
US7711122B2 (en) * 2001-03-09 2010-05-04 Arcot Systems, Inc. Method and apparatus for cryptographic key storage wherein key servers are authenticated by possession and secure distribution of stored keys
US7526795B2 (en) * 2001-03-27 2009-04-28 Micron Technology, Inc. Data security for digital data storage

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101745482B1 (ko) * 2015-06-11 2017-06-20 아주대학교산학협력단 스마트홈 시스템에서의 통신 방법 및 그 장치

Also Published As

Publication number Publication date
US7603703B2 (en) 2009-10-13
US20080016348A1 (en) 2008-01-17
US20090083542A1 (en) 2009-03-26
WO2002084938A3 (en) 2003-03-20
US7650491B2 (en) 2010-01-19
JP2004529561A (ja) 2004-09-24
WO2002084938A2 (en) 2002-10-24
AU2002251285A1 (en) 2002-10-28
TW200731736A (en) 2007-08-16
KR20030094337A (ko) 2003-12-11
CN1502186A (zh) 2004-06-02
US20020150243A1 (en) 2002-10-17

Similar Documents

Publication Publication Date Title
KR100690417B1 (ko) 컴퓨터 네트워크 내에서 응용 프로그램 코드와 콘텐트데이터의 분배 제어
KR100268095B1 (ko) 데이터통신시스템
US6108420A (en) Method and system for networked installation of uniquely customized, authenticable, and traceable software application
JP4240297B2 (ja) 端末機器、認証端末プログラム、機器認証サーバ、機器認証プログラム
CN105095696B (zh) 对应用程序进行安全认证的方法、系统及设备
US8223969B2 (en) Methods and systems for secure distribution of subscription-based game software
US7443985B2 (en) Systems and methods for providing secure server key operations
JP4818664B2 (ja) 機器情報送信方法、機器情報送信装置、機器情報送信プログラム
US20020124172A1 (en) Method and apparatus for signing and validating web pages
US20050154889A1 (en) Method and system for a flexible lightweight public-key-based mechanism for the GSS protocol
JP4769475B2 (ja) コンテンツ配信用サーバ及びこれを備えたコンテンツ配信システム
MXPA04007546A (es) Metodo y sistema para proporcionar una tercera autenticacion de autorizacion.
US9998288B2 (en) Management of secret data items used for server authentication
WO2005008442A2 (en) Ticket-based secure time delivery in digital networks
US20040243815A1 (en) System and method of distributing and controlling rights of digital content
KR100785275B1 (ko) 쿠폰을 이용한 컨텐츠 제공 방법 및 시스템
JP2004280401A (ja) コンテンツ配信システム、装置及びプログラム
JP5793593B2 (ja) ユーザ識別情報を安全に検証するためのネットワーク認証方法
KR100452766B1 (ko) 정보 암호화 방법
KR20000037038A (ko) 인터넷을 통한 온라인 소프트웨어 판매를 위한 온라인다운로드 시스템 및 재다운로드보안인증시스템
JP2006004321A (ja) セキュリティシステム
KR20010095907A (ko) 새로운 보안 기술을 이용한 컨텐츠 제공 시스템 및 그제공 방법
JP2009245087A (ja) 通信システム及びクライアント装置
CN115529139A (zh) 一种基于对象序列化的在线软件加密授权系统与方法
CN116132075A (zh) 基于虚拟键盘的数据传输方法、装置、介质及设备

Legal Events

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

Payment date: 20110110

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee