이하, 본 발명의 실시예를 도면을 참조하여 상세히 설명한다.
(제1 실시예)
도 1은 본 발명의 제1 실시예에 따른 인증 시스템의 구성을 도시하는 모식도이다. 도 2는 상기 시스템에서의 인증 프로세스를 설명하기 위한 모식도이다. 인증 프로세스는, 도 2에 도시한 바와 같이 2개의 인증 구성 프로세스 P2, P1로 구성된다. 각 인증 구성 프로세스 P2, P1의 실행 결과에 기초하여 인증 결과가 얻어진다. 또한, 각 인증 구성 프로세스 P1, P2는, 상호 상이한 제1 또는 제2 엔티티 장치(10, 20)에 의해 실행된다. 여기서는, 인증 구성 프로세스 P1이 제1 엔티티 장치(10)에 의해 실행되고, 인증 구성 프로세스 P2가 제2 엔티티 장치(20)에 의해 실 행되는 예를 나타내고 있다.
여기서, 인증 처리(또는 인증 프로세스)란, 인증하려는 대상(사람, 장치 등)이 정당한 것을 확인하는 처리를 의미한다. 정당하다고 하는 것은, 검증자가 옳다고 인정하는 기준을 만족하는 경우를 의미한다. 인증 구성 프로세스는, 인증 처리를 구성하는 프로세스를 의미한다. 인증 구성 프로세스로서는, 예를 들면 생체 정보를 이용한 인증 처리의 경우, 1) 생체 정보의 판독, 2) 특징 정보를 추출, 등이 있다. 또한, 1) 및 2)를 통합하여 하나의 인증 구성 프로세스라고 하는 경우도 있다.
이와 같이 인증 처리(또는 인증 프로세스)에서는, 하나 이상의 인증 구성 프로세스가, 상이한 엔티티 장치에서 개별로 실행되어도 된다. 후단의 인증 구성 프로세스는, 전단의 인증 구성 프로세스의 결과를 참조하여 실행되어도 되고, 참조하지 않고 실행되어도 된다.
본 시스템은, 제1 엔티티 장치(10), 제2 엔티티 장치(20) 및 검증 장치(30)로 이루어진다. 검증 장치(30)는, 통신부(31) 및 콘텍스트 검증부(32)로 이루어진다. 통신부(31)는, 제1 엔티티 장치(10)와 통신을 행하는 것이다. 콘텍스트 검증부(32)는, 제1 엔티티 장치(10)에 의해 생성된 콘텍스트를 검증하는 것이다.
제1 엔티티 장치(10) 및 제2 엔티티 장치(20)의 구성도를 도 3에 도시한다. 각 엔티티 장치(10, 20)는, 통신부(11, 21), 비밀 정보 관리부(13, 23), 인증자 생성부(14, 24) 및 콘텍스트 생성부(15, 25)를 구비하고 있다. 제1 엔티티 장치(10)는, 인증 구성 프로세스 P1 실행부(12)를 구비하고 있다. 제2 엔티티 장치(20)는, 인증 구성 프로세스 P2 실행부(22)를 구비하고 있다. 또한, 제1 엔티티 장치(10)의 비밀 정보 관리부(13)에는, 미리 인증자를 생성하기 위한 비밀 정보(1)가 저장되어 있고, 제2 엔티티 장치(20)의 비밀 정보 관리부(23)에는, 미리 인증자를 생성하기 위한 비밀 정보(2)가 저장되어 있는 것으로 한다.
각 엔티티 장치(10, 20)의 통신부(11, 21)는, 외부 장치로서의 검증 장치(30) 및 다른 엔티티 장치(20, 10)와의 통신을 행한다.
제1 엔티티 장치(10)의 인증 구성 프로세스 P1 실행부(12)는, 전술한 인증 구성 프로세스 P1을 실행하고, 그 실행 결과를 출력하는 것이다. 제2 엔티티 장치(20)의 인증 구성 프로세스 P2 실행부(22)는, 전술한 인증 구성 프로세스 P2를 실행하고, 그 실행 결과를 출력하는 것이다.
인증자 생성부(14, 24)는, 입력된 데이터를 대상으로 하여, 비밀 정보 관리부(13, 23)로부터 판독한 비밀 정보를 이용하여 인증자를 생성하는 것이다. 인증자란, 예를 들면 디지털 서명, 메시지 인증 부호(Message Authentication Code : MAC)이다. 비밀 정보란, 예를 들면 인증자가 디지털 서명인 경우에는 공개 키 암호 방식에서의 비밀 키 및 공개 키의 페어이다. 또한, 비밀 정보는, 인증자가 메시지 인증 부호인 경우에는 미리 검증 장치(30)와 공유된 공통 키이다. 비밀 정보가 비밀 키 및 공개 키의 페어인 경우, 비밀 키에 대응하는, 미리 공개 키 기반에 기초하는 인증국(Certificate Authority : CA)으로부터 발행된 공개 키 증명서가 비밀 정보 관리부(13, 23)에 저장되어 있는 것으로 한다.
콘텍스트 생성부(15, 25)는, 인증 구성 프로세스 P1 실행부(12) 또는 인증 구성 프로세스 P2 실행부(22)의 실행 결과와, 인증자 생성부(14, 24)에 의해 출력되는 인증자를, 특정 포맷에 따라 정형한다. 또한, 콘텍스트 생성부(15, 25)는, 얻어진 정형 결과를 출력한다. 본문에서는, 콘텍스트 생성부(15, 25)에 의해 특정 포맷에 따른 정형된 정보를 특정 콘텍스트라고 한다.
또한, 장치(10, 20, 30) 내의 각 부(11∼15, 21∼25, 31, 32)는, 하드웨어 모듈 또는 소프트웨어 모듈 중 어느 하나를 이용하여 실현해도 된다. 이것은 이하의 각 실시예에서 추가되는 각 부에 대해서도 마찬가지이다.
이어서, 이상과 같이 구성된 인증 시스템의 동작을 도 4의 플로우차트를 이용하여 설명한다.
(전체 동작)
도 4에 도시한 바와 같이 검증 장치(30)로부터 제1 엔티티 장치(10)에 인증 요구가 송신되면(ST1), 인증 프로세스의 실행이 개시된다. 인증 요구는, 실행하는 인증 프로세스의 지정, 인증을 안전하게 실행하기 위해 필요한 정보를 포함해도 된다. 이 정보에는, 예를 들면 난수 등의 챌린지 정보 등이 있다.
제1 엔티티 장치(10)는, 인증 요구를 받으면(ST2), 미리 결정되거나 또는 인증 요구로 지정된 인증 프로세스에 따른다. 즉, 제1 엔티티 장치(10)는, 인증 프로세스에 따라, 인증 구성 프로세스 P2의 실행 요구를 제2 엔티티 장치(20)에 송신한다(ST3). 실행 요구는, 예를 들면, 검증 장치(30)로부터의 인증 요구에 포함되는 인증 프로세스의 지정, 인증을 안전하게 실행하기 위한 정보, 인증 구성 프로세스 P2의 실행에 필요하면서 또한 제1 엔티티 장치(10)만이 유지하고 있는 정보를 포함해도 된다.
제2 엔티티 장치(20)는, 인증 구성 프로세스 P2의 실행 요구를 수신하면(ST4), 미리 결정되거나 또는 검증 장치(30)로부터의 인증 요구로 지정된 인증 프로세스에 따른다. 즉, 제2 엔티티 장치(20)는, 인증 프로세스에 따라, 인증 구성 프로세스 P2 실행부(22)에 의해 인증 구성 프로세스 P2를 실행하여(ST5), 실행 결과를 얻는다.
이어서, 콘텍스트 생성부(25)에서, 인증 구성 프로세스 P2의 실행 결과를 입력으로 하여, 이하의 구조로 정형된 제2 특정 콘텍스트 p2를 생성한다. 이 때, 실행 요구에 포함되는 정보를 입력으로 해도 된다.
제2 특정 콘텍스트 p2의 구조를 도 5에 도시한다. 제2 특정 콘텍스트 p2는, 특정 포맷에 따라 정형되어 있고, 헤더 블록 p2h, 데이터 블록(실행 내용) p2d, 인증자 블록 p2a로 구성된다.
헤더 블록 p2h는, 이 제2 특정 콘텍스트 p2를 특정하는 정보를 포함하고 있고, 또한 이 제2 특정 콘텍스트 p2의 구조에 관한 정보를 포함해도 된다.
데이터 블록 p2d는, 인증 구성 프로세스 P2의 실행 결과를 포함하고 있고, 또한 실행 요구에 포함되는 정보 또는 이들의 정보가 특정 가능한 정보를 포함해도 된다. 여기서, 데이터 블록(실행 내용)이란, 검증자가 인증하려는 대상(사람, 장치 등)이 정당한지의 여부, 즉, 옳다고 인정하는 기준을 만족하고 있는지의 여부를 판단하기 위해 사용되는 정보를 의미한다. 또한 데이터 블록은, 각 인증 구성 프로세스마다 생성되는 정보로서, 예를 들면 판독 프로세스에 의해, 생체로부터 판독 되어 생성된 생체 정보(예, 지문 정보)를 의미한다.
인증자 블록 p2a는, 이하의 수순으로 생성한 인증자로 이루어지는 정보이다.
콘텍스트 생성부(25)는, 인증 구성 프로세스 P2의 실행 결과를 특정 포맷에 따라 정형한다. 이에 의해, 콘텍스트 생성부(25)는, 제2 특정 콘텍스트 p2의 헤더 블록 p2h 및 데이터 블록 p2d를 생성한다(ST6). 인증자 생성부(24)는, 비밀 정보 관리부(23)로부터 인증자 생성을 위한 비밀 정보(2)를 판독한다(ST7). 그리고, 인증자 생성부(24)는, 비밀 정보에 기초하여, 전술한 헤더 블록 p2h 및 데이터 블록 p2d를 연산함으로써, 인증자를 생성한다(ST8). 마지막으로, 콘텍스트 생성부(25)는, 생성된 인증자를 특정 포맷에 따라 정형한다. 이에 의해, 콘텍스트 생성부(25)는, 인증자로 이루어지는 인증자 블록 p2a를 생성한다. 그러한 후, 콘텍스트 생성부(25)는, 이 인증자 블록 p2a를, 스텝 ST6의 헤더 블록 p2h 및 데이터 블록 P2d에 연접하여 제2 특정 콘텍스트 p2를 생성한다(ST9).
제2 엔티티 장치(20)는, 이상의 동작에 의해 생성한 제2 특정 콘텍스트 p2를 제1 엔티티 장치(10)에 송신한다(ST10).
이어서, 제1 엔티티 장치(10)는, 제2 특정 콘텍스트를 수신한다(ST11). 또한, 각 엔티티 장치(10, 20)가 특정 콘텍스트 검증부(19, 29)를 구비하는 경우, 제1 엔티티 장치(10)는, 특정 콘텍스트 검증부(19)에 의해 제2 특정 콘텍스트 p2의 포맷 및 인증자를 검증함으로써, 인증 구성 프로세스 P2가 정당하게 실행되고 있는지를 검증할 수 있다. 또한, 특정 콘텍스트 검증부(19)는, 검증 시에, 비밀 정보 관리부(13) 내의 비밀 정보를 참조 가능하게 되어 있다. 또한 필요하다면, 특정 콘텍스트 검증부(19)는, 특정 콘텍스트 p2 내의 데이터 블록 p2d에 포함되는 정보가, 미리 결정된 기준을 만족하는지의 여부를 판단해도 된다.
어떠한 경우에도, 제1 엔티티 장치(10)는, 인증 구성 프로세스 P1 실행부(12)에 의해 인증 구성 프로세스 P1을 실행하고(ST12), 실행 결과를 얻는다. 이 때, 제2 특정 콘텍스트 p2에 포함되어 있는 내용을 참조해도 되고, 참조하지 않아도 된다. 어느 경우로 할지는, 미리 결정된 프로세스 또는 검증 장치(30)로부터의 인증 요구로 지정된 프로세스에 따른다.
이어서, 콘텍스트 생성부(15)에서, 인증 구성 프로세스 P1의 실행 결과를 입력으로 하여, 이하의 구조로 정형된 제1 특정 콘텍스트 p1을 생성한다. 이 때, 인증 요구에 포함되는 정보, 및 제2 특정 콘텍스트 p2에 포함된 정보를 입력으로 해도 된다.
제1 특정 콘텍스트 p1의 구조는, 제2 특정 콘텍스트 p2의 구조와 동일하다. 제1 특정 콘텍스트 p1은, 특정 포맷에 따라 정형되어 있고, 헤더 블록 p1h, 데이터 블록 p1d, 인증자 블록 p1a로 구성된다.
헤더 블록 p1h는 이 제1 특정 콘텍스트 p1을 특정하는 정보를 포함하고 있다. 헤더 블록 p1h는 제1 특정 콘텍스트 p1의 구조에 관한 정보를 더 포함해도 된다.
데이터 블록 p1d는, 인증 구성 프로세스 P1의 실행 결과를 포함하고 있다. 데이터 블록 p1d에는, 또한 인증 요구에 포함되는 정보 또는 이들 정보가 특정 가능한 정보, 제2 특정 콘텍스트 p2에 포함된 내용이 포함되어도 된다.
인증자 블록 p1a는, 이하의 수순으로 생성한 인증자로 이루어지는 정보이다.
콘텍스트 생성부(15)는, 인증 구성 프로세스 P1의 실행 결과를 특정 포맷에 따라 정형한다. 이에 의해, 콘텍스트 생성부(15)는, 제1 특정 콘텍스트 p1의 헤더 블록 p1h 및 데이터 블록 p1d를 생성한다(ST13). 인증자 생성부(14)는, 비밀 정보 관리부(13)로부터 인증자 생성을 위한 비밀 정보1을 판독한다(ST14). 그리고, 인증자 생성부(14)는, 비밀 정보에 기초하여, 전술한 헤더 블록 p1h 및 데이터 블록 p1d를 연산함으로써, 인증자를 생성한다(ST15). 마지막으로, 콘텍스트 생성부(15)는, 생성된 인증자를 특정 포맷에 따라 정형한다. 이에 의해, 콘텍스트 생성부(15)는, 인증자로 이루어지는 인증자 블록 p1a를 생성한다. 그러한 후, 콘텍스트 생성부(15)는, 이 인증자 블록 p1a를, 스텝 ST13의 헤더 블록 p1h 및 데이터 블록 p1d에 연접하여 제1 특정 콘텍스트 p1을 생성한다(ST16).
제1 엔티티 장치(10)는, 상기의 동작에 의해 얻어진 제1 및 제2 특정 콘텍스트 p1, p2를 인증 콘텍스트로 하여 검증 장치(30)에 송신한다(ST17).
검증 장치(30)는, 수신한 제1 및 제2 특정 콘텍스트 p1, p2의 포맷 및 인증자를 콘텍스트 검증부(32)에 의해 검증한다(ST18, ST19). 콘텍스트 검증부(32)는, 예를 들면 인증자가 디지털 서명인 경우에는, 대응하는 공개 키에 기초하여 인증자를 검증한다. 또한, 콘텍스트 검증부(32)는, 예를 들면 인증자가 메시지 인증 부호인 경우에는, 미리 엔티티 장치(10, 20)와 공유된 공통 키에 기초하여, 인증자를 검증한다.
인증자의 검증에 실패하면(ST19 : NG), 검증 장치(30)는, 이상하다고 판단하 여 처리를 종료한다(ST20).
한편, 인증자의 검증에 성공하면(ST19 ; OK), 각 인증 구성 프로세스 P2, P1이 정당한 엔티티 장치(20, 10)에 의해 실행된 취지와, 엔티티 장치(20, 10)의 비밀 정보에 의해 보증된 인증 결과를 얻은 취지를 확인할 수 있던 것으로 된다. 따라서, 인증자의 검증에 성공하면, 검증 장치(30)는, 정상적으로 처리를 종료한다(ST21). 또한 필요하다면, 검증 장치(30)는 처리를 종료하지 않고, 특정 콘텍스트 p1, p2 내의 데이터 블록 p1d, p2d에 포함된 정보가 인증 성공의 기준을 만족하는지의 여부를 판단해도 된다. 그 결과, 기준을 만족하지 않으면(ST19 ; NG), 인증 실패라고 판단하여 처리를 종료하고(ST20), 기준을 만족하면(ST19 ; OK), 인증 성공이라고 판단하여, 정상적으로 처리를 종료한다(ST21).
전술한 바와 같이 본 실시예에 따르면, 각 엔티티 장치(10, 20)에 의한 각 인증 구성 프로세스의 실행 내용을 인증자에 기초하여 검증 장치(30)가 검증 가능하게 했으므로, 각 인증 구성 프로세스를 그 관리 주체(각 인증 엔티티 장치)가 보증하고, 보증 내용을 검증자에 의해 검증 가능하게 하여, 인증 프로세스 전체의 신뢰성을 향상시킬 수 있다.
자세히 설명하면, 인증을 구성하는 프로세스에 관한 스테이트먼트를, 각 인증 구성 프로세스가 속하는 관리 주체가 보증하고, 클라이언트의 인증 환경에 비의존적인 형식으로 통합하여, 검증자에게 통지하는 구성에 의해, 임의의 검증자가 인증 결과를 검증 가능하게 하여, 인증 프로세스 전체의 신뢰성을 향상시킬 수 있다.
또한, 인증의 구성 프로세스가 하나 이상으로 분리되어 있는 경우, 또한 이 들 구성 프로세스 P2, P1이 각각 상이한 엔티티 장치(20, 10)에 의해 실행되고 있는 경우, 또한 후단의 인증 구성 프로세스 P1은, 전단의 인증 구성 프로세스 P2의 결과를 참조하여 실행되고 있는 경우, 또는 참조하고 있지 않은 경우인 모든 구성 프로세스 및 엔티티 장치의 조합에 대해서도, 검증 장치(30)는 인증 프로세스의 정당성 및 각 엔티티 장치에서의 인증 구성 프로세스 실행 결과를 검증하는 것이 가능하게 된다.
또한, 본 실시예는, 각 비밀 정보 관리부(13, 23)가 비밀 정보로서 공개 키 암호 방식에서의 비밀 키를 기억하고, 인증자 생성부(14)가 이 비밀 키에 기초하여, 공개 키 암호 방식에서의 디지털 서명으로서 인증자를 생성하도록 변형해도 된다. 이 변형예의 경우, 각 엔티티 장치(10, 20)의 공개 키 증명서를 검증함으로써, 각 엔티티 장치(10, 20)의 정당성이 외부 인증 기반인 공개 키 기반에 기초하여 보증되어 있는 것을 검증할 수 있다.
(제2 실시예)
본 발명의 제2 실시예는, 제1 실시예 중, 제1 엔티티 장치(10)에 일반 콘텍스트 생성부(16)를 추가한 인증 시스템의 예이다. 제1 엔티티 장치(10)의 구성을 도 6에 도시한다. 일반 콘텍스트 생성부(16)에 의해 추가된 부분의 동작을 설명하기 위한 플로우차트를 도 7에 도시한다.
일반 콘텍스트 생성부(16)는, 제1 특정 콘텍스트 p1과 제2 특정 콘텍스트 p2를 특정 가능한 정보 및 인증자 생성부(14, 24)에 의해 출력되는 인증자를, 특정 포맷에 따라 정형하고, 그 결과를 출력하는 것이다.
일반 콘텍스트의 구조를 도 8에 도시한다. 일반 콘텍스트 g는, 헤더 블록 gh 및 인증자 블록 ga로 구성된다. 헤더 블록 gh는, 제1 및 제2 특정 콘텍스트 p1, p2를 일의로 특정하는 것이 가능한 정보를 포함하고 있다. 헤더 블록 gh는, 또한 이 일반 콘텍스트 g의 구조에 관한 정보, 인증 요구에 포함되는 정보를 포함해도 된다. 인증자 블록 ga는, 이하의 수순으로 생성된 인증자로 이루어지는 정보이다.
제1 엔티티 장치(10)에서의 동작 플로우는, 제1 특정 콘텍스트 p1의 생성까지는 제1 실시예와 마찬가지이다. 계속해서, 일반 콘텍스트 생성부(16)는, 일반 콘텍스트 g의 헤더 블록 gh를 생성한다. 인증자 생성부(14)는, 비밀 정보 관리부(13)로부터 비밀 정보1을 판독한다. 인증자 생성부(14)는, 이 비밀 정보1에 기초하여, 전술한 일반 콘텍스트 g의 헤더 블록 gh, 제1 특정 콘텍스트 p1, 및 제2 특정 콘텍스트 p2 전체를 연산함으로써, 인증자를 생성한다. 마지막으로, 일반 콘텍스트 생성부(16)는, 생성된 인증자를 특정 포맷에 따라 정형한다. 이에 의해, 일반 콘텍스트 생성부(16)는, 인증자로 이루어지는 인증자 블록 ga를 생성한다. 그러한 후, 일반 콘텍스트 생성부(16)는, 이 인증자 블록 ga를, 전술한 헤더 블록 gh에 연접하여 일반 콘텍스트 g를 생성한다. 그리고, 일반 콘텍스트 생성부(16)는, 이 일반 콘텍스트 g를 출력한다.
제1 엔티티 장치(10)는, 상기한 동작에 의해 얻어진 일반 콘텍스트 g, 제1 및 제2 특정 콘텍스트 p1, p2를 인증 콘텍스트 ac로서 검증 장치(30)에 송신한다.
검증 장치(30)는, 수신한 일반 콘텍스트 g의 포맷 및 인증자를 콘텍스트 검 증부(32)에 의해 검증한다. 이 검증에 의해, 옳은 인증 프로세스에 따라 생성된 인증 콘텍스트 ac인 것을 용이하게 확인할 수 있다. 또한, 이 확인 결과가 인증 프로세스 전체의 관리 책임자인 엔티티의 비밀 정보에 의해 보증되어 있는 것을 확인할 수 있다. 또한, 관리 책임자를 용이하게 특정할 수 있다.
필요하면, 콘텍스트 검증부(32)는, 제1 및 제2 특정 콘텍스트 p1, p2의 포맷 및 인증자의 검증을 실행해도 된다. 이 검증에 의해, 각 인증 구성 프로세스 P2, P1이 정당한 엔티티 장치(20, 10)에 의해 실행된 것을 확인할 수 있다. 또한, 엔티티 장치 내의 비밀 정보에 의해 보증된 인증 결과인 것을 확인할 수 있다. 또한, 인증 구성 프로세스의 실행 결과의 상세 내용을 알 수 있다.
또한 필요하다면, 검증 장치(30)는, 특정 콘텍스트 p1, p2 내의 데이터 블록 p1d, p2d에 포함된 정보가 인증 성공의 기준을 만족하는지의 여부를 판단해도 된다.
전술한 바와 같이 본 실시예에 따르면, 제1 실시예의 작용 효과 외에 추가로, 인증 콘텍스트가 인증 프로세스 전체의 관리 책임자인 엔티티의 비밀 정보에 의해 보증되어 있는 것을 확인할 수 있음과 함께, 관리 책임자를 용이하게 특정할 수 있다.
또한, 본 실시예에서는, 제1 실시예에서의 제1 엔티티 장치(10)의 내부에 일반 콘텍스트 생성부(16)를 추가한 경우를 설명하였다. 그러나, 이 경우에 한하지 않고, 제1 엔티티 장치(10) 이외의 엔티티 장치, 또는 특정 콘텍스트를 생성하지 않는 엔티티 장치가 일반 콘텍스트 g를 생성해도 마찬가지의 효과를 얻을 수 있 다.
(제3 실시예)
제3 실시예는, 제1 및 제2 실시예 중, 제1 엔티티 장치(10)의 콘텍스트 생성부(15)가 콘텍스트 정보 관련짓기부(17)를 구비한 예이다. 제1 엔티티 장치(10)의 구성을 도 9에 도시한다.
콘텍스트 정보 관련짓기부(17)는, 인증 구성 프로세스 P1이 제2 특정 콘텍스트 p2를 받아 실행된 것을 관련지은 것이다. 이에 의해, 콘텍스트 생성부(15)는 제2 특정 콘텍스트 p2에 관련지어진 제1 특정 콘텍스트 P1을 출력한다. 이와 같이 콘텍스트 사이에 계층 구조가 있는 경우, 먼저 생성되는 콘텍스트를 하위 콘텍스트라고 하고, 후에 생성되는 콘텍스트를 상위 콘텍스트라고 한다. 도 7에 도시한 일반 콘텍스트는, 모든 특정 콘텍스트가 생성된 후에 생성되기 때문에, 최상위의 콘텍스트이다.
콘텍스트 정보 관련짓기부(17)에 의해 제2 특정 콘텍스트 p2와 관련지어져 생성된 제1 특정 콘텍스트 p1의 일례를 도 10에 도시한다. 여기서는, 제1 특정 콘텍스트 p1의 데이터 블록 내에 제2 특정 콘텍스트 p2를 구비함으로써, 관련짓기를 행하고 있다. 이에 의해, 검증 장치(30)는, 인증 콘텍스트 ac로부터 인증 구성 프로세스 사이의 의존 관계를 용이하게 검출하는 것이 가능하게 된다.
이어서, 콘텍스트 정보 관련짓기부(17)에 의해 제2 특정 콘텍스트 p2와 관련지어져 생성된 제1 특정 콘텍스트 p1의 예를 도 11에 도시한다. 여기서는, 제1 특정 콘텍스트 p1의 헤더 블록에 참조 정보를 가짐으로써, 관련짓기를 행하고 있다. 참조 정보는, 제2 특정 콘텍스트 p2를 일의로 특정 가능한 정보이다. 도 10에서 설명한 예에서는 특정 콘텍스트 p1, p2를 상자 형상으로 배치하는 것으로부터, 검증 시에 재귀적으로 검증을 행할 필요가 있기 때문에, 검증 장치(30)에 많은 리소스량(예, 메모리량 또는 회로 규모)을 필요로 한다. 그러나, 도 11에 도시하는 예에서는, 특정 콘텍스트 p1, p2를 병렬로 배치하는 것으로부터 순차적으로 검증이 가능하게 되기 때문에, 검증 장치(30)의 리소스량이 적은 경우에 효과적이다.
전술한 바와 같이 본 실시예에 따르면, 제1 또는 제2 실시예의 작용 효과 외에 추가로, 도 10에 도시하는 상자 구조의 경우, 개개의 특정 콘텍스트가 관련된 인증 구성 프로세스의 의존 관계를 명확하게 표현할 수 있다.
또한, 도 11에 도시하는 병렬 구조의 경우, 특정 콘텍스트 사이의 의존 관계를 명확하게 표현하면서, 각 특정 콘텍스트를 병렬로 관련지을 수 있다. 이것에 의해, 개개의 특정 콘텍스트의 정보량을 삭감할 수 있어, 콘텍스트 생성 처리 및 해석 처리의 부담을 경감할 수 있다.
(제4 실시예)
제4 실시예는, 제1∼제3 실시예의 변형예로서, 특히 생체 정보에 의한 인증을 이용하여 구체적으로 나타낸 것이다.
서버 장치(30')와, 유저 정보 관리 장치(10')와, 생체 인증 장치(20')로 구성되는 인증 시스템(이하, MOC 모델 : Match On Card 모델)에 대하여, 제1 실시예를 적용한 예를 도 12에 도시한다.
또한, 서버 장치(30')는, 임의의 서비스를 제공하기 위해 유저 인증을 행하 는 기능을 구비하고 있다. 유저 정보 관리 장치(10')는, 인증 시에 참조되는 유저의 생체 정보(이하, 참조 생체 정보)를 관리하는 기능, 및 이 참조 생체 정보와 인증 시에 유저로부터 판독된 생체 정보(이하, 샘플 생체 정보 폭)를 대조하는 기능을 구비하고 있다. 생체 인증 장치(20')는, 인증의 대상으로 되는 유저로부터 샘플 생체 정보를 추출하는 기능을 구비하고 있다.
본 예는, 도 13에 도시한 바와 같이 서버 장치(30')로부터의 인증 요구에 대한 인증의 프로세스가, 유저 정보 관리 장치(10')에 의한 프로세스 P1', 생체 인증 장치(20')에 의한 프로세스 P2'의 2개의 프로세스로 구성된다. 또한, 프로세스 P2'의 실행 결과에 기초하여, 프로세스 P1'이 실행된다. 유저 정보 관리 장치(10')는, 프로세스 P2', P1'의 실행 결과를 인증 콘텍스트로서 서버 장치(30')로 되돌린다.
서버 장치(30')는, 통신부(31) 및 콘텍스트 검증부(32)로 이루어진다. 통신부(31)는, 유저 정보 관리 장치(10')와 통신을 행한다. 콘텍스트 검증부(32)는, 유저 정보 관리 장치(10')가 생성한 콘텍스트를 해석한다.
유저 정보 관리 장치(10')의 구성을 도 14에 도시한다. 본 예에서의 유저 정보 관리 장치(10')는, 제2 실시예 중, 제1 엔티티 장치(10)의 인증 구성 프로세스 P1 실행부(12)를, 대조 프로세스 실행부(12')로 치환한 장치이다. 이것에 수반하여, 통신부(11) 및 콘텍스트 생성부(15)의 입출력처를 대조 프로세스 실행부(12')로 한 통신부(11') 및 콘텍스트 생성부(15')를 구비하고 있다. 또한, 유저 정보 관리 장치(10')로서, IC 카드나, 스마트 카드 등의 디바이스를 사용해도 된 다.
대조 프로세스 실행부(12')의 구성을 도 15에 도시한다. 대조 프로세스 실행부(12')는, 유저 정보 관리부(12'a) 및 생체 정보 대조부(12'b)로 이루어진다.
유저 정보 관리부(12'a)는, 유저 정보 관리 장치(10')의 소유자인 인물의 참조 생체 정보를 저장하고 있다. 또한, 유저 정보 관리부(12'a)는, 변형 억제성을 갖고 있는 것이 바람직하다. 또한, 유저 정보 관리 장치(10')의 비밀 정보 관리부(13)에 저장되어 있는 비밀 정보를, 유저 정보 관리부(12'a)에 저장해도 된다.
생체 정보 대조부(12'b)는, 생체 인증 장치(20')로부터 수신한 샘플 생체 정보와, 유저 정보 관리부(12'a)에 저장되어 있는 참조 생체 정보와의 대조 처리를 행하여, 대조 결과를 콘텍스트 생성부(15')에 출력한다.
생체 인증 장치(20')의 구성을 도 16에 도시한다. 본 예에서의 생체 인증 장치(20')는, 제1 실시예 중, 제2 엔티티 장치(20)의 인증 구성 프로세스 P2 실행부(22)를, 판독 프로세스 실행부(22')로 치환한 장치이다. 이것에 수반하여, 통신부(21) 및 콘텍스트 생성부(25)의 입출력처를 판독 프로세스 실행부(22')로 한 통신부(21') 및 콘텍스트 생성부(25')를 구비하고 있다.
판독 프로세스 실행부(22')는, 인증의 대상으로 되는 인물로부터 생체 정보를 판독하는 처리를 행한다.
(전체 동작)
서버 장치(30')의 동작을 설명하기 위한 플로우차트는, 제1 실시예에서의 검증 장치(30)의 동작을 설명하기 위한 플로우차트와 마찬가지이다. 계속해서, 유저 정보 관리 장치(10')의 동작을 설명하기 위한 플로우차트를 도 17에 도시한다.
유저 정보 관리 장치(10')는, 서버 장치(30')로부터 인증 요구를 수신한다(ST2). 이 인증 요구에는, 서버 장치(30')에 의해 생성한 난수인 챌린지나, 서버 장치(30')를 식별하기 위한 리퀘스터 등의 정보가 포함되어 있는 것이 바람직하다.
계속해서, 유저 정보 관리 장치(10')는, 생체 인증 장치 프로세스의 실행 요구를 생체 인증 장치(20')에 송신한다(ST3'). 이 실행 요구에는, 서버 장치(30')에 의해 생성된 챌린지나, 유저 정보 관리 장치(10')를 식별하기 위한 리퀘스터 등의 정보가 포함되어 있는 것이 바람직하다.
생체 인증 장치(20')는, 이 실행 요구를 수신하면(ST4'), 인증을 요구하는 인물의 생체 정보를 판독하는 처리를 실행하여(ST5'), 샘플 생체 정보를 얻는다. 여기서는, 판독한 생체 정보를, 대조에 적합한 형식으로 변환해 두는 것이 바람직하다.
계속해서, 콘텍스트 생성부(25')는, 얻어진 샘플 생체 정보에 기초하여, 도 18에 도시하는 구조를 갖는 생체 인증 장치 특정 콘텍스트 p2를 생성한다. 또한, 도 18에 도시하는 특정 콘텍스트는, 본 예에서의 실행 환경 프로파일의 규정에 따른 것이다. 다른 실행 환경 프로파일을 정의하는 경우에는, 도 18에 도시한 특정 콘텍스트의 구조를 변경해도 된다.
생체 인증 장치 특정 콘텍스트 p2는, 헤더 블록 p2h, 데이터 블록 p2d, 인증자 블록 p2a로 이루어진다. 헤더 블록 p2h는, 생체 인증 장치 식별자, 생성 일시, 챌린지, 리퀘스터를 갖는다. 생체 인증 장치 식별자는, 이 생체 인증 장치 특정 콘텍스트 p2를 일의로 식별하기 위한 정보이다. 생성 일시는, 이 생체 인증 장치 특정 콘텍스트가 생성된 일시를 나타내는 정보이다. 챌린지는, 생체 인증 장치 프로세스 실행 요구에 포함되는 난수이다. 데이터 블록 p2d는, 생체 정보 판독 처리에서 취득한 샘플 생체 정보를 가져도 되고, 일방향 함수인 해시값을 가져도 된다. 인증자 블록 p2a는, 이 생체 인증 장치 특정 콘텍스트 p2의 완전성을 보증하기 위한 인증자를 갖는다. 또한, 인증자의 공적인 예로는, 제1 실시예의 변형예에서, 공개 키 기반에 기초하는 공개 키 증명서쌍을 이용한 인증자를 나타내었다.
콘텍스트 생성부(25')는, 생체 인증 장치 특정 콘텍스트 p2의 헤더 블록 p2h 및 데이터 블록 p2d를 생성한다(ST6). 인증자 생성부(24)는 비밀 정보 관리부(23)로부터 인증자 생성을 위한 비밀 정보를 판독한다(ST7). 그리고, 인증자 생성부(24)는, 비밀 정보에 기초하여, 전술한 헤더 블록 p2h 및 데이터 블록 p2d를 연산함으로써, 인증자를 생성한다(ST8). 마지막으로, 콘텍스트 생성부(25')는, 이 인증자를 특정 포맷에 따라 정형한다. 이에 의해, 콘텍스트 생성부(25')는, 인증자로 이루어지는 인증자 블록 p2a를 생성한다. 그러한 후, 콘텍스트 생성부(25')는, 이 인증자 블록 p2a를, 스텝 ST6의 헤더 블록 p2h 및 데이터 블록 p2d에 연접하여 생체 인증 장치 특정 콘텍스트 p2를 생성한다(ST9').
생체 인증 장치(20')는, 이상의 동작에 의해 생성된 생체 인증 장치 특정 콘텍스트 p2 및 샘플 생체 정보를, 유저 정보 관리 장치(10')에 송신한다(ST10').
유저 정보 관리 장치(10')는, 생체 인증 장치 특정 콘텍스트 p2를 받으 면(ST11'), 도 19에 도시하는 대조 프로세스를 실행한다(ST12'). 또한, 대조 프로세스를 실행할 때에, 생체 인증 장치(20')로부터 수신한 생체 인증 장치 특정 콘텍스트 p2를 검증할 필요가 있는 경우, 특정 콘텍스트의 해석 및 검증을 행하기 위한 기능부를 배치해도 된다.
대조 프로세스에서는, 유저 정보 관리부(12'a)로부터 참조 생체 정보를 판독한다(ST12'-1). 이어서, 판독한 참조 생체 정보와, 생체 인증 장치(20')로부터 수취한 샘플 생체 정보와의 대조 처리를 행하여(ST12'-2), 대조 결과를 얻는다. 그리고, 대조 결과를 출력한다(ST12'-3).
또한, 이 대조 결과는, OK(일치)/NG(불일치)를 나타내어도 되고, 인증을 위한 판단의 재료를 나타내어도 된다. 판단의 재료에는, 예를 들면 참조 생체 정보와 샘플 생체 정보와의 유사도가 사용 가능하다. 또한, 대조 처리를 행하기 전에, 샘플 생체 정보나 참조 생체 정보를 대조에 적합한 형식으로 변환해 두는 것이 바람직하다.
이어서, 콘텍스트 생성부(15')는, 도 20에 도시하는 구조로 정형된 MOC 특정 콘텍스트 p1을 생성한다. MOC 특정 콘텍스트 p1은, 헤더 블록 p1h, 데이터 블록 p1d, 인증자 블록 p1d로 이루어진다.
헤더 블록 p1h는, 특정 콘텍스트 식별자, 프로파일명, 특정 콘텍스트 종별, 생체 정보 종별, 발행자, 주체자, 리퀘스터, 생성 일시, 챌린지를 갖는다. 특정 콘텍스트 식별자는, 이 특정 콘텍스트를 일의로 식별하기 위해 할당된 식별자이다. 특정 콘텍스트 종별은, 이 특정 콘텍스트의 종류를 식별하기 위한 정보이다. 발행 자는, 이 특정 콘텍스트를 발행한 엔티티를 일의로 식별하기 위한 정보이다. 주체자는, 이 특정 콘텍스트의 발행을 받는 엔티티를 일의로 식별하기 위한 정보이다. 리퀘스터는, 이 특정 콘텍스트를 요구하는 엔티티를 식별하기 위한 정보이다. 생성 일시는, 이 특정 콘텍스트를 생성한 일시를 나타내는 정보이다. 챌린지는, 이 특정 콘텍스트를 요구하는 엔티티에 의해 생성되는 난수이다.
데이터 블록 p1d는, 생체 데이터 정보, 대조 알고리즘, 대조 결과, 생체 인증 장치 특정 콘텍스트를 갖는다. 생체 데이터 정보는, 대조에 이용한 참조 생체 정보에 관한 정보를 포함하고 있다. 대조 알고리즘은, 참조 생체 정보와 샘플 생체 정보와의 대조를 행할 때에 이용한 알고리즘이다. 대조 결과는, 대조 처리를 행한 결과를 나타내는 정보이다.
인증자 블록 p1a는, 이 생체 인증 장치 특정 콘텍스트의 완전성을 보증하기 위한 인증자를 갖는다.
또한, 두개의 특정 콘텍스트 p1, p2를 관련짓기 위해서는, 상술한 바와 마찬가지로, 상자 구조 또는 병렬 구조로 하면 된다. 상자 구조의 경우, 도 20에 도시한 바와 같이 MOC 특정 콘텍스트 p1의 데이터 블록 p1d에, 생체 인증 장치 특정 콘텍스트 p2를 포함시키면 된다. 병렬 구조의 경우, 도 21에 도시한 바와 같이 생체 인증 장치 특정 콘텍스트 p2를 일의로 식별하기 위한 관련 특정 콘텍스트 식별자(예, 생체 인증 장치 식별자)를, MOC 특정 콘텍스트 p1에 포함시키면 된다.
콘텍스트 생성부(15')는, MOC 특정 콘텍스트 P1의 헤더 블록 p1h 및 데이터 블록 p1d를 생성한다(ST13). 인증자 생성부(14)는, 비밀 정보에 기초하여, 전술한 헤더 블록 p1h 및 데이터 블록 p1d를 연산함으로써, 인증자를 생성한다(ST14, ST15). 마지막으로, 콘텍스트 생성부(15')는, 이 인증자를 특정 포맷에 따라 정형한다. 이에 의해, 콘텍스트 생성부(15')는, 인증자로 이루어지는 인증자 블록 p1a를 생성한다. 그러한 후, 콘텍스트 생성부(15')는, 이 인증자 블록 p1a를, 스텝 ST13의 헤더 블록 p1h 및 데이터 블록 p1d에 연접하여 MOC 특정 콘텍스트 p1을 생성한다(ST16').
일반 콘텍스트 생성부(16)는, 실행 환경 프로파일 및 MOC 특정 콘텍스트로부터, 도 22에 도시하는 구조로 정형된 일반 콘텍스트 g를 생성한다.
일반 콘텍스트 g는, 헤더 블록 gh, 인증자 블록 ga로 구성된다. 헤더 블록 gh는, 버전 정보, 발행자, 주체자, 리퀘스터, 챌린지, 생성 시간, 유효 기간, 프로파일 리스트 pfL, 특정 콘텍스트 리스트 idL을 갖는다. 버전 정보는, 이 복합 인증 콘텍스트의 구조의 버전을 나타내는 정보이다. 발행자는, 이 일반 콘텍스트 g를 발행한 엔티티를 일의로 식별하기 위한 정보이다. 리퀘스터는, 이 일반 콘텍스트 g를 요구하는 엔티티를 일의로 식별하기 위한 정보이다. 챌린지는, 이 일반 콘텍스트 g를 요구하는 엔티티에 의해 생성되는 난수이다. 생성 시간은, 이 일반 콘텍스트 g가 생성된 일시를 나타내는 정보이다. 유효 기간은, 이 일반 콘텍스트 g의 사용이 유효한 기간을 나타내는 정보이다. 프로파일 리스트 pfL은, 이 일반 콘텍스트 g 내의 특정 콘텍스트에 대응하는 프로파일의 리스트이다. 특정 콘텍스트 리스트 idL은, 이 일반 콘텍스트 g 내에 존재하는 특정 콘텍스트 p1, p2, …를 일의로 식별하는 식별자의 리스트이다.
인증자 블록 ga 내의 일반 콘텍스트 인증자는, 이 일반 콘텍스트의 완전성을 보증하기 위한 정보이다.
일반 콘텍스트 생성부(16)는, 일반 콘텍스트 g의 헤더 블록 gh를 생성한다(ST13G). 인증자 생성부(14)는, 비밀 정보 관리부(13)로부터 비밀 정보를 판독한다(ST14G). 인증자 생성부(14)는, 비밀 정보에 기초하여, 전술한 일반 콘텍스트 g의 헤더 블록 gh, MOC 특정 콘텍스트 p1 전체를 연산함으로써, 인증자를 생성한다(ST15G). 단, 상자 구조에 의해 MOC 특정 콘텍스트 p1을 정형한 경우에는, 생체 인증 장치 특정 콘텍스트 p2도 대상에 포함시켜 인증자를 생성할 필요가 있다. 마지막으로, 일반 콘텍스트 생성부(16)는, 생성된 인증자를 특정 포맷에 따라 정형한다. 이에 의해, 일반 콘텍스트 생성부(16)는, 인증자로 이루어지는 인증자 블록 ga를 생성한다. 그러한 후, 일반 콘텍스트 생성부(16)는, 이 인증자 블록 ga를, 전술한 헤더 블록 gh에 연접하여 일반 콘텍스트 g를 생성한다(ST16G).
유저 정보 관리 장치(10')는, 상기한 동작에 의해 얻어진 일반 콘텍스트 g, 특정 콘텍스트 p1, p2를 인증 콘텍스트 ac로 하여 서버 장치(30')에 송신한다(ST17).
서버 장치(30')의 동작은, 제2 실시예의 검증 장치(30)의 동작과 마찬가지이다.
전술한 바와 같이 본 실시예에 따르면, 제1∼제3 실시예를 생체 인증에 적용하여, 제1∼제3 실시예와 마찬가지의 작용 효과를 얻을 수 있다.
(제5 실시예)
본 실시예는, 제4 실시예의 변형예로서, 유저 정보 관리 장치(10')가 구비하고 있었던 대조 기능을, 생체 인증 장치(20')가 구비한 인증 시스템(이하, STOC 모델 : store on card 모델)이다.
(생체 인증 장치 프로세스)
유저 정보 관리 장치(10')는, 참조 정보를 포함시킨 생체 인증 장치 프로세스 실행 요구를 생체 인증 장치(20')에 송신한다.
생체 인증 장치(20')는, 수신한 참조 정보와, 판독한 샘플 생체 정보를 대조하고, 대조 결과를 이용하여 도 23에 도시하는 구조로 정형한 생체 인증 장치 특정 콘텍스트 p2를 생성한다. 생체 인증 장치(20')는, 이 생체 인증 장치 특정 콘텍스트 p2를 유저 정보 관리 장치(10')에 송신한다.
유저 정보 관리 장치(10')는, 수신한 생체 인증 장치 특정 콘텍스트 p2로부터, 도 24에 도시하는 구조로 정형한 STOC 특정 콘텍스트 p1을 생성하고, 얻어진 STOC 특정 콘텍스트 p1을 서버 장치(30')에 송신한다.
전술한 바와 같이 본 실시예에 따르면, 제4 실시예를 STOC 모델에 적용할 수 있다.
(제6 실시예)
본 실시예는, 제4 실시예의 변형예로서, 도 25에 도시한 바와 같이 두개 이상의 생체 인증 장치(201", 202", …)를 구비한 인증(이하, 멀티모달 : multimodal) 시스템이다.
멀티모달 생체 인증이란, 두개 이상의 생체 정보에 의한 대조 결과를 융합하여 판정을 행함으로써, 보다 정밀도가 높은 생체 인증을 실현하는 것이 가능한 생체 인증이다.
(유저 정보 관리 장치 인증 플로우)
유저 정보 관리 장치(10")에서의 동작을 설명하기 위한 플로우차트를 도 26에 도시한다. 여기서는, 생체 인증 장치 프로세스 실행 요구가, 두개의 생체 인증 장치(201", 202")에 송신된다. 또한, 도 27에 도시한 바와 같이 대조 프로세스 실행부(12')에서는, 두개의 대조 처리를 병렬로 실행하고(ST12'1∼ST12'-3), 두개의 대조 결과를 융합 판정하고(ST12'-4), 판정 결과를 출력한다(ST12'-5). 또한, 멀티모달 인증에서의 판정 기술에는, 복수의 대조 결과를 병렬로 판정하는 방법 외에, 대조 결과를 직렬로 판정하는 방법이 존재한다. 직렬 판정의 경우, 각 대조 프로세스에 대하여 특정 콘텍스트를 생성함으로써, 각각의 인증 프로세스를 보증하는 인증 콘텍스트를 생성할 수 있다.
또한, 멀티모달 시스템에서는, 서버 장치(30")가 개개의 인증 프로세스를 검증하는 경우, 각각의 인증 프로세스의 관련짓기를 인증 콘텍스트 내에서 행할 필요가 발생한다. 도 28에 도시한 바와 같이 상자 구조로 정형된 인증 콘텍스트 ac는, 상자 구조의 특정 콘텍스트 p1, p2, p3에 의해, 각각의 인증 프로세스의 관련짓기를 실현할 수 있다. 또한, 도 29에 도시한 바와 같이 병렬 구조를 포함하는 상자 구조로 정형된 인증 콘텍스트 ac는, 상위 구조가 하위 구조의 참조 정보를 보유함 으로써, 특정 콘텍스트 p1, p2, p3끼리의 계층 구조를 실현하여, 각각의 인증 프로세스의 관련짓기를 실현할 수 있다.
또한, 본 실시예는, 생체 인증 장치(201", 202")의 대조 처리를 실행하지 않는 취지의 실행 환경 프로파일에 적용된다. 그러나, 본 실시예는, 이것에 한하지 않고, 각 생체 인증 장치(201", 202")가 대조 처리를 실행하고, 복수의 대조 결과를 유저 정보 관리 장치(10") 내에서 융합하는 실행 환경 프로파일에 적용하는 것도 가능하다.
전술한 바와 같이 본 실시예에 따르면, 제4 실시예를 멀티모달 생체 인증에 적용할 수 있다.
(제7 실시예)
본 실시예는, 제1∼제6 실시예의 변형예로서, 인증 시스템에 관한 실행 환경 프로파일을 이용하는 예를 나타내는 것이다.
본 실시예에서는, 도 30에 도시한 바와 같이 인증 시스템 엔티티 장치(이하, 인증 엔티티 장치라고 함 : 10e, 201e, 202e)와, 클라이언트 장치(40) 사이에서 대응하는 것이 가능한 실행 환경 프로파일을 교섭한다. 또한, 인증 엔티티 장치(10e, 201e, 202e)는, 전술한 유저 정보 관리 장치(10, 10', 10") 및 생체 인증 장치(20, 20', 20")에 대응한다. 클라이언트 장치(40)는, 인증 엔티티 장치를 대리하는 인증 시스템 엔티티 대리 장치에 대응한다.
여기서, 실행 환경 프로파일이란, 인증 프로세스를 실행하는 인증 시스템 엔 티티 구성이나, 인증 구성 프로세스의 인증 시스템 엔티티에의 배치 상황, 인증 시스템 엔티티 사이에서의 정보 교환 규정, 시큐리티 실시 규정 등을 규정한 것이다.
본 실시예에서는, 클라이언트 환경에서 대응 가능한 실행 환경 프로파일을 통합하는 장치로서, 인증 시스템 엔티티 대리 장치로서의 클라이언트 장치(40)를 구비하는 예를 나타낸다. 클라이언트 장치(40)는, 인증 구성 프로세스를 갖지 않고, 인증 엔티티 장치(10e, 201e, 202e)와 검증 장치(30), 또는 인증 엔티티 장치(10e)와 인증 엔티티 장치(201e, 202e) 사이를 중개한다.
클라이언트 장치(40)에는, 하나 또는 하나 이상의 인증 엔티티 장치(10e, 201e, 202e, …)가 접속된다. 클라이언트 장치(40)는, 각 인증 엔티티 장치(10e, 201e, 202e) 사이의 통신을 중개하여, 인증 프로세스 전체의 핸들링 처리를 실시한다. 클라이언트 장치(40)는, 예를 들면 범용 퍼스널 컴퓨터나 핸들링 기기 등이 적용 가능하게 되어 있다.
구체적으로 설명하면 클라이언트 장치(40)는, 도 30에 도시한 바와 같이 통신부(41), 제어부(42), 실행 환경 프로파일 조회부(43) 및 실행 환경 프로파일 관리부(44)를 구비한다.
통신부(41)는, 외부 장치와 통신을 행한다.
제어부(42)는, 인증 프로세스 전체의 핸들링 처리를 행한다.
실행 환경 프로파일 조회부(43)는, 각 인증 엔티티 장치(10e, 201e, 202e)에 서 대응 가능한 실행 환경 프로파일을 조회하기 위한 것이다.
실행 환경 프로파일 관리부(44)는, 클라이언트 환경에서 대응 가능한 실행 환경 프로파일을 관리하기 위한 것이다.
인증 엔티티 장치(10e, 201e, 202e)는, 도시하지 않았지만 제1∼제6 실시예에서의 각 부(11∼17, 21∼25)를 갖고, 또한 실행 환경 프로파일 응답부(18e, 26e)를 구비하고 있다. 또한, 특정 콘텍스트 검증부(19, 29)는 구비하는 경우와 구비하지 않는 경우가 있다. 또한, 실행 환경 프로파일 응답부(18e, 26e)는, 클라이언트 장치(40)로부터의 실행 환경 프로파일 조회에 응답하기 위한 것이다.
실행 환경 프로파일 교섭 처리의 일례를 이하의 스텝으로 나타낸다. 클라이언트 장치(40)는, 인증 엔티티 장치(10e, 201e, 202e)가 새롭게 접속된 단계에서, 각 인증 엔티티 장치(10e, 201e, 202e)에 대하여, 하기 스텝을 실행하는 것이 바람직하다. 하기 스텝의 처리 플로우도는, 도 31에 도시한다. 또한, 도 30에서는 간략화를 위해, 실행 환경 프로파일 조회 메시지와 실행 환경 프로파일 응답 메시지를, 실행 환경 프로파일 교섭 메시지(조회/응답)로 기재하고 있다.
클라이언트 장치(40)는, 실행 환경 프로파일 조회 메시지를 작성하고(ST31), 얻어진 실행 환경 프로파일 조회 메시지를 인증 엔티티 장치(10e, 201e, 202e)에 송신한다(ST32).
인증 엔티티 장치(10e, 201e, 202e)는, 실행 환경 프로파일 조회 메시지를 수신하고(ST33), 그 조회 내용을 취득한다(ST34). 그러한 후, 인증 엔티티 장치(10e, 201e, 202e)는, 자기가 대응 가능한 실행 환경 프로파일과, 실장되어 있는 인증 구성 프로세스를 포함하는 실행 환경 프로파일 응답 메시지를 작성하고(ST35), 얻어진 실행 환경 프로파일 응답 메시지를 클라이언트 장치(40)에 회신한다(ST36).
클라이언트 장치(40)는, 통신부(41)에 의해, 실행 환경 프로파일 응답 메시지를 수신한다(ST37). 실행 환경 프로파일 응답 내용은, 제어부(42)를 통하여 실행 환경 프로파일 관리부(44)에 건네진다(ST38).
실행 환경 프로파일 관리부(44)는, 각 인증 엔티티 장치(10e, 201e, 202e)로부터의 응답 내용을 실행 환경 프로파일 대응 정보로서 관리한다(ST39). 실행 환경 프로파일 대응 정보는, 인증 엔티티 장치(10e, 201e, 202e)에 대응지어져 관리되는 것이 바람직하다.
클라이언트 장치(40)는, 관리한 실행 환경 프로파일 대응 정보로부터, 클라이언트 환경이 대응 가능한 실행 환경 프로파일을 판정하고(ST40), 판정 결과, 대응 가능한 실행 환경 프로파일을 실행 환경 프로파일 관리부(44) 내에 등록한다(ST41).
실행 환경 프로파일을 실행 가능한 인증 엔티티 장치(10e, 201e, 202e)가 갖추어진 경우를 대응가능으로 판정하는 판정 기준이 본 실시예에서는 채택된다. 그러나, 판정 기준에는 그 밖의 판정 요소를 포함해도 되고, 그 경우에는, 대응 실행 환경 프로파일 조회 메시지 내에 판정 요소의 조회 내용을 포함하게 해도 된다.
또한, 클라이언트 장치(40)는, 정기적으로 각 인증 엔티티 장치(10e, 201e, 202e)의 접속을 확인하고, 접속이 절단된 경우에는, 실행 환경 프로파일 관리부(44) 내의 실행 환경 프로파일 대응 정보 및 대응 가능한 실행 환경 프로파일을 삭제하는 것이 바람직하다. 대체 가능한 실행 환경 프로파일 대응 정보가 존재하는 경우에는, 대응 가능한 실행 환경 프로파일을 삭제하지 않아도 된다.
이어서, 인증자가 디지털 서명인 경우의 검증 장치로부터 클라이언트 환경에 대하여, 실행 환경 프로파일을 지정하는 처리의 일례를 나타낸다.
도 32는, 본 실시예에서의 실행 환경 프로파일 지정 처리에 관한 클라이언트 장치와 검증 장치의 시스템 개념과 기능 블록 구성을 도시하는 도면이다.
검증 장치(30e)는, 도시하지 않았지만 제1∼제6 실시예에서의 각 부(31, 32)의 기능을 갖고, 또한 클라이언트 실행 환경 프로파일 조회부(34), 기억부(35), 클라이언트 실행 환경 프로파일 지정부(36)를 구비한다. 여기서, 클라이언트 실행 환경 프로파일 조회부(34)는, 클라이언트 환경에서 실시하는 것이 가능한 실행 환경 프로파일을 조회하는 것이다. 기억부(35)는, 보안 정책이 기억된 것이다.
클라이언트 실행 환경 프로파일 지정부(36)는, 클라이언트 환경에서 실시하는 실행 환경 프로파일을 지정하는 것이다. 또한, 보안 정책은, 실행 환경 프로파일을 지정할 때에, 판단 기준으로 되는 정보이다. 본 실시예에서는, 보안 정책의 형태와 상관없지만, 지정 가능한 실행 환경 프로 파일이 우선 순위로 된 리스트의 형식이 바람직하다.
본 실시예의 클라이언트 환경에서는, 전술한 예와 마찬가지로 클라이언트 장치(40)가 중개 대리를 행하는 예를 나타낸다. 단, 이것에 한하지 않고, 인증 엔티티 장치(10e, 201e, 202e)와 검증 장치(30)가 직접 교섭하도록 변형해도 된다.
클라이언트 장치(40)는, 전술한 각 부(41∼44) 외에 추가로, 클라이언트 실행 환경 프로파일 응답부(45)를 구비한다. 클라이언트 실행 환경 프로파일 응답부(45)는, 검증 장치(30)로부터의 실행 환경 프로파일 조회에 응답하는 것이다.
검증 장치(30)가 실행 환경 프로파일을 지정하는 실행 환경 프로파일 지정 처리의 일례를 이하의 스텝에서 설명한다. 또한, 클라이언트 환경 내에서의 실행 환경 프로파일 교섭 처리는, 전술한 처리 스텝 ST31∼ST41과 같이 사전에 실행되어 있는 것으로 한다. 하기 스텝의 처리 플로우도는, 도 33에 도시한다. 또한, 도 33에서는 간략화를 위해, 클라이언트 실행 환경 프로파일 조회 메시지 및 클라이언트 실행 환경 프로파일 응답 메시지 및 실행 환경 프로파일 지정 메시지를, 클라이언트 실행 환경 프로파일 교섭 메시지로서 설명하고 있다.
검증 장치(30e)는, 실시 가능한 실행 환경 프로파일이 있는지의 여부를 조회하기 위한 실행 환경 프로파일 조회 메시지를 작성하고(ST51), 얻어진 실행 환경 프로파일 조회 메시지를 클라이언트 장치(40)에 송신한다(ST52).
클라이언트 장치(40)는, 실행 환경 프로파일 조회 메시지를 수신하고(ST53), 그 조회 내용을 취득한다(ST54). 그러한 후, 클라이언트 장치(40)는, 실행 환경 프로파일 관리부(44) 내의 대응 가능 실행 환경 프로파일 리스트를 확인하고(ST55), 확인 결과를 포함하는 실행 환경 프로파일 응답 메시지를 작성한다(ST56).
실행 환경 프로파일 응답 메시지는, 복수의 대응 가능한 실행 환경 프로파일이 있는 경우에는, 대응 가능한 실행 환경 프로파일 리스트를 포함한다. 또한, 대응 가능한 실행 환경 프로파일이 없는 경우에는, 실행 환경 프로파일 응답 메시지는, 클라이언트 환경 대응 가능 실행 환경 프로파일이 없는 취지를 포함한다.
어떠한 경우에도, 클라이언트 장치(40)는, 실행 환경 프로파일 응답 메시지를 검증 장치(30e)에 송신한다(ST57). 또한, 실행 환경 프로파일 응답 메시지가, 대응 가능한 실행 환경 프로파일이 없는 취지를 포함하는 경우에는 이 처리를 종료한다. 이하의 스텝에서는, 실행 환경 프로파일 응답 메시지가, 대응 가능한 실행 환경 프로파일 리스트를 포함하는 경우를 설명한다.
검증 장치(30e)는, 클라이언트 실행 환경 프로파일 응답 메시지를 수신하고 (ST58), 대응 가능한 실행 환경 프로파일 리스트를 취득한다(ST59 ; 예). 대응 가능한 실행 환경 프로파일 리스트가 없으면(ST59 ; 아니오), 이 처리는 종료한다.
검증 장치(30e)는, 클라이언트 실행 환경 프로파일 지정부(36)에 의해 클라이언트 환경이 대응 가능한 실행 환경 프로파일 리스트가 존재하는지의 여부를 판정하여(ST60), 존재하는 경우(ST60 ; 예)에는 해당 리스트 중에서, 보안 정책에 따른 실행 환경 프로파일을 선택하고(ST61), 이 실행 환경 프로파일을 지정하는 실행 환경 프로파일 지정 메시지를 생성한다(ST62). 또한, 보안 정책에 적합한 실행 환 경 프로파일이 리스트 내에 존재하지 않는 경우에는(ST60 ; 아니오), 존재하지 않은 취지를 포함하는 실행 환경 프로파일 지정 메시지를 생성한다(ST62).
어떠한 경우에도, 검증 장치(30e)는, 생성한 실행 환경 프로파일 지정 메시지를 클라이언트 장치(40)에 송신한다(ST63).
클라이언트 장치(40)는, 실행 환경 프로파일 지정 메시지를 수신하여, 실시할 실행 환경 프로파일을 확인한다.
이 스텝 후에 이어서, 제1∼제6 실시예가 각각 실행되는 것이 바람직하다.
이 경우, 클라이언트 장치(40)는, 제어부(42)에 의해, 확인한 실행 환경 프로파일에 기초하여, 해당하는 실행 환경 프로파일을 갖는 인증 엔티티 장치(10e, 201e, 202e)에 인증 요구를 송신하여 인증 구성 프로세스를 실행시킨다.
또한, 인증 구성 프로세스의 실행 중, 각 장치(10e, 201e, 202e, 30e) 사이의 통신은, 클라이언트 장치(40)가 중개 대리를 행하는지의 여부와 상관없다.
전술한 바와 같이 본 실시예에 따르면, 제1∼제6 실시예의 작용 효과 외에 추가로, 인증 구성 프로세스를 실행하기 전에, 각 인증 엔티티 장치(10e, 201e, 202e)에서의 인증 구성 프로세스의 실행 환경 프로파일 중, 클라이언트 환경이 대응 가능한 것을 등록하므로, 클라이언트 환경과의 사이에서 실행 환경 프로파일의 합의를 확립할 수 있다.
또한, 인증 구성 프로세스를 실행하기 전에, 검증 장치(30")가 실행 환경 프로파일을 클라이언트 장치(40)에 지정하므로, 검증 장치(30") 주도에 의한 인증 구 성 프로세스를 실행할 수 있다.
또한, 상기 각 실시예에 기재한 방법은, 컴퓨터에 실행시킬 수 있는 프로그램으로서, 자기 디스크(플로피(등록 상표) 디스크, 하드디스크 등), 광 디스크(CD-ROM, DVD 등), 광 자기 디스크(MO), 반도체 메모리 등의 기억 매체에 저장하여 반포할 수도 있다.
또한, 이 기억 매체로서는, 프로그램을 기억할 수 있고, 또한 컴퓨터가 판독 가능한 기억 매체이면, 그 기억 형식은 어떤 형태이어도 된다.
또한, 기억 매체로부터 컴퓨터에 인스톨된 프로그램의 지시에 기초하여 컴퓨터 상에서 가동하고 있는 OS(오퍼레이팅 시스템)나, 데이터베이스 관리 소프트웨어, 네트워크 소프트웨어 등의 MW(미들웨어) 등이 본 실시예를 실현하기 위한 각 처리의 일부를 실행해도 된다.
또한, 본 발명에서의 기억 매체는, 컴퓨터와 독립된 매체에 한하지 않고, LAN이나 인터넷 등에 의해 전송된 프로그램을 다운로드하여 기억 또는 일시 기억한 기억 매체도 포함된다.
또한, 기억 매체는 하나에 한하지 않고, 복수의 매체로부터 본 실시예에서의 처리가 실행되는 경우에도 본 발명에서의 기억 매체에 포함되고, 매체 구성은 어떤 구성이어도 된다.
또한, 본 발명에서의 컴퓨터는, 기억 매체에 기억된 프로그램에 기초하여, 본 실시예에서의 각 처리를 실행하는 것으로, 퍼스널 컴퓨터 등의 하나로 이루어지는 장치, 복수의 장치가 네트워크 접속된 시스템 등의 어느 구성이어도 된다.
또한, 본 발명에서의 컴퓨터란, 퍼스널 컴퓨터에 한하지 않고, 정보 처리 기기에 포함되는 연산 처리 장치, 마이크로컴퓨터 등도 포함하고, 프로그램에 의해 본 발명의 기능을 실현하는 것이 가능한 기기, 장치를 총칭하고 있다.
또한, 본원 발명은, 상기 실시예, 그 자체에 한정되는 것은 아니며, 실시 단계에서는 그 요지를 일탈하지 않는 범위에서 구성 요소를 변형하여 구체화할 수 있다. 또한, 상기 실시예에 개시되어 있는 복수의 구성 요소의 적당한 조합에 의해 다양한 발명을 형성할 수 있다. 예를 들면, 실시예에 기재되는 전체 구성 요소로부터 몇개의 구성 요소를 삭제해도 된다. 또한, 상이한 실시예에 걸친 구성 요소를 적절하게 조합해도 된다.