KR20090027554A - Method for issuing certificate of electric filing document, and system for storing certificate of electric filing document therefor, and the recording media storing the program performing the said method - Google Patents

Method for issuing certificate of electric filing document, and system for storing certificate of electric filing document therefor, and the recording media storing the program performing the said method Download PDF

Info

Publication number
KR20090027554A
KR20090027554A KR1020070140321A KR20070140321A KR20090027554A KR 20090027554 A KR20090027554 A KR 20090027554A KR 1020070140321 A KR1020070140321 A KR 1020070140321A KR 20070140321 A KR20070140321 A KR 20070140321A KR 20090027554 A KR20090027554 A KR 20090027554A
Authority
KR
South Korea
Prior art keywords
certificate
electronic document
field
message
request message
Prior art date
Application number
KR1020070140321A
Other languages
Korean (ko)
Other versions
KR100969313B1 (en
Inventor
강현구
임영철
이중구
심재성
김동하
이진규
박소연
Original Assignee
한국전자거래진흥원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자거래진흥원 filed Critical 한국전자거래진흥원
Publication of KR20090027554A publication Critical patent/KR20090027554A/en
Application granted granted Critical
Publication of KR100969313B1 publication Critical patent/KR100969313B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/26Government or public services
    • G06Q50/265Personal security, identity or safety
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]

Abstract

A method for issuing the certificate of an electronic filing document, an electronic document safekeeping system and a recording medium in which a program for realizing the method is stored are provided to implement a clean and efficient issuing service by defining a standardized certificate request and the profile of a certificate. An electronic document safekeeping system(100) deals an electronic filing document and a certificate for the document. A user terminal(110) is connected with a user who requests the registration of an electronic filing document. A requester terminal(115) is connected with a person who requests a certificate. An electronic document storage server(130) generates and transmits a certificate response message including a certificate request message and a certificate based on a searched traces. A public certification authority server(150) performs the public authentication between the user terminal or requester terminal and the electronic document storage server.

Description

전자문서 증명서 발급 방법 및 이를 위한 전자문서 보관 시스템, 상기 방법을 구현하는 프로그램이 저장된 기록매체 {Method for issuing certificate of electric filing document, and system for storing certificate of electric filing document therefor, and the recording media storing the program performing the said method}Method for issuing certificate of electric filing document, and system for storing certificate of electric filing document therefor, and the recording media storing the program performing the said method}

본 발명은 전자문서 증명서 발급 방법 및 이를 위한 전자문서 보관 시스템, 상기 방법을 구현하는 프로그램이 저장된 기록매체에 관한 것이다. 보다 상세하게는, 전자문서에 대한 각종 증명서(구체적으로, 등록 증명서, 발급 증명서, 이관 증명서, 폐기 증명서, 원본 증명서 및 시점확인 증명서)를 발급하거나 검증하는 기술에 관련한 전자문서 증명서 발급 방법 및 이를 위한 전자문서 보관 시스템, 상기 방법을 구현하는 프로그램이 저장된 기록매체에 관한 것이다.The present invention relates to a method for issuing an electronic document certificate, an electronic document storage system, and a recording medium storing a program for implementing the method. More specifically, a method for issuing an electronic document certificate relating to a technology for issuing or verifying various certificates (specifically, a registration certificate, an issuance certificate, a transfer certificate, a revocation certificate, an original certificate, and a verification certificate) for an electronic document, and a method for the same An electronic document storage system and a recording medium storing a program for implementing the method.

일반적으로 전자문서(electric filing document)란 컴퓨터와 같이 정보처리 능력을 가진 장치에 의하여 전자적인 형태로 작성되며, 신호를 이용하여 송수신되는 저장될 수 있는 정보를 말한다. 이러한 전자문서는 오늘날 법률에 근거하여 보호받고 있는데, 그 예로써 전기통신사업법 제5조에 따르면, "전자문서는 다른 법률 에 특별한 규정이 있는 경우를 제외하고는 전자적 형태로 되어 있다는 이유로 문서로서의 효력이 부인되지 않는다."라고 명시되어 있다.In general, an electronic filing document is an electronic form by an apparatus having an information processing capability such as a computer, and refers to information that can be stored and transmitted using a signal. Such electronic documents are protected under today's legislation, for example, according to Article 5 of the Telecommunications Business Law, "E-Documents are not valid as documents because they are in electronic form, unless otherwise provided by other laws. It is not denied. "

그런데, 종래에는 이러한 전자문서에 대해 진위여부를 가늠할 수 있는 증명서가 제대로 갖추어지지 못했다. 이로 인해, 해킹 등을 통해 전자문서를 위조하거나 변조시키는 경우에는 적절한 대처가 이루어지지 못해 사용자로 하여금 전자문서 자체에 의구심을 가지게 하는 현상까지 발생하였다.However, in the related art, a certificate for estimating the authenticity of such an electronic document has not been properly prepared. For this reason, in the case of forging or tampering with an electronic document through hacking or the like, proper coping is not achieved, causing a user to doubt the electronic document itself.

한편, 전자문서 증명서에 관한 선행발명으로는 대한민국 특허공개공보 제2006-110955호(발명의 명칭 : 전자문서 내용증명 시스템의 내용증명서 갱신방법 및 그 갱신된 내용증명서의 검증방법)가 있다. 그러나, 이 발명에 기재된 전반적인 내용은 전자문서의 효력을 연장시키기 위한 것으로서 전자문서의 진위여부를 판단하는 증명서 역할에 대해서는 언급된 바가 없다. 또한, 이 발명에는 검증 방법에 대한 내용도 담고 있는데, 이 검증 방법은 DVCS(Data Validation and Certification Server: 데이터 검증 및 인증 서버) 서비스를 고려한 것으로(상기 특허 청구항 제4항의 내용 참조), 데이터 유효성을 검증하는 데에 한정된다. 따라서, 이 검증 방법만으로 검증이 충분히 이루어졌다고 하기에는 곤란하다.On the other hand, the prior invention on the electronic document certificate is Korea Patent Publication No. 2006-110955 (name of the invention: the method of updating the content certificate of the electronic document content identification system and the method of verifying the updated content certificate). However, the general contents described in this invention are intended to extend the validity of the electronic document, and there is no mention of the role of the certificate for determining the authenticity of the electronic document. In addition, the present invention also includes a verification method, which considers a DVCS (Data Validation and Certification Server) service (see the contents of claim 4 of the patent claim). It is limited to verification. Therefore, it is difficult to say that the verification was sufficiently performed only by this verification method.

본 발명은 상술한 문제점을 해결하기 위해 안출된 것으로서, 전자문서의 진위여부를 판단하는 증명서를 발급하거나 검증하는 기술에 관련한 전자문서 증명서 발급 방법 및 이를 위한 전자문서 보관 시스템, 상기 방법을 구현하는 프로그램이 저장된 기록매체를 제공함을 목적으로 한다.The present invention has been made to solve the above problems, an electronic document certificate issuance method and an electronic document storage system for the same, and a program for implementing the method related to the technology for issuing or verifying the authenticity of the electronic document. It is an object to provide this stored recording medium.

또한, 본 발명은 전자문서의 다양한 용도에 대한 증명서(구체적으로, 등록 증명서, 발급 증명서, 이관 증명서, 폐기 증명서, 원본 증명서 및 시점확인 증명서)를 발급하거나 검증하는 기술에 관련한 전자문서 증명서 발급 방법 및 이를 위한 전자문서 보관 시스템, 상기 방법을 구현하는 프로그램이 저장된 기록매체를 제공함을 목적으로 한다.The present invention also provides a method for issuing an electronic document certificate relating to a technology for issuing or verifying a certificate (specifically, a registration certificate, an issuance certificate, a transfer certificate, a revocation certificate, an original certificate, and a verification certificate) for various uses of an electronic document. It is an object of the present invention to provide an electronic document storage system and a recording medium storing a program for implementing the method.

또한, 본 발명은 증명서 유효성 검증 절차와 증명서 내용 검증 절차를 통해 발급된 증명서를 검증하는 기술에 관련한 전자문서 증명서 발급 방법 및 이를 위한 전자문서 보관 시스템, 상기 방법을 구현하는 프로그램이 저장된 기록매체를 제공함을 목적으로 한다.The present invention also provides a method for issuing an electronic document certificate related to a technology for validating a certificate issued through a certificate validation procedure and a certificate content verification process, an electronic document storage system, and a recording medium storing a program for implementing the method. For the purpose.

본 발명은 상술한 목적을 달성하기 위해 안출된 것으로서, 전자문서를 증명하는 증명서를 발급하는 방법에 있어서, (a) 상기 증명서 발급을 요청하는 증명서 요청 메시지를 생성하며, 상기 증명서 요청 메시지를 전송하는 단계; (b) 상기 증명서 요청 메시지에서 증명의 대상이 되는 증적을 검색하는 단계; (c) 상기 증명서 요청 메시지와 상기 검색된 증적을 근거로 상기 증명서 발급을 시도하는 단계; 및 (d) 상기 증명서 발급에 성공한 경우, 상기 증명서를 포함하는 증명서 응답 메시지를 생성하고 상기 증명서 응답 메시지를 전송하며, 상기 증명서 발급에 실패한 경우, 원인을 포함하는 에러 메시지를 생성하고 상기 에러 메시지를 전송하는 단계를 포함하는 것을 특징으로 하는 전자문서 증명서 발급 방법을 제공한다.In order to achieve the above object, the present invention provides a method for issuing a certificate for authenticating an electronic document, the method comprising: (a) generating a certificate request message requesting issuance of the certificate, and transmitting the certificate request message; step; (b) retrieving an evidence to be proved in the certificate request message; (c) attempting to issue the certificate based on the certificate request message and the retrieved evidence; And (d) generating a certificate response message including the certificate and transmitting the certificate response message if the certificate issuance is successful, and generating an error message including a cause if the certificate issuance fails and generating the error message. It provides an electronic document certificate issuing method comprising the step of transmitting.

바람직하게는, 상기 증명서는 상기 전자문서 등록을 증명하는 등록 증명서, 상기 전자문서 발급을 증명하는 발급 증명서, 상기 전자문서 이관을 증명하는 이관 증명서, 상기 전자문서 폐기를 증명하는 폐기 증명서, 발급된 전자문서가 보관된 전자문서와 동일한 원본임을 증명하는 원본 증명서, 및 일정 데이터가 특정 시각에 존재하였음을 증명하는 시점확인 증명서 중 하나 이상인 것을 특징으로 한다.Preferably, the certificate is a registration certificate to prove the registration of the electronic document, an issuance certificate to prove the issuance of the electronic document, a transfer certificate to prove the transfer of the electronic document, a revocation certificate to prove the disposal of the electronic document, issued electronic And at least one of an original certificate certifying that the document is the same original as the archived electronic document, and a time verification certificate certifying that the schedule data existed at a specific time.

바람직하게는, 상기 (c) 단계에서는 저장된 증명서 정책을 이용하는 것을 특징으로 한다.Preferably, in step (c), the stored certificate policy is used.

더 바람직하게는, 상기 증명서가 상기 등록 증명서인 경우, 최초 발급에 한하여 상기 증명서 요청 메시지 수신 없이 상기 등록 증명서를 담은 상기 증명서 응답 메시지를 생성 전송하는 것을 특징으로 한다.More preferably, when the certificate is the registration certificate, the certificate response message containing the registration certificate is generated and transmitted for the first time without receiving the certificate request message.

더 바람직하게는, 상기 증명서가 상기 원본 증명서인 경우 상기 (b) 단계에서는, 전자문서 원본 이외에 추가로 상기 원본과 동일한 구성을 가지는 변환본에 대한 원본 증명서를 발급하는 것을 특징으로 한다.More preferably, when the certificate is the original certificate, in the step (b), in addition to the original electronic document, it is characterized in that the original certificate for the converted version having the same configuration as the original.

더 바람직하게는, 상기 증명서가 상기 원본 증명서인 경우, 상기 (d) 단계에서 생성되는 증명서 응답 메시지는 DIP(Dissemination Information Packages)에 포 함되는 형태인 것을 특징으로 한다.More preferably, when the certificate is the original certificate, the certificate response message generated in the step (d) is characterized in that it is in the form included in DIP (Dissemination Information Packages).

더 바람직하게는, 상기 증명서가 상기 시점확인 증명서인 경우, 상기 (a) 단계에서의 증명서 요청 메시지는 데이터 해쉬값을 포함하는 것을 특징으로 한다.More preferably, when the certificate is the time-confirmation certificate, the certificate request message in step (a) includes a data hash value.

더 바람직하게는, 상기 증명서가 상기 시점확인 증명서, 상기 발급 증명서, 상기 이관 증명서 및 상기 폐기 증명서 중 하나 이상인 경우 상기 (a) 단계와 상기 (b) 단계의 중간 단계에서, 상기 증명서 요청 메시지의 무결성을 검증하는 것을 특징으로 한다.More preferably, if the certificate is at least one of the time verification certificate, the issue certificate, the transfer certificate, and the revocation certificate, in the middle of the steps (a) and (b), the integrity of the certificate request message It is characterized by verifying.

더 바람직하게는, 상기 증명서가 상기 발급 증명서, 상기 이관 증명서 및 상기 폐기 증명서 중 하나 이상인 경우 상기 (b) 단계에서는, 상기 증명서 요청 메시지를 근거로 기존 증적이 있는지를 검색하는 것을 특징으로 한다.More preferably, when the certificate is one or more of the issuance certificate, the transfer certificate and the revocation certificate, in step (b), it is characterized in that whether the existing evidence based on the certificate request message.

바람직하게는, 상기 (d) 단계에서의 상기 증명서 응답 메시지는 발급한 전자문서를 포함하는 것을 특징으로 한다.Preferably, the certificate response message in the step (d) is characterized in that it comprises the issued electronic document.

또한, 본 발명은 전자문서와 상기 전자문서에 대한 증명서를 취급하는 전자문서 보관 시스템에 있어서, 전자문서의 등록을 요청하는 자가 접속하는 이용자 단말기; 상기 증명서를 요청하는 자가 접속하는 요청자 단말기; 상기 요청을 표시하는 증명서 요청 메시지에서 증명의 대상이 되는 증적을 검색하며, 상기 증명서 요청 메시지와 상기 검색된 증적을 근거로 상기 증명서를 포함하는 증명서 응답 메시지를 생성 전송하는 전자문서 보관소 서버; 및 상기 이용자 단말기 또는 상기 요청자 단말기와 상기 전자문서 보관소 서버 사이에서 공인인증을 하는 공인인증기관 서버를 포함하는 것을 특징으로 하는 전자문서 보관소 시스템을 제공한다.In addition, the present invention provides an electronic document storage system for handling an electronic document and a certificate for the electronic document, comprising: a user terminal to which a person requesting registration of an electronic document is connected; A requestor terminal to which the requestor of the certificate is connected; An electronic document storage server for searching for a certificate to be proved in a certificate request message indicating the request, and generating and transmitting a certificate response message including the certificate based on the certificate request message and the retrieved certificate; And an accredited certification authority server configured to perform an accredited authentication between the user terminal or the requestor terminal and the electronic document storage server.

바람직하게는, 상기 전자문서 보관소 시스템은 상기 전자문서나 상기 증명서를 수임하는 자가 접속하는 수임자 단말기를 더 포함하되, 상기 수임자 단말기는 상기 이용자 단말기, 상기 요청자 단말기 및 제3자가 접속하는 제3자 단말기 중 어느 하나인 것을 특징으로 한다.Preferably, the electronic document storage system further includes a commissioner terminal to which the person accepting the electronic document or the certificate is connected, wherein the receiver terminal is a third party terminal to which the user terminal, the requestor terminal, and a third party connect. It is characterized in that any one of.

바람직하게는, 상기 전자문서 보관소 서버는 상기 증명서 응답 메시지 생성에 실패할 경우 원인을 포함하는 에러 메시지를 생성 전송하는 것을 특징으로 한다.Preferably, the electronic document archive server generates and transmits an error message including a cause when the certificate response message generation fails.

바람직하게는, 상기 전자문서 보관소 서버가 생성하는 증명서는 상기 전자문서 등록을 증명하는 등록 증명서, 상기 전자문서 발급을 증명하는 발급 증명서, 상기 전자문서 이관을 증명하는 이관 증명서, 상기 전자문서 폐기를 증명하는 폐기 증명서, 발급된 전자문서가 보관된 전자문서와 동일한 원본임을 증명하는 원본 증명서, 및 일정 데이터가 특정 시각에 존재하였음을 증명하는 시점확인 증명서 중 하나 이상인 것을 특징으로 한다.Preferably, the certificate generated by the electronic document storage server is a registration certificate to prove the registration of the electronic document, issuance certificate to prove the issuance of the electronic document, a transfer certificate to prove the transfer of the electronic document, proof of discarding the electronic document At least one of a revocation certificate, an original certificate for proving that the issued electronic document is the same as the archived electronic document, and a time-confirmation certificate for proving that the schedule data existed at a specific time.

바람직하게는, 상기 전자문서 보관소 서버는 상기 증명서 응답 메시지에 발급한 전자문서를 포함시키는 것을 특징으로 한다.Preferably, the electronic document storage server is characterized by including the electronic document issued in the certificate response message.

바람직하게는, 상기 전자문서 보관 시스템은 상기 전자문서 보관소 서버에 의해 운용되며, 상기 전자문서, 상기 증명서 및 상기 증적 중 하나 이상을 저장하는 전자문서 보관소 데이터베이스를 더 포함하되, 상기 전자문서 보관소 데이터베이스는 WORM(Write Once Read Many) 기능을 구비하는 것을 특징으로 한다.Preferably, the electronic document storage system is operated by the electronic document storage server, and further comprises an electronic document storage database for storing one or more of the electronic document, the certificate and the evidence, wherein the electronic document storage database And a write once read many (WORM) function.

더 바람직하게는, 상기 전자문서 보관소 서버는 상기 증명서 요청 메시지를 수신하고, 상기 증명서 응답 메시지나 상기 에러 메시지를 송신하는 통신부; 상기 전자문서를 등록하고, 상기 전자문서 등록에 대한 증적을 생성하며, 상기 등록 증명서를 생성하는 등록 관리부; 상기 증명서 응답 메시지나 상기 에러 메시지를 생성하는 메시지 생성부; 상기 전자문서를 발급하고, 상기 전자문서 발급사실에 대한 증적을 생성하며, 상기 원본 증명서를 생성하는 발급 관리부; 상기 증명서 요청 메시지의 무결성을 검증하는 무결성 검증부; 상기 증명서 요청 메시지에 포함된 데이터 해쉬값을 근거로 상기 시점확인 증명서를 생성하는 시점확인 관리부; 상기 증명서 요청 메시지를 근거로 기존 증적이 있는지를 검색하는 증적 검색부; 상기 증적 검색부가 검색한 증적을 근거로 상기 발급 증명서, 상기 이관 증명서 및 상기 폐기 증명서 중 하나 이상을 생성하는 기타 관리부; 및 상기 전자문서 보관소 데이터베이스를 연동시키며, 상기 통신부와 상기 등록 관리부와 상기 메시지 생성부와 상기 발급 관리부와 상기 무결성 검증부와 상기 시점확인 관리부와 상기 증적 검색부와 상기 기타 관리부의 전체 작동을 제어하는 중앙처리부를 포함하는 것을 특징으로 한다.More preferably, the electronic document storage server includes a communication unit for receiving the certificate request message, and transmits the certificate response message or the error message; A registration manager for registering the electronic document, generating a mark for registering the electronic document, and generating the registration certificate; A message generator for generating the certificate response message or the error message; An issue management unit for issuing the electronic document, generating an evidence of the electronic document issuing fact, and generating the original certificate; An integrity verification unit that verifies the integrity of the certificate request message; A point-of-view management unit generating the point-of-view certificate based on the data hash value included in the certificate request message; An evidence retrieval unit for retrieving whether there is an existing evidence based on the certificate request message; Another management unit generating at least one of the issued certificate, the transfer certificate, and the revocation certificate based on the evidence retrieved by the evidence retrieval unit; And interlocking the electronic document storage database and controlling the overall operations of the communication unit, the registration manager, the message generator, the issue manager, the integrity verifier, the point of time manager, the trace retrieval unit, and the other manager. It characterized in that it comprises a central processing unit.

바람직하게는, 상기 전자문서 보관소 서버가 처리하는 상기 증명서 요청 메시지와 상기 전자문서 보관소 서버가 생성하는 상기 증명서 응답 메시지는 ASN.1(Abstract Syntax Notation One), BER(Basic Encoding Rules) 및 DER(Distinguished Encoding Rules) 중 어느 하나의 방식으로 인코딩하는 IETF RFC 3852 CMS(Cryptographic Message Syntax) 구조를 형성하는 것을 특징으로 한다.Preferably, the certificate request message processed by the electronic document archive server and the certificate response message generated by the electronic document archive server are Abstract Syntax Notation One (ASN.1), Basic Encoding Rules (BER), and DER (Distinguished). An IETF RFC 3852 Cryptographic Message Syntax (CMS) structure for encoding in any one of Encoding Rules) is formed.

또한, 본 발명은 컴퓨터로 판독 가능한 기록매체에 있어서, 상술한 방법을 구현하는 프로그램이 저장되는 기록매체를 제공한다.The present invention also provides a recording medium in which a program for implementing the above-described method is stored in a computer-readable recording medium.

본 발명은 상술한 목적 및 구성에 따라 다음과 같은 효과를 발생시킨다. 첫째, 표준화된 증명 요청서 및 증명서의 프로파일을 정의함으로써 전자문서 보관소가 증명서를 발급함에 있어서 투명하고 효율적인 발급 서비스를 제공하고, 증명서의 호환성 확보로 인한 증명 서비스의 확대 및 서비스의 신뢰성을 제공할 수 있게 한다. 둘째, 증명서의 표준화된 검증 방법을 정의함으로써 증명서의 활용을 활성화시키고, 나아가 편리하면서도 검증력 향상을 통해 신뢰할 수 있는 시스템의 구축을 실현시킨다.The present invention produces the following effects in accordance with the above objects and configurations. First, by defining a standardized certificate request and certificate profile, it is possible to provide transparent and efficient issuance services in issuing certificates by the electronic document repository, and to expand the certification service and to provide reliability of services by ensuring compatibility of certificates. do. Second, by defining standardized verification methods of certificates, the use of certificates is activated, and furthermore, it is possible to realize the construction of a reliable system through convenient and improved verification power.

이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. 또한, 이하에서 본 발명의 바람직한 실시예를 설명할 것이나, 본 발명의 기술적 사상은 이에 한정하거나 제한되지 않고 당업자에 의해 변형되어 다양하게 실시될 수 있음은 물론이다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. First of all, in adding reference numerals to the components of each drawing, it should be noted that the same reference numerals are used as much as possible even if displayed on different drawings. In addition, in describing the present invention, when it is determined that the detailed description of the related known configuration or function may obscure the gist of the present invention, the detailed description thereof will be omitted. In addition, the following will describe a preferred embodiment of the present invention, but the technical idea of the present invention is not limited thereto and may be variously modified and modified by those skilled in the art.

도 1은 본 발명의 바람직한 실시예에 따른 전자문서 보관 시스템의 전체 구성을 개략적으로 도시한 개념도이다. 상기 도 1에 도시된 바에 따르면, 본 발명의 바람직한 실시예에 따른 전자문서 보관 시스템(100)은 이용자(user)가 접속하는 이용자 단말기(110), 증명서 요청자(requester)가 접속하는 증명서 요청자 단말기(115), 증명서 수임자(nominee)가 접속하는 증명서 수임자 단말기(120), 상기 단말기들(110 내지 120)과 네트워크 연결되는 전자문서 보관소 서버(130), 전자문서 보관소 데이터베이스(135) 및 공인인증기관(CA; Certificate Authority) 서버(150)를 포함하여 이루어진다.1 is a conceptual diagram schematically showing the overall configuration of an electronic document storage system according to a preferred embodiment of the present invention. As shown in FIG. 1, the electronic document storage system 100 according to a preferred embodiment of the present invention includes a user terminal 110 connected to a user and a certificate requester terminal connected to a certificate requester. 115, a certificate holder terminal 120 to which the certificate holder (nominee) is connected, the electronic document storage server 130, the electronic document storage database 135 and a public certification authority (network connection with the terminals 110 to 120) ( And a Certificate Authority (CA) server 150.

상기에서, 편의상 특정 업무을 요청하는 주체에 따라 이용자 단말기(110), 증명서 요청자 단말기(115), 증명서 수임자 단말기(120) 등으로 구분하였으나, 이용자나 증명서 요청자가 동시에 증명서 수임자가 될 수도 있으므로 이들 단말기를 통일시켜 단일한 사용자 단말기로써 구현할 수 있음은 물론이다. 이는 곧, 하나의 사용자 단말기에서 이용자, 증명서 요청자, 증명서 수임자 각각이 전자문서 보관소 서버(130)에 업무를 요청하고 제공받을 수 있음으로 이해하면 될 것이다.In the above description, the user terminal 110, the certificate requester terminal 115, the certificate holder terminal 120, etc. are classified according to the subject requesting a specific task for convenience, but the user or certificate requester may be the certificate holder at the same time. Of course, it can be implemented as a single user terminal unified. In other words, it will be understood that each of a user, a certificate requester, and a certificate holder can request and receive a job from the electronic document storage server 130 in one user terminal.

이용자 단말기(110)는 이용자가 접속하는 단말기로서, 전자문서 보관소 서버(130)에 전자문서 보관 등 업무를 이용하는 주체 역할을 한다. 구체적으로, 이용자 단말기(110)는 전자문서의 등록, 폐기, 이관, 발급 등의 일반적인 보관소 서버(130)의 업무를 이용하게 된다. 한편, 이용자 단말기(110)는 요청된 업무의 종류 및 행위에 따라서 증명서 요청자 단말기(115)와 증명서 수임자 단말기(120)로의 전이도 가능하다. 상기에서, 전자문서(electric filing document)라 함은 정보처리 시스템에 의하여 전자적 형태로 작성된 정보로서, 신호로써 송수신이 가능하며 전자문서 보관소 서버(130)에 의해 전자문서 보관소 데이터베이스(135)에 저장된다.The user terminal 110 is a terminal to which the user is connected, and serves as a subject that uses a task such as electronic document storage in the electronic document storage server 130. Specifically, the user terminal 110 will use the work of the general storage server 130, such as registration, disposal, transfer, issuance of electronic documents. On the other hand, the user terminal 110 may also be transferred to the certificate requestor terminal 115 and the certificate holder terminal 120 according to the type and action of the requested task. In the above description, an electronic filing document is information created in an electronic form by an information processing system, which can be transmitted and received as a signal, and is stored in the electronic document storage database 135 by the electronic document storage server 130. .

증명서 요청자 단말기(115)는 증명서 요청자가 접속하는 단말기로서, 증명서를 요청하는 주체 역할을 한다. 구체적으로, 증명서 요청자 단말기(115)는 증명 요청서를 작성하여 보관소 서버(130)에 제출하고 증명서를 발급받는 기능을 수행한다.The certificate requestor terminal 115 is a terminal to which a certificate requester connects, and serves as a subject for requesting a certificate. Specifically, the certificate requester terminal 115 prepares a certificate request form, submits it to the storage server 130, and performs a function of receiving a certificate.

증명서 수임자 단말기(120)는 증명서 수임자가 접속하는 단말기로서, 증명서를 받아 이용하는 주체 역할을 한다. 구체적으로, 증명서 수임자 단말기(120)는 발급받은 증명서를 검증하거나 위임된 권한을 사용하는 기능을 수행한다. 따라서, 증명서 수임자 단말기(120)는 본 발명의 실시예에서 상술한 두 단말기(110, 115) 중 어느 하나가 될 수 있다. 물론, 증명서 수임자 단말기(120)는 제3자가 접속하는 제3자 단말기인 것도 가능하다.The certificate holder terminal 120 is a terminal to which a certificate holder is connected, and serves as a subject for receiving and using a certificate. Specifically, the certificate holder terminal 120 performs the function of verifying the issued certificate or using the delegated authority. Therefore, the certificate holder terminal 120 may be any one of the two terminals (110, 115) described above in the embodiment of the present invention. Of course, the certificate holder terminal 120 may be a third party terminal that is connected to a third party.

이상, 상술한 이용자 단말기(110), 증명서 요청자 단말기(115) 및 증명서 수임자 단말기(120)는 본 발명의 실시예에서 터미널(terminal) 기능을 하는 휴대폰, PDA, 컴퓨터 등으로 구현될 수 있다. 그러나, 반드시 이에 한정될 필요는 없으며, 입력신호를 발생시키는 키입력부와 출력신호를 표시하는 디스플레이부를 구비하는 소정 형상의 장치라면 충분할 것이다.As described above, the above-described user terminal 110, certificate requestor terminal 115 and certificate holder terminal 120 may be implemented as a mobile phone, PDA, computer, etc. having a terminal function in the embodiment of the present invention. However, the present invention is not necessarily limited thereto, and any device having a predetermined shape including a key input unit generating an input signal and a display unit displaying an output signal will be sufficient.

전자문서 보관소 서버(130)는 전자문서 증명 업무를 수행하는 주체로서, 본 발명의 실시예에서 그 주된 기능이 증명서의 발급이다. 전자문서 보관소 서버(130)는 요청자 단말기(115)에 의한 증명서 요청에 대하여 증명서를 발급하게 되는데, 증명서의 요청은 요청 및 응답의 프로토콜을 사용한다. 증명서 발급을 포함하여 전자문서 보관소 서버(130)가 본 발명의 실시예에서 수행하는 구체적인 기능은 다음 과 같다.The electronic document storage server 130 is a subject that performs an electronic document verification task. The main function of the present invention is to issue a certificate. The electronic document storage server 130 issues a certificate for the certificate request by the requester terminal 115, and the request for the certificate uses a protocol of request and response. Specific functions that the electronic document archive server 130 performs in the embodiment of the present invention, including certificate issuance, are as follows.

첫째, 보관소 서버(130)는 전자문서의 등록, 폐기, 이관, 발급 등에 대해 요청 업무를 수행하며, 이에 대한 기록을 증적의 형태로 생성하는 기능을 수행한다. 기록은 무결성을 보장하기 위해 안전하게 보관되며, 등록 기능의 경우에는 추가로 등록 증명서를 발급하게 된다.First, the repository server 130 performs a request task for registration, disposal, transfer, issuance, etc. of the electronic document, and performs a function of generating a record for this in the form of a trace. Records are kept secure to ensure integrity and, in the case of registration functions, additional registration certificates will be issued.

둘째, 보관소 서버(130)는 등록 증명서, 발급 증명서, 이관 증명서, 폐기 증명서, 원본 증명서, 시점확인 증명서 등을 발급하는 기능을 수행한다. 상기에 기재된 각각의 증명서를 정의하면 다음과 같다. 등록 증명서는 본 발명의 실시예에서 보관소 서버(130)가 수행한 전자문서 등록 기능에 대한 증적을 대상으로 발급하는 보증서로 정의된다. 발급 증명서는 본 발명의 실시예에서 보관소 서버(130)가 수행하는 전자문서 발급 기능에 대한 증적을 대상으로 발급하는 보증서로 정의된다. 이관 증명서는 본 발명의 실시예에서 보관소 서버(130)가 수행한 전자문서 이관 기능에 대한 증적을 대상으로 발급하는 보증서로 정의된다. 폐기 증명서는 본 발명의 실시예에서 보관소 서버(130)가 수행하는 전자문서 폐기 기능에 대한 증적을 대상으로 발급하는 보증서로 정의된다. 원본 증명서는 본 발명의 실시예에서 보관소 서버(130)가 발급하는 전자문서의 내용이 보관소가 보관 중인 원본 전자문서의 내용과 동일함을 증명하는 보증서로 정의된다. 시점확인 증명서는 본 발명의 실시예에서 특정 데이터가 특정 시각에 존재하였음을 증명하는 보증서로 정의된다.Second, the storage server 130 performs a function of issuing a registration certificate, issuance certificate, transfer certificate, revocation certificate, original certificate, time verification certificate and the like. Each certificate described above is defined as follows. The registration certificate is defined as a certificate issued for the evidence for the electronic document registration function performed by the storage server 130 in the embodiment of the present invention. The issuance certificate is defined as a certificate for issuing a certificate for the electronic document issuing function performed by the storage server 130 in the embodiment of the present invention. The escalation certificate is defined as a certificate issued for the evidence for the electronic document transfer function performed by the storage server 130 in the embodiment of the present invention. The revocation certificate is defined as a certificate issued for the evidence for the electronic document revocation function performed by the repository server 130 in the embodiment of the present invention. The original certificate is defined as a certificate certifying that the contents of the electronic document issued by the repository server 130 are the same as the contents of the original electronic document held by the repository in the embodiment of the present invention. The viewpoint confirmation certificate is defined as a certificate in the embodiment of the present invention, which proves that specific data existed at a specific time.

한편, 보관소 서버(130)가 상술한 증명서들을 발급하는 절차는 도 2 내지 도 6을 참조하여 후술한다.Meanwhile, the procedure for issuing the above-mentioned certificates by the storage server 130 will be described later with reference to FIGS. 2 to 6.

세째, 보관소 서버(130)는 상술한 각종 증명서를 검증하는 데에 필요한 정보를 제공하는 기능을 수행한다. 증명서 검증은 증명서 검증자(verifier)가 접속하는 증명서 검증자 단말기(미도시)에 의해 이루어지는데, 증명서 검증자 단말기는 본 발명의 실시예에서 요청자 단말기(115) 또는 수임자 단말기(120)일 수 있다. 한편, 검증자 단말기는 필요에 따라 보관소 서버(130)에 특정 데이터를 추가 요청할 수 있다. 이 경우, 보관소 서버(130)는 검증자 단말기가 권한이 있다고 판단되는 경우에 한해 특정 데이터를 제공함이 바람직하다. 한편, 증명서 검증 방법은 후술한다.Third, the storage server 130 performs a function of providing the information necessary to verify the various certificates described above. Certificate verification is performed by a certificate verifier terminal (not shown) to which a certificate verifier is connected. The certificate verifier terminal may be the requestor terminal 115 or the delegate terminal 120 in the embodiment of the present invention. . Meanwhile, the verifier terminal may further request specific data from the storage server 130 as needed. In this case, the storage server 130 preferably provides specific data only when it is determined that the verifier terminal has authority. The certificate verification method is described later.

전자문서 보관소 데이터베이스(135)는 본 발명의 실시예에서 전자문서 보관소 서버(130)가 증적의 형태로 생성한 각종 기록(전자문서 포함)을 저장 보관하는 기능을 한다. 이를 위해 이 데이터베이스(135)를 구현하는 저장매체는 WORM(Write Once Read Many) 기능을 가지도록 함이 바람직하다. 그러면, 설정된 보존 기간동안에는 삭제나 위조, 변조 등이 불가능하게 되어 신뢰성이 제고될 수 있다.The electronic document storage database 135 functions to store and store various records (including electronic documents) generated by the electronic document storage server 130 in the form of a trace in an embodiment of the present invention. To this end, it is preferable that the storage medium implementing the database 135 has a write once read many (WORM) function. Then, during the set retention period, deletion, forgery, tampering, or the like becomes impossible and reliability can be improved.

공인인증기관 서버(150)는 본 발명의 실시예에서 전자문서 보관소 서버(130)와 네트워크 연결된다. 이러한 공인인증기관 서버(150)은 보관소 서버(130) 이용자들의 인증서를 발급하게 해주는 기능을 수행한다. 또한, 공인인증기관 서버(150)는 인증서 유효성 검증을 위하여 디렉토리(Directory) 또는 OCSP(Online Certificate Status Protocol : 실시간 인증서 상태 확인 프로토콜) 기능을 제공한다. 공인인증기관 서버(150)가 구현하는 이러한 기능들은 예컨대, "X500; ITU-T Recommendation X.500 | ISO/IEC 9594-1:1998, Information technology - Open Systems Interconnection - The Directory : Overview Of Concepts, Models and Services", "X501; ITU-T Recommendation X.501 | ISO/IEC 9594-2:1995, Information technology - Open Systems Interconnection - The Directory : Part 2 : Models", "X509; ITU-T Recommendation X.509 | ISO/IEC 9594-8:1998, Information technology - Open Systems Interconnection - The Directory : Authentication Framework" 등의 문헌을 참고할 수 있겠다.The public certification authority server 150 is networked with the electronic document storage server 130 in the embodiment of the present invention. The public certification authority server 150 performs a function of issuing a certificate of the storage server 130 users. In addition, the public certification authority server 150 provides a directory or online certificate status protocol (OCSP) function for certificate validation. These functions implemented by the certification authority server 150 are described in, for example, "X500; ITU-T Recommendation X.500 | ISO / IEC 9594-1: 1998, Information technology-Open Systems Interconnection-The Directory: Overview Of Concepts, Models. and Services "," X501; ITU-T Recommendation X.501 | ISO / IEC 9594-2: 1995, Information technology-Open Systems Interconnection-The Directory: Part 2: Models "," X509; ITU-T Recommendation X.509 ISO / IEC 9594-8: 1998, Information technology-Open Systems Interconnection-The Directory: Authentication Framework ".

다음으로, 전자문서 보관 시스템(100)을 구성하는 전자문서 보관소 서버(130)를 설명한다. 도 2는 본 발명의 바람직한 실시예에 따른 전자문서 보관 시스템에 있어서, 전자문서 보관소 서버의 내부 구성을 개략 설명한 블록도이다. 도 2를 참조하면, 본 발명의 바람직한 실시예에 따른 전자문서 보관소 서버(130)는 통신부(200), 등록 관리부(205), 메시지 생성부(215), 발급 관리부(220), 무결성 검증부(225), 시점확인 관리부(230), 증적 검색부(235), 기타 관리부(240) 및 중앙처리부(210)를 포함한다. 이에 더하여, 전자문서 보관소 서버(130)가 항시 구동될 수 있도록 전원을 공급하는 전원부(미도시)를 더 구비함은 물론이다. 또한, 전자문서 보관소 서버(130)는 특정 신호를 입력하거나 처리된 결과를 표시할 수 있도록 입력부와 출력부를 더 구비함도 가능하다.Next, the electronic document storage server 130 constituting the electronic document storage system 100 will be described. 2 is a block diagram schematically illustrating an internal configuration of an electronic document storage server in an electronic document storage system according to a preferred embodiment of the present invention. 2, the electronic document storage server 130 according to a preferred embodiment of the present invention communication unit 200, registration management unit 205, message generating unit 215, issuance management unit 220, integrity verification unit ( 225, a view point management unit 230, a trace retrieval unit 235, other management unit 240, and a central processing unit 210. In addition, of course, the electronic document storage server 130 further includes a power supply unit (not shown) for supplying power so that the electronic document storage server 130 can be driven at all times. In addition, the electronic document storage server 130 may further include an input unit and an output unit to input a specific signal or display a processed result.

전자문서 보관소 서버(130)는 비록 서버라는 명칭을 사용하였으나 서버 역할을 할 수 있는 통상의 컴퓨터로 구현됨도 가능하다. 따라서, 본 발명에서 사용되는 서버는 서버, 컴퓨터 등을 포함하는 정보처리 능력을 구비한 장치 개념으로 이해해야 할 것이다. 이는 공인인증기관 서버(150)의 경우도 마찬가지다. 한편, 전자문서 보관소 서버(130)를 구성하는 각 구성부(200 내지 240)의 기능은 도 3 내지 도 6에 따른 방법을 설명하면서 함께 기술할 것인 바 여기서는 상세한 설명을 생략한다.The electronic document storage server 130 may be implemented as a conventional computer that may act as a server although the name server is used. Therefore, the server used in the present invention should be understood as a device concept having an information processing capability including a server, a computer and the like. This is the same also in the case of the public certification authority server 150. Meanwhile, the functions of the components 200 to 240 constituting the electronic document storage server 130 will be described together with the method according to FIGS. 3 to 6, which will not be described in detail.

다음으로, 이미 언급한 바와 같이 보관소 서버(130)가 각종 증명서들을 발급하는 절차를 설명한다. 도 3 내지 도 6은 본 발명의 바람직한 실시예에 따른 전자문서 보관 시스템에 있어서, 전자문서 보관소 서버의 증명서 발급 절차를 설명하기 위한 흐름도이다. 이하, 도 3 내지 도 6을 참조하여 설명한다.Next, as described above, the procedure for issuing various certificates by the storage server 130 will be described. 3 to 6 are flowcharts for explaining a certificate issuing procedure of the electronic document storage server in the electronic document storage system according to the preferred embodiment of the present invention. A description with reference to FIGS. 3 to 6 is as follows.

① 등록 증명서의 발급① Issuance of Registration Certificate

도 3을 참조하면, 제1 단계에서 이용자 단말기(110)는 전자문서 등록을 요청한다. 이 요청은 보관소 서버(130)의 통신부(200)에 수신된다(S300). 제2 단계에서, 보관소 서버(130)의 등록 관리부(205)는 이용자 단말기(110)의 요청에 따라 전자문서를 등록한다(S305). 이후, 등록 관리부(205)는 전자문서 등록에 대한 증적을 생성한다(S310).Referring to FIG. 3, in a first step, the user terminal 110 requests electronic document registration. This request is received by the communication unit 200 of the storage server 130 (S300). In the second step, the registration management unit 205 of the storage server 130 registers the electronic document at the request of the user terminal 110 (S305). Thereafter, the registration manager 205 generates a trail for registering the electronic document (S310).

제3 단계에서, 보관소 서버(130)의 중앙처리부(210)는 전자문서 및 증적을 보관소 데이터베이스(135)에 저장 보관시킨다(S315). 제4 단계에서, 등록 관리부(205)는 중앙처리부(210)의 제어에 따라 보관소 데이터베이스(135)에 연계된다(S320). 이후, 등록 관리부(205)는 보관소 데이터베이스(135)에 저장된 증명서 정책과 증적을 이용하여 등록 증명서를 생성한다(S325).In a third step, the central processing unit 210 of the storage server 130 stores and stores the electronic document and the evidence in the storage database 135 (S315). In a fourth step, the registration management unit 205 is linked to the repository database 135 under the control of the central processing unit 210 (S320). Thereafter, the registration management unit 205 generates a registration certificate by using the certificate policy and the evidence stored in the repository database 135 (S325).

제5 단계에서, 메시지 생성부(215)는 등록 증명서를 포함시켜 전자문서 등록 요청에 대한 답신 메시지를 생성한다(S330). 제6 단계에서, 중앙처리부(210)는 생 성된 답신 메시지를 통신부(200)를 통하여 이용자 단말기(110)에 제공한다(S335).In a fifth step, the message generating unit 215 generates a reply message to the electronic document registration request by including the registration certificate (S330). In a sixth step, the central processing unit 210 provides the generated reply message to the user terminal 110 through the communication unit 200 (S335).

한편, S325 단계에서 등록 관리부(205)가 등록 증명서 생성에 실패하게 되면, 메시지 생성부(215)는 그 원인을 포함하는 에러 메시지를 생성한다(S340). 이후, 중앙처리부(210)는 에러 메시지를 통신부(200)를 통해 이용자 단말기(110)에 전달한다(S345).On the other hand, if the registration management unit 205 fails to generate a registration certificate in step S325, the message generating unit 215 generates an error message including the cause (S340). Thereafter, the central processing unit 210 transmits an error message to the user terminal 110 through the communication unit 200 (S345).

한편, 본 발명의 실시예에서 등록 증명서가 최초의 것인 경우에는 이용자 단말기(110)의 별도 요청이 없어도 자동으로 발급되도록 함이 바람직하다.On the other hand, in the embodiment of the present invention, if the registration certificate is the first time, it is preferable to automatically issue even without a separate request of the user terminal 110.

② 원본 증명서의 발급② Issuance of Original Certificate

도 4를 참조하면, 제1 단계에서 이용자 단말기(110)는 전자문서 발급을 요청한다. 이 요청은 통신부(200)에 수신된다(S400). 제2 단계에서, 보관소 서버(130)의 발급 관리부(220)는 이용자 단말기(110)의 요청에 따라 전자문서 원본을 발급한다(S405). 이후, 발급 관리부(220)는 전자문서 원본 발급 사실에 대한 증적을 생성한다(S410).Referring to FIG. 4, in a first step, the user terminal 110 requests issuance of an electronic document. This request is received by the communication unit 200 (S400). In the second step, the issuance management unit 220 of the storage server 130 issues an electronic document original in response to a request of the user terminal 110 (S405). Thereafter, the issuance management unit 220 generates a trace for the original issue of the electronic document (S410).

제3 단계에서, 중앙처리부(210)는 증적을 보관소 데이터베이스(135)에 저장 보관시킨다(S415). 제4 단계에서, 발급 관리부(220)는 중앙처리부(210)의 제어에 따라 보관소 데이터베이스(135)에 연계된다(S420). 이후, 발급 관리부(220)는 저장된 증명서 정책과 발급된 전자문서 원본을 이용하여 원본 증명서를 생성한다(S425). 한편, 전자문서 원본과 동일한 구성을 가지는 변환본(예컨대, 복사본)이 존재하는 경우, 필요에 따라서는 발급 관리부(220)가 이 변환본에 대한 원본 증명서도 추가로 발급할 수 있다.In a third step, the central processing unit 210 stores and stores the evidence in the storage database 135 (S415). In a fourth step, the issuing manager 220 is linked to the repository database 135 under the control of the central processing unit 210 (S420). Thereafter, the issuing management unit 220 generates an original certificate using the stored certificate policy and the issued electronic document original (S425). On the other hand, if there is a translation (for example, a copy) having the same configuration as the original electronic document, the issuance management unit 220 may further issue the original certificate for this translation, if necessary.

제5 단계에서, 메시지 생성부(215)는 DIP에 발급 요청된 전자문서 원본(또는 전자문서 변환본까지 포함)과 원본 증명서를 첨부시킨다(S430). 여기에서, DIP란 배부 정보 패키지(Dissemination Information Packages)로서, 전자문서 보관소 서버(130)가 전자문서를 이용자 단말기(110)에 제공할 때 이용하는 구조를 말한다. 제6 단계에서, 중앙처리부(210)는 DIP를 통신부(200)를 통하여 이용자 단말기(110)에 제공한다(S435).In a fifth step, the message generating unit 215 attaches the original electronic document (or even the electronic document converted) and the original certificate requested to be issued to the DIP (S430). Here, the DIP is a distribution information package, and refers to a structure used by the electronic document storage server 130 when providing the electronic document to the user terminal 110. In a sixth step, the central processing unit 210 provides the DIP to the user terminal 110 through the communication unit 200 (S435).

한편, S425 단계에서 발급 관리부(220)가 원본 증명서 생성에 실패할 경우, 그 이후 과정인 S440 단계와 S445 단계는 S340 단계 및 S345 단계와 동일하다.On the other hand, if the issuance management unit 220 fails to generate the original certificate in step S425, steps S440 and S445 are the same as step S340 and step S345.

한편, 본 발명의 실시예에서 원본 증명서는 각종 전자문서 발급시에 전자문서와 함께 DIP에 첨부되며, 별도의 증명 요청서 없이도 자동으로 이용자 단말기(110)에 발급되게 함이 바람직하다.On the other hand, in the embodiment of the present invention, the original certificate is attached to the DIP with the electronic document at the time of issuing various electronic documents, it is preferable to be automatically issued to the user terminal 110 without a separate certificate request.

③ 시점확인 증명서의 발급③ Issuance of Certificate of Time Confirmation

도 5를 참조하면, 제1 단계에서 요청자 단말기(115)는 데이터 해쉬값을 포함하는 증명 요청서를 생성한다(S500). 이후, 요청자 단말기(115)는 증명 요청서를 보관소 서버(130)에 전달한다. 그러면, 통신부(200)가 이를 수신한다(S505). 제2 단계에서, 보관소 서버(130)의 무결성 검증부(225)는 증명 요청서의 무결성을 검증한다(S510). 만약 무결성 검증부(225)가 증명 요청서의 무결성을 확인하지 못하면, 메시지 생성부(215)는 증명 요청서의 무결성을 부정한다는 메시지를 생성한다(S515). 이후, 중앙처리부(210)는 이 메시지를 통신부(200)를 통하여 요청자 단말기(110)에 전달한다(S520). 물론, 증명 요청서의 무결성 부정에 대해 전자문서 보관소 서버(130)가 아무런 조치를 취하지 않음도 무방하다.Referring to FIG. 5, in the first step, the requester terminal 115 generates a proof request including a data hash value (S500). Thereafter, the requester terminal 115 transmits the proof request to the storage server 130. Then, the communication unit 200 receives this (S505). In a second step, the integrity verification unit 225 of the storage server 130 verifies the integrity of the certificate request (S510). If the integrity verification unit 225 does not check the integrity of the certificate request, the message generator 215 generates a message that denies the integrity of the certificate request (S515). Thereafter, the central processing unit 210 transmits this message to the requester terminal 110 through the communication unit 200 (S520). Of course, the electronic archive server 130 may not take any action on the integrity denial of the certificate request.

제3 단계에서(이 단계를 비롯한 이후 단계는 증명 요청서의 무결성이 긍정됨을 전제로 한 것임), 보관소 서버(130)의 시점확인 관리부(230)는 증명 요청서와 증명 요청서에 기재된 데이터 해쉬값을 이용하여 시점확인 증명서를 생성한다(S525). 제4 단계에서, 중앙처리부(210)는 생성된 시점확인 증명서를 요청자 단말기(115)에 제공한다(S530).In the third step (assuming that the integrity of the certificate request is positive after this step), the point-of-view management unit 230 of the repository server 130 uses the data hash values described in the certificate request and the certificate request. In step S525, a certificate of time verification is generated. In a fourth step, the central processing unit 210 provides the generated time verification certificate to the requester terminal 115 (S530).

한편, S525 단계에서 시점확인 관리부(230)가 시점확인 증명서 생성에 실패할 경우, 그 이후 과정인 S535 단계와 S540 단계는 S340 단계 및 S345 단계와 동일하다.On the other hand, if the point of view management unit 230 fails to generate the point of time verification certificate in step S525, the subsequent steps S535 and S540 are the same as the steps S340 and S345.

④ 기타 증명서(발급 증명서, 이관 증명서, 폐기 증명서 등)의 발급④ Issuance of other certificates (issuance certificate, transfer certificate, revocation certificate, etc.)

도 6을 참조하면, 제1 단계에서 요청자 단말기(115)는 증명 요청서를 생성한다(S600). 이후, 요청자 단말기(115)는 증명 요청서를 보관소 서버(130)에 전달한다. 그러면, 통신부(200)가 이를 수신한다(S605). 제2 단계에서, 무결성 검증부(225)는 증명 요청서의 무결성을 검증한다(S610). 만약 무결성 검증부(225)가 증명 요청서의 무결성을 확인하지 못하면, 그 이후 과정인 S615 단계 및 S620 단계는 도 5의 경우와 동일하다.Referring to FIG. 6, in the first step, the requester terminal 115 generates a proof request (S600). Thereafter, the requester terminal 115 transmits the proof request to the storage server 130. Then, the communication unit 200 receives this (S605). In a second step, the integrity verification unit 225 verifies the integrity of the certificate request (S610). If the integrity verification unit 225 does not check the integrity of the certificate request, the subsequent steps S615 and S620 are the same as the case of FIG.

제3 단계에서(이 역시 도 5의 경우와 동일함), 보관소 서버(130)의 증적 검색부(235)는 중앙처리부(210)의 제어에 따라 보관소 데이터베이스(135)에 연계된다(S625). 이후, 증적 검색부(235)는 증명 요청서를 근거로 증명의 대상이 되는 증적을 검색한다(S630). 제4 단계에서, 보관소 서버(130)의 기타 관리부(240)는 저장 된 증명서 정책, 검색된 증적 및 증명 요청서를 이용하여 기타 증명서를 생성한다(S635).In the third step (which is also the same as that of FIG. 5), the evidence retrieval unit 235 of the storage server 130 is linked to the storage database 135 under the control of the central processing unit 210 (S625). Subsequently, the evidence searching unit 235 searches for evidences based on the certificate request document (S630). In a fourth step, the other management unit 240 of the storage server 130 generates other certificates using the stored certificate policy, the retrieved evidence and the certificate request (S635).

제5 단계에서, 중앙처리부(210)는 생성된 기타 증명서를 요청자 단말기(115)에 제공한다(S640).In a fifth step, the central processing unit 210 provides the generated other certificate to the requester terminal 115 (S640).

한편, S635 단계에서 기타 관리부(240)가 기타 증명서 생성에 실패할 경우, 그 이후 과정인 S645 단계와 S650 단계는 S340 단계 및 S345 단계와 동일하다.On the other hand, if the other management unit 240 fails to generate the other certificate in step S635, steps S645 and S650 subsequent to that is the same as steps S340 and S345.

한편, 도 3 내지 도 6을 참조한 상기 설명에서 두 단말기(110, 115)와 전자문서 보관소 서버(130) 사이에는 3가지 메시지가 송수신된다. 증명서 요청 메시지, 증명서 응답 메시지, 에러 메시지가 바로 그것인데, 증명서 요청 메시지는 두 단말기(110, 115)가 증명서 발급을 위해 생성 또는 요청한 일련의 정보(예컨대, 증명 요청서)를 말한다. 그리고, 증명서 응답 메시지는 증명서 요청 메시지에 대해 그 처리 결과로 전자문서 보관소 서버(130)가 생성하는 일련의 정보(예컨대, 답신 메시지나 DIP)를 말한다. 마지막으로, 에러 메시지는 증명서 응답 메시지의 생성에 실패하였을 경우에 그 원인을 포함하여 생성하는 정보를 말한다. 이하, 이들 메시지에 대해 보다 상세하게 설명한다. 먼저, 증명서 요청 메시지를 설명한다.Meanwhile, in the above description with reference to FIGS. 3 to 6, three messages are transmitted and received between the two terminals 110 and 115 and the electronic document storage server 130. The certificate request message, the certificate response message, and the error message are the certificate request message. The certificate request message refers to a series of information (eg, a certificate request) generated or requested by the two terminals 110 and 115 to issue a certificate. The certificate response message refers to a series of information (eg, reply message or DIP) generated by the electronic document storage server 130 as a result of the processing of the certificate request message. Finally, the error message refers to information generated including the cause when the generation of the certificate response message fails. Hereinafter, these messages will be described in more detail. First, the certificate request message will be described.

증명서 요청 메시지는 전자서명 구조인 IETF RFC 3852 CMS(Cryptographic Message Syntax)에서 제시하는 ContentInfo 구조체로 표현된 signedData를 사용한다. signedData는 일반적으로 많이 사용되는 구조이며, 다양한 추가 정보 및 기능을 부여할 수 있는 기능을 가지고 있다. CMS는 기본적으로 인코딩 방식은 ASN.1(Abstract Syntax Notation One: 추상적 구문 표기) BER(Basic Encoding Rules: 기본 부호화 규칙)을 따르며, 일부 정보에 대하여는 DER(Distinguished Encoding Rules: 식별 부호화 규칙)을 요구할 수도 있다.The certificate request message uses signedData represented by a ContentInfo structure presented by IETF RFC 3852 Cryptographic Message Syntax (CMS). signedData is a commonly used structure, and has a function to give various additional information and functions. CMS basically conforms to Abstract Syntax Notation One (ASN.1) Basic Encoding Rules (BER), and may require DER (Distinguished Encoding Rules) for some information. have.

이상, 상술한 증명서 요청 메시지를 구현하는 방법은 예컨대, "X680; ITU-T Recommendation X.680 | ISO/IEC 8824-1: Information Technology Abstract Syntax Notation One (ASN.1) : Specification of basic notation", "X690; ITU-T Recommendation X.690 | ISO/IEC 8825-1: Information Technology ASN.1 Encoding Rules: Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER)", "CMP; Internet X.509 Public Key Infrastructure Certificate Management Protocol(CMP)(RFC 4210), IETF, 2005", "CMS; Cryptographic Message Syntax(RFC 3852), IETF, 2004" 등의 문헌을 참고할 수 있겠다. 이는 증명서 응답 메시지와 에러 메시지의 경우도 마찬가지이다.As described above, a method for implementing the above-described certificate request message is described in, for example, "X680; ITU-T Recommendation X.680 | ISO / IEC 8824-1: Information Technology Abstract Syntax Notation One (ASN.1): Specification of basic notation", "X690; ITU-T Recommendation X.690 | ISO / IEC 8825-1: Information Technology ASN.1 Encoding Rules: Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER)", See, eg, "CMP; Internet X.509 Public Key Infrastructure Certificate Management Protocol (CMP) (RFC 4210), IETF, 2005", "CMS; Cryptographic Message Syntax (RFC 3852), IETF, 2004". The same is true for certificate response messages and error messages.

CMS의 signedData 구조는 서명 대상, 서명 인증서, 서명 정보 등으로 구성된다. 이에 따라, 메시지의 내용, 메시지를 생성한 증명서 요청자의 전자서명, 증명서 요청자의 인증서는 각각 encapContentInfo 필드, signerInfos 필드, certificates 필드에 포함되어 구성된다. encapContentInfo 필드는 메시지에서 실제 데이터를 형성하는 ARCCertRequest 구조체를 포함하는 부분으로 무결성의 제공을 위하여 전자서명 되어지는 부분이다. 메시지 컨텐츠의 구별을 위해서 식별자는 id-kiec-arcCertRequest를 사용하게 된다. certificates 필드는 certificate의 집 합으로 증명서 요청자가 메시지 서명에 사용한 인증서를 비롯하여 인증기관의 인증서와 최상위 인증기관 인증서를 포함할 수 있다. certificate의 형식은 공인인증 체계에서 발급하는 형식인 X.509 version 3 인증서를 의미한다. certificates 필드는 선택적으로 사용 가능하지만, 본 발명에서는 증명서 요청자의 인증서를 포함하여 메시지를 생성하도록 한다. signerInfos 필드는 signerInfo의 집합으로 서명자에 대한 정보를 나타내는 필드이다. 증명서 요청자는 메시지의 무결성을 위하여 signerInfo에 증명서 요청자의 전자서명을 포함시킨다. signerInfo는 전자서명, 전자서명 알고리즘 및 속성들을 포함하고 있으며, 증명서 요청자는 CMS 표준에서 언급하고 있는 속성들을 추가적으로 사용할 수 있다.The signedData structure of CMS consists of signature object, signing certificate, and signature information. Accordingly, the content of the message, the digital signature of the certificate requestor that generated the message, and the certificate requestor's certificate are included in the encapContentInfo field, the signerInfos field, and the certificates field, respectively. The encapContentInfo field contains the ARCCertRequest structure that forms the actual data in the message and is digitally signed to provide integrity. To distinguish message contents, identifier uses id-kiec-arcCertRequest. The certificates field is a set of certificates that can include the certificate authority's certificate and the top-level CA certificate, as well as the certificate used by the certificate requester to sign the message. The format of the certificate refers to an X.509 version 3 certificate issued by a public certification system. Although the certificates field is optional, the present invention includes a certificate requestor's certificate to generate a message. The signerInfos field is a set of signerInfos and indicates a information about a signer. The certificate requester includes the certificate requester's digital signature in signerInfo for the integrity of the message. signerInfo includes digital signature, digital signature algorithm and attributes, and certificate requester can additionally use the attributes mentioned in CMS standard.

한편, 증명서 요청 메시지가 ARCCertRequest를 포함하는 signedData의 구조를 가짐은 이미 언급하였다. 이하, 이 구조 메시지의 기본 필드와 확장 필드를 살펴본다.On the other hand, it has already been mentioned that the certificate request message has a structure of signedData including an ARCCertRequest. The basic and extended fields of this structure message are described below.

메시지의 기본 필드는 메시지의 확장 필드(extensions)를 제외한 부분으로 버전, 요청자, 요청 시간, 정책, 증적, 난수 등 메시지 생성에 필요한 필수 정보를 나타낸다. 기본 필드는 메시지에 반드시 포함되어야 하는 정보인데, 이를 위해 ARCCertRequest는 DER 인코딩 방식을 따른다.The basic fields of the message are the parts except for the extension fields of the message, and indicate essential information necessary for generating the message such as version, requestor, request time, policy, trace, and random number. The basic field is information that must be included in the message. For this purpose, ARCCertRequest follows DER encoding.

다음으로, 기본 필드를 구성하는 각각의 정보를 살펴보면, 먼저 version 필드는 메시지의 버전을 표시한다. target 필드에 targetHash가 사용되면 버전 2를 사용하여야 하며, 그 외의 경우에는 버전 1을 사용하여야 한다.Next, look at each piece of information that makes up the basic field. First, the version field indicates the version of the message. If targetHash is used in the target field, version 2 should be used. Otherwise, version 1 should be used.

requester 필드는 증명서 발급을 요청한 주체를 나타낸다. 증명서 요청자는 GeneralName 구조체의 otherName 필드를 이용하여, 증명서 요청자의 실명을 UTF8String으로 인코딩한 값과 증명서 요청자의 식별번호를 두 번 해쉬한 값을 사용하는 것을 기본으로 한다. 증명서 요청자가 사업자인 경우의 실명으로는 사업자명을 사용하며, 식별번호로는 사업자번호를 사용한다. 증명서 요청자가 개인인 경우 식별번호로 주민번호를 사용하게 되는데, 이때 주민번호의 도용을 방지하기 위하여 안전한 난수를 생성하여 주민번호와 연접하여 사용하도록 한다. requester 필드는 한국정보보호진흥원의 "[KCAC.TS.CERTPROF] 전자서명 인증서 프로파일 기술규격"에서 정의된 IdentifyData 구조를 사용하는 공인인증서의 subjectAltName과 비슷한 구조로 되어 있으나, IdentifyData의 userInfo에 한국정보보호진흥원의 "[KCAC.TS.SIVID] 식별번호를 이용한 본인확인 기술규격"에 정의된 VID 구조를 사용하지 않고 본 발명에 적용된 HashedIDNInfo 구조를 사용한다. 한편, 보관소 서버(130)는 증명 요청서를 수신하여 검증하는 과정에서 반드시 requester 필드의 IdentifyData에 대한 검증을 수행해야 한다.The requester field indicates a subject that has requested to issue a certificate. The certificate requestor is based on using the otherName field of the GeneralName structure to encode the certificate requester's real name into UTF8String and hash the certificate requestor's identification number twice. If the certificate requester is a business operator, use the business name as the real name and the business number as the identification number. If the certificate requester is an individual, the social security number is used as an identification number. In this case, a secure random number is generated to be used in conjunction with the social security number to prevent theft of the social security number. The requester field has a structure similar to the subjectAltName of an accredited certificate that uses the IdentifyData structure defined in the Korea Information Security Agency's "[KCAC.TS.CERTPROF] Digital Signature Certificate Profile Technical Specification". The HashedIDNInfo structure applied to the present invention is used without using the VID structure defined in "[KCAC.TS.SIVID] Identification Technical Specification using Identification Number". Meanwhile, the archive server 130 must verify the IdentifyData of the requester field in the process of receiving and verifying the certificate request.

requestTime 필드는 증명서 요청시간을 의미한다. 증명서 요청시간은 증명서 요청자가 메시지를 생성한 시점을 의미하므로 보관소의 업무 수행시점보다는 이후의 시간을 갖는다. 메시지의 증명서 요청시간값이 잘못된 시간이거나 보관소 서버(130)의 시간과 차이가 나는 경우에 보관소 서버(130)는 증명서 발급에 실패한 것으로 처리하고, 증명서 요청자에게 에러 메시지를 전송해야 한다. 증명서 요청시간은 GeneralizedTime 형식을 사용한다.The requestTime field means certificate request time. The certificate request time means the time when the certificate requester generated the message, so it has a later time than when the repository performs its work. If the certificate request time value of the message is incorrect or different from the time of the archive server 130, the archive server 130 should treat the certificate issue as unsuccessful and send an error message to the certificate requester. The certificate request time uses the GeneralizedTime format.

policy 필드는 증명서 정책을 나타낸다. 증명서 요청자는 발급받고 싶은 증 명서 정책을 선택하여 증명서를 요청할 수 있다. 이 필드는 보관소 서버(130)에 의하여 반드시 검토되어야 하며, 보관소 서버(130)가 정책을 알고 있어야 한다. 정의된 구조 중에 policyQualifiers는 사용하지 않는다.The policy field represents a certificate policy. The certificate requester can request a certificate by selecting a certificate policy to be issued. This field must be reviewed by the repository server 130 and the repository server 130 must know the policy. PolicyQualifiers are not used during the defined structure.

target 필드는 증명서 요청자가 증명서를 통하여 증명받고자 하는 대상을 포함하는 필드이며, 요청하는 증명서의 종류에 따라 증적의 식별정보 또는 데이터의 해쉬정보로 구성될 수 있다.The target field is a field including a target that a certificate requestor wants to prove through a certificate. The target field may be configured as identification information of the evidence or hash information of the data according to the type of certificate requested.

targetRecord 필드는 보관소 서버(130)가 제공한 기능에 대한 기록이자 증명서 요청자가 증명서를 통하여 증명받고자 하는 증적의 식별자를 포함한다. 등록 증명서, 발급 증명서, 이관 증명서, 폐기 증명서 중 어느 하나 이상을 발급받기 위한 메시지인 경우는 targetRecord 필드를 사용하여 target 필드를 설정하여야 한다.The targetRecord field is a record of the function provided by the repository server 130 and includes an identifier of the evidence to be authenticated by the certificate requester through the certificate. In the case of a message for issuing one or more of a registration certificate, issuance certificate, transfer certificate, and revocation certificate, a target field must be set using a targetRecord field.

serialNo 필드는 보관소 서버(130)가 제공한 기능을 기록한 증적의 식별번호로서, 발급될 증명서의 target 필드에 포함되는 OperationRecord 구조체의 하위 필드인 serialNo 필드와 동일한 값이어야 한다. 보관소 서버(130)는 증적의 serialNo 생성시 순차적으로 증가하는 양의 정수를 사용하여 최대 20byte까지 생성할 수 있어야 하고, 이용자 소프트웨어는 최대 20byte 길이의 serialNo를 처리할 수 있어야 한다.The serialNo field is an identification number of a record recording a function provided by the storage server 130 and should be the same value as the serialNo field, which is a subfield of an OperationRecord structure included in a target field of a certificate to be issued. The storage server 130 should be able to generate up to 20 bytes using a positive integer that increases sequentially when generating serialNo of the deposit, and the user software should be able to process the serialNo of up to 20 bytes in length.

opType 필드는 보관소 서버(130)가 제공한 기능의 종류, 즉 작업 종류를 의미하며, 역시 발급될 증명서의 target 필드에 포함되는 OperationRecord 구조체의 하위 필드인 opType 필드와 동일한 값이어야 한다. 각 기능의 의미는 다음과 같다.The opType field means a type of function provided by the storage server 130, that is, a job type, and should be the same value as the opType field, which is a subfield of an OperationRecord structure included in a target field of a certificate to be issued. The meaning of each function is as follows.

□ register : 전자문서 등록, issue : 전자문서 발급, transfer : 전자문서 이관, delete : 전자문서 폐기□ register: Electronic document registration, issue: Electronic document issuance, transfer: Electronic document transfer, delete: Electronic document disposal

targetHash 필드는 어떤 데이터가 특정 시각에 존재하였음에 대한 증명을 받고자 할 때 사용되는 필드로서 이는 HashedDataInfo 구조체 형식으로 표현된다. 시점확인 증명서를 발급받기 위한 메시지인 경우는 targetHash 필드를 사용하여 target 필드를 설정하여야 한다.The targetHash field is used to prove that data existed at a specific time. It is expressed in the form of a HashedDataInfo structure. In the case of a message for issuing a time verification certificate, the target field must be set using the targetHash field.

hashedData 필드는 해쉬 알고리즘인 hashAlg를 사용하여 증명받고자 하는 데이터를 한번 해쉬한 값이다.The hashedData field is a hash value of the data to be verified once using hashAlg, which is a hash algorithm.

nonce 필드는 증명서 요청자가 생성한 임시값을 나타낸다. nonce 필드는 기본적으로 재사용 공격 및 추측 공격 등을 방지하기 위하여 사용된다.The nonce field indicates a temporary value generated by the certificate requestor. The nonce field is basically used to prevent reuse attacks and guessing attacks.

다음으로, 확장 필드를 살펴본다. 확장 필드는 다음과 같은 구조로 되어 있다.Next, look at the extension fields. The extended field has the following structure.

Extensions ::= SEQUENCE SIZE (1..MAX) OF ExtensionExtensions :: = SEQUENCE SIZE (1..MAX) OF Extension

Extension ::= SEQUENCE {Extension :: = SEQUENCE {

extnID OBJECT IDENTIFIER,extnID OBJECT IDENTIFIER,

critical BOOLEAN DEFAULT FALSE,critical BOOLEAN DEFAULT FALSE,

extnValue OCTET STRING }extnValue OCTET STRING}

여기에서, Extension은 확장 필드의 종류를 나타내는 extnID와 중요도를 의미하는 critical 그리고 확장 필드의 값을 포함하는 extnValue로 구성된다. 확장 필드의 critical이 TRUE로 설정되어 있을 경우, 보관소 서버(130)는 확장 필드를 반드시 이해하고 처리할 수 있어야 한다.The extension consists of extnID, which indicates the type of the extension field, critical, which indicates the importance, and extnValue, which contains the value of the extension field. If critical of the extended field is set to TRUE, the repository server 130 must be able to understand and process the extended field.

이하, 확장 필드를 구성하는 각각의 필드에 대해 설명한다. Qualifications 확장필드는 자격부여에 관한 것으로 증명서를 전달받아 이용하는 주체와 위임될 역할에 대한 정보를 나타낸다. 증명서를 전달받아 이용하는 주체가 한정되어야 할 경우에 이 필드를 사용하여 증명서에 대한 수임자를 지정할 수 있다. 이 필드를 사용하여 특정인에게만 유효한 증명서를 생성할 수 있으며, 또한 특정인에게 문서에 대한 접근 권한을 부여할 수 있다. 특정인에게 문서에 대한 접근 권한을 부여하기 위하여 본 필드를 사용한다면 반드시 등록 증명서를 요청하여야 한다. Qualifications 확장필드는 증명서의 수임자 정보인 nomineeInfo와 위임될 역할 또는 권한인 nomineeRole로 이루어진 qualification 필드가 복수개로 나열될 수 있는 구조로 되어있다. 증명서 수임자 정보는 증명서 수임자인 nominee와 증명서 수임자의 인증서 정보인 nomineeCert로 이루어져 있으며, 두 필드 중 하나는 반드시 존재해야 한다. 증명서 수임자가 개인일 경우는 반드시 nomineeCert만을 사용해야 하며, 사업자일 경우는 nominee 필드 또는 nomineeCert 필드 둘다 사용 가능하다. nominee 필드는 수임자의 실명 및 식별번호를 사용하여 requester 필드와 동일한 방법으로 생성한다. nomineeCert 필드는 수임자의 인증서에서 추출한 정보를 사용하여 구성한다.Hereinafter, each field constituting the extension field will be described. The Qualifications extension field is about entitlement and indicates information about the subject and the role to be delegated. This field can be used to specify the person responsible for the certificate when the subject to which the certificate is to be received must be limited. You can use this field to generate a certificate that is valid only for a specific person, and to grant access to a document to that person. If you use this field to grant a person access to a document, you must request a certificate of registration. The Qualifications extension field has a structure in which a plurality of qualification fields consisting of nomineeInfo, which is the certificate holder's information, and nomineeRole, which is a role or authority to be delegated, can be listed in a plurality. Certificate holder information consists of the certificate holder nominee and the certificate holder's certificate information nomineeCert. One of the two fields must exist. If the certificate holder is an individual, only nomineeCert should be used. In the case of a licensee, both the nominee field or the nomineeCert field may be used. The nominee field is created in the same way as the requester field using the real name and identification number of the person responsible. The nomineeCert field is constructed using information extracted from the certificate of the recipient.

NomineeRole ::= BIT STRING {NomineeRole :: = BIT STRING {

onlyForNominee (0),onlyForNominee (0),

readDocument (1),readDocument (1),

downloadDocument (2) }downloadDocument (2)}

nomineeRole 필드는 수임자의 역할 또는 권한을 나타낸다. 각 bit값의 의미는 다음과 같다.The nomineeRole field indicates the role or authority of the person in charge. The meaning of each bit value is as follows.

□ onlyForNominee : 증명서의 정당한 수신자임을 나타낸다.□ onlyForNominee: Indicates that the certificate is a valid recipient.

□ readDocument : 보관소 서버(130)에서 문서를 열람할 수 있음을 나타낸다.ReadDocument: Indicates that the document can be read from the storage server 130.

□ downloadDocument : 보관소 서버(130)에서 문서를 다운로드할 수 있음을 나타낸다.DownloadDocument: indicates that the document can be downloaded from the storage server 130.

onlyForNominee 값의 경우, 모든 Qualification에 동시에 설정하거나 동시에 해제해야 함에 주의한다. nomineeRole 필드에 readDocument나 downloadDocument 값을 설정할 경우 반드시 targetRecord 필드의 하위 필드인 opType 필드의 값은 register로 설정되어야 한다. 반대로, targetRecord 필드의 하위 필드인 opType 필드의 값이 register가 아닌 경우 nomineeRole 필드에 readDocument나 downloadDocument 값을 설정하지 않아야 한다. 본 필드 생성시 critical의 값은 TRUE로 설정해야 한다.Note that for the onlyForNominee value, all qualifications must be turned on or off at the same time. When setting the value of readDocument or downloadDocument in the nomineeRole field, the value of the opType field, which is a subfield of the targetRecord field, must be set to register. Conversely, if the value of the opType field, which is a subfield of the targetRecord field, is not register, the readDocument or downloadDocument value should not be set in the nomineeRole field. When creating this field, critical value should be set as TRUE.

UsageType 확장필드는 증명서 용도에 관한 것으로서, 증명서의 이용환경 또는 용도에 따른 분류방식을 나타낸다. 증명서 요청자는 UsageType 필드를 사용하여 증명서의 이용환경 또는 용도를 한정할 수 있다. 의미상으로 공존할 수 있다면, 동일한 증명서에 복수의 UsageType을 설정할 수도 있다.The UsageType extension field is for certificate usage and indicates the classification method according to the usage environment or usage of the certificate. The certificate requester can use the UsageType field to define the usage environment or use of the certificate. If you can semantically coexist, you can set multiple UsageTypes for the same certificate.

id-kiec-usageType OBJECT IDENTIFIER ::= { iso(1) member-body(2) korea(410) kiec(200032) certificate(2) aRCCertificateExtensions(3) 2 }id-kiec-usageType OBJECT IDENTIFIER :: = {iso (1) member-body (2) korea (410) kiec (200032) certificate (2) aRCCertificateExtensions (3) 2}

UsageType ::= BIT STRING {UsageType :: = BIT STRING {

online (0),online (0),

mobile (1),mobile (1),

paperEnable (2) }paperEnable (2)}

여기에서, 각 bit 값의 의미는 다음과 같다.Here, the meaning of each bit value is as follows.

□ online : online 환경에서 사용할 수 있음을 나타낸다.□ online: Indicates that it can be used in an online environment.

□ mobile : mobile 기기에서 사용할 수 있음을 나타낸다.□ mobile: Indicates that it can be used on mobile devices.

□ paperEnable : 종이 증명서로 출력하여 사용할 수 있음을 나타낸다.□ paperEnable: Indicates that paper certificate can be printed and used.

이상, 본 필드 생성시 critical의 값은 FALSE로 설정해야 한다.As above, critical value should be set to FALSE when generating this field.

DateOfExpiration 필드는 증명서 요청자가 증명서의 효력 만기일을 지정할 때 사용한다. 이 필드를 사용하지 않을 경우 보관소 서버(130)가 증명서 정책에서 정의한 유효기간을 사용하여 효력 만기일이 설정된다. 또한, 본 필드의 critical 값이 FALSE이며, 요청한 증명서 효력 만기일이 정책상 효력 만기일을 초과하는 경우, 보관소 서버(130)는 정책상의 유효기간을 사용하여 증명서 효력 만기일을 설정한다. 증명서 효력 만기일은 증명서 요청시간보다 미래이어야 한다. 이상, 본 필드 생성시 critical 값은 TRUE 또는 FALSE가 가능하다.The DateOfExpiration field is used by the certificate requestor to specify the expiration date of the certificate. If this field is not used, the expiration date is set using the expiration date defined by the vault server 130 in the certificate policy. In addition, when the critical value of this field is FALSE and the requested certificate validity expiration date exceeds the policy validity expiration date, the repository server 130 sets the certificate validity expiration date using the policy validity expiration date. The certificate expiration date must be later than the certificate request time. As described above, the critical value when generating this field may be TRUE or FALSE.

CertifiedTime 필드는 보증 일시에 관한 것으로서, 전자문서가 등록 시점부터 일정 기간동안 보관소 서버(130)에 보관되어 있었음을 이용자가 보증받기를 원 할 경우, 해당 기간의 마지막 일시를 기술하도록 한다. 보증 일시는 증명서 요청시간보다 미래일 수는 없다. 만약, 본 필드가 포함된 메시지가 정상적으로 처리되어 본 필드와 동일한 값이 설정된 증명서가 발급되었다면, 해당 증명서는 전자문서 등록시점부터 본 필드에 기재된 시점까지 전자문서가 보관소에 보관되어 있었음을 보증하게 된다. 본 필드는 반드시 등록 증명서를 요청할 경우에만 생성되어야 하며, 다른 종류의 메시지에는 포함될 수 없다. 이상, 본 필드 생성시 critical 값은 TRUE로 설정해야 한다.The CertifiedTime field relates to the date and time of the warranty. If the user wants to be guaranteed that the electronic document has been stored in the storage server 130 for a period of time from the time of registration, the certified time field should be described. The warranty date and time cannot be later than the certificate request time. If a message containing this field is processed normally and a certificate having the same value as this field is issued, the certificate guarantees that the electronic document was stored in the archive from the time of registering the electronic document to the time described in this field. . This field must be created only when requesting a registration certificate and cannot be included in other types of messages. As above, critical value should be set as TRUE when generating this field.

다음으로, 증명서 응답 메시지(이하, '응답 메시지'로 약칭함)를 설명한다. 증명서 요청에 대하여 보관소 서버(130)는 증명서 발급을 하거나 거부 또는 실패에 대한 정보를 증명서 요청자에게 전달한다. 이하 내용에서는, 증명서 요청에 대하여 증명서 요청자에게 전달하는 응답 메시지의 구조와 증명서 발급 실패에 대한 원인 분류를 한다.Next, the certificate response message (hereinafter, abbreviated as 'response message') will be described. In response to the certificate request, the storage server 130 issues the certificate or transmits information on the rejection or failure to the certificate requester. In the following, the structure of the response message transmitted to the certificate requester for the certificate request and the cause classification for the certificate issue failure are given.

먼저, 응답 메시지의 구조에서, 보관소 서버(130)가 보내는 응답 메시지도 증명서 요청 메시지와 같이 전자서명 구조인 IETF RFC 3852 CMS (Cryptographic Message Syntax)에서 제시하는 ContentInfo 구조체로 표현된 signedData를 사용한다. 따라서, 응답 메시지의 내용은 encapContentInfo에 포함되고, 응답 메시지를 생성한 보관소 서버(130)의 전자서명은 signerInfos에 포함되며, 보관소 서버(130)의 인증서는 certificates에 포함된다.First, in the structure of the response message, the response message sent by the archive server 130 also uses signedData represented by a ContentInfo structure presented by IETF RFC 3852 CMS (Cryptographic Message Syntax), which is an electronic signature structure, like the certificate request message. Therefore, the content of the response message is included in encapContentInfo, the electronic signature of the storage server 130 that generated the response message is included in signerInfos, and the certificate of the storage server 130 is included in certificates.

encapContentInfo 필드는 응답 메시지의 실제 데이터인 ARCCertResponse 구 조체를 포함하는 부분으로 무결성의 제공을 위하여 전자서명 되어지는 부분이다. 응답 메시지 컨텐츠의 구별을 위하여 식별자는 id-kiec-arcCertReseponse를 사용한다. ARCCertResponse 구조체는 증명 정보인 arcCertInfo 또는 에러 정보인 arcErrorNotice를 포함하며, 각각에 대한 정보는 후술한다.The encapContentInfo field contains the ARCCertResponse structure, which is the actual data of the response message, and is digitally signed to provide integrity. To distinguish the response message contents, the identifier uses id-kiec-arcCertReseponse. The ARCCertResponse structure includes arcCertInfo which is attestation information or arcErrorNotice which is error information, and information about each will be described later.

certificates 필드는 certificate의 집합으로 보관소 서버(130)가 응답 메시지 서명에 사용한 인증서를 비롯하여 인증기관의 인증서와 최상위 인증기관 인증서를 포함할 수 있다. certificate의 형식은 공인인증 체계에서 발급하는 형식인 X.509 version 3 인증서를 의미한다. certificates 필드는 선택적으로 사용 가능하지만, 본 발명에서는 보관소 서버(130)의 인증서를 포함하여 응답 메시지를 생성하도록 한다.The certificates field is a set of certificates, and may include a certificate of a certification authority and a top certificate authority certificate, including a certificate used by the storage server 130 to sign a response message. The format of the certificate refers to an X.509 version 3 certificate issued by a public certification system. Although the certificates field is optionally available, the present invention includes a certificate of the repository server 130 to generate a response message.

signerInfos 필드는 signerInfo의 집합으로 서명자에 대한 정보를 나타내는 필드이다. 보관소 서버(130)는 응답 메시지의 무결성을 위하여 signerInfo에 보관소의 전자서명을 포함한다. signerInfo는 전자서명, 전자서명 알고리즘 및 속성들을 포함하고 있으며, 보관소 서버(130)는 CMS 표준에서 언급하고 있는 속성들을 추가적으로 사용할 수 있다.The signerInfos field is a set of signerInfos and indicates a information about a signer. The archive server 130 includes the digital signature of the archive in signerInfo for the integrity of the response message. The signerInfo includes digital signatures, digital signature algorithms and attributes, and the repository server 130 may additionally use the attributes mentioned in the CMS standard.

응답 메시지에서의 증명서는 ARCCertResponse의 'arcCertInfo'를 포함한 signedData의 구조를 가지며, 증명서 요청 메시지의 경우와 마찬가지로 기본 필드와 확장 필드로 구성된다. 먼저, 기본 필드를 설명하고, 확장 필드는 후술한다.The certificate in the response message has a structure of signedData including 'arcCertInfo' of the ARCCertResponse, and is composed of basic fields and extended fields as in the case of a certificate request message. First, the basic field will be described, and the extended field will be described later.

증명서 기본 필드는 증명서의 확장 필드(extensions)를 제외한 부분으로 버전, 일련번호, 발급자, 발급시간, 만료시간, 정책, 요청자 정보, 증적 등 증명서 생성에 필요한 필수 정보를 나타낸다. 증명서 기본 필드는 증명서에 반드시 포함되어야 하는 정보이다.The certificate basic field is a part excluding extension fields of the certificate, and indicates essential information necessary for generating a certificate such as a version, serial number, issuer, issue time, expiration time, policy, requestor information, and evidence. The certificate basic field is information that must be included in the certificate.

ARCCertInfo ::= SEQUENCE {ARCCertInfo :: = SEQUENCE {

version [0] EXPLICIT ARCVersion DEFAULT v1,version [0] EXPLICIT ARCVersion DEFAULT v1,

serialNumber SerialNumber,serialNumber SerialNumber,

issuer GeneralNames,issuer GeneralNames,

dateOfIssue GeneralizedTime,dateOfIssue GeneralizedTime,

dateOfExpiration DateOfExpiration,dateOfExpiration DateOfExpiration,

policy ARCCertificatePolicies,policy ARCCertificatePolicies,

requestInfo RequestInfo,requestInfo RequestInfo,

target TargetToCertify,target TargetToCertify,

extentions [1] EXPLICIT Extensions OPTIONAL }extentions [1] EXPLICIT Extensions OPTIONAL}

ARCCertInfo는 DER 인코딩 방식을 따르며, 각각의 항목들은 다음과 같다.ARCCertInfo follows DER encoding method and each item is as follows.

version 필드는 증명서의 버전을 표시한다. target 필드에 dataHash가 사용되면 버전 2를 사용하여야 하며, 그 외의 경우에는 버전 1을 사용하여야 한다.The version field indicates the version of the certificate. If dataHash is used in the target field, version 2 should be used. Otherwise, version 1 should be used.

serialNumber 필드는 보관소 서버(130)가 발급하는 증명서의 일련번호(구체적으로, 식별번호)를 나타낸다. 일련번호는 동일한 번호로 발급되어지면 안되며, 양의 정수값만을 사용하여야 한다. 보관소 서버(130)는 증명서의 일련번호를 최대 20byte까지 생성할 수 있어야 하고, 이용자 소프트웨어는 최대 20byte 길이의 일련번호를 처리할 수 있어야 한다.The serialNumber field represents a serial number (specifically, an identification number) of a certificate issued by the storage server 130. Serial numbers should not be issued with the same number, only positive integer values should be used. The repository server 130 should be able to generate serial numbers of certificates up to 20 bytes, and the user software should be able to process serial numbers up to 20 bytes in length.

issuer 필드는 증명서를 발급하는 주체인 보관소 서버(130)를 의미하며, 작은 의미로는 증명서를 발급하는 증명 시스템을 의미한다. 이는 증명서 발급자 필드를 이용하여 검증하려는 증명서를 발급한 보관소 서버(130)를 식별할 수 있다. issuer 필드는 보관소 서버(130)의 실명 및 식별번호를 사용하여 증명서 요청 메시지의 requester 필드와 동일한 방법으로 생성한다.The issuer field refers to the repository server 130 that issues a certificate, and in a small sense, refers to an attestation system that issues a certificate. This may identify the repository server 130 that issued the certificate to be verified using the certificate issuer field. The issuer field is generated in the same manner as the requester field of the certificate request message by using the real name and identification number of the storage server 130.

dateOfIssue 필드는 보관소 서버(130)가 사용자의 증명서 발급 요청에 대하여 증명서를 생성한 시점(즉, 증명서 발급일)을 표현한다. 증명서 발급일은 GeneralizedTime 형식을 사용한다.The dateOfIssue field represents a point in time when the archive server 130 generates a certificate for a user's certificate issuance request (ie, a certificate issuance date). The certificate issue date uses the GeneralizedTime format.

dateOfExpiration 필드는 증명서의 효력 만기일을 의미하며, 일반적으로 증명서 정책을 기반으로 증명서의 효력 만기일이 정해진다. 증명서 요청 메시지(이하, '요청 메시지'로 약술함)에 dateOfExpiration 확장 필드가 존재하고 critical 값이 TRUE인 경우, 보관소 서버(130)는 요청 메시지의 dateOfExpiration 필드의 값을 사용하여 본 필드의 값을 설정해야 한다. 요청 메시지의 dateOfExpiration 필드값이 TRUE이나, 어떤 사유로 요청 메시지의 dateOfExpiration 필드값과 동일하게 설정하지 못하는 경우는 증명서 발급에 실패한 것으로 처리하고, 증명서 요청자에게 에러 메시지를 전송해야 한다.The dateOfExpiration field means the validity expiration date of a certificate. In general, a certificate expiration date is determined based on a certificate policy. If the dateOfExpiration extension field is present in the certificate request message (hereinafter abbreviated as 'Request message') and the critical value is TRUE, the archive server 130 sets the value of this field using the value of the dateOfExpiration field of the request message. Should be. If the value of the dateOfExpiration field of the request message is TRUE or cannot be set equal to the value of the dateOfExpiration field of the request message for some reason, it should be treated as a failed certificate issue and an error message should be sent to the certificate requester.

요청 메시지의 dateOfExpiration 필드의 critical 값이 FALSE로 설정되었고 필드값이 증명서 정책상 효력 만기일을 초과하는 경우, 보관소 서버(130)는 정책상의 유효기간을 사용하여 증명서 효력 만기일을 설정한다. 요청 메시지의 dateOfExpiration 필드의 critical 값이 FALSE로 설정되었고 필드값이 증명서 정책 상 효력 만기일 내에 있다면, 보관소 서버(130)는 해당값을 사용하거나 또는 정책상 유효기간을 사용하여 증명서 효력 만기일 설정하는 것이 모두 가능하다. 전자문서 등록시에 발급되어지는 최초 등록 증명서의 효력 만기일은 전자문서의 보존 만료일(RetentionExpiredDate)과 동일해야 함에 주의한다.If the critical value of the dateOfExpiration field of the request message is set to FALSE and the field value exceeds the validity expiration date according to the certificate policy, the repository server 130 sets the certificate validity expiration date by using the validity period on the policy. If the critical value of the dateOfExpiration field of the request message is set to FALSE and the field value is within the certificate policy expiration date, then the archive server 130 sets the certificate validity expiration date using that value or by using the policy expiration date. It is possible. Note that the validity expiration date of the initial registration certificate issued at the time of electronic document registration must be the same as the RetentionExpiredDate of the electronic document.

증명서의 사용에 있어서 증명서의 효력 기간은 증명서 발급일로부터 증명서 효력 만기일 사이이다. 단, 증명서 효력 만기일 내에 있으나 증명서 서명 인증서의 유효기간이 곧 만료되거나 이미 만료되어 증명서의 유효성을 보증하지 못하는 경우에, 이용자는 갱신된 인증서로 서명한 증명서를 다시 발급해 줄 것을 보관소 서버(130)에 요청할 수 있고, 보관소 서버(130)는 이에 대하여 동일한 효력 만기일의 증명서를 갱신 발급하여야 한다. 증명서 갱신발급의 의미는 증명서에 첨부된 서명 및 서명에 사용된 보관소 인증서의 정보를 갱신하여 증명서의 유효성을 연장하는 것으로서, 갱신 전 증명서의 내용과 갱신 후 증명서의 내용은 변경되지 않는다. 따라서, 보관소 서버(130)에 갱신발급을 요청하기 위하여 이용자가 별도의 요청 메시지를 생성할 필요는 없으며, 갱신 발급된 증명서의 arcCertInfo 필드의 내용은 이전 증명서의 arcCertInfo의 내용과 동일해야 한다. 증명서 갱신 발급을 위한 재서명시, 보관소 서버(130)는 증명서에 첨부된 이전 서명 정보를 제거하고 갱신된 보관소 인증서를 사용하여 생성된 새로운 서명 정보를 추가하도록 한다.The validity period of a certificate in the use of the certificate is between the date of issue of the certificate and the expiration date of the certificate. However, if the validity of the certificate signing certificate expires soon or has already expired and the certificate is not valid to guarantee the validity of the certificate, the user issuing the certificate signed by the renewed certificate again. The vault server 130 must issue a renewal certificate of the same expiration date. The means for issuing a certificate renewal is to extend the validity of the certificate by updating the information on the signature attached to the certificate and the certificate used for signing. The contents of the certificate before the renewal and the certificate after the renewal are not changed. Therefore, the user does not need to create a separate request message to request the renewal issuance to the storage server 130, and the content of the arcCertInfo field of the certificate issued for renewal should be the same as the content of arcCertInfo of the previous certificate. Upon re-signing for certificate renewal issuance, the repository server 130 may remove the old signature information attached to the certificate and add new signature information generated using the updated repository certificate.

policy 필드는 증명서 정책을 나타낸다. 증명서의 정책은 증명서를 발급하는 보관소의 해당 증명서에 대한 운영 정책 및 이용자의 증명서 이용 범위를 포함한다. 보관소 서버(130)는 기본 증명서 정책으로 등록 증명서 정책, 발급 증명서 정 책, 이관 증명서 정책, 폐기 증명서 정책, 원본 증명서 정책 등을 정의하고 각 정책에 OID(Object IDentifier: 객체 식별자)를 부여하여야 하며, 필요에 따라 각 기본 증명서 정책의 하위에 세부적인 증명서 정책을 정의하여 사용할 수 있다. 또한, 보관소 서버(130)는 부가적으로 시점확인 증명서를 발급하기 위한 시점확인 증명서 정책을 정의하고 OID를 부여하여 사용할 수 있다. 증명서의 정책에 따라서 증명서의 용도 및 효력이 결정되므로 증명서를 이용하는 모든 주체는 증명서 정책에 기술된 정책 내용에 대하여 인지하여야 한다.The policy field represents a certificate policy. The policy of a certificate includes the operating policy for that certificate in the repository where the certificate is issued and the scope of use of the certificate by the user. The archive server 130 should define registration certificate policy, issuance certificate policy, transfer certificate policy, revocation certificate policy, original certificate policy, etc. as basic certificate policy, and give each policy an object identifier (OID). If necessary, a detailed certificate policy can be defined and used under each basic certificate policy. In addition, the storage server 130 may additionally define a viewpoint verification certificate policy for issuing a viewpoint verification certificate and assign and use an OID. Because the certificate's policy determines the purpose and validity of the certificate, all subjects using the certificate must be aware of the policy content described in the certificate policy.

ARCCertificatePolicies는 PolicyInformation 구조의 집합으로 이루어져 있으며, 다시 PolicyInformation은 증명서 정책을 기술하는 policyIdentifier와 이를 보다 자세하게 기술하는 policyQualifiers로 구성된다. policyQualifiers에는 업무준칙에 대한 공시를 위한 URI 주소를 나타내는 cPSuri와 사용자에게 간단한 정책관련 정보를 제공하는 userNotice가 포함된다. 본 발명에서는 cPSuri를 사용하여 표현된 PolicyQualifierInfo 구조를 반드시 포함하여야 하며, userNotice를 사용하여 표현된 PolicyQualifierInfo 구조는 선택적으로 포함 가능하다. userNotice를 사용할 경우 noticeRef는 생성하지 않으며, explicitText의 형식은 BMPString을 사용하여야 한다.ARCCertificatePolicies consists of a set of PolicyInformation structures. PolicyInformation consists of a policyIdentifier describing a certificate policy and a policyQualifiers describing it in more detail. policyQualifiers include cPSuri, which represents a URI address for disclosure of business rules, and userNotice, which provides users with simple policy-related information. In the present invention, the PolicyQualifierInfo structure expressed using cPSuri must be included, and the PolicyQualifierInfo structure expressed using userNotice may be optionally included. noticeRef is not created when userNotice is used, and explicitText should be BMPString.

requestInfo 필드는 증명서 요청자가 생성한 증명서 요청 메시지를 나타낸다. 증명서 요청자가 증명서를 요청하는 일반적인 증명서 요청은 반드시 요청 메시지의 ARCCertRequest를 사용하고, 최초 등록 증명서나 원본 증명서와 같이 요청 메시지가 존재하지 않는 경우는 null을 사용한다.The requestInfo field represents a certificate request message generated by a certificate requester. A general certificate request for which a certificate requester requests a certificate must use the ARCCertRequest in the request message, or null if no request message exists, such as the original registration certificate or the original certificate.

target 필드는 증명 대상에 관한 것으로서, 보관소 서버(130)가 제공한 기능에 대한 증적이나 보관소가 증명서를 통하여 보증하고자 하는 사실을 나타내는 필드이다. 보관소 서버(130)는 이용자들이 요청한 등록, 발급, 이관, 폐기 등의 업무에 대하여 처리가 완료된 시점을 기준으로 업무 내역을 OperationRecord 구조체의 형식으로 생성하여 증적으로서 기록하고, 증명서 발급시 증명의 대상으로서 증명서에 포함한다. 또한, 보관소 서버(130)는 전자문서 발급시 해당 전자문서의 내용이 보관중인 원본 전자문서와 동일함을 보증하기 위하여 원본 전자문서 및 발급된 전자문서의 정보를 증명대상으로 증명서에 포함할 수 있으며, 이렇게 발급된 원본 증명서는 DIP 내에 첨부되어 발급된다. 그리고, 보관소 서버(130)는 증명서에 증명서 요청자가 보내온 해쉬정보를 포함하여 발급할 수 있는데, 이는 어떤 데이터가 특정 시각에 존재하였음을 증명하는 기능을 제공한다.The target field relates to an authentication target, and is a field indicating evidence of a function provided by the repository server 130 or a fact that the repository intends to guarantee through a certificate. The archive server 130 generates a record of the work in the form of OperationRecord structure based on the point of time when the processing is completed for the work such as registration, issuance, transfer, and disposal requested by users, and records it as a certificate, and as a subject of proof when issuing a certificate. We include in certificate. In addition, the storage server 130 may include the information of the original electronic document and the issued electronic document in the certificate to prove that the contents of the electronic document is the same as the original electronic document that is stored when the electronic document is issued. The original certificate issued in this way is attached to the DIP. In addition, the repository server 130 may issue the certificate including hash information sent by the certificate requester, which provides a function of proving that some data existed at a specific time.

opRecord 필드는 보관소 서버(130)가 일정 기능을 수행하고 기록한 증적 레코드로서 등록 증명서, 발급 증명서, 이관 증명서, 폐기 증명서 발급시에 설정하도록 하며, orgAndIssued 필드는 보관소 서버(130)에 보관중인 원본 전자문서 정보와 발급된 전자문서 정보로 구성된 필드로서 원본 증명서 발급시에 설정하도록 한다. dataHash 필드는 시점확인 증명서 발급시 요청 메시지에 기재된 데이터 해쉬정보를 사용하여 설정하도록 한다.The opRecord field is an evidence record recorded by the vault server 130 to perform a certain function and is set at the time of issuing a registration certificate, issuance certificate, transfer certificate, or revocation certificate, and the orgAndIssued field is the original electronic document stored in the vault server 130. This field consists of information and issued electronic document information. It should be set when the original certificate is issued. The dataHash field shall be set using the data hash information described in the request message when issuing a time verification certificate.

OperationRecord ::= SEQUENCE {OperationRecord :: = SEQUENCE {

serialNo INTEGER,serialNo INTEGER,

opRequesterInfo OperationRequesterInfo,opRequesterInfo OperationRequesterInfo,

opRequestTime GeneralizedTime,opRequestTime GeneralizedTime,

opTime GeneralizedTime,opTime GeneralizedTime,

opType OperationType,opType OperationType,

orgDocInfo PackageDocumentInfo,orgDocInfo PackageDocumentInfo,

issuedDocInfo [0] EXPLICIT PackageDocumentInfo OPTIONAL,issuedDocInfo [0] EXPLICIT PackageDocumentInfo OPTIONAL,

peerARCInfo [1] EXPLICIT PeerARCInfo OPTIONAL,peerARCInfo [1] EXPLICIT PeerARCInfo OPTIONAL,

reason [2] EXPLICIT Reason OPTIONAL }reason [2] EXPLICIT Reason OPTIONAL}

여기에서, 각 필드의 의미는 다음과 같다.Here, the meaning of each field is as follows.

□ serialNo : 증적의 식별번호□ serialNo: identification number of the evidence

□ opRequesterInfo : 전자문서 서비스 요청자 정보□ opRequesterInfo: Electronic document service requester information

□ opRequestTime : 전자문서 서비스 요청시간□ opRequestTime: Electronic document service request time

□ opTime : 보관소 서버(130)의 서비스 제공시간, 즉 작업시간□ opTime: service providing time of the storage server 130, that is, working time

□ opType : 보관소 서버(130)가 제공한 서비스 종류, 즉 작업 종류□ opType: Type of service provided by the repository server 130, that is, job type.

□ orgDocInfo : 보관소 서버(130)에 보관중인 원본문서 관련정보□ orgDocInfo: Original document related information stored in the storage server 130

□ issuedDocInfo : 문서 발급시 발급된 문서관련 정보□ issuedDocInfo: Information related to the document issued when issuing the document

□ peerARCInfo : 이관 또는 수관시 상대 보관소 서버(130)의 관련정보□ peerARCInfo: Related information of the relative storage server 130 when transferring or watering

□ reason : 작업 사유□ reason: Reason for work

serialNo 필드와 opType 필드의 값은 요청 메시지의 targetRecord 필드 내의 serialNo 필드와 opType 필드의 값과 동일해야 한다. opRequester 필드는 전자문서 관련 업무에 대한 요청자의 신원 정보로서, 등록, 발급, 이관, 폐기 등의 전자문서 업무를 요청한 이용자의 실명 및 식별번호를 사용하여 요청 메시지의 requester 필드와 동일한 방법으로 생성하며, 만약 업무 요청자가 개인일 경우에는 주민번호의 도용을 방지하기 위하여 보관소 서버(130)가 직접 160bit의 안전한 난수를 생성하여 requester 필드 생성시에 사용하도록 한다. 보관소 서버(130)는 생성한 난수를 증적 구조체와 함께 보관하여 업무 요청자에 대한 신원을 검증할 필요가 있을 때에 검증과정 중에 사용하도록 한다. 유효기간 만료시의 전자문서 자동 폐기 등의 경우처럼 전자문서 업무 요청자가 없는 경우에는 opRequester대신 null을 사용한다.The values of the serialNo field and the opType field must be the same as the values of the serialNo field and the opType field in the targetRecord field of the request message. The opRequester field is the identity information of the requester for the electronic document-related task, and is generated in the same manner as the requester field of the request message by using the real name and identification number of the user who requested the electronic document task such as registration, issuance, transfer, and disposal. If the business requester is an individual, the storage server 130 directly generates a secure 160-bit random number in order to prevent the theft of the social security number to be used when generating the requester field. The storage server 130 stores the generated random number together with the evidence structure to use during the verification process when it is necessary to verify the identity of the business requester. If there is no requestor for electronic documents, such as automatic discarding of electronic documents at the expiration date, null is used instead of opRequester.

opRequestTime 필드에는 AIP의 ReceiveDateTime 필드에 기술된 시각값과 동일한 값이 설정되어야 한다. 마찬가지로, opTime 필드에는 AIP의 RegisterDateTime 필드에 기술된 시각값과 동일한 값이 설정되어야 한다. 여기에서, AIP는 보존 정보 패키지로서, 전자문서 보관소 서버(130)가 이용자의 문서를 보관할 때 구성하는 구조를 말한다.In the opRequestTime field, a value equal to the time value described in the ReceiveDateTime field of the AIP must be set. Similarly, the opTime field should be set to the same value as the time value described in the RegisterDateTime field of the AIP. Here, AIP is a preservation information package, and refers to a structure that the electronic document storage server 130 configures when storing a user's document.

orgDocInfo 필드는 보관소 서버(130)에 보관중인 원본 전자문서의 정보를 포함하며, issuedDocInfo 필드는 발급된 전자문서의 정보를 포함하는데, PackageDocumentInfo 구조체의 형식으로 표현된다. orgDocInfo 필드는 보관소 서버(130)가 수행하는 모든 기능에 대하여 원본 전자문서 정보로서 설정되어야 하며, issuedDocInfo는 보관소 서버(130)가 전자문서 발급 기능 수행시, 발급된 전자문서에 대한 정보로서 선택적으로 설정된다.The orgDocInfo field includes information of the original electronic document stored in the storage server 130, and the issuedDocInfo field includes information of the issued electronic document, which is expressed in the form of a PackageDocumentInfo structure. The orgDocInfo field should be set as the original electronic document information for all functions performed by the archive server 130, and issuedDocInfo may be optionally set as information on the issued electronic document when the archive server 130 performs the electronic document issuing function. do.

packageID 필드는 패키지 식별자를 UTF8String 형식으로 변환한 값을 설정하 며, docInfo 필드는 패키지 내의 전자문서의 참조 정보를 포함한다. docInfo 필드는 orgDocInfo 필드에서 사용될 때는 항상 AIP 내의 원본 전자문서의 참조 정보를 포함해야 하며, issuedDocInfo 필드에서 사용될 때는 DIP 내에 포함된 원본 또는 변환본 전자문서의 참조 정보를 포함하게 된다. docID 필드는 전자문서 식별자를 UTF8String 형식으로 변환한 값을 설정한다.The packageID field sets a value obtained by converting a package identifier into UTF8String format. The docInfo field includes reference information of an electronic document in a package. When used in the orgDocInfo field, the docInfo field shall always contain the reference information of the original electronic document in the AIP. When used in the issuedDocInfo field, the docInfo field shall contain the reference information of the original or translated electronic document included in the DIP. The docID field sets the value of the electronic document identifier converted to UTF8String format.

fileIDs 필드는 전자문서 내의 첨부파일 중에서 관련된 첨부파일의 ID를 나타내며, 첨부파일 식별자를 UTF8String 형식으로 변환한 값의 목록으로 표현한다. 만약 전자문서 내의 모든 첨부파일에 해당된다면 fileIDs 필드 자체를 생략하도록 한다. docHash 필드는 전자문서의 해쉬값을 포함하는 DocumentHash 구조체 형식으로 표현된다. hashedDocument 필드는 해쉬 알고리즘인 hashAlg를 사용하여 전자문서의 내용을 한번 해쉬한 값으로서, 전자문서 내에 포함된 실제 문서파일이 2개 이상인 경우는 각 문서파일의 내용을 연접하여 해쉬한다. 이때, 문서파일의 연접 순서는 관련된 전자문서 내에서의 순서와 동일하다.The fileIDs field represents an ID of a related attachment file among attachments in the electronic document, and is expressed as a list of values of the attachment file identifiers converted to UTF8String format. If all attachments in the electronic document apply, omit the fileIDs field itself. The docHash field is represented in the form of a DocumentHash structure containing the hash value of the electronic document. The hashedDocument field is a value that hashes the contents of the electronic document once using hashAlg, which is a hash algorithm. When two or more actual document files are included in the electronic document, the contents of each document file are concatenated and hashed. At this time, the concatenation order of the document files is the same as the order in the associated electronic document.

peerARCInfo 필드는 전자문서 이관 또는 수관 발생시, 수관 보관소 서버의 등록 증명서 및 이관 보관소 서버의 이관 증명서 생성시에만 생성하는 필드이다. peerARC 필드와 peerARCPackageID 필드는 전자문서의 이관 또는 수관 기능을 수행한 경우, 이관을 수행한 보관소 서버가 발급한 이관 증명서에는 수관을 수행한 보관소 서버의 신원정보 및 수관 보관소 서버에서 부여한 AIP의 패키지 식별자를 포함하며, 수관을 수행한 보관소 서버가 발급한 등록 증명서에는 이관을 수행한 보관소 서버의 신원정보와 이관 보관소 서버에서 부여한 AIP의 패키지 식별자를 포함한 다. 만약 opType의 값이 0(register)이며 peerARCInfo 항목이 존재한다면, 타 보관소 서버로부터 이관된 전자문서에 대한 등록 증명서임을 알 수 있다. peerARC 필드는 상대 보관소 서버의 실명 및 식별번호를 사용하여 요청 메시지의 requester 필드와 동일한 방법으로 생성한다.The peerARCInfo field is a field created only when an electronic document is transferred or a water pipe is generated, and when a certificate of registration of a water pipe storage server and a water pipe certificate of a water pipe storage server are generated. When the peerARC field and the peerARCPackageID field are used to transfer or digitize an electronic document, the transfer certificate issued by the repository server that performed the transfer includes the identification information of the repository server that performed the export and the package identifier of the AIP granted by the repository server. In addition, the registration certificate issued by the repository server that performed the vestigation includes the identity information of the repository server that performed the migration and the package identifier of the AIP assigned by the repository server. If the value of opType is 0 (register) and peerARCInfo item exists, it can be seen that it is a registration certificate for an electronic document transferred from another archive server. The peerARC field is generated in the same way as the requester field of the request message by using the real name and identification number of the partner repository server.

Reason 필드는 선택적 생성 필드로서, 작업이 발생한 사유를 설정하며 값의 의미는 아래와 같다.The Reason field is an optional creation field. It sets the reason for the operation and the meaning of the value is as follows.

□ userRequest : 이용자 요청에 의한 작업□ userRequest: work by user request

□ arcRequest : 보관소 서버 내의 프로세스상 발생한 작업ArcRequest: An operation that occurred during the process in the repository server

□ expired : 보존기간 만료□ expired: Retention period expired

원본증명서에 사용되는 orgAndIssued 필드는 OriginalAndIssuedDocumentInfo 구조체로 표현된다. orgAndIssued 필드에 포함되는 orgDocInfo 필드는 보관소 서버(130)에 보관중인 원본 전자문서의 정보를 포함하며, issuedDocInfo 필드는 발급된 전자문서의 정보를 포함하는데, PackageDocumentInfo 구조체의 형식으로 표현된다. DocumentInfo 구조체 내의 docInfo 필드는 생성해야 하며 각 패키지 내에 포함된 관련 전자문서의 참조 정보를 가지고 있다.The orgAndIssued field used in the original certificate is represented by the OriginalAndIssuedDocumentInfo structure. The orgDocInfo field included in the orgAndIssued field includes information of the original electronic document stored in the storage server 130, and the issuedDocInfo field includes information of the issued electronic document, which is expressed in the form of a PackageDocumentInfo structure. The docInfo field in the DocumentInfo structure must be created and contains the reference information of the associated electronic document contained in each package.

마찬가지 경우의 issuedDocOriginal 필드는 발급된 전자문서가 원본 전자문서인가 또는 변환본 전자문서인가를 나타내며, 만약 issuedDocOriginal 필드의 값이 TRUE이면 orgDocInfo 필드 내에 포함된 hashedDocument 필드의 값과와 issuedDocInfo 필드 내에 포함된 hashedDocument 필드의 값이 동일해야 하며, FALSE이면 두 값은 달라야 한다. 본 발명을 준용하여 증명서를 발급하는 전자문서 보관 시스템은 orgDocInfo 필드에서 hashedDocument 필드의 값을 생성할 때와 issuedDocInfo 필드에서 hashedDocument 필드의 값을 생성할 때 동일한 해쉬 알고리즘을 사용하여야 한다. 또한, issuedDocInfo 필드 내에 포함된 hashedDocument 필드의 값은 동일한 해쉬 알고리즘으로 원본 증명서가 첨부된 DIP 내의 전자문서에 포함된 모든 전자문서 파일을 전자문서에 포함된 순서대로 연접하여 해쉬한 값과 항상 동일하여야 한다.Similarly, the issuedDocOriginal field indicates whether the issued electronic document is an original electronic document or a converted electronic document. If the value of the issuedDocOriginal field is TRUE, the value of the hashedDocument field contained in the orgDocInfo field and the hashedDocument field contained in the issuedDocInfo field. Must have the same value, and if FALSE the two values must be different. The electronic document storage system issuing the certificate according to the present invention shall use the same hash algorithm when generating the value of the hashedDocument field in the orgDocInfo field and when generating the value of the hashedDocument field in the issuedDocInfo field. In addition, the value of the hashedDocument field included in the issuedDocInfo field must always be the same as the value hashed by concatenating all the electronic document files included in the electronic document in the DIP with the original certificate attached in the same order included in the electronic document by the same hash algorithm. .

시점확인 증명서를 발급받기 위한 요청 메시지인 경우는 target 필드가 targetHash 필드를 사용하여 설정되어 있으며, 보관소 서버(130)는 증명서 발급시 해당 필드 정보를 사용하여 증명서의 target 필드를 설정하여야 한다. 즉, 증명서의 target 필드는 dataHash 필드를 사용하여 설정하여야 하며, 이는 요청 메시지의 targetHash 필드에 설정된 값을 사용하여 동일하게 설정하도록 한다. 시점확인 증명서를 발급하기 전에 보관소 서버(130)는 증명서 요청자로부터 수신한 요청 메시지를 검증하는 과정에서, targetHash 필드의 하위 필드인 hashAlg 필드에 기재된 해쉬 알고리즘 OID와 해당 해쉬 알고리즘을 사용하여 생성된 해쉬값인 hashedData 필드값의 길이가 합리적인가를 확인하여야 한다.In the case of a request message for issuing a time verification certificate, the target field is set using the targetHash field, and the storage server 130 should set the target field of the certificate using the corresponding field information when issuing the certificate. That is, the target field of the certificate must be set using the dataHash field, which is set identically using the value set in the targetHash field of the request message. Before issuing the certificate of time verification, in the process of verifying the request message received from the certificate requester, the storage server 130 uses the hash algorithm OID described in the hashAlg field, which is a subfield of the targetHash field, and a hash value generated using the corresponding hash algorithm. You should check whether the length of the hashedData field value is reasonable.

다음으로, 확장 필드를 설명한다. 확장 필드는 다음과 같은 구조로 되어 있다.Next, the extension field will be described. The extended field has the following structure.

Extensions ::= SEQUENCE SIZE (1..MAX) OF ExtensionExtensions :: = SEQUENCE SIZE (1..MAX) OF Extension

Extension ::= SEQUENCE {Extension :: = SEQUENCE {

extnID OBJECT IDENTIFIER,extnID OBJECT IDENTIFIER,

critical BOOLEAN DEFAULT FALSE,critical BOOLEAN DEFAULT FALSE,

extnValue OCTET STRING }extnValue OCTET STRING}

여기에서, Extension은 확장 필드의 종류를 나타내는 extnID와 중요도를 의미하는 critical 그리고 확장 필드의 값을 포함하는 extnValue로 구성된다. 확장 필드의 critical이 TRUE로 설정되어 있을 경우에 증명서 이용자 또는 검증자는 이 확장 필드를 반드시 이해하고 처리할 수 있어야 한다.The extension consists of extnID, which indicates the type of the extension field, critical, which indicates the importance, and extnValue, which contains the value of the extension field. If critical of the extended field is set to TRUE, the certificate consumer or verifier must be able to understand and handle this extended field.

Qualifications 필드는 자격부여에 관한 것으로서, 증명서를 전달받아 이용하는 주체와 위임될 역할에 대한 정보를 나타낸다. 본 필드는 요청 메시지의 Qualifications 필드와 동일한 내용을 포함해야 하며, 요청 메시지 없이 발급되는 최초 등록 증명서와 원본 증명서에는 본 필드가 생성될 수 없다. 요청 메시지에 Qualifications 확장 필드가 존재하고 critical 값이 TRUE인 경우, 보관소 서버(130)는 반드시 본 필드를 생성해야 한다. 본 필드를 생성하지 못하는 경우는 증명서 발급에 실패한 것으로 처리하고, 증명서 요청자에게 에러 메시지를 전송해야 한다. 본 필드 생성시 critical의 값은 TRUE로 설정해야 한다.The Qualifications field is related to entitlement and indicates information on a subject to receive and use a certificate and a role to be delegated. This field shall contain the same contents as the Qualifications field of the request message. This field may not be generated in the original registration certificate and the original certificate issued without the request message. If the Qualifications extension field is present in the request message and the critical value is TRUE, the repository server 130 must generate this field. If this field cannot be created, it should be treated as a failed certificate issue and an error message should be sent to the certificate requester. When creating this field, critical value should be set as TRUE.

UsageType 필드는 증명서 용도에 관한 것으로서, 증명서의 이용환경 또는 용도에 따른 분류방식을 나타낸다. 본 필드는 요청 메시지의 UsageType 필드와 동일한 내용을 포함한다. 요청 메시지에 UsageType 확장 필드가 존재하고 critical 값이 TRUE인 경우, 보관소는 반드시 본 필드를 생성해야 한다. 본 필드를 생성하지 못하는 경우는 증명서 발급에 실패한 것으로 처리하고, 증명서 요청자에게 에러 메 시지를 전송해야 한다. 본 필드 생성시 critical의 값은 FALSE로 설정해야 한다.The UsageType field relates to a certificate use and indicates a classification method according to the use environment or use of the certificate. This field contains the same contents as the UsageType field of the request message. If the UsageType extension field is present in the request message and the critical value is TRUE, the repository MUST create this field. If this field cannot be generated, it should be treated as a failed certificate issue and an error message should be sent to the certificate requester. When creating this field, critical value should be set as FALSE.

CertifiedTime 필드는 보증 일시에 관한 것으로서, 전자문서 등록시점부터 본 필드에 기재된 시점까지 전자문서가 보관소에 보관되어 있었음을 보증하는 필드이며, 등록 증명서에만 포함될 수 있다. 본 발명을 준수하여 생성된 등록 증명서는 CertifiedTime 필드를 필수적으로 생성하여야 한다. 단, 최초 등록 증명서에는 본 필드를 생성하지 않도록 한다. 요청 메시지에 CertifiedTime 확장 필드가 존재하고 critical 값이 TRUE로 설정되었다면, 보관소 서버(130)는 요청 메시지의 CertifiedTime 필드에 기재된 보증 일시까지 전자문서를 보관중이었음을 확인한 후, 해당값을 증명서의 CertifiedTime 필드에 기재하여 증명서를 생성하도록 한다. 전자문서의 등록시점부터 요청 메시지에 기재된 보증 일시까지 전자문서가 보관소 데이터베이스(135)에 보관되어 있지 않았다면, 보관소 서버(130)는 증명서 요청자에게 에러 메시지를 전송하여야 한다. 요청 메시지에 CertifiedTime 필드값이 존재하지 않으면, 보관소 서버(130)는 하기와 같은 절차로 CertifiedTime 확장 필드의 값을 설정한다.The CertifiedTime field is related to the date and time of the guarantee. It is a field that guarantees that the electronic document has been stored in the archive from the time of electronic document registration to the time described in this field, and can be included only in the registration certificate. Registration certificate generated in accordance with the present invention must create a CertifiedTime field. However, this field should not be created for the initial registration certificate. If the CertifiedTime extension field is present in the request message and the critical value is set to TRUE, the archive server 130 confirms that the electronic document was being held by the warranty date specified in the CertifiedTime field of the request message, and then stores the value in the CertifiedTime field of the certificate. Create a certificate by writing in If the electronic document is not stored in the storage database 135 from the time of registration of the electronic document until the guarantee date described in the request message, the storage server 130 should transmit an error message to the certificate requester. If the value of the CertifiedTime field does not exist in the request message, the repository server 130 sets the value of the CertifiedTime extension field by the following procedure.

□ 전자문서가 해당 전자문서의 보존 만료일 전에 폐기 또는 타 보관소 서버로 이관되었다면 해당 일시를 설정하도록 한다.□ If an electronic document is destroyed or transferred to another archive server before the expiration date of the electronic document, set the relevant date and time.

□ 전자문서가 해당 전자문서의 보존 만료일까지 정상적으로 보관되었다면 해당 일시를 설정하도록 한다.□ If an electronic document is normally stored by the expiration date of the electronic document, set the date and time.

□ 전자문서가 현재 보관소 데이터베이스에 보관중이라면 증명서 발급일 필드와 동일한 값을 설정하도록 한다.□ If the electronic document is currently stored in the archive database, set the same value as the certificate issue date field.

본 발명은 요청 메시지에 CertifiedTime 확장 필드가 존재한다면, 반드시 critical 값을 TRUE로 설정해야 하므로, FALSE인 경우는 다루지 않는다. 기타 사유로 본 필드를 생성하지 못하는 경우는 증명서 발급에 실패한 것으로 처리하고, 증명서 요청자에게 에러 메시지를 전송해야 한다. 본 필드 생성시 critical의 값은 TRUE로 설정해야 한다.In the present invention, if the CertifiedTime extension field is present in the request message, the critical value must be set to TRUE, so the case of FALSE is not dealt with. If this field cannot be created for any other reason, it shall be treated as a failure to issue the certificate and an error message should be sent to the certificate requester. When creating this field, critical value should be set as TRUE.

다음으로, 에러 메시지를 설명한다. 본 발명을 준용하지 않은 요청 메시지를 수신하거나 본 발명을 준용한 증명서를 생성하지 못하는 경우에는 보관소 서버(130)는 증명서 대신 에러 메시지를 생성하여 증명서 요청자에게 송신하여야 한다. 에러 정보를 포함하는 메시지는 ARCErrorNotice를 이용하여 증명서 요청자에게 전달된다.Next, the error message will be described. When receiving a request message that does not apply the present invention or failing to generate a certificate that applies the present invention, the repository server 130 should generate an error message instead of the certificate and send it to the certificate requester. A message containing error information is sent to the certificate requester using ARCErrorNotice.

ARCErrorNotice ::= SEQUENCE {ARCErrorNotice :: = SEQUENCE {

transactionStatus PKIStatusInfo ,    transactionStatus PKIStatusInfo,

transactionIdentifier GeneralName OPTIONAL }    transactionIdentifier GeneralName OPTIONAL}

상기에서, transactionIdentifier 필드는 사용하지 않는다. 그리고, PKIStatusInfo는 아래에서 보는 바와 같이 IETF RFC 4210에서 정의하고 있는 구조를 사용한다.In the above, the transactionIdentifier field is not used. PKIStatusInfo uses the structure defined in IETF RFC 4210 as shown below.

PKIStatusInfo ::= SEQUENCE {PKIStatusInfo :: = SEQUENCE {

status PKIStatus,status PKIStatus,

statusString PKIFreeText OPTIONAL,statusString PKIFreeText OPTIONAL,

failInfo PKIFailureInfo OPTIONAL }failInfo PKIFailureInfo OPTIONAL}

PKIStatus ::= INTEGER {PKIStatus :: = INTEGER {

accepted (0),accepted (0),

grantedWithMods (1),grantedWithMods (1),

rejection (2),rejection (2),

waiting (3),waiting (3),

revocationWarning (4),revocationWarning (4),

revocationNotification (5),revocationNotification (5),

keyUpdateWarning (6) }keyUpdateWarning (6)}

PKIFreeText ::= SEQUENCE SIZE (1..MAX) OF UTF8StringPKIFreeText :: = SEQUENCE SIZE (1..MAX) OF UTF8String

상기에서, PKIStatus의 값은 항상 rejection만을 사용한다. PKIFreeText에는 상세한 오류 메시지를 포함할 수 있다. failInfo필드는 역시 RFC 4210에서 사용하는 PKIFailureInfo를 사용하며, 본 발명에서 사용하는 값들은 다음과 같다. 이 값들의 내용은 아래 [표 1]을 참조하기 바란다.In the above, the value of PKIStatus always uses only rejection. PKIFreeText can contain detailed error messages. The failInfo field also uses PKIFailureInfo used in RFC 4210, and the values used in the present invention are as follows. See Table 1 below for the content of these values.

PKIFailureInfo ::= BIT STRING {PKIFailureInfo :: = BIT STRING {

badAlg (0),badAlg (0),

badMessageCheck (1),badMessageCheck (1),

badRequest (2),badRequest (2),

badTime (3),badTime (3),

badDataFormat (5),badDataFormat (5),

wrongAuthority (6),wrongAuthority (6),

incorrectData (7),incorrectData (7),

unacceptedPolicy (15),unacceptedPolicy (15),

unacceptedExtension (16),unacceptedExtension (16),

badSenderNonce (18),badSenderNonce (18),

signerNotTrusted (20),signerNotTrusted (20),

unsupportedVersion (22),unsupportedVersion (22),

unAuthorized (23),unAuthorized (23),

systemUnavail (24),systemUnavail (24),

systemFailure (25) }systemFailure (25)}

[표 1]TABLE 1

번호number 메시지message 내용Contents 00 badAlgbadAlg 정의되지 않았거나 지원되지 않는 알고리즘Undefined or Unsupported Algorithm 1One badMessageCheckbadMessageCheck 요청 메시지 무결성 손상 (전자서명 검증 실패 등)Request message integrity corruption (eg digital signature verification failure) 22 badRequestbadRequest 인가되지 않았거나 지원되지 않는 작업 요청Unauthorized or unsupported work request 33 badTimebadTime 요청 메시지의 시간이 시스템 시간과 다름 (정책상 허용범위 초과)The time of the request message is different from the system time (policy exceeds the tolerance) 55 badDataFormatbadDataFormat 잘못된 요청 메시지 포맷Invalid request message format 66 wrongAuthoritywrongAuthority 잘못된 기관 (요청 메시지의 기관명이 응답 메시지 생성기관과 다름)Invalid authority (the agency name of the request message is different from the response message generator) 77 incorrectDataincorrectData 요청 메시지의 내용이 잘못됨The content of the request message is incorrect 1515 unacceptedPolicyunacceptedPolicy 요청된 정책 미지원Requested policy not supported 1616 unacceptedExtensionunacceptedExtension 요청된 확장필드 미지원Requested extension field not supported 1818 badSenderNoncebadSenderNonce 잘못된 송신자 nonceInvalid sender nonce 2020 signerNotTrustedsignerNotTrusted 요청 메시지 서명자의 신원확인 불가 또는 신뢰할 수 없음Request message signer not identified or trusted 2222 unsupportedVersionunsupportedVersion 지원되지 않는 요청 메시지 버전Unsupported Request Message Version 2323 notAuthorizednotAuthorized 인가되지 않은 송신자Unauthorized sender 2424 systemUnavailsystemUnavail 현재 시스템 이용 불가The system is currently unavailable 2525 systemFailuresystemFailure 시스템에서 치리중 실패Failed to Take Control from System

이외, 에러 메시지로는 다음도 있다. 그 내용은 [표 2]를 참조하기 바란다.Other error messages include: See Table 2 for details.

[표 2]TABLE 2

번호number 메시지message 내용Contents 88 missingTimeStampmissingTimeStamp 타임스탬프가 필요하나 생성되지 않음Timestamp required but not generated 1313 badRecipientNoncebadRecipientNonce 잘못된 사용자 nonceInvalid user nonce

다음으로, 증명서 검증 방법을 설명한다. 도 7은 본 발명의 바람직한 실시예에 따른 전자문서 보관 시스템에 있어서, 증명서 검증자 단말기의 증명서 검증 방법을 설명하기 위한 순서도이다. 증명서 검증자 단말기는 상술한 바와 같이 증명서 요청자, 증명서 수임자, 증명서 수임자가 명시되어 있지 않은 증명서를 소유한 모든 이용자 중 어느 하나가 접속하는 단말기이다. 이러한 증명서 검증자 단말기는 본 발명의 실시예에서 보관소 서버(130) 및 보관소 데이터베이스(135)와 연동하여 증명서를 검증하는 기능을 수행하는데, 증명서 검증이 꼭 증명서 검증자 단말기에 한정되는 것은 아니다. 즉, 본 발명에서는 이러한 증명서 검증 방법을 보관소 서버(130)가 단독으로 구현하도록 하는 것도 가능하다. 이하, 도 7을 참조하여 증명서 검증 방법을 설명한다.Next, the certificate verification method will be described. 7 is a flowchart illustrating a certificate verification method of a certificate verifier terminal in an electronic document storage system according to a preferred embodiment of the present invention. As described above, the certificate verifier terminal is a terminal to which any one of the user who owns a certificate for which a certificate requestor, a certificate holder, or a certificate holder is not specified is connected. Such a certificate verifier terminal performs a function of verifying a certificate by interworking with the repository server 130 and the repository database 135 in the embodiment of the present invention, but the certificate verification is not necessarily limited to the certificate verifier terminal. That is, in the present invention, it is possible to allow the repository server 130 to implement such certificate verification method alone. Hereinafter, the certificate verification method will be described with reference to FIG. 7.

증명서 검증 방법은 크게 증명서 유효성 검증 절차와 증명서 내용 검증 절차로 구분된다. 여기에서, 증명서 유효성 검증 절차는 증명서로서의 효력을 가지기 위한 조건들의 만족 여부를 확인하는 절차이고, 증명서 내용 검증 절차는 증명서를 활용하기 위한 조건들을 만족하는가를 확인하는 절차이다.Certificate verification methods are largely divided into certificate validation procedures and certificate content verification procedures. Here, the certificate validation procedure is a procedure for confirming whether or not the conditions for validity as a certificate are satisfied, and the certificate content verification procedure is a procedure for confirming whether the conditions for utilizing the certificate are satisfied.

상술한 증명서 검증 방법은 본 발명의 실시예에서 발급된 증명서 포맷을 검 증하는 단계(S700), S700 단계에서 오류가 없는 경우 발급된 증명서 유효기간을 검증하는 단계(S705), S705 단계에서 오류가 없는 경우 발급된 증명서 폐지여부를 검증하는 단계(S710), S710 단계에서 오류가 없는 경우 발급된 증명서의 전자서명을 검증하는 단계(S715), S715 단계에서 오류가 없는 경우 발급된 증명서의 서명 인증서를 검증하는 단계(S720), S720 단계에서 오류가 없는 경우 발급된 증명서를 요청 메시지에 포함된 증명 요청서와 비교 검증하는 단계(S725), S725 단계에서 오류가 없는 경우 발급된 증명서를 전자문서와 비교 검증하는 단계(S730), S730 단계에서 오류가 없는 경우 전자문서와 증명서를 발급받는 수임자를 검증하는 단계(S735), S735 단계에서 정당한 자인 경우 보관소 데이터베이스(135)에 저장된 증명서 정책을 검증하는 단계(S740), S740 단계에서 오류가 없는 경우 전자문서와 증명서의 용도를 검증하는 단계(S745), S745 단계에서 선의인 경우 증명서 요청자를 검증하는 단계(S750), S750 단계에서 정당한 자인 경우 검증 통과(pass)를 표시하고 검증을 완료하는 단계(S755) 등으로써 구현된다.In the above-described certificate verification method, the step of verifying the certificate format issued in the embodiment of the present invention (S700), if there is no error in step S700, the step of verifying the validity period of the issued certificate (S705), the error in step S705 If there is no error in the step of verifying the revocation of the issued certificate (S710), if there is no error in step S710 (S715), if there is no error in step S715, if there is no error in the signing certificate of the issued certificate Verification step (S720), if there is no error in step S720 Verification of the certificate issued to the certificate request included in the request message (S725), if there is no error in step S725 verification of the certificate issued compared to the electronic document Step (S730), if there is no error in step S730 step of verifying the recipient who is issued the electronic document and certificate (S735), if the legitimate person in step S735 Verifying the certificate policy stored in the database 135 (S740), if there is no error in step S740, verifying the use of the electronic document and the certificate (S745), and verifying the certificate requestor in good faith in step S745 (S750), if the right person in the step S750 is implemented by displaying the pass (pass) to complete the verification (S755) and the like.

상기에서, S700 단계 내지 S720 단계가 증명서 유효성 검증 절차에 해당하며, S725 단계 내지 S750 단계가 증명서 내용 검증 절차에 해당한다. 한편, S700 단계 내지 S750 단계에서 오류가 있거나 정당한 자가 아니거나 악의인 경우에는 검증 실패(fail)를 표시하고 해당 과정을 종료시킨다(S760). 한편, S730 단계와 S735 단계 사이에는 증적 증명에 대한 검증 단계와 원본 증명에 대한 검증 단계가 부과될 수 있다. 자세한 내용은 후술한다. 이하, 증명서 검증 방법의 각 단계를 구체적으로 설명한다.In the above, steps S700 to S720 correspond to a certificate validation procedure, and steps S725 to S750 correspond to a certificate content verification procedure. On the other hand, if there is an error in the steps S700 to S750 or is not a legitimate person or malicious, a verification failure (fail) is displayed and the process is terminated (S760). On the other hand, between the step S730 and S735 step may be a verification step for the proof evidence and the verification step for the original proof. Details will be described later. Hereinafter, each step of the certificate verification method will be described in detail.

① 증명서 유효성 검증 절차 (S700 ~ S720)① Certificate validation procedure (S700 ~ S720)

증명서 유효성 검증은 증명서로서의 효력을 가지기 위한 조건들의 만족 여부를 확인하는 과정으로서, 유효성 검증에 실패하면 증명서에 포함된 내용을 신뢰할 수 없게 되므로, 더이상 증명서는 신뢰받는 기관이 발급한 보증서로의 역할을 수행할 수 없다. 증명서 유효성 검증은 증명서 포맷 검증, 증명서 유효기간 검증, 증명서 폐지여부 검증, 전자서명 검증, 서명 인증서 검증으로 구분되며, 한 단계에서 실패하면 다음 과정을 진행하지 않고 검증 실패로 처리한다.Certificate validation is a process of checking whether the conditions for validity of a certificate are satisfied. If the validation fails, the certificate contained in the certificate cannot be trusted. Therefore, the certificate no longer functions as a certificate issued by a trusted authority. It cannot be done. Certificate validation is divided into certificate format verification, certificate validity verification, certificate revocation verification, digital signature verification, and signature certificate verification. If it fails in one step, it is treated as verification failure without proceeding with the next process.

② 증명서 포맷 검증 단계 (S700)② Certificate format verification step (S700)

증명서 포맷 검증 단계에서는 검증 대상 증명서가 본 발명에 게시된 증명서 포맷을 준수하여 생성되었는가의 여부를 확인한다. 본 발명에서 정의한 증명서의 구조 및 강제하거나 금하는 필드생성 규칙의 준수여부를 검증한 후, 증명서 내 각 필드 간의 모순이 없음을 확인한다. 필드 간 모순에 대한 주요한 몇 가지 예를 들면 다음과 같다.In the certificate format verification step, it is checked whether the certificate to be verified is generated in compliance with the certificate format posted in the present invention. After verifying the structure of the certificate defined in the present invention and compliance with the mandatory or prohibited field generation rule, it is confirmed that there is no contradiction between each field in the certificate. Some of the major examples of field contradictions are:

□ 증명서의 서명 인증서의 정보와 issuer 필드의 정보가 불일치□ The signature of the certificate does not match the information in the issuer field.

□ 증명서 정책 OID와 target 필드의 구조 및 내용이 의미상 불일치□ The semantically inconsistent structure and contents of certificate policy OID and target field

□ requestInfo의 내용과 다른 필드의 내용의 불일치□ Inconsistency between the content of requestInfo and the content of other fields

□ 등록 증명서가 아닌데, nomineeRole 필드에 readDocument나 downloadDocument 값이 설정된 경우□ If it is not a registration certificate and the value of readDocument or downloadDocument is set in the nomineeRole field.

□ Qualifications 필드 내의 복수개의 qualification 필드들 중에 일부만이 onlyForNominee로 설정된 경우If only some of the qualification fields in the Qualifications field are set to onlyForNominee

□ 최초 등록 증명서와 원본 증명서에 Qualifications 필드가 생성된 경우□ Qualifications fields are created on the original registration certificate and original certificate.

□ 등록 증명서인데, CertifiedTime 필드가 생성되지 않은 경우□ Your enrollment certificate is not created with the CertifiedTime field.

□ 등록 증명서가 아닌데, CertifiedTime 필드가 생성된 경우□ You are not an enrollment certificate and the CertifiedTime field is created.

□ 시점확인 증명서인데, Version 필드의 값이 2가 아닌 경우❏ If the certificate is a time-test certificate but the value of the Version field is not 2.

□ 시점확인 증명서가 아닌데, Version 필드의 값이 1이 아닌 경우□ It is not a time verification certificate, but the value of Version field is not 1.

이외에도 본 발명에서 정의한 필드생성 규칙을 준수하지 않았거나, 각 필드의 내용에 상호 모순이 있는 경우는 검증 실패로 처리하도록 한다. 검증 대상 증명서가 잘못된 포맷으로 생성되었다면, 이후의 과정을 더 진행하지 않고 검증 프로세스는 여기서 종료하도록 한다.In addition, if a field generation rule defined in the present invention is not observed or there is a mutual contradiction in the contents of each field, the verification failure is treated. If the certificate to be verified is generated in the wrong format, the verification process ends here without further processing.

③ 증명서 유효기간 검증 단계 (S705)③ Verification period of certificate validity period (S705)

증명서 유효기간이란 증명서 발급일(dateOfIssue)로부터 증명서 효력 만기일(dateOfExpiration)까지를 의미하며, 본 단계는 증명서 검증시점이 증명서 유효기간 내에 있음을 확인하는 단계이다. 증명서는 증명서의 유효기간 내에서만 유효성이 인정되므로 만약 검증시점이 증명서 발급일보다 과거이거나 또는 증명서 효력 만기일 이후라면 증명서의 효력은 상실된다. 검증시점(T)과 증명서 발급일 및 증명서 효력 만기일을 다음과 같이 비교한다.The certificate validity period means from the date of certificate issue (dateOfIssue) to the certificate validity expiration date (dateOfExpiration), this step is to confirm that the certificate verification time is within the certificate validity period. Certificates are only valid within the validity period of the certificate, so the validity of the certificate is lost if the verification date is earlier than the certificate issue date or after the certificate expiration date. The verification point (T) is compared with the certificate issue date and certificate expiration date as follows.

ⅰ) dateOfIssue = T < dateOfExpiration 일 경우 : 검증 성공Iii) if dateOfIssue = T <dateOfExpiration: validation succeeded

ⅱ) T < dateOfIssue 또는 dateOfExpiration = T 일 경우 : 검증 실패Ii) if T <dateOfIssue or dateOfExpiration = T: validation failed

검증시점이 증명서의 유효기간 내에 있지 않으면 검증 실패로 처리하고 검증 프로세스를 종료한다.If the verification point is not within the validity period of the certificate, it is treated as a verification failure and the verification process ends.

④ 증명서 폐지여부 검증 단계 (S710)④ Verification of whether the certificate is abolished (S710)

본 단계에서 증명서 검증자는 검증 대상 증명서에 대한 폐지여부를 보관소 서버(130)에 요청하여 확인하게 된다. 신뢰기관으로서 보관소 서버(130)가 발급한 증명서는 유효 기간동안 폐지되지 않는 것이 원칙이나, 중대한 사유로 증명서를 폐지해야만 되는 경우가 발생하였다면, 예외적으로 보관소 서버(130)는 해당 증명서를 폐지한 후, 증명서 폐지여부 확인 서비스를 통하여 해당 증명서의 폐지 정보를 증명서 검증자에게 제공하여야 한다. 증명서 검증자는 검증 대상 증명서를 보관소 서버(130)에 송신하여 폐지여부에 대한 확인을 요청하고, 보관소 서버(130)는 해당 증명서에 대한 폐지여부를 확인한 후, 응답 메시지에 증명서의 폐지여부 및 폐지된 증명서인 경우에 폐지 사유 등을 증명서 검증자에게 전송한다.In this step, the certificate verifier requests the storage server 130 to confirm whether the certificate to be verified is revoked. In principle, the certificate issued by the vault server 130 as a trust authority is not revoked during the validity period. However, if a case arises that the certificate must be revoked for a serious reason, the vault server 130 revokes the certificate. In addition, the revocation information of the certificate should be provided to the certificate verifier through the certificate revocation check service. The certificate verifier sends a verification target certificate to the storage server 130 to request confirmation of revocation. The storage server 130 checks whether the certificate has been revoked, and then, in the response message, whether the certificate is revoked and revoked. In the case of a certificate, the reason for revocation is transmitted to the certificate verifier.

증명서 검증자는 증명서 요청자 검증 단계(S750)를 수행할 필요가 있다면, 폐지여부를 확인하는 절차 중에 증명서 요청자가 생성하여 보관소 서버(130)에 보관중인 난수값을 요청할 수 있으며, 이에 대한 응답 메시지에는 폐지여부에 대한 확인결과와 함께 해당 난수가 포함되어 증명서 검증자에게 전달된다. 증명서가 폐지되었다는 보관소 서버(130)의 응답 메시지를 수신했다면 검증 실패로 처리하고 검증 프로세스를 종료한다.If the certificate verifier needs to perform the certificate requestor verification step (S750), the certificate requester may request a random number generated by the certificate requester and stored in the storage server 130 during the procedure of checking whether the certificate is revoked. The random number is included with the verification result and sent to the certificate verifier. If a response message of the storage server 130 indicating that the certificate has been revoked is received, it is treated as a verification failure and the verification process ends.

⑤ 전자서명 검증 단계 (S715)⑤ Digital signature verification step (S715)

보관소 서버(130)가 발급하는 증명서는 무결성의 제공 및 부인방지를 위하여 전자서명을 포함하며, 전자서명 검증 단계에서 증명서에 포함된 전자서명을 검증한다. 전자서명의 검증은 일반적인 CMS의 signedData에 대한 전자서명 검증 방법을 따른다. 전자서명의 검증이 실패하였다면 증명서의 무결성이 훼손되었음을 의미하며, 더이상 증명서의 내용을 신뢰할 수 없어 이후의 과정이 무의미해지므로 여기서 검증 프로세스를 종료하도록 한다.The certificate issued by the repository server 130 includes an electronic signature for providing integrity and non repudiation, and verifies the electronic signature included in the certificate in the electronic signature verification step. Digital signature verification follows the general digital signature verification method for signedData of CMS. If the verification of the digital signature fails, it means that the integrity of the certificate has been compromised. Since the contents of the certificate can no longer be trusted, subsequent processes become meaningless.

⑥ 서명인증서 인증 단계 (S720)⑥ Signature certificate verification step (S720)

서명인증서 검증 단계는 증명서에 서명한 인증서가 보관소 서버(130)의 인증서임을 확인하는 단계와 해당 인증서의 유효성을 검증하는 단계로 이루어진다. 증명서 검증자는 소유하고 있는 보관소 서버(130)의 인증서 또는 인증서 식별정보와 증명서 서명인증서를 비교하여 증명서 서명인증서가 보관소 서버(130)의 인증서임을 확인한다. 증명서 검증자가 보관소 서버(130)의 인증서 또는 인증서 식별정보를 획득하는 과정은 당업자에 의해 용이설계 가능한 부분에 해당하므로 본 발명에서는 그 내용을 생략한다. 한편, 증명서 서명인증서의 경로구축 및 인증서의 유효성 검증은 공인인증 체계의 "공인인증서 경로검증 기술규격 [KCAC.TS.CERTVAL]"을 준용하여 검증한다.The signing certificate verification step includes verifying that the certificate that signed the certificate is the certificate of the storage server 130 and verifying the validity of the certificate. The certificate verifier compares the certificate or certificate identification information of the storage server 130 owned by the certificate signing certificate and confirms that the certificate signing certificate is the certificate of the storage server 130. The process of the certificate verifier obtaining the certificate or the certificate identification information of the storage server 130 corresponds to a part that can be easily designed by those skilled in the art, and thus the content thereof is omitted in the present invention. On the other hand, the path establishment of certificate signing certificate and the validation of certificate are verified according to "KCAC.TS.CERTVAL" of "Certified Certificate Path Verification Technical Standard" of accredited certification system.

증명서 서명인증서의 유효성 검증에 실패한 경우, 증명서의 효력도 상실된다. 단, 증명서 서명인증서의 유효성 검증에는 실패하였더라도 증명서의 유효기간 검증에 성공하였고 전자서명 장기검증 기술이 적용된 상태라면, 해당 검증 기술에 따라 검증하여 성공하였을 경우, 서명인증서의 유효성 검증의 결과와는 관계없이 증명서의 유효성 검증에 성공한 것으로 처리한다.Failure to validate the Certificate Signing Certificate will also invalidate the Certificate. However, even if the validity of the certificate signature certificate fails, if the validity period of the certificate is successfully verified and the digital signature long-term verification technology is applied, if the verification is successful according to the verification technology, the result of the validation of the signature certificate is related. The certificate is considered to be successful.

전자서명 장기검증 기술은 예컨대 한국전자거래진흥원 또는 유관 기관이 제정한 기술규격("KCAC.DN; 전자서명인증관리체계 DN(Distinguished Name: 식별명칭) 규격 v1.1, 한국정보보호진흥원, 2003", "KCAC.DSCP; 전자서명 인증서 프로파일 기술규격 v1.10, 한국정보보호진흥원, 2004", "KCAC.SIVID; 식별번호를 이용한 본인확인 기술규격 v 1.11, 한국정보보호진흥원, 2002" 등)을 준용하도록 한다.The digital signature long-term verification technology is, for example, the Technical Specification (KKAC.DN; Digital Signature Certification Management System DN (Distinguished Name) Standard v1.1, established by the Korea Electronic Commerce Agency or related agencies), v1.1, Korea Information Security Agency, 2003. , "KCAC.DSCP; Digital Signature Certificate Profile Technical Specification v1.10, Korea Information Security Agency, 2004", "KCAC.SIVID; Identification Technical Specification using Identification Number v 1.11, Korea Information Security Agency, 2002"). Make sure to apply accordingly.

⑦ 증명서 내용 검증 절차 (S725 ~ S750)⑦ Verification procedure of certificate contents (S725 ~ S750)

증명서의 내용 검증 절차는 증명서의 활용 주체나 외부 환경 등에 따른 효용성을 검증하는 과정으로서 내용 검증에 실패하였다 하더라도 증명서 자체의 유효성을 상실하지는 않는다. 단, 증명 요청서와 비교 검증, 전자문서 검증에 실패하였다면, 검증 실패 메시지를 보관소 서버(130)에 통보하여 보관소 서버(130)가 이를 확인하고 증명서를 폐지 처리하여 증명서의 유효성을 상실하도록 한다. 검증 실패 메시지를 보관소 서버(130)에 통보하는 방법은 당업자에 의해 용이하게 실시될 수 있는 바 여기서는 생략한다. 내용 검증에 실패한 증명서의 이용자는 해당 증명서를 활용할 수 없다.The verification process of the contents of the certificate is a process of verifying the utility of the subject or external environment of the certificate. Even if the verification fails, the validity of the certificate itself is not lost. However, if the verification request and comparison verification, electronic document verification failed, the verification failure message is notified to the storage server 130 so that the storage server 130 checks this and abolishes the certificate to lose the validity of the certificate. The method of notifying the storage server 130 of the verification failure message may be easily performed by those skilled in the art, and thus will be omitted herein. A user of a certificate that fails verification of content cannot use the certificate.

증명서 내용 검증은 증명 요청서와 비교 검증, 전자문서 검증, 수임자 검증, 정책 검증, 용도 검증, 증명서 요청자 검증으로 구분되며, 한 단계에서 실패하면 다음 과정을 진행하지 않고 검증 실패로 처리한다. 각 검증의 순서는 필요에 따라 바뀔 수 있다.Verification of certificate contents is divided into verification request, comparison verification, electronic document verification, officer verification, policy verification, usage verification, certificate requestor verification, and if it fails in one step, it is treated as verification failure without proceeding with the next process. The order of each verification can be changed as needed.

⑧ 증명 요청서와 비교 검증 단계 (S725)⑧ Verification request and comparison verification step (S725)

증명서 요청자는 보관소 서버(130)로부터 증명서를 발급받은 즉시, 발급받은 증명서가 보관소 서버(130)에 송신했던 증명 요청서에 대한 증명서인가의 여부를 확인해야 한다. 따라서, 증명 요청서와의 비교 검증은 증명 요청서를 생성한 증명 서 요청자만이 수행할 수 있다. 증명서 요청자는 보관소 서버(130)가 발급한 증명서의 증명서 요청 메시지 정보인 requestInfo 필드의 arcCertRequest가 자신이 생성하여 송신했던 증명 요청서의 encapContentInfo 필드의 ARCCertRequest 구조체의 값과 동일함을 확인한다. 증명 요청서와의 비교 검증에 실패하였다면, 증명서 요청자는 보관소 서버(130)에 증명 요청서와의 비교검증 실패사실을 통보하여 폐지 처리하도록 하고, 증명서를 다시 발급받도록 한다.As soon as the certificate requester receives the certificate from the vault server 130, the certificate requester must confirm whether the issued certificate is a certificate for the certificate request sent to the vault server 130. Therefore, comparison verification with the certificate request can only be performed by the certificate requester who generated the certificate request. The certificate requester confirms that the arcCertRequest of the requestInfo field, which is the certificate request message information of the certificate issued by the storage server 130, is identical to the value of the ARCCertRequest structure of the encapContentInfo field of the certificate request generated and sent by the certificate server. If the verification of the comparison with the certificate request failed, the certificate requester notifies the repository server 130 of the fact that the comparison verification failed with the certificate request to be abolished, and to be issued a certificate again.

⑨ 전자문서 검증 단계 (S730)⑨ Electronic document verification step (S730)

증명서 검증자가 증명서와 관련된 전자문서 패키지를 가지고 있다면, 반드시 증명서의 증명대상 필드에 포함된 전자문서의 해쉬값과의 비교 검증을 수행해야 한다. 원본 증명서는 항상 DIP에 첨부되어 발급되므로, 반드시 전자문서 검증 작업 중의 원본 증명에 대한 검증을 수행해야 한다. 어떤 데이터가 특정 시각에 존재하였음을 증명하는 시점확인 증명서의 경우에는 본 전자문서 검증 과정을 수행하지 않는다.If the certificate verifier has an electronic document package associated with the certificate, the verification must be performed against the hash value of the electronic document contained in the certificate subject field of the certificate. Since the original certificate is always issued attached to the DIP, the original proof must be verified during the electronic document verification work. In the case of the certificate of time verification which proves that the data existed at a certain time, this electronic document verification process is not performed.

⑩ 증적 증명에 대한 검증 단계검증 Verification step for evidence attestation

증명서의 증명대상 필드로서 증적 증명을 의미하는 opRecord 필드에는 원본 전자문서의 해쉬값을 포함하는 orgDocInfo 필드와 발급된 전자문서의 해쉬값을 포함하는 issuedDocInfo 필드가 있는데, orgDocInfo 필드는 증적 필드에 항상 포함되는 필드로서 보관소 서버(130)가 보관중인 AIP에 포함된 원본 전자문서의 해쉬값을 포함하고, issuedDocInfo 필드는 문서발급 기능을 수행한 증적에만 포함되는 필드로서 DIP에 포함된 전자문서의 해쉬값을 포함한다. 따라서, 이용자가 증명서 검증 자가 되어 orgDocInfo 필드 내의 전자문서의 해쉬값을 검증하기 위해서는 SIP에 포함되어 보관소 서버(130)에 등록된 전자문서와 동일한 원본 전자문서가 필요하고, issuedDocInfo 필드 내의 전자문서의 해쉬값을 검증하기 위해서는 DIP로부터 추출한 전자문서가 필요하다. 상기에서, SIP는 입수 정보 패키지를 말하며, 이는 이용자가 전자문서를 전자문서 보관소 서버(130)에 전송할 때 구성하는 구조를 말한다.The opRecord field, which is the evidence subject field of a certificate, means evidence evidence, orgDocInfo field containing the hash value of the original electronic document and issuedDocInfo field containing the hash value of the issued electronic document. The orgDocInfo field is always included in the evidence field. As a field, the archive server 130 includes a hash value of the original electronic document included in the archived AIP, and the issuedDocInfo field includes a hash value of the electronic document included in the DIP as a field that is included only in the trace that performed the document issuing function. do. Therefore, in order for a user to be a certificate verifier and verify a hash value of an electronic document in the orgDocInfo field, an original electronic document identical to the electronic document included in the SIP and registered in the repository server 130 is required. The hash of the electronic document in the issuedDocInfo field is required. To verify the value, we need an electronic document extracted from the DIP. In the above, the SIP refers to the acquisition information package, which refers to a structure configured when the user transmits the electronic document to the electronic document storage server 130.

증명서 검증자는 전자문서 검증을 수행할 필요가 있다면 해당 전자문서를 획득하여야 하며, 증명서 검증자가 해당 전자문서를 획득하는 과정은 이하 생략한다(because 당업자의 용이 실시). 전자문서 검증을 수행하는 과정에서 주의하여야 할 사항은, 패키지 내의 원본 또는 변환본 전자문서에 다수의 전자문서 파일들이 포함되어 있을 때 각 문서파일들을 해쉬하는 과정에서 보관소 서버(130)가 수행한 과정과 증명서 검증자가 수행한 과정이 동일해야 한다는 것이다. 즉, 보관소 서버(130)나 증명서 검증자는 패키지 내 원본 또는 변환본의 전자문서에 포함된 다수의 전자문서 파일에 대하여 패키지에 포함되어 있는 순서로 연접한 후 정해진 해쉬 알고리즘에 따라 한번 해쉬하여 전자문서의 해쉬값을 생성하도록 한다. 만약 패키지 내의 전자문서의 해쉬값과 증적에 생성된 전자문서의 해쉬값이 다르다면, 해당 증명서는 더이상 활용할 수 없으며, 증명서 검증자는 해당 사실을 보관소 서버(130)에 통보하여 폐지처리 하도록 한다.If the certificate verifier needs to perform an electronic document verification, the electronic document must be acquired, and the process of obtaining the electronic document by the certificate verifier is omitted below. In the process of performing the electronic document verification, the matters to be careful of, the process performed by the storage server 130 in the process of hashing each document file when a plurality of electronic document files in the original or converted electronic document in the package And the process performed by the certificate verifier must be identical. That is, the repository server 130 or the certificate verifier connects a plurality of electronic document files included in the electronic document of the original or the converted copy in the order included in the package, and then hashes the electronic document once by a predetermined hash algorithm. Generate a hash value of. If the hash value of the electronic document in the package and the hash value of the generated electronic document is different, the certificate can no longer be used, the certificate verifier notifies the repository server 130 to abolish it.

⑪ 원본 증명에 대한 검증 단계검증 Verification step for original proof

증명서의 증명대상 필드로서 원본 증명을 의미하는 orgAndIssued 필드에는 증적 증명과 마찬가지로, 원본 전자문서의 해쉬값을 포함하는 orgDocInfo 필드와 발급된 전자문서의 해쉬값을 포함하는 issuedDocInfo 필드가 있는데, orgDocInfo 필드는 보관소 서버(130)가 보관 중인 AIP에 포함된 원본 전자문서의 해쉬값을 포함하고, issuedDocInfo 필드는 DIP에 포함된 전자문서의 해쉬값을 포함한다. 또한, orgAndIssued 필드에는 발급된 전자문서가 원본 전자문서인지 변환본 전자문서인지를 표시하는 issuedDocOriginal 필드를 포함하고 있는데, 만약 issuedDocOriginal 필드의 값이 TRUE이면 두 해쉬값이 동일하며, FALSE이면 두 해쉬값이 달라야 한다.The orgAndIssued field, which means the original proof as the attestation field of the certificate, has an orgDocInfo field that contains the hash value of the original electronic document and an issuedDocInfo field that contains the hash value of the issued electronic document, similar to the evidence proof. The server 130 includes a hash value of the original electronic document included in the stored AIP, and the issuedDocInfo field includes a hash value of the electronic document included in the DIP. The orgAndIssued field also contains an issuedDocOriginal field that indicates whether the issued electronic document is an original electronic document or a converted electronic document. If the issuedDocOriginal field is TRUE, the two hash values are the same. Should be different.

원본 증명서는 항상 DIP에 첨부되어 발급되므로 증명서 검증자는 issuedDocInfo 필드에 설정된 발급 전자문서의 해쉬값과 DIP에 포함된 전자문서의 해쉬값의 동일성 여부를 검증해야 한다. 이용자가 증명서 검증자인 경우에 orgDocInfo 필드에 설정된 원본 전자문서의 해쉬값을 검증할 필요가 있다면, 증적 증명에서와 마찬가지로 원본 전자문서를 획득하여야 하며, 증명서 검증자가 원본 전자문서를 획득하는 과정은 이하 생략한다. 전자문서의 해쉬 절차는 증적 증명에서와 마찬가지 방법으로 생성하도록 한다. 만약 패키지 내의 전자문서의 해쉬값과 증적에 생성된 전자문서의 해쉬값이 다르다면, 해당 증명서는 더이상 활용할 수 없으며, 증명서 검증자는 해당 사실을 보관소 서버(130)에 통보하여 폐지처리 하도록 한다. 또한, 검증에 실패한 원본 증명서가 첨부된 DIP의 전자문서도 신뢰할 수 없는 것으로 판단하도록 한다.Since the original certificate is always issued attached to the DIP, the certificate verifier must verify whether the hash value of the issuing electronic document set in the issuedDocInfo field and the hash value of the electronic document included in the DIP are identical. If the user needs to verify the hash value of the original electronic document set in the orgDocInfo field when the user is the certificate verifier, the original electronic document must be obtained as in the proof proof, and the process of obtaining the original electronic document by the certificate verifier is omitted below. do. The hash procedure of an electronic document is generated in the same way as for the proof of evidence. If the hash value of the electronic document in the package and the hash value of the generated electronic document is different, the certificate can no longer be used, the certificate verifier notifies the repository server 130 to abolish it. In addition, it is determined that the electronic document of the DIP to which the original certificate that failed verification is attached cannot be trusted.

⑫ 수임자 검증 단계 (S735)검증 Commissioner verification step (S735)

증명서에 수임자를 지정한 Qualifications 확장필드가 존재하고 critical의 값이 TRUE인 경우, 증명서 검증자는 Qualifications 필드의 값을 확인하여야 한다. 수임자 검증이란, 수임자의 정보가 올바르게 생성되었음을 검증하는 것이 아니라, 증명서 검증자 또는 수임자임을 주장하는 자가 정당한 수임자인가를 확인하는 절차이다. 증명서의 Qualifications 필드의 모든 Qualification 항목들에 대하여 nomineeRole 필드의 값이 onlyForNominee를 포함하고 있다면, 해당 증명서는 각 qualification 항목의 nomineeInfo에 지정된 증명서 수임자들을 위해서만 발급된 것이므로, 증명서 검증자 또는 수임자임을 주장하는 자가 정당한 증명서 수임자인 경우에만 증명서를 활용할 수 있다. 수임자 검증에 실패하였더라도, 증명서 검증자나 수임자임을 주장하는 자가 증명서를 활용하지 못할 뿐, 증명서의 유효성을 상실하지는 않는다.If there is a Qualifications extension in the certificate that specifies the recipient and the critical value is TRUE, the certificate verifier shall check the value of the Qualifications field. Recipient verification is not a process of verifying that the information of the recipient has been correctly generated, but rather a process of verifying whether the certificate verifier or claimant is a legitimate recipient. If the value of the nomineeRole field contains onlyForNominee for all qualifications in the Qualifications field of the certificate, the certificate is issued only for the certificate holders specified in nomineeInfo of each qualification item, so that the validator or claimant claiming to be a valid person Certificates may only be used by certificate holders. Even if the verification fails, the certificate verifier or the claimant is not able to use the certificate and does not lose the validity of the certificate.

만약 Qualifications 확장필드가 없거나, critical의 값이 FALSE이거나, 모든qualification 필드 내 nomineeRole 필드의 값이 onlyForNominee를 포함하지 않는다면, 해당 증명서는 모든 사람에 의해서 활용될 수 있다.If there is no Qualifications extension, the value of critical is FALSE, or the value of the nomineeRole field in all qualification fields does not contain onlyForNominee, the certificate can be used by everyone.

⑬ 증명서 정책 검증 단계 (S740)⑬ Certificate Policy Verification Step (S740)

증명서 검증자는 검증하고자 하는 증명서에 포함된 증명서 정책이 현재 활용을 위한 목적에 부합되는가를 검증해야 한다. 증명서에 포함된 증명서의 정책은 증명서의 활용, 용도, 목적, 보증 범위 등에 대한 내용을 담고 있으며, 보관소 서버(130)는 이에 대한 내용을 증명서를 사용하는 모든 이용자를 위하여 공지하고 있다. 증명서 검증자는 증명서 정책 필드의 증명서 정책이 자신의 증명서 활용 목적을 위해서 적합한 정책인가를 확인한다. 정책 검증에 실패하였더라도, 증명서 검증자의 활용 목적을 위하여 증명서를 활용하지 못할 뿐, 증명서의 유효성을 상실하지 는 않는다.The certificate verifier must verify that the certificate policy contained in the certificate to be verified is compatible with the purpose for which it is currently being used. The policy of the certificate included in the certificate contains information on the use, use, purpose, warranty scope, and the like of the certificate, and the storage server 130 announces the content for all users who use the certificate. The certificate verifier verifies that the certificate policy in the Certificate Policy field is a suitable policy for the purpose of using his certificate. Even if the policy verification fails, the certificate cannot be used for the purpose of the certificate verifier, and the certificate does not lose its validity.

⑭ 용도 검증 단계 (S745)⑭ Usage Verification Step (S745)

증명서에 증명서 용도를 지정한 UsageType 확장필드가 존재하고 critical의 값이 TRUE인 경우, 증명서 검증자는 UsageType 필드의 값을 확인하여야 한다. 증명서의 사용환경과 증명서 용도 필드의 값이 일치하지 않으면 검증에 실패하게 된다. 본 발명에서는 UsageType 필드의 critical의 값을 FALSE로 설정하도록 하므로 증명서의 용도 검증을 하지 않아도 된다.If there is a UsageType extension that specifies the purpose of the certificate in the certificate and the critical value is TRUE, the certificate verifier shall check the value of the UsageType field. If the certificate usage environment and the certificate usage field do not match, verification will fail. In the present invention, since the critical value of the UsageType field is set to FALSE, it is not necessary to verify the purpose of the certificate.

⑮ 증명서 요청자 검증 단계 (S750)⑮ Certificate Requester Verification Step (S750)

증명서에 증명서 요청자 정보가 포함되어 있는 경우, 즉 requestInfo 필드의 정보로 null이 아닌 arcCertRequest 필드가 사용되었다면, arcCertRequest 필드 내의 requester 필드에 대하여 필요한 경우에 검증을 수행할 수 있다. 본 증명서 요청자 검증 과정은 증명서 요청자라고 주장하는 자의 신원정보와 증명서 내의 증명서 요청자 정보와의 동일성 여부에 대한 확인을 주목적으로 한다. 증명서 요청자 검증에 실패하였더라도, 증명서 요청자라고 주장하는 자가 정당한 증명서 요청자가 아님을 확인한 것일 뿐, 증명서의 유효성을 상실하지는 않는다.If the certificate includes certificate requestor information, that is, if the non-null arcCertRequest field is used as the information of the requestInfo field, the requester field in the arcCertRequest field may be verified as necessary. This certificate requestor verification process aims at verifying the identity of the person claiming to be the certificate requester and the identity of the certificate requestor in the certificate. Even if the certificate requestor verification fails, it is confirmed that the claimant who is the certificate requester is not a valid certificate requestor, and does not lose the validity of the certificate.

한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, ROM, 플로피 디스크, 하드 디스크 등), 광학적 판독 매체(예를 들면, CD-ROM, DVD 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다.Meanwhile, the above-described embodiments of the present invention can be written as a program that can be executed in a computer, and can be implemented in a general-purpose digital computer that operates the program using a computer-readable recording medium. The computer-readable recording medium may include a magnetic storage medium (for example, a ROM, a floppy disk, a hard disk, etc.), an optical reading medium (for example, a CD-ROM, a DVD, etc.) and a carrier wave (for example, Storage media such as transmission over the Internet).

이상의 설명은 본 발명의 기술사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것이다. 따라서, 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 본 발명의 기술사상의 범위가 한정되는 것은 아니다. 본 발명의 보호범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical spirit of the present invention, and those skilled in the art to which the present invention pertains various modifications, changes, and substitutions without departing from the essential characteristics of the present invention. will be. Accordingly, the embodiments disclosed in the present invention and the accompanying drawings are not intended to limit the technical spirit of the present invention but to describe the present invention, and the scope of the technical idea of the present invention is not limited by the embodiments and the accompanying drawings. . The scope of protection of the present invention should be interpreted by the following claims, and all technical ideas within the scope equivalent thereto should be construed as being included in the scope of the present invention.

본 발명은 전자문서를 취급하는 기관, 학교, 기업체 등지에서 이용 가능하여 그 이용도가 매우 높다할 것이다. 더욱이, 미래 사회는 유비쿼터스 시대를 지향하고 있으므로 본 발명은 향후 더욱 빛을 발할 것으로 예측된다.The present invention can be used in institutions, schools, businesses, etc. that handle electronic documents, the use thereof will be very high. Moreover, since the future society is oriented toward the ubiquitous era, the present invention is expected to shine more in the future.

도 1은 본 발명의 바람직한 실시예에 따른 전자문서 보관 시스템의 전체 구성을 개략적으로 도시한 개념도,1 is a conceptual diagram schematically showing the overall configuration of an electronic document storage system according to an embodiment of the present invention,

도 2는 본 발명의 바람직한 실시예에 따른 전자문서 보관 시스템에 있어서, 전자문서 보관소 서버의 내부 구성을 개략 설명한 블록도,2 is a block diagram schematically illustrating an internal configuration of an electronic document storage server in an electronic document storage system according to a preferred embodiment of the present invention;

도 3 내지 도 6은 본 발명의 바람직한 실시예에 따른 전자문서 보관 시스템에 있어서, 전자문서 보관소 서버의 증명서 발급 절차를 설명하기 위한 흐름도,3 to 6 are flow charts for explaining a certificate issuing procedure of the electronic document storage server in the electronic document storage system according to a preferred embodiment of the present invention;

도 7은 본 발명의 바람직한 실시예에 따른 전자문서 보관 시스템에 있어서, 증명서 검증자 단말기의 증명서 검증 방법을 설명하기 위한 순서도이다.7 is a flowchart illustrating a certificate verification method of a certificate verifier terminal in an electronic document storage system according to a preferred embodiment of the present invention.

< 도면의 주요부분에 대한 부호의 설명 ><Description of Symbols for Major Parts of Drawings>

100 : 전자문서 보관 시스템 110 : 이용자 단말기100: electronic document storage system 110: user terminal

115 : 증명서 요청자 단말기 120 : 증명서 수임자 단말기115: certificate requester terminal 120: certificate recipient terminal

130 : 전자문서 보관소 서버 135 : 전자문서 보관소 데이터베이스130: electronic archive server 135: electronic archive database

150 : 공인인증기관 서버 200 : 통신부150: certification authority server 200: communication unit

205 : 등록 관리부 210 : 중앙처리부205: Registration management unit 210: Central processing unit

215 : 메시지 생성부 220 : 발급 관리부215: message generating unit 220: issuing management unit

225 : 무결성 검증부 230 : 시점확인 관리부225: integrity verification unit 230: time check management unit

235 : 증적 검색부 240 : 기타 관리부235: evidence search unit 240: other management unit

Claims (19)

전자문서를 증명하는 증명서를 발급하는 방법에 있어서,In the method for issuing a certificate for authenticating an electronic document, (a) 상기 증명서 발급을 요청하는 증명서 요청 메시지를 생성하며, 상기 증명서 요청 메시지를 전송하는 단계;(a) generating a certificate request message requesting issuance of the certificate and transmitting the certificate request message; (b) 상기 증명서 요청 메시지에서 증명의 대상이 되는 증적을 검색하는 단계;(b) retrieving an evidence to be proved in the certificate request message; (c) 상기 증명서 요청 메시지와 상기 검색된 증적을 근거로 상기 증명서 발급을 시도하는 단계; 및(c) attempting to issue the certificate based on the certificate request message and the retrieved evidence; And (d) 상기 증명서 발급에 성공한 경우, 상기 증명서를 포함하는 증명서 응답 메시지를 생성하고 상기 증명서 응답 메시지를 전송하며, 상기 증명서 발급에 실패한 경우, 원인을 포함하는 에러 메시지를 생성하고 상기 에러 메시지를 전송하는 단계(d) if the issuance of the certificate is successful, generate a certificate response message including the certificate and transmit the certificate response message; if the issuance of the certificate fails, generate an error message including the cause and send the error message; Steps to 를 포함하는 것을 특징으로 하는 전자문서 증명서 발급 방법.Electronic document certificate issuing method comprising a. 제 1 항에 있어서,The method of claim 1, 상기 증명서는 상기 전자문서 등록을 증명하는 등록 증명서, 상기 전자문서 발급을 증명하는 발급 증명서, 상기 전자문서 이관을 증명하는 이관 증명서, 상기 전자문서 폐기를 증명하는 폐기 증명서, 발급된 전자문서가 보관된 전자문서와 동일한 원본임을 증명하는 원본 증명서, 및 일정 데이터가 특정 시각에 존재하였음을 증명하는 시점확인 증명서 중 하나 이상인 것을 특징으로 하는 전자문서 증명서 발급 방법.The certificate includes a registration certificate certifying registration of the electronic document, an issuance certificate certifying the issuance of the electronic document, a transfer certificate certifying the electronic document transfer, a revocation certificate certifying the disposal of the electronic document, and an issued electronic document. An electronic document certificate issuing method, characterized in that it is at least one of an original certificate certifying that it is the same as the electronic document, and a time-confirmation certificate certifying that the schedule data existed at a specific time. 제 1 항에 있어서,The method of claim 1, 상기 (c) 단계에서는 저장된 증명서 정책을 이용하는 것을 특징으로 하는 전자문서 증명서 발급 방법.In the step (c), the electronic document certificate issuing method, characterized in that for using the stored certificate policy. 제 2 항에 있어서,The method of claim 2, 상기 증명서가 상기 등록 증명서인 경우, 최초 발급에 한하여 상기 증명서 요청 메시지 수신 없이 상기 등록 증명서를 담은 상기 증명서 응답 메시지를 생성 전송하는 것을 특징으로 하는 전자문서 증명서 발급 방법.And when the certificate is the registration certificate, generating and transmitting the certificate response message including the registration certificate without receiving the certificate request message only for the initial issuance. 제 2 항에 있어서,The method of claim 2, 상기 증명서가 상기 원본 증명서인 경우 상기 (b) 단계에서는, 전자문서 원본 이외에 추가로 상기 원본과 동일한 구성을 가지는 변환본에 대한 원본 증명서를 발급하는 것을 특징으로 하는 전자문서 증명서 발급 방법.If the certificate is the original certificate, in step (b), in addition to the electronic document original, issuing an original document certificate for a converted version having the same configuration as the original. 제 2 항에 있어서,The method of claim 2, 상기 증명서가 상기 원본 증명서인 경우, 상기 (d) 단계에서 생성되는 증명서 응답 메시지는 DIP(Dissemination Information Packages)에 포함되는 형태인 것 을 특징으로 하는 전자문서 증명서 발급 방법.If the certificate is the original certificate, the certificate response message generated in the step (d) is characterized in that the form contained in the DIP (Dissemination Information Packages). 제 2 항에 있어서,The method of claim 2, 상기 증명서가 상기 시점확인 증명서인 경우, 상기 (a) 단계에서의 증명서 요청 메시지는 데이터 해쉬값을 포함하는 것을 특징으로 하는 전자문서 증명서 발급 방법.And the certificate request message in the step (a) includes a data hash value if the certificate is the time-confirmation certificate. 제 2 항에 있어서,The method of claim 2, 상기 증명서가 상기 시점확인 증명서, 상기 발급 증명서, 상기 이관 증명서, 및 상기 폐기 증명서 중 하나 이상인 경우 상기 (a) 단계와 상기 (b) 단계의 중간 단계에서, 상기 증명서 요청 메시지의 무결성을 검증하는 것을 특징으로 하는 전자문서 증명서 발급 방법.Verifying the integrity of the certificate request message in an intermediate step of steps (a) and (b) if the certificate is at least one of the time-certification certificate, the issue certificate, the transfer certificate, and the revocation certificate. Characterized in that the electronic document certificate issuance method. 제 2 항에 있어서,The method of claim 2, 상기 증명서가 상기 발급 증명서, 상기 이관 증명서 및 상기 폐기 증명서 중 하나 이상인 경우 상기 (b) 단계에서는, 상기 증명서 요청 메시지를 근거로 기존 증적이 있는지를 검색하는 것을 특징으로 하는 전자문서 증명서 발급 방법.And if the certificate is one or more of the issuance certificate, the transfer certificate, and the revocation certificate, in step (b), searching for whether there is an existing certificate based on the certificate request message. 제 1 항에 있어서,The method of claim 1, 상기 (d) 단계에서의 상기 증명서 응답 메시지는 발급한 전자문서를 포함하 는 것을 특징으로 하는 전자문서 증명서 발급 방법.The certificate response message in the step (d) comprises an issued electronic document, characterized in that the electronic document certificate. 전자문서와 상기 전자문서에 대한 증명서를 취급하는 전자문서 보관 시스템에 있어서,In an electronic document storage system that handles electronic documents and certificates for the electronic documents, 전자문서의 등록을 요청하는 자가 접속하는 이용자 단말기;A user terminal to which a person requesting registration of an electronic document is connected; 상기 증명서를 요청하는 자가 접속하는 요청자 단말기;A requestor terminal to which the requestor of the certificate is connected; 상기 요청을 표시하는 증명서 요청 메시지에서 증명의 대상이 되는 증적을 검색하며, 상기 증명서 요청 메시지와 상기 검색된 증적을 근거로 상기 증명서를 포함하는 증명서 응답 메시지를 생성 전송하는 전자문서 보관소 서버; 및An electronic document storage server for searching for a certificate to be proved in a certificate request message indicating the request, and generating and transmitting a certificate response message including the certificate based on the certificate request message and the retrieved certificate; And 상기 이용자 단말기 또는 상기 요청자 단말기와 상기 전자문서 보관소 서버 사이에서 공인인증을 하는 공인인증기관 서버An accredited certification authority server for performing public authentication between the user terminal or the requester terminal and the electronic document storage server. 를 포함하는 것을 특징으로 하는 전자문서 보관소 시스템.Electronic document storage system comprising a. 제 11 항에 있어서,The method of claim 11, 상기 전자문서나 상기 증명서를 수임하는 자가 접속하는 수임자 단말기A recipient terminal to which the person accepting the electronic document or the certificate connects. 를 더 포함하되,Include more, 상기 수임자 단말기는 상기 이용자 단말기, 상기 요청자 단말기 및 제3자가 접속하는 제3자 단말기 중 어느 하나인 것을 특징으로 하는 전자문서 보관소 시스템.And said commissioner terminal is any one of said user terminal, said requestor terminal, and a third party terminal to which a third party connects. 제 11 항에 있어서,The method of claim 11, 상기 전자문서 보관소 서버는 상기 증명서 응답 메시지 생성에 실패할 경우 원인을 포함하는 에러 메시지를 생성 전송하는 것을 특징으로 하는 전자문서 보관 시스템.The electronic document storage server generates and transmits an error message including a cause when the generation of the certificate response message fails. 제 11 항에 있어서,The method of claim 11, 상기 전자문서 보관소 서버가 생성하는 증명서는 상기 전자문서 등록을 증명하는 등록 증명서, 상기 전자문서 발급을 증명하는 발급 증명서, 상기 전자문서 이관을 증명하는 이관 증명서, 상기 전자문서 폐기를 증명하는 폐기 증명서, 발급된 전자문서가 보관된 전자문서와 동일한 원본임을 증명하는 원본 증명서, 및 일정 데이터가 특정 시각에 존재하였음을 증명하는 시점확인 증명서 중 하나 이상인 것을 특징으로 하는 전자문서 보관 시스템.The certificate generated by the electronic document storage server may include a registration certificate certifying the electronic document registration, an issuance certificate certifying the issuance of the electronic document, a transfer certificate certifying the electronic document transfer, a revocation certificate certifying the disposal of the electronic document, And at least one of an original certificate certifying that the issued electronic document is the same original as the archived electronic document, and a time verification certificate certifying that the schedule data existed at a specific time. 제 11 항에 있어서,The method of claim 11, 상기 전자문서 보관소 서버는 상기 증명서 응답 메시지에 발급한 전자문서를 포함시키는 것을 특징으로 하는 전자문서 보관 시스템.And the electronic document storage server includes an electronic document issued in the certificate response message. 제 11 항에 있어서,The method of claim 11, 상기 전자문서 보관소 서버에 의해 운용되며, 상기 전자문서, 상기 증명서 및 상기 증적 중 하나 이상을 저장하는 전자문서 보관소 데이터베이스An electronic document storage database operated by the electronic document storage server and storing one or more of the electronic document, the certificate and the evidence. 를 더 포함하되,Include more, 상기 전자문서 보관소 데이터베이스는 WORM(Write Once Read Many) 기능을 구비하는 것을 특징으로 하는 전자문서 보관 시스템.The electronic document storage database is an electronic document storage system, characterized in that it has a write once read many (WORM) function. 제 11 항, 제 13 항, 제 14 항 및 제 16 항 중 어느 한 항에 있어서,The method according to any one of claims 11, 13, 14 and 16, 상기 전자문서 보관소 서버는,The electronic document storage server, 상기 증명서 요청 메시지를 수신하고, 상기 증명서 응답 메시지나 상기 에러 메시지를 송신하는 통신부;A communication unit which receives the certificate request message and transmits the certificate response message or the error message; 상기 전자문서를 등록하고, 상기 전자문서 등록에 대한 증적을 생성하며, 상기 등록 증명서를 생성하는 등록 관리부;A registration manager for registering the electronic document, generating a mark for registering the electronic document, and generating the registration certificate; 상기 증명서 응답 메시지나 상기 에러 메시지를 생성하는 메시지 생성부;A message generator for generating the certificate response message or the error message; 상기 전자문서를 발급하고, 상기 전자문서 발급사실에 대한 증적을 생성하며, 상기 원본 증명서를 생성하는 발급 관리부;An issue management unit for issuing the electronic document, generating an evidence of the electronic document issuing fact, and generating the original certificate; 상기 증명서 요청 메시지의 무결성을 검증하는 무결성 검증부;An integrity verification unit that verifies the integrity of the certificate request message; 상기 증명서 요청 메시지에 포함된 데이터 해쉬값을 근거로 상기 시점확인 증명서를 생성하는 시점확인 관리부;A point-of-view management unit generating the point-of-view certificate based on the data hash value included in the certificate request message; 상기 증명서 요청 메시지를 근거로 기존 증적이 있는지를 검색하는 증적 검색부;An evidence retrieval unit for retrieving whether there is an existing evidence based on the certificate request message; 상기 증적 검색부가 검색한 증적을 근거로 상기 발급 증명서, 상기 이관 증명서 및 상기 폐기 증명서 중 하나 이상을 생성하는 기타 관리부; 및Another management unit generating at least one of the issued certificate, the transfer certificate, and the revocation certificate based on the evidence retrieved by the evidence retrieval unit; And 상기 전자문서 보관소 데이터베이스를 연동시키며, 상기 통신부와 상기 등록 관리부와 상기 메시지 생성부와 상기 발급 관리부와 상기 무결성 검증부와 상기 시점확인 관리부와 상기 증적 검색부와 상기 기타 관리부의 전체 작동을 제어하는 중앙처리부A central point for interlocking the electronic document storage database and controlling the overall operations of the communication unit, the registration manager, the message generator, the issue manager, the integrity verification unit, the time verification manager, the trace retrieval unit, and the other manager; Processing 를 포함하는 것을 특징으로 하는 전자문서 보관 시스템.Electronic document storage system comprising a. 제 11 항에 있어서,The method of claim 11, 상기 전자문서 보관소 서버가 처리하는 상기 증명서 요청 메시지와 상기 전자문서 보관소 서버가 생성하는 상기 증명서 응답 메시지는 ASN.1(Abstract Syntax Notation One), BER(Basic Encoding Rules) 및 DER(Distinguished Encoding Rules) 중 어느 하나의 방식으로 인코딩하는 IETF RFC 3852 CMS(Cryptographic Message Syntax) 구조를 형성하는 것을 특징으로 하는 전자문서 보관 시스템.The certificate request message processed by the electronic document archive server and the certificate response message generated by the electronic document archive server are one of Abstract Syntax Notation One (ASN.1), Basic Encoding Rules (BER), and Distinguished Encoding Rules (DER). An electronic document archiving system, characterized by forming an IETF RFC 3852 Cryptographic Message Syntax (CMS) structure that encodes in either manner. 컴퓨터로 판독 가능한 기록매체에 있어서,In a computer-readable recording medium, 제 1 항 내지 제 10 항 중 어느 한 항에 따른 방법을 구현하는 프로그램이 저장되는 기록매체.A recording medium storing a program for implementing the method according to any one of claims 1 to 10.
KR1020070140321A 2007-09-12 2007-12-28 Method for issuing certificate of electric filing document, and system for storing certificate of electric filing document therefor, and the recording media storing the program performing the said method KR100969313B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020070092673 2007-09-12
KR20070092673 2007-09-12

Publications (2)

Publication Number Publication Date
KR20090027554A true KR20090027554A (en) 2009-03-17
KR100969313B1 KR100969313B1 (en) 2010-07-09

Family

ID=40695144

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070140321A KR100969313B1 (en) 2007-09-12 2007-12-28 Method for issuing certificate of electric filing document, and system for storing certificate of electric filing document therefor, and the recording media storing the program performing the said method

Country Status (1)

Country Link
KR (1) KR100969313B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012005555A3 (en) * 2010-07-08 2012-05-31 정보통신산업진흥원 Method for creating/issuing electronic document distribution certificate, method for verifying electronic document distribution certificate, and system for distributing electronic document

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100579147B1 (en) * 2004-01-29 2006-05-12 (주)드림투리얼리티 A system for verifying forged electronic documents of electronic document and a method using thereof
KR100653512B1 (en) * 2005-09-03 2006-12-05 삼성에스디에스 주식회사 System for managing and storaging electronic document and method for registering and using the electronic document performed by the system
JP2008061128A (en) * 2006-09-01 2008-03-13 Canon Inc Facsimile transmitting/receiving apparatus and method, program and storage medium

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012005555A3 (en) * 2010-07-08 2012-05-31 정보통신산업진흥원 Method for creating/issuing electronic document distribution certificate, method for verifying electronic document distribution certificate, and system for distributing electronic document
WO2012005546A3 (en) * 2010-07-08 2012-05-31 정보통신산업진흥원 Electronic document distribution system and electronic document distribution method
CN103124981A (en) * 2010-07-08 2013-05-29 情报通信产业振兴院 Electronic document distribution system and electronic document distribution method
KR101364612B1 (en) * 2010-07-08 2014-02-20 정보통신산업진흥원 System for circulating electronic document for creating and issuing and verifying electronic document circulation certificate
US9143358B2 (en) 2010-07-08 2015-09-22 National It Industry Promotion Agency Electronic document communication system and electronic document communication method
CN103124981B (en) * 2010-07-08 2016-12-07 韩国网络安全振兴院 The electronic document system for the distribution of commodities and electronic document circulation method

Also Published As

Publication number Publication date
KR100969313B1 (en) 2010-07-09

Similar Documents

Publication Publication Date Title
AU2021206913B2 (en) Systems and methods for distributed data sharing with asynchronous third-party attestation
Kent Privacy enhancement for internet electronic mail: Part II: Certificate-based key management
Housley et al. RFC2459: Internet X. 509 public key infrastructure certificate and CRL profile
US5774552A (en) Method and apparatus for retrieving X.509 certificates from an X.500 directory
CN108696358B (en) Digital certificate management method and device, readable storage medium and service terminal
US8656166B2 (en) Storage and authentication of data transactions
JP2004531918A (en) Method and system for obtaining a digital signature
US20020004800A1 (en) Electronic notary method and system
US7058619B2 (en) Method, system and computer program product for facilitating digital certificate state change notification
KR20090015026A (en) Peer-to-peer contact exchange
JPH11338780A (en) Method and device for acknowledging and safely storing electronic document
US11449285B2 (en) Document security and integrity verification based on blockchain in image forming device
KR100978906B1 (en) System for managing electric filing document, and application method therefor, and the recording media storing the program performing the said method
GB2583767A (en) Methods and devices for public key management using a blockchain
KR100751673B1 (en) Security system and method of server which deposits and manages electronic document
Solo et al. Internet X. 509 public key infrastructure certificate and CRL profile
CN114079645A (en) Method and device for registering service
KR100969313B1 (en) Method for issuing certificate of electric filing document, and system for storing certificate of electric filing document therefor, and the recording media storing the program performing the said method
KR100966323B1 (en) System for managing electric filing document, and method therefor, and the recording media storing the program performing the said method
JP2002132996A (en) Server for authenticating existence of information, method therefor and control program for authenticating existence of information
JP2009031849A (en) Certificate issuing system for electronic application, electronic application reception system, and method and program therefor
KR20010038208A (en) Administrative information management method of X.509-base public key certification authority
KR20020086030A (en) User Authentication Method and System on Public Key Certificate including Personal Identification Information
JP2020010299A (en) Personal authentication device and personal authentication method
JP4057995B2 (en) Alternative certificate issuance / verification system for PKI authentication system

Legal Events

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

Payment date: 20130624

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140610

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150610

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160610

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170629

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20180416

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20190610

Year of fee payment: 10