KR101139658B1 - 기록 매체, 통신 장치, 데이터 처리 방법 및 통신 시스템 - Google Patents

기록 매체, 통신 장치, 데이터 처리 방법 및 통신 시스템 Download PDF

Info

Publication number
KR101139658B1
KR101139658B1 KR1020050044038A KR20050044038A KR101139658B1 KR 101139658 B1 KR101139658 B1 KR 101139658B1 KR 1020050044038 A KR1020050044038 A KR 1020050044038A KR 20050044038 A KR20050044038 A KR 20050044038A KR 101139658 B1 KR101139658 B1 KR 101139658B1
Authority
KR
South Korea
Prior art keywords
identification data
communication device
user
data
operating environment
Prior art date
Application number
KR1020050044038A
Other languages
English (en)
Other versions
KR20060049447A (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 KR20060049447A publication Critical patent/KR20060049447A/ko
Application granted granted Critical
Publication of KR101139658B1 publication Critical patent/KR101139658B1/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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • 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

Landscapes

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

Abstract

사용자가 개인 정보를 제공하지 않고, 더구나 적은 통신량으로 사용자의 익명성과 일의성을 보증한 사용자 익명 ID를 발행할 수 있는 통신 장치를 제공한다. 이를 위해, 본 발명에 있어서, 서버 장치(S)는 기기 ID를 사용자가 재기입할 수 없음을 보증한 동작 환경을 클라이언트 장치(C)가 구비하고 있는지의 여부를 검증한 후에 해당 기기 ID를 포함하는 등록 요구에 기초하여 클라이언트 장치(C)의 사용자에게 사용자 익명 ID를 발행한다.
Figure R1020050044038
AP 벤더, 인증 기관, 클라이언트 장치, 서버 장치, 시큐러티 칩

Description

기록 매체, 통신 장치, 데이터 처리 방법 및 통신 시스템{RECORDING MEDIUM, COMMUNICATION DEVICE, DATA PROCESSING METHOD, AND COMMUNICATION SYSTEM}
도 1은 본 발명의 제1 실시예의 통신 시스템의 전체 구성도.
도 2는 도 1에 도시한 클라이언트 장치(C)의 기동시의 처리를 설명하기 위한 흐름도.
도 3은 도 1에 도시한 클라이언트 장치가 등록 요구를 행하는 경우의 처리를 설명하기 위한 흐름도.
도 4는 도 1에 도시한 서버 장치의 구성도.
도 5는 도 1에 도시한 서버 장치의 소프트웨어 환경을 설명하기 위한 도면.
도 6은 도 4에 도시한 시큐러티 칩의 구성도.
도 7은 도 4에 도시한 서버 장치의 전처리를 설명하기 위한 흐름도.
도 8은 도 4에 도시한 서버 장치의 등록 요구 처리를 설명하기 위한 흐름도.
도 9는 도 4에 도시한 서버 장치의 서비스 처리를 설명하기 위한 흐름도.
도 10은 본 발명의 제2 실시예의 클라이언트 장치가 등록 요구를 행하는 경우의 처리를 설명하기 위한 흐름도.
도 11은 본 발명의 제2 실시예의 서버 장치의 등록 요구 처리를 설명하기 위한 흐름도.
도 12는 본 발명의 제2 실시예의 서버 장치의 서비스 처리를 설명하기 위한 흐름도.
〈도면의 주요 부분에 대한 부호의 설명〉
1 : 통신 시스템
12 : AP 벤더
14 : 인증 기관
C : 클라이언트 장치
S : 서버 장치
42 : 인터페이스
43 : 메모리
45 : CPU
SC_S, SC_C : 시큐러티 칩
51 : 입출력 회로
52 : 키 생성 회로
53 : 해시 회로
54 : 난수 발생 회로
55 : 서명·암호 회로
56 : 메모리
57 : 프로세서
VBP : 기동 프로그램 검증 데이터
AP_C_hash : 어플리케이션 프로그램(AP_C)의 해시 데이터
TBL : 테이블 데이터
[특허 문헌 1] 일본 특허 공개 제2003-122946호 공보
본 발명은 네트워크 등의 통신에 있어서, 사용자의 익명성과 일의성을 보증하는 프로그램, 통신 장치, 데이터 처리 방법 및 통신 시스템에 관한 것이다.
예컨대, 채팅, 게시판 혹은 경매 등 복수의 사용자간의 커뮤니케이션의 장소를 서버 장치가 제공하는 통신 시스템이 있다.
이러한 통신 시스템에서는 상기 서버 장치는, 예컨대 사용자의 익명성을 유지하기 위해 사용자로부터의 등록 요구에 따라 해당 서버 장치내에서 고유의 사용자 익명 ID를 발행한다.
이후, 사용자는 자신에게 발행된 사용자 익명 ID를 사용하여 상기 커뮤니케이션에 참가한다.
그런데, 전술한 시스템에서는 단수의 사용자가 자신의 단말 장치를 조작하여 복수의 등록 요구를 서버 장치로 송신하고, 복수의 사용자 익명 ID를 취득하는 것이 가능해진다.
여기서는, 서버 장치가 제공하는 커뮤니케이션의 장소에서 사용자의 일의성 이 유지되지 않는다는 문제가 있다.
또는 타인의 익명 ID를 사칭하는 것이 가능하다. 패스워드의 보호가 없는 경우에는 사용자가 임의로 설정할 수 있기 때문에 간단히 사칭이 가능하다. 패스워드의 보호가 있는 경우라도, 패스워드 자체의 강도 문제(도청 등으로 누설, 추측 가능한 경우 등)에서는 여전히 사칭이 가능하고, 현상을 되돌아 봐도 이러한 피해는 다발하고 있다.
이러한 문제를 해결하기 위해, 사용자가 자신의 개인 정보를 TTP(Trusted Third Party)에 제공하고, 그것을 기초로 자신의 정당성(일의성)을 인증시키고, 그 결과에 기초하여 상기 서버 장치가 사용자 익명 ID를 발행하는 시스템이 있다.
그러나, 전술한 종래의 통신 시스템에서는 사용자는 TTP의 서버 장치에 개인 정보를 제공하여 자신을 인증시킬 필요가 있어 개인 정보의 은닉성의 관점에서 바람직하지 못하다는 문제가 있다.
또한 전술한 종래의 통신 시스템에서는, 사용자의 단말 장치는 상기 커뮤니케이션의 장소를 제공하는 서버 장치 외에 TTP의 서버 장치와도 통신을 행할 필요가 있어 통신 처리의 부담이 크다는 문제도 있다.
본 발명은 전술한 종래 기술의 문제점을 감안하여 이루어진 것으로서, 사용자가 개인 정보를 제공하지 않고, 더구나 적은 통신량으로 사용자의 익명성과 일의성을 보증한 사용자 익명 ID를 발행할 수 있는 통신 장치, 프로그램, 데이터 처리 방법 및 통신 시스템을 제공하는 것을 목적으로 한다.
전술한 종래 기술의 문제점을 해결하여 전술한 목적을 달성하기 위해 제1 발명의 프로그램은, 통신 장치를 식별하는 장치 식별 데이터를 사용자가 재기입할 수 없음을 보증한 동작 환경을 상기 통신 장치가 구비하고 있는지의 여부를 검증하는 제1 수순과, 상기 통신 장치로부터 수신한 등록 요구에 포함되는 상기 장치 식별 데이터가 미등록인지의 여부를 검증하는 제2 수순과, 상기 제1 수순에서 상기 동작 환경을 구비하고 있다고 판단하고, 또한 상기 제2 수순에서 미등록이라고 판단한 것을 조건으로 상기 등록 요구에 포함되는 상기 장치 식별 데이터를 등록하고, 사용자 익명 식별 데이터를 상기 사용자에게 발행하는 처리를 행하는 제3 수순을 컴퓨터에 실행시킨다.
제1 발명의 작용은 다음과 같다.
컴퓨터가 제1 발명의 프로그램을 실행한다.
그리고, 상기 컴퓨터가 해당 프로그램의 제1 수순에 따라 통신 장치를 식별하는 장치 식별 데이터를 사용자가 재기입할 수 없음을 보증한 동작 환경을 상기 통신 장치가 구비하고 있는지의 여부를 검증한다.
또한, 상기 컴퓨터가 해당 프로그램의 제2 수순에 따라 상기 통신 장치로부터 수신한 등록 요구에 포함되는 상기 장치 식별 데이터가 미등록인지의 여부를 검증한다.
다음으로, 상기 컴퓨터가 해당 프로그램의 제3 수순에 따라 상기 제1 수순에서 상기 동작 환경을 구비하고 있다고 판단하고, 또한 상기 제2 수순에서 미등록이 라고 판단한 것을 조건으로 상기 등록 요구에 포함되는 상기 장치 식별 데이터를 등록하고, 사용자 익명 식별 데이터를 상기 사용자에게 발행하는 처리를 행한다.
제2 발명의 통신 장치는, 다른 통신 장치로부터 등록 요구를 수신하는 인터페이스와, 상기 다른 통신 장치를 식별하는 장치 식별 데이터를 사용자가 재기입할 수 없음을 보증한 동작 환경을 상기 다른 통신 장치가 구비하고 있는지의 여부를 상기 인터페이스를 통해 상기 다른 통신 장치와 통신을 행하여 검증하고, 상기 인터페이스가 상기 다른 통신 장치로부터 수신한 등록 요구에 포함되는 상기 장치 식별 데이터가 미등록인지의 여부를 검증하고, 상기 다른 통신 장치가 상기 동작 환경을 구비하고 또한 상기 장치 식별 데이터가 미등록이라고 판단한 것을 조건으로 상기 등록 요구에 포함되는 상기 장치 식별 데이터를 등록하고, 사용자 익명 식별 데이터를 상기 사용자에게 발행하는 처리를 행하는 실행 회로를 갖는다.
제2 발명의 작용은 다음과 같다.
실행 회로가, 다른 통신 장치를 식별하는 장치 식별 데이터를 사용자가 재기입할 수 없음을 보증한 동작 환경을 상기 다른 통신 장치가 구비하고 있는지의 여부를 상기 인터페이스를 통해 상기 다른 통신 장치와 통신을 행하여 검증한다.
또한 상기 실행 회로가, 인터페이스가 상기 다른 통신 장치로부터 수신한 등록 요구에 포함되는 상기 장치 식별 데이터가 미등록인지의 여부를 검증한다.
그리고 상기 실행 회로가, 상기 다른 통신 장치가 상기 동작 환경을 구비하고 또한 상기 장치 식별 데이터가 미등록이라고 판단한 것을 조건으로 상기 등록 요구에 포함되는 상기 장치 식별 데이터를 등록하고, 사용자 익명 식별 데이터를 상기 사용자에게 발행하는 처리를 행한다.
제3 발명의 데이터 처리 방법은, 컴퓨터가 실행하는 데이터 처리 방법으로서, 통신 장치를 식별하는 장치 식별 데이터를 사용자가 재기입할 수 없음을 보증한 동작 환경을 상기 통신 장치가 구비하고 있는지의 여부를 검증하는 제1 공정과, 상기 통신 장치로부터 수신한 등록 요구에 포함되는 상기 장치 식별 데이터가 미등록인지의 여부를 검증하는 제2 공정과, 상기 제1 공정에서 상기 동작 환경을 구비하고 있다고 판단하고, 또한 상기 제2 공정에서 미등록이라고 판단한 것을 조건으로 상기 등록 요구에 포함되는 상기 장치 식별 데이터를 등록하고, 사용자 익명 식별 데이터를 상기 사용자에게 발행하는 처리를 행하는 제3 공정을 포함한다.
제4 발명의 프로그램은, 동작 환경을 인증하기 위해 이용되는 단수의 고유의 의사 익명 식별 데이터를 복수의 사용자 각각에 할당하고, 또한 상기 의사 익명 식별 데이터를 상기 복수의 사용자 각각이 재기입할 수 없음을 보증한 동작 환경을 통신 장치가 구비하고 있는지의 여부를 검증하는 제1 수순과, 상기 통신 장치로부터 수신한 상기 의사 익명 식별 데이터가 미등록인지의 여부를 검증하는 제2 수순과, 상기 제1 수순에서 상기 동작 환경을 상기 통신 장치가 구비하고 있다고 판단하고, 또한 상기 제2 수순에서 미등록이라고 판단한 경우에 상기 통신 장치로부터 수신한 상기 의사 익명 식별 데이터를 등록하고, 상기 의사 익명 식별 데이터가 등록된 사용자에게 사용자 익명 식별 데이터를 발행하는 처리를 행하는 제3 수순을 컴퓨터에 실행시킨다.
제4 발명의 프로그램의 작용은 다음과 같다.
컴퓨터가 제4 발명의 프로그램을 실행한다.
상기 컴퓨터가, 해당 프로그램의 제1 수순에 따라 동작 환경을 인증하기 위해 이용되는 단수의 고유의 의사 익명 식별 데이터를 복수의 사용자 각각에 할당하고, 또한 상기 의사 익명 식별 데이터를 상기 사용자가 재기입할 수 없음을 보증한 동작 환경을 통신 장치가 구비하고 있는지의 여부를 검증한다.
또한 상기 컴퓨터가, 해당 프로그램의 제2 수순에 따라 상기 통신 장치로부터 수신한 상기 의사 익명 식별 데이터가 미등록인지의 여부를 검증한다.
그리고 상기 컴퓨터가, 해당 프로그램의 제3 수순에 따라 상기 제1 수순에서 상기 동작 환경을 상기 통신 장치가 구비하고 있다고 판단하고, 또한 상기 제2 수순에서 미등록이라고 판단한 경우에 상기 통신 장치로부터 수신한 상기 의사 익명 식별 데이터를 등록하고, 사용자 익명 식별 데이터를 상기 등록 요구에 관계되는 상기 사용자에게 발행하는 처리를 행한다.
제5 발명의 통신 장치는, 다른 통신 장치로부터 등록 요구를 수신하는 인터페이스와, 동작 환경을 인증하기 위해 이용되는 단수의 고유의 의사 익명 식별 데이터를 복수의 사용자 각각에 할당하고, 또한 상기 의사 익명 식별 데이터를 상기 복수의 사용자 각각이 재기입할 수 없음을 보증한 동작 환경을 상기 다른 통신 장치가 구비하고 있는지의 여부를 검증하고, 상기 다른 통신 장치로부터 수신한 상기 의사 익명 식별 데이터가 미등록인지의 여부를 검증하고, 상기 동작 환경을 상기 다른 통신 장치가 구비하고 있다고 판단하고, 또한 상기 미등록이라고 판단한 경우에 상기 다른 통신 장치로부터 상기 인터페이스를 통해 수신한 상기 의사 익명 식별 데이터를 등록하고, 상기 의사 익명 식별 데이터가 등록된 사용자에게 사용자 익명 식별 데이터를 발행하는 처리를 행하는 실행 회로를 갖는다.
제5 발명의 통신 장치의 작용은 다음과 같다.
실행 회로가, 동작 환경을 인증하기 위해 이용되는 단수의 고유의 의사 익명 식별 데이터를 복수의 사용자 각각에 할당하고, 또한 상기 의사 익명 식별 데이터를 상기 사용자가 재기입할 수 없음을 보증한 동작 환경을 상기 다른 통신 장치가 구비하고 있는지의 여부를 검증한다.
또한 상기 실행 회로가, 상기 다른 통신 장치로부터 수신한 상기 의사 익명 식별 데이터가 미등록인지의 여부를 검증한다.
그리고 상기 실행 회로가, 상기 동작 환경을 상기 다른 통신 장치가 구비하고 있다고 판단하고, 또한 상기 미등록이라고 판단한 경우에 상기 다른 통신 장치로부터 상기 인터페이스를 통해 수신한 상기 의사 익명 식별 데이터를 등록하고, 사용자 익명 식별 데이터를 상기 등록 요구에 관계되는 상기 사용자에게 발행하는 처리를 행한다.
제6 발명의 데이터 처리 방법은, 동작 환경을 인증하기 위해 이용되는 단수의 고유의 의사 익명 식별 데이터를 복수의 사용자 각각에 할당하고, 또한 상기 의사 익명 식별 데이터를 상기 복수의 사용자 각각이 재기입할 수 없음을 보증한 동작 환경을 통신 장치가 구비하고 있는지의 여부를 검증하는 제1 공정과, 상기 통신 장치로부터 수신한 상기 의사 익명 식별 데이터가 미등록인지의 여부를 검증하는 제2 공정과, 상기 제1 공정에서 상기 동작 환경을 상기 통신 장치가 구비하고 있다고 판단하고, 또한 상기 제2 공정에서 미등록이라고 판단한 경우에 상기 통신 장치로부터 수신한 상기 의사 익명 식별 데이터를 등록하고, 상기 의사 익명 식별 데이터가 등록된 사용자에게 사용자 익명 식별 데이터를 발행하는 처리를 행하는 제3 공정을 포함한다.
제7 발명의 통신 시스템은, 장치 식별 데이터를 포함하는 등록 요구를 송신하는 제1 통신 장치와, 상기 제1 통신 장치로부터 수신한 상기 등록 요구에 따라 사용자 익명 식별 데이터를 발행하는 제2 통신 장치를 갖고, 상기 제2 통신 장치는 상기 제1 통신 장치를 식별하는 장치 식별 데이터를 사용자가 재기입할 수 없음을 보증한 동작 환경을 상기 제1 통신 장치가 구비하고 있는지의 여부를 인터페이스를 통해 상기 제1 통신 장치와 통신을 행하여 검증하고, 상기 제1 통신 장치로부터 수신한 등록 요구에 포함되는 상기 장치 식별 데이터가 미등록인지의 여부를 검증하고, 상기 제1 통신 장치가 상기 동작 환경을 구비하고 또한 상기 장치 식별 데이터가 미등록이라고 판단한 것을 조건으로 상기 등록 요구에 포함되는 상기 장치 식별 데이터를 등록하고, 사용자 익명 식별 데이터를 상기 사용자에게 발행하는 처리를 행한다.
<실시예>
이하, 본 발명의 실시예에 관한 통신 시스템에 대해 설명한다.
<제1 실시예>
이하, 도 1 내지 도 9를 참조하여 본 발명의 제1 실시예를 설명한다.
본 실시예는 제1 내지 제3 및 제7 발명에 대응하고 있다.
[본 발명의 구성과의 대응 관계]
먼저, 본 실시예의 구성 요소와 본 발명의 구성 요소의 대응 관계를 설명한다.
여기서, 도 1 등에 도시한 서버 장치(S)가 제2 발명의 통신 장치, 그리고 제1 및 제3 발명의 컴퓨터에 대응하고 있다.
또한, 본 실시예의 사용자 익명 ID가 본 발명의 사용자 익명 식별 데이터에 대응하고, 본 실시예의 기기 ID가 본 발명의 장치 식별 데이터에 대응하고 있다.
또한, 도 4에 도시한 인터페이스(42)가 제2 발명의 인터페이스에 대응하고, CPU(45)가 제2 발명의 실행 회로에 대응하고 있다.
또한, 도 8에 도시한 단계 ST32가 제1 발명의 제1 수순 및 제3 발명의 제1 공정에 대응하고 있다.
또한, 도 8에 도시한 단계 ST33이 제1 발명의 제2 수순 및 제3 발명의 제2 공정에 대응하고 있다.
또한, 도 8에 도시한 단계 ST34, ST35가 제1 발명의 제3 수순 및 제3 발명의 제3 공정에 대응하고 있다.
도 1은 본 발명의 제1 실시예의 통신 시스템(1)의 전체 구성도이다.
도 1에 도시한 바와 같이 통신 시스템(1)은, 예컨대 OS 벤더(10), AP 벤더(12), 인증 기관(14), 클라이언트 장치(C) 및 서버 장치(S)를 갖는다.
본 실시예에서, 클라이언트 장치(C)는 일반 사용자가 사용하는 퍼스널 컴퓨터나 휴대 전화 등이다.
또한, 서버 장치(S)는 예컨대 채팅, 게시판 혹은 경매 등 복수의 사용자간 의 커뮤니케이션의 장소를 제공하는 컴퓨터이다.
[OS 벤더(10)]
OS 벤더(10)는, 예컨대 클라이언트 장치(C)에 저장된 프로그램(BIOS_C), 로더 프로그램(L_C) 및 오퍼레이팅 시스템(OS_C)을 제공하는 벤더이다.
또한, OS 벤더(10)는 프로그램(BIOS_C), 로더 프로그램(L_C) 및 오퍼레이팅 시스템(OS_C) 각각의 해시 데이터를 생성하고, 이들을 소정의 비트 필드에 저장한 기동 프로그램 검증 데이터(VBP)를 생성하고, 이것을 참조 기동 프로그램 검증 데이터(R_VBP)로서 서버 장치(S)에 제공(송신)한다.
[AP 벤더(12)]
AP 벤더(12)는, 클라이언트 장치(C)상에서 동작하는 어플리케이션 프로그램(AP_C)을 클라이언트 장치(C)에 제공하는 벤더이다.
AP 벤더(12)는, 어플리케이션 프로그램(AP_C)의 해시 데이터를 생성하고, 이것을 참조 해시 데이터(R_AP_C)로 하여 시큐어인 상태에서 서버 장치(S)에 제공(송신)한다.
[인증 기관(14)]
인증 기관(14)은, 클라이언트 장치(C)의 시큐러티 칩(SC_C)의 공개 키 증명서 데이터(Cert_sc1)를 서버 장치(S)에 제공한다.
또한, 인증 기관(14)은 공개 키 증명서 데이터(Cert_sc1)에 대응한 비밀 키 데이터(Kpri_sc1)를 클라이언트 장치(C)에 제공한다.
이하, 클라이언트 장치(C) 및 서버 장치(S)에 대해 설명한다.
[클라이언트 장치(C)]
클라이언트 장치(C)는, 내탬퍼성 회로(하드웨어)인 시큐러티 칩(SC_C)과, 도시하지 않은 CPU, 메모리 및 네트워크(9)의 인터페이스를 갖는다.
여기서, 내탬퍼성 회로는 외부로부터 해당 회로에 대한 공격(내부 데이터의 부정 판독, 입력 주파수나 입력 전압을 소정 외로 설정하는 공격)을 가했을 때에 오동작이나 내부 데이터의 누설을 일으키지 않도록 구성된 회로이다.
본 실시예에서는, 시큐러티 칩(SC_C)은 클라이언트 장치(C)에 고유의 식별 데이터인 기기 ID를 기억하고 있다.
해당 기기 ID는 사용자에 의해 재기입할 수 없도록 보호되어 있다.
클라이언트 장치(C)는, 기동되면 프로그램(BIOS_C), 로더 프로그램(L_C), 오퍼레이팅 시스템(OS_C) 및 어플리케이션 프로그램(AP_C)을 차례로 기동하고, 이들 프로그램에 의해 기기 ID를 사용자가 재기입할 수 없음을 보증한 동작 환경을 실현한다.
또한, 클라이언트 장치(C)는 상기 기동된 프로그램의 해시 데이터를 자동적 또한 강제적으로 생성한다.
이하, 클라이언트 장치(C)의 동작예를 설명한다.
[제1 동작예]
이하, 클라이언트 장치(C)가 기동시에 행하는 동작예를 설명한다.
도 2는 해당 동작예를 설명하기 위한 흐름도이다.
단계 ST1 :
클라이언트 장치(C)의 CPU는 클라이언트 장치(C)가 기동되었는지의 여부를 판단하고, 기동되었다고 판단하면 단계 ST2로 진행한다.
단계 ST2 :
CPU는 메모리로부터 프로그램(BIOS_C), 로더 프로그램(L_C) 및 오퍼레이팅 시스템(OS_C)을 차례로 판독하여 실행(기동)한다.
계속해서, CPU는 메모리로부터 어플리케이션 프로그램(AP_C)을 판독하여 기동한다.
단계 ST3 :
시큐러티 칩(SC_C)은, 단계 ST2에서 기동된 프로그램(BIOS_C), 로더 프로그램(L_C) 및 오퍼레이팅 시스템(OS_C)의 해시 데이터를 생성하고, 이들을 소정의 비트 필드에 저장한 기동 프로그램 검증 데이터(VBP)를 생성한다.
또한, 시큐러티 칩(SC_C)은 단계 ST2에서 기동된 어플리케이션 프로그램(AP_C)의 해시 데이터(AP_C_hash)를 생성한다.
단계 ST4 :
시큐러티 칩(SC_C)은, 단계 ST3에서 생성한 기동 프로그램 검증 데이터(VBP) 및 해시 데이터(AP_C_hash)를 메모리에 기입한다.
[제2 동작예]
이하, 클라이언트 장치(C)가 사용자 익명 ID의 등록 요구를 서버 장치로 송신하는 경우의 동작예를 설명한다.
도 3은 해당 동작예를 설명하기 위한 흐름도이다.
단계 ST11 :
클라이언트 장치(C)의 CPU는, 사용자 익명 ID의 등록 요구 지시가 사용자에 의해 입력되었는지의 여부를 판단하고, 입력되었다고 판단한 것을 조건으로 단계 ST12로 진행한다.
단계 ST12 :
클라이언트 장치(C)의 CPU는 시큐러티 칩(SC_C)으로부터 기기 ID를 판독하고, 이것을 포함하는 등록 요구를 서버 장치(S)에 송신한다.
단계 ST13 :
클라이언트 장치(C)의 CPU는, 서버 장치(S)로부터 기동 프로그램 검증 데이터(VBP) 및 해시 데이터(AP_C_hash)의 요구를 수신하였는지의 여부를 판단하고, 수신하였다고 판단한 것을 조건으로 단계 ST14로 진행한다.
단계 ST14 :
클라이언트 장치(C)의 CPU는, 상기 제1 동작예에서 생성 및 기억한 기동 프로그램 검증 데이터(VBP) 및 해시 데이터(AP_C_hash)를 메모리로부터 판독하여 서버 장치(S)에 송신한다.
단계 ST15 :
클라이언트 장치(C)의 CPU는, 서버 장치(S)로부터 사용자 익명 ID와 키 데이터(K)를 수신하였는지의 여부를 판단하고, 수신하였다고 판단하면 단계 ST16으로 진행한다.
단계 ST16 :
클라이언트 장치(C)의 CPU는, 단계 ST15에서 수신한 사용자 익명 ID와 키 데이터(K)를 시큐러티 칩(SC_C)에 기입한다.
이 때, 키 데이터(K)는 클라이언트 장치(C)의 공개 키 데이터(Kpub-sc1)로 암호화되어 있고, CPU는 비밀 키 데이터(Kpri-sc1)에 기초하여 해당 키 데이터(K)를 복호하여 시큐러티 칩(SC_C)에 기입한다.
이후, 클라이언트 장치(CPU)는 서버 장치(S)에 데이터를 송신할 때에 해당 데이터를 키 데이터(K)로 암호화하고, 암호화한 데이터에 사용자 익명 ID를 부가하여 송신한다.
[서버 장치(S)]
도 4는 도 1에 도시한 서버 장치(S)의 구성도이다.
도 4에 도시한 바와 같이 서버 장치(S)는, 예컨대 인터페이스(42), 메모리(43), 시큐러티 칩(SC_S) 및 CPU(45)를 갖고, 이들이 데이터선(40)을 통해 접속되어 있다.
인터페이스(42)는 네트워크(9)를 통해 클라이언트 장치(C)와의 사이에서 데이터 및 요구의 송수신을 행한다.
메모리(43)는 프로그램(BIOS_S), 로더 프로그램(L_S), 오퍼레이팅 시스템(OS_S) 및 어플리케이션 프로그램(AP_S)을 기억한다.
CPU(45)는 메모리(43)에 기억된 여러 가지 프로그램을 판독하고, 소정의 소프트웨어 환경을 실현한다.
CPU(45)는, 예컨대 도 5에 도시한 바와 같이 CPU(45) 및 시큐러티 칩(SC_S) 등의 하드웨어상에서 프로그램(BIOS_S)을 동작시킨다.
또한, CPU(45)는 프로그램(BIOS_S)상에서 로더 프로그램(L_S)을 동작시키고, 이 로더 프로그램(L_S)에 기초하여 오퍼레이팅 시스템(OS_S)을 기동한다.
또한, CPU(45)는 오퍼레이팅 시스템(OS_S)상에서 어플리케이션 프로그램(AP_S)을 동작시킨다.
CPU(45)는 서버 장치(S)의 처리를 어플리케이션 프로그램(AP_S)에 따라 이하에 기재한 바와 같이 통괄적으로 제어한다.
또, 어플리케이션 프로그램(AP_S)이 제1 발명의 프로그램에 대응한다.
시큐러티 칩(SC)은 내탬퍼성 회로로서, 외부로부터 해당 회로에 대한 공격(내부 데이터의 부정 판독, 입력 주파수나 입력 전압을 소정 외로 설정하는 공격)을 가했을 때에 오동작이나 내부 데이터의 누설을 일으키지 않도록 구성된 회로이다.
도 6은 도 4에 도시한 시큐러티 칩(SC_S)의 구성도이다.
도 6에 도시한 바와 같이, 시큐러티 칩(SC_S)은 예컨대 입출력 회로(I/O)(51), 키 생성 회로(52), 해시 회로(53), 난수 발생 회로(54), 서명·암호 회로(55), 메모리(56) 및 프로세서(57)를 갖고, 이들이 데이터선(50)을 통해 접속되어 있다.
입출력 회로(51)는, 도 4에 도시한 데이터선(40)에 접속되어 시큐러티 칩(SC_S)의 내부와 외부 사이에서 데이터 입출력을 행한다.
키 생성 회로(52)는, 예컨대 난수 발생 회로(54)가 발생한 난수에 기초하여 시큐러티에 관계되는 여러 가지 키 데이터를 생성한다.
해시 회로(53)는 해시 데이터를 생성한다.
난수 발생 회로(54)는 난수를 발생(생성)한다.
서명·암호 회로(55)는 키 데이터를 이용한 암호화 및 복호를 행하고, 암호 데이터의 생성, 암호 데이터의 복호, 서명 데이터의 생성 및 서명 데이터의 검증을 행한다.
메모리(56)는 프로그램(PRG_SC)을 기억한다.
프로세서(57)는 도 4에 도시한 CPU(45)로부터의 제어에 따라 시큐러티 칩(SC의 동작을 통괄하여 제어한다.
이하, 서버 장치(S)의 동작예를 설명한다.
[제1 동작예]
이하, 서버 장치(S)의 전처리에 대해 설명한다.
도 7은 해당 처리를 설명하기 위한 흐름도이다.
단계 ST21 :
도 4에 도시한 서버 장치(S)의 CPU(45)는, 인터페이스(42)를 통해 OS 벤더(10)가 제공하는 전술한 참조 기동 프로그램 검증 데이터(R_VBP)를 입력, 이것을 메모리(43)에 기입한다.
단계 ST22 :
CPU(45)는, 예컨대 인터페이스(42)를 통해 AP 벤더(12)가 제공하는 참조 해시 데이터(R_AP_C)를 입력하고, 이것을 메모리(43)에 기입한다.
단계 ST23 :
CPU(45)는, 예컨대 인터페이스(42)를 통해 인증 기관(14)이 제공하는 공개 키 증명 데이터(Cert_sc1)를 입력하고, 이것을 메모리(43)에 기입한다.
또, 공개 키 증명 데이터(Cert_sc1)에는 공개 키 데이터가 포함된다.
[제2 동작예]
이하, 클라이언트 장치(C)로부터 등록 요구를 수신한 경우에 있어서의 서버 장치(S)의 동작예를 설명한다.
도 8은 해당 동작예를 설명하기 위한 흐름도이다.
단계 ST31 :
도 4에 도시한 서버 장치(S)의 CPU(45)는, 인터페이스(42)를 통해 클라이언트 장치(C)로부터 등록 요구를 수신하였는지의 여부를 판단하고, 수신하였다고 판단한 것을 조건으로 단계 ST32으로 진행한다.
단계 ST32 :
CPU(45)는, 통신처인 클라이언트 장치(C)의 동작 환경을 검증한다.
구체적으로 설명하면, CPU(45)는 인터페이스(42)를 통해 클라이언트 장치(C)에 기동 프로그램 검증 데이터(VBP) 및 해시 데이터(AP_C_hash)를 요구한다.
그리고 CPU(45)는, 상기 요구에 따라 클라이언트 장치(C)로부터 인터페이스(42)를 통해 수신한 기동 프로그램 검증 데이터(VBP) 및 해시 데이터(AP_C_hash)와, 도 7에 도시한 단계 ST21, ST22에서 기억한 참조 기동 프로그램 검증 데이터(R_VBP) 및 참조 해시 데이터(R_AP_C)를 각각 비교하고, 쌍방이 일치하고 있는 경우에 클라이언트 장치(C)의 동작 환경이 정당하다고 판단하고, 그렇지 않은 경우에 해당 동작 환경이 부당하다고 판단한다.
본 실시예에 있어서, 클라이언트 장치(C)의 정당한 동작 환경이란, 클라이언트 장치(C)에서 프로그램(BIOS_C), 로더 프로그램(L_C), 오퍼레이팅 시스템(OS_C) 및 어플리케이션 프로그램(AP_C)이 기동되어 있는 것, 즉 기기 ID를 사용자가 재기입할 수 없음을 보증하는 동작 환경이다.
또한, 해당 동작 환경에서는 등록 요구에 기기 ID가 자동적(강제적)으로 부가된다.
단계 ST33 :
CPU(45)는, 단계 ST31에서 수신한 등록 요구에 포함되는 클라이언트 장치(C)의 기기 ID를 취득하고, 이 기기 ID가 이미 등록된 것인지의 여부를 검증한다.
단계 ST34 :
CPU(45)는, 단계 ST32에서 클라이언트 장치(C)의 동작 환경이 정당하다고 판단하고, 또한 단계 ST33에서 기기 ID가 미등록이라고 판단하면, 단계 ST35로 진행하고, 그렇지 않은 경우에는 처리를 종료한다.
단계 ST35 :
CPU(45)는, 예컨대 서버 장치(S)의 프로바이더내에서 고유의 사용자 익명 ID를 발행한다.
또한, 도 6에 도시한 키 생성 회로(52)가 시큐러티 칩(SC_S)이 CPU(45)의 제어에 따라 상기 발행한 사용자 익명 ID에 대응한 키 데이터(K)를 생성한다.
단계 ST36 :
CPU(45)는, 단계 ST33에서 취득한 기기 ID와, 단계 ST35에서 생성한 사용자 익명 ID와, 키 데이터(K)를 대응시켜 나타내는 항목을 테이블 데이터(TBL)에 등록한다.
[제3 동작예]
이하, 클라이언트 장치(C)로부터 데이터를 수신한 경우에 있어서의 서버 장치(S)의 동작예를 설명한다.
도 9는 해당 동작예를 설명하기 위한 흐름도이다.
단계 ST51 :
도 4에 도시한 서버 장치(S)의 인터페이스(42)가 클라이언트 장치(C)로부터 데이터를 수신한다.
해당 데이터에는 사용자 익명 ID와, 전술한 키 데이터(K)로 암호화된 암호 데이터가 포함되어 있다.
단계 ST52 :
서버 장치(S)의 CPU(45)가, 단계 ST51에서 수신한 데이터로부터 사용자 익명 ID를 취득한다.
단계 ST53 :
CPU(45)가, 도 8에 도시한 단계 ST36에서 설명한 테이블 데이터(TBL)로부터 단계 ST52에서 취득한 사용자 익명 ID에 대응한 키 데이터(K)를 취득한다.
단계 ST54 :
CPU(45)가, 단계 ST51에서 수신한 데이터에 포함되는 암호 데이터를 단계 ST53에서 취득한 키 데이터(K)에 기초하여 복호한다.
단계 ST55 :
CPU(45)는, 단계 ST54에서 복호된 데이터가 적절하게 복호된 것인지의 여부를 판단하고, 적절하게 복호되었다고 판단하면 단계 ST56로 진행하고, 그렇지 않은 경우에는 단계 ST57로 진행한다.
단계 ST56 :
CPU(45)는, 단계 ST54에서 복호된 데이터를 이용하여 소정의 서비스를 제공한다.
예컨대, CPU(45)는 단계 ST54에서 복호한 데이터가 게시판으로의 게재 사항인 경우에 해당 데이터를 게시판에 업로드하는 처리를 행한다.
단계 ST57 :
CPU(45)는, 단계 ST54에서 복호된 데이터를 이용한 서비스를 제공하지 않고, 그 취지를 클라이언트 장치(C)에 통지한다.
이상 설명한 바와 같이, 통신 시스템(1)에서는 서버 장치(S)가 클라이언트 장치(C)에 있어서 프로그램(BIOS_C), 로더 프로그램(L_C), 오퍼레이팅 시스템(OS_C) 및 어플리케이션 프로그램(AP_C)이 기동되어 있는 것, 즉 기기 ID를 사용자가 재기입할 수 없음을 보증하는 동작 환경인 것을 도 8에 도시한 단계 ST32, ST34에서 검증한 후에 사용자 익명 ID를 발행한다.
따라서, 클라이언트 장치(C)의 단수의 사용자가 복수의 사용자 익명 ID를 취득하는 것을 회피할 수 있고, 사용자 익명 ID의 일의성을 TTP의 서버 장치를 통하 지 않고 보증할 수 있다.
이에 따라, 클라이언트 장치(C)의 사용자는 TTP의 서버 장치에 자신의 개인 정보를 제공할 필요가 없기 때문에, 개인 정보의 은닉성을 높일 수 있다. 또한, 클라이언트 장치(C) 및 서버 장치(S)는 직접 통신을 행하고, TTP의 서버 장치와 통신을 행하지 않기 때문에 통신 처리의 부담을 경감할 수 있다.
또한 통신 시스템(1)에 따르면, 정당 사용자 행세를 하여 서버 장치(S)가 저장하는 타인의 정보를 부정하게 개찬하는 것도 방지할 수 있다.
<제2 실시예>
이하, 도 10 내지 도 12를 참조하여 본 발명의 제2 실시예를 설명한다.
본 실시예는 제4 내지 제6 발명에 대응하고 있다.
전술한 실시예에서는, 클라이언트 장치(C)를 단수의 사용자가 사용하는 경우에 등록 요구에 포함되는 기기 ID가 테이블 데이터(TBL)에 등록시켜져 있는지의 여부에 기초하여 사용자 익명 ID를 발행할지의 여부를 결정하였다.
본 실시예에서는, 클라이언트 장치(C)가 복수의 사용자에 의해 사용되는 경우에 각 사용자에게 개별의 키 데이터(PEK)를 생성한다.
클라이언트 장치(C)는, 기동되면, 프로그램(BIOS_C), 로더 프로그램(L_C), 오퍼레이팅 시스템(OS_C) 및 어플리케이션 프로그램(AP_C)을 차례로 기동하고, 이들의 프로그램에 의해 이하에 기재하는 동작 환경을 구비한다.
즉, 클라이언트 장치(C)는 동작 환경을 인증하기 위해 이용되는 복수의 키 데이터(PEK)를 생성(발행)하고, 단수의 사용자에 대해 단수의 고유의 키 데이터 (PEK)를 할당하고, 또한 키 데이터(PEK)를 사용자가 재기입할 수 없음을 보증한 동작 환경을 구비하고 있다.
[본 발명의 구성과의 대응 관계]
먼저, 본 실시예의 구성 요소와 본 발명의 구성 요소의 대응 관계를 설명한다.
여기서, 도 1 등에 도시한 서버 장치(S)가 제2 발명의 통신 장치, 그리고 제1 및 제3 발명의 컴퓨터에 대응하고 있다.
또한, 본 실시예의 사용자 익명 ID가 본 발명의 사용자 익명 식별 데이터에 대응하고, 본 실시예의 키 데이터(PEK)가 본 발명의 의사 익명 식별 데이터에 대응하고 있다.
또한, 도 4에 도시한 인터페이스(42)가 제2 발명의 인터페이스에 대응하고, CPU(45)가 제2 발명의 실행 회로에 대응하고 있다.
또한, 도 10에 도시한 단계 ST72가 제4 발명의 제1 수순 및 제6 발명의 제1 공정에 대응하고 있다.
또한, 도 10에 도시한 단계 ST75가 제4 발명의 제2 수순 및 제6 발명의 제2 공정에 대응하고 있다.
또한, 도 10에 도시한 단계 ST76이 제4 발명의 제3 수순 및 제6 발명의 제3 공정에 대응하고 있다.
먼저, 본 실시예에 있어서의 클라이언트 장치(C)가 사용자 익명 ID의 등록 요구를 서버 장치로 송신하는 경우의 동작예를 설명한다.
도 10은 해당 동작예를 설명하기 위한 흐름도이다.
단계 ST61 :
클라이언트 장치(C)의 CPU는, 사용자 익명 ID의 등록 요구 지시가 사용자에 의해 입력되었는지의 여부를 판단하고, 입력되었다고 판단한 것을 조건으로 단계 ST62로 진행한다.
단계 ST62 :
클라이언트 장치(C)의 CPU는 등록 요구를 서버 장치(S)에 송신한다.
단계 ST63 :
클라이언트 장치(C)의 CPU는, 서버 장치(S)로부터 PEK의 요구를 수신하였는지의 여부를 판단하고, 수신하였다고 판단한 것을 조건으로 단계 ST64로 진행한다.
단계 ST64 :
클라이언트 장치(C)의 CPU는 시큐러티 칩(SC)에 키 데이터(PEK)를 생성시킨다.
여기서, 키 데이터(PEK)는 의사 익명 인증 데이터라고 불리고, 사용자 인증 데이터와는 달리 그 사용자가 사용하는 플랫폼(동작 환경)의 인증에 이용된다.
본 실시예에서는, 클라이언트 장치(C)의 시큐러티 칩(SC_C)이 소정의 TTP(Trusted Third Party)의 서버 장치와 통신을 행하여 공개 키 데이터와 비밀 키 데이터의 쌍을 생성한다. 그리고, 시큐러티 칩(SC_C)이 해당 공개 키 데이터를 TTP의 서버 장치로 송신하여 서명 데이터를 부가한다.
본 실시예에서는, 시큐러티 칩(SC_C)은 복수의 키 데이터(PEK)를 생성(발행) 하고, 단수의 사용자에 대해 단수의 키 데이터(PEK)를 할당한다. 또한, 본 실시예에서는 사용자는 키 데이터(PEK)를 재기입할 수 없다.
단계 ST65 :
클라이언트 장치(C)의 CPU는, 서버 장치(S)로부터 기동 프로그램 검증 데이터(VBP) 및 해시 데이터(AP_C_hash)의 요구를 수신하였는지의 여부를 판단하고, 수신하였다고 판단한 것을 조건으로 단계 ST66으로 진행한다.
단계 ST66 :
클라이언트 장치(C)의 CPU는, 상기 제1 동작예에서 생성 및 기억한 기동 프로그램 검증 데이터(VBP) 및 해시 데이터(AP_C_hash)를 판독하여 서버 장치(S)에 송신한다.
단계 ST67 :
클라이언트 장치(C)의 CPU는, 서버 장치(S)로부터 사용자 익명 ID를 수신하였는지의 여부를 판단하고, 수신하였다고 판단하면 단계 ST68로 진행한다.
단계 ST68 :
클라이언트 장치(C)의 CPU는, 단계 ST64에서 생성한 키 데이터(PEK)와, 단계 ST67에서 수신한 사용자 익명 ID를 대응하여 시큐러티 칩(SC_C)에 기입한다.
이후, 클라이언트 장치(CPU)는, 서버 장치(S)에 데이터를 송신할 때에 해당 데이터를 키 데이터(PEK)로 암호화하고, 암호화한 데이터에 사용자 익명 ID를 부가하여 송신한다.
이하, 클라이언트 장치(C)로부터 등록 요구를 수신한 경우에 있어서의 서버 장치(S)의 동작예를 설명한다.
도 11은 해당 동작예를 설명하기 위한 흐름도이다.
단계 ST71 :
도 4에 도시한 서버 장치(S)의 CPU(45)는, 인터페이스(42)를 통해 클라이언트 장치(C)로부터 등록 요구를 수신하였는지의 여부를 판단하고, 수신하였다고 판단한 것을 조건으로 단계 ST72로 진행한다.
단계 ST72 :
CPU(45)는 통신처인 클라이언트 장치(C)의 동작 환경을 검증한다.
구체적으로 설명하면, CPU(45)는 인터페이스(42)를 통해 클라이언트 장치(C)에 기동 프로그램 검증 데이터(VBP) 및 해시 데이터(AP_C_hash)를 요구한다.
그리고, CPU(45)는 상기 요구에 따라 클라이언트 장치(C)로부터 인터페이스(42)를 통해 수신한 기동 프로그램 검증 데이터(VBP) 및 해시 데이터(AP_C_hash)와, 도 7에 도시한 단계 ST21, ST22에서 기억한 참조 기동 프로그램 검증 데이터(R_VBP) 및 참조 해시 데이터(R_AP_C)를 각각 비교하고, 쌍방이 일치하고 있는 경우에 클라이언트 장치(C)의 동작 환경이 정당하다고 판단하고, 그렇지 않은 경우에 해당 동작 환경이 부당하다고 판단한다.
본 실시예에서, 클라이언트 장치(C)의 정당한 동작 환경이란, 동작 환경을 인증하기 위해 이용되는 복수의 키 데이터(PEK)를 생성(발행)하고, 단수의 사용자에 대해 단수의 키 데이터(PEK)를 할당하고, 또한 키 데이터(PEK)를 사용자가 재기입할 수 없음을 보증하는 동작 환경이다.
단계 ST73 :
CPU(45)는, 단계 ST72에서 클라이언트 장치(C)의 동작 환경이 정당하다고 판단하면 단계 ST74로 진행하고, 그렇지 않은 경우에는 처리를 종료한다.
단계 ST74 :
CPU(45)는 인터페이스(42)를 통해 클라이언트 장치(C)에 키 데이터(PEK)를 요구하고, 이것을 클라이언트 장치(C)로부터 인터페이스(42)를 통해 수신한다.
단계 ST75 :
CPU(45)는, 테이블 데이터(TBL)를 참조하여 키 데이터(PEK)가 미등록인지의 여부를 검증하고, 미등록이다고 판단하면 단계 ST76으로 진행하고, 미등록이 아니라고 판단하면 처리를 종료하고, 그 취지를 클라이언트 장치(C)에 송신한다.
단계 ST76 :
CPU(45)는, 예컨대 서버 장치(S)의 프로바이더내에서 고유의 사용자 익명 ID를 발행한다.
단계 ST77 :
CPU(45)는, 단계 ST74에서 수신한 키 데이터(PEK)와, 단계 ST76에서 생성한 사용자 익명 ID를 대응시켜 나타내는 항목을 테이블 데이터(TBL)에 등록한다.
이하, 클라이언트 장치(C)로부터 데이터를 수신한 경우에 있어서의 서버 장치(S)의 동작예를 설명한다.
도 12는 해당 동작예를 설명하기 위한 흐름도이다.
단계 ST81 :
도 4에 도시한 서버 장치(S)의 인터페이스(42)가 클라이언트 장치(C)로부터 데이터를 수신한다.
해당 데이터에는 사용자 익명 ID와, 전술한 키 데이터(PEK)로 암호화된 암호 데이터가 포함되어 있다.
단계 ST82 :
서버 장치(S)의 CPU(45)가, 단계 ST81에서 수신한 데이터로부터 사용자 익명 ID를 취득한다.
단계 ST83 :
CPU(45)가, 도 11에 도시한 단계 ST77에서 설명한 테이블 데이터(TBL)로부터 단계 ST82에서 취득한 사용자 익명 ID에 대응한 키 데이터(PEK)를 취득한다.
단계 ST84 :
CPU(45)가, 단계 ST81에서 수신한 데이터에 포함되는 암호 데이터를, 단계 ST83에서 취득한 키 데이터(PEK)에 기초하여 복호한다.
단계 ST85 :
CPU(45)는, 단계 ST84에서 복호된 데이터가 적절하게 복호된 것인지의 여부를 판단하고, 적절하게 복호되었다고 판단하면 단계 ST86으로 진행하고, 그렇지 않은 경우에는 단계 ST87로 진행한다.
단계 ST86 :
CPU(45)는, 단계 ST84에서 복호된 데이터를 이용하여 소정의 서비스를 제공한다.
예컨대, CPU(45)는 단계 ST84에서 복호한 데이터가 게시판으로의 게재 사항인 경우에 해당 데이터를 게시판에 업로드하는 처리를 행한다.
단계 ST87 :
CPU(45)는, 단계 ST84에서 복호된 데이터를 이용한 서비스를 제공하지 않고, 그 취지를 클라이언트 장치(C)에 통지한다.
이상 설명한 바와 같이 본 실시예에 따르면, 클라이언트 장치(C)가 복수의 사용자에게 사용되는 경우라도, 클라이언트 장치(C)의 단수의 사용자가 복수의 사용자 익명 ID의 등록 요구를 송신하는 것을 회피할 수 있고, 등록 요구에 대응한 키 데이터(PEK)가 상이하면, 사용자 익명 ID의 일의성을 TTP의 서버 장치를 통하지않고 보증할 수 있다.
이에 따라, 클라이언트 장치(C)의 사용자는 TTP의 서버 장치에 자신의 개인 정보를 제공할 필요가 없기 때문에, 개인 정보의 은닉성을 높일 수 있다. 또한, 클라이언트 장치(C) 및 서버 장치(S)는 직접 통신을 행하고, TTP의 서버 장치와 통신을 행하지 않기 때문에 통신 처리의 부담을 경감할 수 있다.
본 발명은 전술한 실시예에는 한정되지 않는다.
전술한 실시예에서는 서버 장치(S)가 게시판을 제공하는 경우를 예시하였으나, 서버 장치(S)는 채팅, 경매 등 오픈된 네트워크(9)에서 익명성과 일의성이 요구되는 사용자 익명 ID를 이용한 서비스를 제공하는 것이라면 특별히 한정되지 않는다.
또한, 본 발명은 예컨대 네트워크 서비스에 있어서 사용자의 개인 정보를 제 공하지 않고, 그 개인마다 그 특성에 따른 커스터마이즈를 행하는 서비스에 대해서도 적용 가능하다.
또한, 전술한 제2 실시예에서는 서버 장치(S)로부터의 요구에 따라 클라이언트 장치(C)가 키 데이터(PEK)를 생성하여 서버 장치(S)에 송신하는 경우를 예시하였다.
본 발명은, 예컨대 서버 장치(S)가 등록 요구에 미리 생성한 키 데이터(PEK)를 포함하게 해도 된다. 또한, 등록 요구에 자신이 희망하는 사용자 익명 ID를 더 포함하게 해도 된다.
또한, 제1 실시예의 키 데이터(K) 혹은 제2 실시예의 키 데이터(PEK)로서, 사용자의 패스 프레임, 생체 정보 혹은 키 디바이스(IC 카드의 ID) 등을 조합하여 이용해도 된다.
본 발명에 따르면, 사용자가 개인 정보를 제공하지 않고, 더구나 적은 통신량으로 사용자의 익명성과 일의성을 보증한 사용자 익명 ID를 발행할 수 있는 통신 장치, 프로그램, 데이터 처리 방법 및 통신 시스템을 제공할 수 있다.
본 발명은, 네트워크 등의 통신에 있어서 사용자의 익명성과 일의성이 요구되는 시스템에 적용 가능하다.

Claims (11)

  1. 통신 장치를 식별하는 장치 식별 데이터를 사용자가 재기입할 수 없음을 보증한 동작 환경을 상기 통신 장치가 구비하고 있는지의 여부를 검증하는 제1 수순과,
    상기 통신 장치로부터 수신한 등록 요구에 포함되는 상기 장치 식별 데이터가 미등록인지의 여부를 검증하는 제2 수순과,
    상기 제1 수순에서 상기 동작 환경을 구비하고 있다고 판단하고, 또한 상기 제2 수순에서 미등록이라고 판단한 것을 조건으로 상기 등록 요구에 포함되는 상기 장치 식별 데이터를 등록하고, 사용자 익명 식별 데이터를 상기 사용자에게 발행하는 처리를 행하는 제3 수순을 컴퓨터에 실행시키는 프로그램을 기록한 컴퓨터 판독가능한 기록 매체.
  2. 제1항에 있어서,
    상기 제1 수순은 상기 통신 장치 상에서 현재 동작 중인 프로그램들의 해시 데이터를 상기 통신 장치로부터 수신하고, 그 수신한 해시 데이터와 미리 저장한 해시 데이터를 비교하여 상기 검증을 행하는 프로그램을 기록한 컴퓨터 판독가능한 기록 매체.
  3. 제2항에 있어서,
    상기 통신 장치로부터 수신한 상기 해시 데이터는, 상기 통신 장치에서 프로그램이 기동되었을 때에 그 통신 장치에서 자동적으로 생성된 것인 프로그램을 기록한 컴퓨터 판독가능한 기록 매체.
  4. 제1항에 있어서,
    상기 제3 수순은 키 데이터를 발행하고, 그 키 데이터를 상기 사용자 익명 식별 데이터에 대응시켜 기억하고,
    상기 프로그램은,
    상기 제3 수순에서 발행한 상기 사용자 익명 식별 데이터와 대응시켜 수신한 암호 데이터를, 상기 제3 수순에서 상기 사용자 익명 식별 데이터에 대응시킨 상기 키 데이터를 이용하여 복호하는 프로그램을 기록한 컴퓨터 판독가능한 기록 매체.
  5. 다른 통신 장치로부터 등록 요구를 수신하는 인터페이스와,
    상기 다른 통신 장치를 식별하는 장치 식별 데이터를 사용자가 재기입할 수 없음을 보증한 동작 환경을 상기 다른 통신 장치가 구비하고 있는지의 여부를 상기 인터페이스를 통해 상기 다른 통신 장치와 통신을 행하여 검증하고, 상기 인터페이스가 상기 다른 통신 장치로부터 수신한 등록 요구에 포함되는 상기 장치 식별 데이터가 미등록인지의 여부를 검증하고, 상기 다른 통신 장치가 상기 동작 환경을 구비하고 또한 상기 장치 식별 데이터가 미등록이라고 판단한 것을 조건으로 상기 등록 요구에 포함되는 상기 장치 식별 데이터를 등록하고, 사용자 익명 식별 데이터를 상기 사용자에게 발행하는 처리를 행하는 실행 회로를 갖는 통신 장치.
  6. 컴퓨터가 실행하는 데이터 처리 방법으로서,
    통신 장치를 식별하는 장치 식별 데이터를 사용자가 재기입할 수 없음을 보증한 동작 환경을 상기 통신 장치가 구비하고 있는지의 여부를 검증하는 제1 공정과,
    상기 통신 장치로부터 수신한 등록 요구에 포함되는 상기 장치 식별 데이터가 미등록인지의 여부를 검증하는 제2 공정과,
    상기 제1 공정에서 상기 동작 환경을 구비하고 있다고 판단하고, 또한 상기 제2 공정에서 미등록이라고 판단한 것을 조건으로 상기 등록 요구에 포함되는 상기 장치 식별 데이터를 등록하고, 사용자 익명 식별 데이터를 상기 사용자에게 발행하는 처리를 행하는 제3 공정을 갖는 데이터 처리 방법.
  7. 동작 환경을 인증하기 위해 이용되는 단수의 고유의 의사 익명 식별 데이터를 복수의 사용자 각각에 할당하고, 또한 상기 의사 익명 식별 데이터를 상기 복수의 사용자 각각이 재기입할 수 없음을 보증한 동작 환경을 통신 장치가 구비하고 있는지의 여부를 검증하는 제1 수순과,
    상기 통신 장치로부터 수신한 상기 의사 익명 식별 데이터가 미등록인지의 여부를 검증하는 제2 수순과,
    상기 제1 수순에서 상기 동작 환경을 상기 통신 장치가 구비하고 있다고 판단하고, 또한 상기 제2 수순에서 미등록이라고 판단한 경우에 상기 통신 장치로부터 수신한 상기 의사 익명 식별 데이터를 등록하고, 상기 의사 익명 식별 데이터가 등록된 사용자에게 사용자 익명 식별 데이터를 발행하는 처리를 행하는 제3 수순을 컴퓨터에 실행시키는 프로그램을 기록한 컴퓨터 판독가능한 기록 매체.
  8. 제7항에 있어서,
    상기 제3 수순은 상기 의사 익명 식별 데이터를 상기 사용자 익명 식별 데이터에 대응시켜 기억하고,
    상기 프로그램은,
    상기 제3 수순에서 발행한 상기 사용자 익명 식별 데이터와 대응시켜 수신한 암호 데이터를 상기 제3 수순에서 상기 사용자 익명 식별 데이터에 대응시킨 상기 의사 익명 식별 데이터를 이용하여 복호하는 프로그램을 기록한 컴퓨터 판독가능한 기록 매체.
  9. 다른 통신 장치로부터 등록 요구를 수신하는 인터페이스와,
    동작 환경을 인증하기 위해 이용되는 단수의 고유의 의사 익명 식별 데이터를 복수의 사용자 각각에 할당하고, 또한 상기 의사 익명 식별 데이터를 상기 복수의 사용자 각각이 재기입할 수 없음을 보증한 동작 환경을 상기 다른 통신 장치가 구비하고 있는지의 여부를 검증하고, 상기 다른 통신 장치로부터 수신한 상기 의사 익명 식별 데이터가 미등록인지의 여부를 검증하고, 상기 검증에 있어서 상기 동작 환경을 상기 다른 통신 장치가 구비하고 있다고 판단하고, 또한 상기 미등록이라고 판단한 경우에 상기 다른 통신 장치로부터 상기 인터페이스를 통해 수신한 상기 의사 익명 식별 데이터를 등록하고, 상기 의사 익명 식별 데이터가 등록된 사용자에게 사용자 익명 식별 데이터를 발행하는 처리를 행하는 실행 회로를 갖는 통신 장치.
  10. 컴퓨터가 실행하는 데이터 처리 방법으로서,
    동작 환경을 인증하기 위해 이용되는 단수의 고유의 의사 익명 식별 데이터를 복수의 사용자 각각에 할당하고, 또한 상기 의사 익명 식별 데이터를 상기 복수의 사용자 각각이 재기입할 수 없음을 보증한 동작 환경을 통신 장치가 구비하고 있는지의 여부를 검증하는 제1 공정과,
    상기 통신 장치로부터 수신한 상기 의사 익명 식별 데이터가 미등록인지의 여부를 검증하는 제2 공정과,
    상기 제1 공정에서 상기 동작 환경을 상기 통신 장치가 구비하고 있다고 판단하고, 또한 상기 제2 공정에서 미등록이라고 판단한 경우에 상기 통신 장치로부터 수신한 상기 의사 익명 식별 데이터를 등록하고, 상기 의사 익명 식별 데이터가 등록된 사용자에게 사용자 익명 식별 데이터를 발행하는 처리를 행하는 제3 공정을 갖는 데이터 처리 방법.
  11. 장치 식별 데이터를 포함하는 등록 요구를 송신하는 제1 통신 장치와,
    상기 제1 통신 장치로부터 수신한 상기 등록 요구에 따라 사용자 익명 식별 데이터를 발행하는 제2 통신 장치를 갖고,
    상기 제2 통신 장치는,
    상기 제1 통신 장치를 식별하는 장치 식별 데이터를 사용자가 재기입할 수 없음을 보증한 동작 환경을 상기 제1 통신 장치가 구비하고 있는지의 여부를 인터페이스를 통해 상기 제1 통신 장치와 통신을 행하여 검증하고, 상기 제1 통신 장치로부터 수신한 등록 요구에 포함되는 상기 장치 식별 데이터가 미등록인지의 여부를 검증하고, 상기 제1 통신 장치가 상기 동작 환경을 구비하고 또한 상기 장치 식별 데이터가 미등록이라고 판단한 것을 조건으로 상기 등록 요구에 포함되는 상기 장치 식별 데이터를 등록하고, 사용자 익명 식별 데이터를 상기 사용자에게 발행하는 처리를 행하는 통신 시스템.
KR1020050044038A 2004-05-26 2005-05-25 기록 매체, 통신 장치, 데이터 처리 방법 및 통신 시스템 KR101139658B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004155922A JP4265479B2 (ja) 2004-05-26 2004-05-26 通信システム
JPJP-P-2004-00155922 2004-05-26

Publications (2)

Publication Number Publication Date
KR20060049447A KR20060049447A (ko) 2006-05-19
KR101139658B1 true KR101139658B1 (ko) 2012-05-16

Family

ID=35426768

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050044038A KR101139658B1 (ko) 2004-05-26 2005-05-25 기록 매체, 통신 장치, 데이터 처리 방법 및 통신 시스템

Country Status (4)

Country Link
US (1) US8484449B2 (ko)
JP (1) JP4265479B2 (ko)
KR (1) KR101139658B1 (ko)
CN (1) CN1703001B (ko)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006083761A2 (en) * 2005-02-03 2006-08-10 Alza Corporation Solvent/polymer solutions as suspension vehicles
JP2007280256A (ja) * 2006-04-11 2007-10-25 Nippon Telegr & Teleph Corp <Ntt> Idプライバシ保護方法、idプライバシ保護システム、idプライバシ保護セキュリティサーバ、idプライバシ保護リーダ装置、idプライバシ保護サーバプログラム及びidプライバシ保護リーダプログラム
KR100843081B1 (ko) 2006-12-06 2008-07-02 삼성전자주식회사 보안 제공 시스템 및 방법
KR20080058833A (ko) * 2006-12-22 2008-06-26 삼성전자주식회사 개인 정보 보호 장치 및 방법
US20080178257A1 (en) * 2007-01-20 2008-07-24 Takuya Mishina Method for integrity metrics management
JP2009070020A (ja) * 2007-09-12 2009-04-02 Nec Corp オンラインサービス提供システム、個人端末、管理サーバ、オンラインサービスの提供方法、およびプログラム
US9047458B2 (en) 2009-06-19 2015-06-02 Deviceauthority, Inc. Network access protection
US9047450B2 (en) * 2009-06-19 2015-06-02 Deviceauthority, Inc. Identification of embedded system devices
US20100333213A1 (en) * 2009-06-24 2010-12-30 Craig Stephen Etchegoyen Systems and Methods for Determining Authorization to Operate Licensed Software Based on a Client Device Fingerprint
US9075958B2 (en) * 2009-06-24 2015-07-07 Uniloc Luxembourg S.A. Use of fingerprint with an on-line or networked auction
US20100332400A1 (en) * 2009-06-24 2010-12-30 Craig Stephen Etchegoyen Use of Fingerprint with an On-Line or Networked Payment Authorization System
US8213907B2 (en) 2009-07-08 2012-07-03 Uniloc Luxembourg S. A. System and method for secured mobile communication
US8726407B2 (en) * 2009-10-16 2014-05-13 Deviceauthority, Inc. Authentication of computing and communications hardware
AU2011100168B4 (en) 2011-02-09 2011-06-30 Device Authority Ltd Device-bound certificate authentication
DE102011010627A1 (de) * 2011-02-08 2012-08-09 Giesecke & Devrient Gmbh Verfahren zur Programmierung eines Mobilendgeräte-Chips
AU2011101295B4 (en) 2011-06-13 2012-08-02 Device Authority Ltd Hardware identity in multi-factor authentication layer
AU2011101297B4 (en) 2011-08-15 2012-06-14 Uniloc Usa, Inc. Remote recognition of an association between remote devices
CN102594917A (zh) * 2012-03-10 2012-07-18 顾为民 互联网上点点间通讯
US9143496B2 (en) 2013-03-13 2015-09-22 Uniloc Luxembourg S.A. Device authentication using device environment information
US9286466B2 (en) 2013-03-15 2016-03-15 Uniloc Luxembourg S.A. Registration and authentication of computing devices using a digital skeleton key
US20150020154A1 (en) * 2013-07-10 2015-01-15 Daniel Setton Anonymous coupling platform method and system
JP6144186B2 (ja) * 2013-12-09 2017-06-07 日本電信電話株式会社 認証方法、認証システム、Webサーバ、利用者端末、認証プログラム及び記録媒体
US10192071B2 (en) * 2016-09-02 2019-01-29 Symantec Corporation Method for integrating applications
KR101896161B1 (ko) * 2016-12-28 2018-09-07 상명대학교산학협력단 라이프로깅 데이터의 익명성을 보장하기 위한 아이디 발급 시스템 및 그 방법
WO2021080586A1 (en) * 2019-10-24 2021-04-29 Hewlett-Packard Development Company, L.P. Authentication of write requests
CN114884973B (zh) * 2022-03-25 2023-11-17 徐工汉云技术股份有限公司 一种车辆定位数据的批量注册方法、装置及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6243468B1 (en) 1998-04-29 2001-06-05 Microsoft Corporation Software anti-piracy system that adapts to hardware upgrades
JP2004023630A (ja) 2002-06-19 2004-01-22 Sharp Corp 通信制御装置、通信端末、通信制御方法、通信方法、それらの方法を実現するためのプログラムおよびそのプログラムを記録した記録媒体
JP2004054323A (ja) 2002-07-16 2004-02-19 Hitachi Software Eng Co Ltd ユーザ登録システム

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6067582A (en) * 1996-08-13 2000-05-23 Angel Secure Networks, Inc. System for installing information related to a software application to a remote computer over a network
JPH10257047A (ja) 1997-03-12 1998-09-25 Oki Electric Ind Co Ltd 不正検出システム及び公開鍵管理システム
US6349338B1 (en) * 1999-03-02 2002-02-19 International Business Machines Corporation Trust negotiation in a client/server data processing network using automatic incremental credential disclosure
US7139912B2 (en) * 2000-06-09 2006-11-21 Sony Corporation Device authentication
JP2001358674A (ja) 2000-06-12 2001-12-26 Matsushita Electric Ind Co Ltd デジタル情報受信における課金機構
US8171556B2 (en) * 2000-10-17 2012-05-01 Mieko Ishii Personal information protection method, personal information protection system, processing device, portable transmitter/receiver, and program
GB2372594B (en) * 2001-02-23 2004-10-06 Hewlett Packard Co Trusted computing environment
EP1282024A1 (en) * 2001-07-30 2003-02-05 Hewlett-Packard Company Trusted identities on a trusted computing platform
KR20040019328A (ko) * 2001-08-03 2004-03-05 마쯔시다덴기산교 가부시키가이샤 액세스 제어 시스템
JP2003288277A (ja) 2001-08-03 2003-10-10 Matsushita Electric Ind Co Ltd バックアップ・リストアシステム及び権利管理サーバ
JP4391711B2 (ja) * 2001-08-28 2009-12-24 富士通株式会社 装置、装置利用者管理装置および装置利用者管理プログラム
JP2003162340A (ja) 2001-09-14 2003-06-06 Sony Computer Entertainment Inc 情報処理プログラム,情報送信プログラム,情報送信システム,情報処理装置、及び情報処理プログラムを記憶したコンピュータ読み取り可能な記憶媒体
JP4005026B2 (ja) * 2001-12-13 2007-11-07 株式会社ソニー・コンピュータエンタテインメント プログラムのセキュアな配布方法及び装置
JP2003271809A (ja) 2002-03-14 2003-09-26 Canon Inc プロファイル管理サーバ、管理装置及び製品管理サーバ
JP3919575B2 (ja) * 2002-03-29 2007-05-30 インターナショナル・ビジネス・マシーンズ・コーポレーション プログラム、管理装置、管理方法、記録媒体、及びデータ記録媒体
US7353532B2 (en) * 2002-08-30 2008-04-01 International Business Machines Corporation Secure system and method for enforcement of privacy policy and protection of confidentiality
CN1194498C (zh) * 2002-11-07 2005-03-23 上海交通大学 基于数字标签的内容安全监控系统及方法
GB2398712B (en) * 2003-01-31 2006-06-28 Hewlett Packard Development Co Privacy management of personal data
US7222062B2 (en) * 2003-12-23 2007-05-22 Intel Corporation Method and system to support a trusted set of operational environments using emulated trusted hardware
US7751568B2 (en) * 2003-12-31 2010-07-06 International Business Machines Corporation Method for securely creating an endorsement certificate utilizing signing key pairs
US7647498B2 (en) * 2004-04-30 2010-01-12 Research In Motion Limited Device authentication

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6243468B1 (en) 1998-04-29 2001-06-05 Microsoft Corporation Software anti-piracy system that adapts to hardware upgrades
JP2004023630A (ja) 2002-06-19 2004-01-22 Sharp Corp 通信制御装置、通信端末、通信制御方法、通信方法、それらの方法を実現するためのプログラムおよびそのプログラムを記録した記録媒体
JP2004054323A (ja) 2002-07-16 2004-02-19 Hitachi Software Eng Co Ltd ユーザ登録システム

Also Published As

Publication number Publication date
JP4265479B2 (ja) 2009-05-20
JP2005339104A (ja) 2005-12-08
US20050268087A1 (en) 2005-12-01
CN1703001B (zh) 2010-05-26
US8484449B2 (en) 2013-07-09
CN1703001A (zh) 2005-11-30
KR20060049447A (ko) 2006-05-19

Similar Documents

Publication Publication Date Title
KR101139658B1 (ko) 기록 매체, 통신 장치, 데이터 처리 방법 및 통신 시스템
JP6151402B2 (ja) データセンタへのプラットフォームの内包検証
JP4067985B2 (ja) アプリケーション認証システムと装置
US8560857B2 (en) Information processing apparatus, a server apparatus, a method of an information processing apparatus, a method of a server apparatus, and an apparatus executable program
JP4689945B2 (ja) リソースアクセス方法
US9230129B1 (en) Software trusted computing base
JP4689946B2 (ja) 安全なデータを使用して情報処理を実行するシステム
KR20090067154A (ko) 신뢰 상태를 확인하는 데 사용되는 휴대용 장치
JP4993122B2 (ja) プラットフォーム完全性検証システムおよび方法
US20040088541A1 (en) Digital-rights management system
US20140181929A1 (en) Method and apparatus for user authentication
JP2004508619A (ja) トラステッド・デバイス
CN107358118B (zh) Sfs访问控制方法及系统、sfs及终端设备
US20090210719A1 (en) Communication control method of determining whether communication is permitted/not permitted, and computer-readable recording medium recording communication control program
CN113448681A (zh) 一种虚拟机监控器公钥的注册方法、设备和存储介质
CN111125705A (zh) 一种能力开放方法及装置
CN115459929A (zh) 安全验证方法、装置、电子设备、系统、介质和产品
JP5049179B2 (ja) 情報処理端末装置及びアプリケーションプログラムの起動認証方法
US11977647B2 (en) Method, server and system for securing an access to data managed by at least one virtual payload
CN113987461A (zh) 身份认证方法、装置和电子设备
JP2007116281A (ja) Dhcp運用システム、dhcp運用方法およびdhcpサーバ
JP2005301531A (ja) プログラム、コンピュータおよびデータ処理方法

Legal Events

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