KR102658134B1 - Electronic document management server that performs database processing for electronic document based on identification tag and operating method thereof - Google Patents
Electronic document management server that performs database processing for electronic document based on identification tag and operating method thereof Download PDFInfo
- Publication number
- KR102658134B1 KR102658134B1 KR1020210031817A KR20210031817A KR102658134B1 KR 102658134 B1 KR102658134 B1 KR 102658134B1 KR 1020210031817 A KR1020210031817 A KR 1020210031817A KR 20210031817 A KR20210031817 A KR 20210031817A KR 102658134 B1 KR102658134 B1 KR 102658134B1
- Authority
- KR
- South Korea
- Prior art keywords
- document
- electronic document
- management table
- user terminal
- hash value
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims abstract description 61
- 238000011017 operating method Methods 0.000 title abstract description 6
- 238000000034 method Methods 0.000 claims abstract description 19
- 230000006870 function Effects 0.000 claims description 93
- 239000000284 extract Substances 0.000 claims description 23
- 230000005540 biological transmission Effects 0.000 claims description 22
- 238000000605 extraction Methods 0.000 claims description 17
- 238000012790 confirmation Methods 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 6
- 238000012423 maintenance Methods 0.000 claims description 5
- 101100545272 Caenorhabditis elegans zif-1 gene Proteins 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000013461 design Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 208000025721 COVID-19 Diseases 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000005226 mechanical processes and functions Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
- G06F16/316—Indexing structures
- G06F16/328—Management therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
- G06F16/316—Indexing structures
- G06F16/325—Hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3334—Selection or weighting of terms from queries, including natural language queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/93—Document management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/117—Tagging; Marking up; Designating a block; Setting of attributes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Abstract
전자 문서 관리 서버 및 그 동작 방법이 개시된다. 본 발명은 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 전자 문서 관리 서버 및 그 동작 방법을 제시함으로써, 식별 태그를 이용하여 전자 문서에 포함된 콘텐츠 데이터에 대한 효율적 기록 및 제공이 가능하도록 지원할 수 있다.An electronic document management server and method of operating the same are disclosed. The present invention proposes an electronic document management server that performs database processing for electronic documents based on identification tags and an operating method thereof, thereby enabling efficient recording and provision of content data included in electronic documents using identification tags. We can support you to do so.
Description
본 발명은 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 전자 문서 관리 서버 및 그 동작 방법에 대한 것이다.The present invention relates to an electronic document management server that performs database processing on electronic documents based on identification tags and a method of operating the same.
최근, 코로나 19 사태가 장기화되면서, 원격 및 재택근무, 화상회의 등 비대면 업무방식에 대한 확산이 가속화되고 있다.Recently, as the COVID-19 situation prolongs, the spread of non-face-to-face work methods such as remote and telecommuting and video conferencing is accelerating.
이에 따라, 기존의 종이 문서 위주의 업무 비율은 감소하고, 전자 문서 중심의 업무 비율이 증가하고 있는 추세이다.Accordingly, the proportion of work centered on existing paper documents is decreasing, and the proportion of work centered on electronic documents is increasing.
이렇게, 전자 문서 중심의 업무 비율이 증가하게 되면, 공공기관, 금융기관 및 기업에서는 전자 문서에 포함된 콘텐츠 데이터들을 효율적으로 기록 및 제공할 수 있도록 전자 문서를 데이터베이스화 할 필요가 있다.As the rate of work centered on electronic documents increases, public institutions, financial institutions, and companies need to turn electronic documents into databases so that they can efficiently record and provide content data contained in electronic documents.
이와 관련해서, 전자 문서에 포함된 콘텐츠 데이터들 각각에 식별 태그(Identification Tag)를 할당함으로써, 전자 문서에 포함된 콘텐츠 데이터들을 효율적으로 관리할 수 있도록 하는 방안을 도입할 수 있을 것이다.In this regard, it would be possible to introduce a method to efficiently manage the content data included in the electronic document by assigning an identification tag to each of the content data included in the electronic document.
한편, 공공기관, 금융기관 및 기업이 보유하고 있는 전자 문서는 대외보안이 필요한 경우가 많기 때문에, 해당 전자 문서에 포함된 콘텐츠 데이터들에 대해서는 보다 강화된 보안이 적용될 필요도 있다.Meanwhile, since electronic documents held by public institutions, financial institutions, and companies often require external security, more strengthened security may need to be applied to the content data included in the electronic documents.
따라서, 식별 태그를 이용하여 전자 문서를 데이터베이스화 하기 위한 시스템 기술과, 해당 전자 문서에 포함된 콘텐츠 데이터들에 대해 보다 강화된 보안을 적용하기 위한 보안 기술에 대한 연구가 필요하다.Therefore, research is needed on system technology to database electronic documents using identification tags and security technology to apply stronger security to content data included in the electronic documents.
본 발명은 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 전자 문서 관리 서버 및 그 동작 방법을 제시함으로써, 식별 태그를 이용하여 전자 문서에 포함된 콘텐츠 데이터에 대한 효율적 기록 및 제공이 가능하도록 지원하고자 한다.The present invention proposes an electronic document management server that performs database processing for electronic documents based on identification tags and an operating method thereof, thereby enabling efficient recording and provision of content data included in electronic documents using identification tags. We would like to support you in doing so.
본 발명의 일실시예에 따른 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 전자 문서 관리 서버는 사용자 단말로부터 전자 문서에 대한 문서 파일 - 상기 전자 문서에 대한 문서 파일은 상기 전자 문서에 대한 문서 데이터와, 상기 전자 문서에 포함된 복수의 문단들, 복수의 개체들 및 복수의 표들 각각을 식별하기 위한 사전 설정된 서로 다른 복수의 식별 태그(Identification Tag)들이 기록된 메타데이터(Metadata)로 구성됨 - 이 수신되면서, 상기 사용자 단말로부터 상기 전자 문서에 대한 데이터베이스화 요청 명령이 수신되면, 상기 전자 문서에 대한 문서 파일에 포함된 상기 메타데이터를 리드(Read)하여 상기 복수의 식별 태그들을 확인하는 식별 태그 확인부, 상기 복수의 식별 태그들이 확인되면, 상기 전자 문서에 포함된 콘텐츠 데이터를 기록하기 위한 관리 테이블을 생성하는 관리 테이블 생성부, 상기 관리 테이블이 생성되면, 상기 전자 문서에 대한 문서 파일에 포함된 상기 문서 데이터로부터 상기 복수의 문단들에 대한 텍스트 데이터를 추출한 후, 각 문단에 대한 텍스트 데이터와 각 문단에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록하는 제1 정보 기록 처리부, 상기 문서 데이터로부터 상기 복수의 개체들에 대한 개체 데이터를 추출한 후, 각 개체에 대한 개체 데이터와 각 개체에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록하는 제2 정보 기록 처리부, 상기 문서 데이터로부터 상기 복수의 표들에 대한 표 데이터를 추출한 후, 각 표에 대한 표 데이터와 각 표에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록하는 제3 정보 기록 처리부 및 상기 관리 테이블에 상기 전자 문서에 포함된 콘텐츠 데이터에 대한 기록이 완료되면, 상기 전자 문서에 대한 문서 파일을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성한 후, 문서 데이터베이스에 상기 제1 해시 값과 상기 관리 테이블을 서로 대응시켜 저장하는 정보 저장 처리부를 포함한다.An electronic document management server that performs database processing for an electronic document based on an identification tag according to an embodiment of the present invention provides a document file for the electronic document from a user terminal - the document file for the electronic document is stored in the electronic document. metadata in which a plurality of different preset identification tags are recorded to identify each of the document data and the plurality of paragraphs, plurality of objects, and plurality of tables included in the electronic document. Configured - When a database request command for the electronic document is received from the user terminal, the metadata included in the document file for the electronic document is read to check the plurality of identification tags. An identification tag confirmation unit, a management table creation unit for generating a management table for recording content data included in the electronic document when the plurality of identification tags are confirmed, and a document file for the electronic document when the management table is generated. A first information recording processing unit that extracts text data for the plurality of paragraphs from the document data included in and records text data for each paragraph and identification tags corresponding to each paragraph in correspondence with each other in the management table; A second information recording processor extracting entity data for the plurality of entities from the document data and then recording entity data for each entity and identification tags corresponding to each entity in correspondence with each other in the management table, the document data A third information recording processing unit that extracts table data for the plurality of tables from the table and then records the table data for each table and the identification tag corresponding to each table in correspondence with each other in the management table, and the electronic document in the management table. When the recording of the content data included in the electronic document is completed, the document file for the electronic document is applied as an input to a preset hash function to generate a first hash value, and then the first hash value and the management table are stored in the document database. It includes an information storage processing unit that stores the information in correspondence with each other.
또한, 본 발명의 일실시예에 따른 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 전자 문서 관리 서버의 동작 방법은 사용자 단말로부터 전자 문서에 대한 문서 파일 - 상기 전자 문서에 대한 문서 파일은 상기 전자 문서에 대한 문서 데이터와, 상기 전자 문서에 포함된 복수의 문단들, 복수의 개체들 및 복수의 표들 각각을 식별하기 위한 사전 설정된 서로 다른 복수의 식별 태그들이 기록된 메타데이터로 구성됨 - 이 수신되면서, 상기 사용자 단말로부터 상기 전자 문서에 대한 데이터베이스화 요청 명령이 수신되면, 상기 전자 문서에 대한 문서 파일에 포함된 상기 메타데이터를 리드하여 상기 복수의 식별 태그들을 확인하는 단계, 상기 복수의 식별 태그들이 확인되면, 상기 전자 문서에 포함된 콘텐츠 데이터를 기록하기 위한 관리 테이블을 생성하는 단계, 상기 관리 테이블이 생성되면, 상기 전자 문서에 대한 문서 파일에 포함된 상기 문서 데이터로부터 상기 복수의 문단들에 대한 텍스트 데이터를 추출한 후, 각 문단에 대한 텍스트 데이터와 각 문단에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록하는 단계, 상기 문서 데이터로부터 상기 복수의 개체들에 대한 개체 데이터를 추출한 후, 각 개체에 대한 개체 데이터와 각 개체에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록하는 단계, 상기 문서 데이터로부터 상기 복수의 표들에 대한 표 데이터를 추출한 후, 각 표에 대한 표 데이터와 각 표에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록하는 단계 및 상기 관리 테이블에 상기 전자 문서에 포함된 콘텐츠 데이터에 대한 기록이 완료되면, 상기 전자 문서에 대한 문서 파일을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성한 후, 문서 데이터베이스에 상기 제1 해시 값과 상기 관리 테이블을 서로 대응시켜 저장하는 단계를 포함한다.In addition, a method of operating an electronic document management server that performs database processing on an electronic document based on an identification tag according to an embodiment of the present invention includes a document file for the electronic document from a user terminal - a document file for the electronic document. consists of document data for the electronic document and metadata in which a plurality of different preset identification tags are recorded to identify each of a plurality of paragraphs, a plurality of objects, and a plurality of tables included in the electronic document - When receiving a database request command for the electronic document from the user terminal, reading the metadata included in a document file for the electronic document to check the plurality of identification tags, the plurality of identification tags When identification tags are confirmed, creating a management table for recording content data included in the electronic document, once the management table is created, selecting the plurality of paragraphs from the document data included in the document file for the electronic document. After extracting text data for each paragraph, recording text data for each paragraph and identification tags corresponding to each paragraph in correspondence with each other in the management table, extracting entity data for the plurality of entities from the document data. After, recording entity data for each entity and identification tags corresponding to each entity in correspondence with each other in the management table, extracting table data for the plurality of tables from the document data, and then extracting table data for each table. and recording identification tags corresponding to each table in correspondence with each other in the management table, and when recording of content data included in the electronic document in the management table is completed, storing the document file for the electronic document in a preset hash It includes generating a first hash value by applying it as an input to the function, and then storing the first hash value and the management table in correspondence with each other in a document database.
본 발명은 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 전자 문서 관리 서버 및 그 동작 방법을 제시함으로써, 식별 태그를 이용하여 전자 문서에 포함된 콘텐츠 데이터에 대한 효율적 기록 및 제공이 가능하도록 지원할 수 있다.The present invention proposes an electronic document management server that performs database processing for electronic documents based on identification tags and an operating method thereof, thereby enabling efficient recording and provision of content data included in electronic documents using identification tags. We can support you to do so.
도 1은 본 발명의 일실시예에 따른 전자 문서 관리 서버의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 전자 문서 관리 서버의 동작 방법을 도시한 순서도이다.1 is a diagram showing the structure of an electronic document management server according to an embodiment of the present invention.
Figure 2 is a flowchart showing a method of operating an electronic document management server according to an embodiment of the present invention.
이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.Hereinafter, embodiments according to the present invention will be described in detail with reference to the attached drawings. This description is not intended to limit the present invention to specific embodiments, but should be understood to include all changes, equivalents, and substitutes included in the spirit and technical scope of the present invention. In describing each drawing, similar reference numerals are used for similar components, and unless otherwise defined, all terms used in this specification, including technical or scientific terms, are within the scope of common knowledge in the technical field to which the present invention pertains. It has the same meaning as generally understood by those who have it.
본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다. In this document, when a part "includes" a certain component, this means that it may further include other components rather than excluding other components, unless specifically stated to the contrary. Additionally, in various embodiments of the present invention, each component, functional block, or means may be composed of one or more subcomponents, and the electrical, electronic, and mechanical functions performed by each component may be electronic. It may be implemented with various known elements or mechanical elements such as circuits, integrated circuits, and ASICs (Application Specific Integrated Circuits), and may be implemented separately or by integrating two or more into one.
한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.Meanwhile, the blocks in the attached block diagram or the steps in the flow chart are computer program instructions that are mounted on the processor or memory of equipment capable of data processing, such as general-purpose computers, special-purpose computers, portable laptop computers, and network computers, and perform designated functions. It can be interpreted to mean. Because these computer program instructions can be stored in a memory provided in a computer device or in a computer-readable memory, the functions described in the blocks of a block diagram or the steps of a flow diagram can be produced as a manufactured product containing instruction means to perform them. It could be. In addition, each block or each step may represent a module, segment, or portion of code that includes one or more executable instructions for executing specified logical function(s). Additionally, it should be noted that in some alternative embodiments, it is possible for functions mentioned in blocks or steps to be executed in a different order. For example, two blocks or steps shown in succession may be performed substantially simultaneously or in reverse order, and in some cases, some blocks or steps may be omitted.
도 1은 본 발명의 일실시예에 따른 전자 문서 관리 서버의 구조를 도시한 도면이다.1 is a diagram showing the structure of an electronic document management server according to an embodiment of the present invention.
본 발명에 따른 전자 문서 관리 서버(110)는 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 서버로, 식별 태그 확인부(111), 관리 테이블 생성부(112), 제1 정보 기록 처리부(113), 제2 정보 기록 처리부(114), 제3 정보 기록 처리부(115) 및 정보 저장 처리부(116)를 포함한다.The electronic
식별 태그 확인부(111)는 사용자 단말(140)로부터 전자 문서에 대한 문서 파일이 수신되면서, 사용자 단말(140)로부터 상기 전자 문서에 대한 데이터베이스화 요청 명령이 수신되면, 상기 전자 문서에 대한 문서 파일에 포함된 메타데이터를 리드(Read)하여 복수의 식별 태그들을 확인한다.When a document file for an electronic document is received from the
여기서, 상기 전자 문서에 대한 문서 파일은 상기 전자 문서에 대한 문서 데이터와, 상기 전자 문서에 포함된 복수의 문단들, 복수의 개체들(여기서, 개체란 전자 문서에 삽입될 수 있는 도형, 이미지 등과 같은 아이템을 의미함) 및 복수의 표들 각각을 식별하기 위한 사전 설정된 서로 다른 복수의 식별 태그(Identification Tag)들이 기록된 메타데이터(Metadata)로 구성된다.Here, the document file for the electronic document includes document data for the electronic document, a plurality of paragraphs included in the electronic document, and a plurality of objects (here, the object refers to a shape, image, etc. that can be inserted into the electronic document). It is composed of metadata in which a plurality of different preset identification tags (meaning the same item) are recorded to identify each of the plurality of tables.
관리 테이블 생성부(112)는 상기 복수의 식별 태그들이 확인되면, 상기 전자 문서에 포함된 콘텐츠 데이터를 기록하기 위한 관리 테이블을 생성한다.When the plurality of identification tags are confirmed, the
제1 정보 기록 처리부(113)는 상기 관리 테이블이 생성되면, 상기 전자 문서에 대한 문서 파일에 포함된 상기 문서 데이터로부터 상기 복수의 문단들에 대한 텍스트 데이터를 추출한 후, 각 문단에 대한 텍스트 데이터와 각 문단에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록한다.When the management table is created, the first information
제2 정보 기록 처리부(114)는 상기 문서 데이터로부터 상기 복수의 개체들에 대한 개체 데이터를 추출한 후, 각 개체에 대한 개체 데이터와 각 개체에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록한다.The second information
제3 정보 기록 처리부(115)는 상기 문서 데이터로부터 상기 복수의 표들에 대한 표 데이터를 추출한 후, 각 표에 대한 표 데이터와 각 표에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록한다.The third information
정보 저장 처리부(116)는 상기 관리 테이블에 상기 전자 문서에 포함된 콘텐츠 데이터에 대한 기록이 완료되면, 상기 전자 문서에 대한 문서 파일을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성한 후, 문서 데이터베이스(미도시)에 상기 제1 해시 값과 상기 관리 테이블을 서로 대응시켜 저장한다.When the information
관련해서, 식별 태그 확인부(111), 관리 테이블 생성부(112), 제1 정보 기록 처리부(113), 제2 정보 기록 처리부(114), 제3 정보 기록 처리부(115) 및 정보 저장 처리부(116)의 동작을 예를 들어 상세히 설명하기로 한다.In relation to this, the identification
먼저, 사용자 단말(140)로부터 전자 문서 관리 서버(110)에 전자 문서에 대한 문서 파일이 수신되면서, 사용자 단말(140)로부터 전자 문서 관리 서버(110)에 상기 전자 문서에 대한 데이터베이스화 요청 명령이 수신되면, 식별 태그 확인부(111)는 상기 전자 문서에 대한 문서 파일에 포함된 메타데이터를 리드하여 복수의 식별 태그들을 확인할 수 있다.First, when a document file for an electronic document is received from the
관련해서, 상기 전자 문서에 '문단 1, 문단 2, 문단 3'이라고 하는 복수의 문단들과, '개체 1, 개체 2'라고 하는 복수의 개체들 및 '표 1, 표 2'라고 하는 복수의 표들이 포함되어 있다고 하는 경우, 상기 전자 문서에 대한 문서 파일에는 상기 전자 문서가 소정의 전자 단말 장치에서 표시되도록 하기 위한 문서 데이터와, 상기 전자 문서에 포함되어 있는 상기 복수의 문단들, 상기 복수의 개체들, 상기 복수의 표들 각각에 대응되는 식별 태그가 기록된 메타데이터가 포함되어 있을 수 있다.In relation to this, the electronic document includes a plurality of paragraphs referred to as 'Paragraph 1, Paragraph 2, and Paragraph 3', a plurality of entities referred to as 'Entity 1, Entity 2', and a plurality of entities referred to as 'Table 1, Table 2'. In the case where tables are included, the document file for the electronic document includes document data for displaying the electronic document on a predetermined electronic terminal device, the plurality of paragraphs included in the electronic document, and the plurality of Metadata in which identification tags corresponding to each of the entities and the plurality of tables are recorded may be included.
이때, 상기 전자 문서에 포함되어 있는 상기 복수의 문단들, 상기 복수의 개체들 상기 복수의 표들 각각에 대응되는 식별 태그를 '식별 태그 1, 식별 태그 2, 식별 태그 3, 식별 태그 4, 식별 태그 5, 식별 태그 6, 식별 태그 7'이라고 하는 경우, 상기 메타데이터에는 '식별 태그 1, 식별 태그 2, 식별 태그 3, 식별 태그 4, 식별 태그 5, 식별 태그 6, 식별 태그 7'이 기록되어 있을 수 있다.At this time, the identification tags corresponding to each of the plurality of paragraphs, the plurality of entities, and the plurality of tables included in the electronic document are designated as 'identification tag 1, identification tag 2, identification tag 3, identification tag 4, and identification tag. In the case of '5, identification tag 6, identification tag 7', 'identification tag 1, identification tag 2, identification tag 3, identification tag 4, identification tag 5, identification tag 6, identification tag 7' are recorded in the metadata. There may be.
이 경우, 식별 태그 확인부(111)는 상기 전자 문서에 대한 문서 파일에 포함된 상기 메타데이터를 리드하여 상기 복수의 식별 태그들인 '식별 태그 1, 식별 태그 2, 식별 태그 3, 식별 태그 4, 식별 태그 5, 식별 태그 6, 식별 태그 7'을 확인할 수 있다.In this case, the identification
이렇게, 식별 태그 확인부(111)에 의해 상기 복수의 식별 태그들이 확인되면, 관리 테이블 생성부(112)는 상기 전자 문서에 포함된 콘텐츠 데이터를 기록하기 위한 관리 테이블을 생성할 수 있다.In this way, when the plurality of identification tags are confirmed by the identification
이렇게, 관리 테이블 생성부(112)에 의해 상기 관리 테이블이 생성되면, 제1 정보 기록 처리부(113)는 상기 전자 문서에 대한 문서 파일에 포함된 상기 문서 데이터로부터 상기 복수의 문단들인 '문단 1, 문단 2, 문단 3'에 대한 텍스트 데이터를 추출할 수 있다.In this way, when the management table is created by the management
만약, 제1 정보 기록 처리부(113)에 의해 상기 전자 문서에 대한 문서 파일에 포함된 상기 문서 데이터로부터 상기 복수의 문단들인 '문단 1, 문단 2, 문단 3'에 대한 텍스트 데이터가 '텍스트 데이터 1, 텍스트 데이터 2, 텍스트 데이터 3'과 같이 추출되었다고 하는 경우, 제1 정보 기록 처리부(113)는 각 문단에 대한 텍스트 데이터인 '텍스트 데이터 1, 텍스트 데이터 2, 텍스트 데이터 3'과 각 문단에 대응되는 식별 태그인 '식별 태그 1, 식별 태그 2, 식별 태그 3'을 상기 관리 테이블에 서로 대응시켜 하기의 표 1과 같이 기록할 수 있다.If the text data for the plurality of paragraphs 'paragraph 1, paragraph 2, and paragraph 3' from the document data included in the document file for the electronic document by the first information
그러고 나서, 제2 정보 기록 처리부(114)는 상기 문서 데이터로부터 상기 복수의 개체들인 '개체 1, 개체 2'에 대한 개체 데이터를 추출할 수 있다.Then, the second information recording
만약, 제2 정보 기록 처리부(114)에 의해 상기 문서 데이터로부터 상기 복수의 개체들인 '개체 1, 개체 2'에 대한 개체 데이터가 '개체 데이터 1, 개체 데이터 2'와 같이 추출되었다고 하는 경우, 제2 정보 기록 처리부(114)는 각 개체에 대한 개체 데이터인 '개체 데이터 1, 개체 데이터 2'와 각 개체에 대응되는 식별 태그인 '식별 태그 4, 식별 태그 5'를 상기 표 1과 같은 관리 테이블에 서로 대응시켜 하기의 표 2와 같이 기록할 수 있다.If it is said that entity data for the plurality of entities, 'object 1, entity 2', is extracted from the document data by the second information recording
그러고 나서, 제3 정보 기록 처리부(115)는 상기 문서 데이터로부터 상기 복수의 표들인 '표 1, 표 2'에 대한 표 데이터를 추출할 수 있다.Then, the third information
만약, 제3 정보 기록 처리부(115)에 의해 상기 문서 데이터로부터 상기 복수의 표들인 '표 1, 표 2'에 대한 표 데이터가 '표 데이터 1, 표 데이터 2'와 같이 추출되었다고 하는 경우, 제3 정보 기록 처리부(115)는 각 표에 대한 표 데이터인 '표 데이터 1, 표 데이터 2'와 각 표에 대응되는 식별 태그인 '식별 태그 6, 식별 태그 7'을 상기 표 2와 같은 관리 테이블에 서로 대응시켜 하기의 표 3과 같이 기록할 수 있다.If table data for the plurality of tables 'Table 1, Table 2' is extracted from the document data by the third information
이렇게, 상기 표 3과 같이 관리 테이블에 상기 전자 문서에 포함된 콘텐츠 데이터에 대한 기록이 완료되면, 정보 저장 처리부(116)는 상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가함으로써, '16d103c620a31345ag57qat327891700'과 같은 제1 해시 값을 생성할 수 있다.In this way, when the recording of the content data included in the electronic document is completed in the management table as shown in Table 3, the information
그 이후, 정보 저장 처리부(116)는 문서 데이터베이스에 상기 제1 해시 값인 '16d103c620a31345ag57qat327891700'과 상기 표 3과 같은 관리 테이블을 서로 대응시켜 하기의 표 4와 같이 저장할 수 있다.Afterwards, the information
이때, 본 발명의 일실시예에 따르면, 정보 저장 처리부(116)는 테이블 유지부(117), 랜덤 번호 생성부(118), 암호화키 생성 함수 추출부(119), 해시 값 생성부(120), 관리 테이블 암호화부(121), 저장 처리부(122) 및 정보 전송부(123)를 포함할 수 있다.At this time, according to an embodiment of the present invention, the information
테이블 유지부(117)는 사전 설정된 t(t는 2이상의 자연수)개의 암호화키 생성 함수들과 각 암호화키 생성 함수에 대응되는 0 이상 t-1 이하의 서로 다른 정수가 대응되어 기록되어 있는 암호화키 생성 함수 테이블을 저장하여 유지한다.The
여기서, 상기 암호화키 생성 함수는 소정의 값이 입력으로 인가되면, 이를 기초로 암호화키를 생성할 수 있는 함수로서, 개발자에 의해 사전 설정될 수 있는 함수이다.Here, the encryption key generation function is a function that can generate an encryption key based on a predetermined value when a predetermined value is input, and is a function that can be preset by the developer.
관련해서, t를 '5'라고 가정하는 경우, 테이블 유지부(117)는 하기의 표 5와 같이 암호화키 생성 함수 테이블을 저장하여 유지하고 있을 수 있다.In relation to this, when t is assumed to be '5', the
랜덤 번호 생성부(118)는 상기 관리 테이블에 상기 전자 문서에 포함된 콘텐츠 데이터에 대한 기록이 완료되면, k(k는 자연수) 자릿수의 자연수로 구성된 랜덤 번호를 생성한다.When the recording of content data included in the electronic document in the management table is completed, the
암호화키 생성 함수 추출부(119)는 상기 랜덤 번호가 생성되면, 상기 랜덤 번호를 피제수로, 상기 t를 제수로 하는 모듈로(Modulo) 연산을 수행함으로써, 연산 값을 산출하고, 상기 암호화키 생성 함수 테이블로부터 상기 연산 값에 대응되는 제1 암호화키 생성 함수를 추출한다.When the random number is generated, the encryption key
여기서, 모듈로 연산은 피제수를 제수로 나누는 나눗셈을 수행하여 그에 대한 나머지(remainder)를 산출하는 연산을 의미한다.Here, the modulo operation refers to an operation that performs division by dividing the dividend by the divisor and calculates the remainder.
해시 값 생성부(120)는 상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한다.The
관리 테이블 암호화부(121)는 상기 제1 해시 값을 상기 제1 암호화키 생성 함수에 입력으로 인가하여 제1 암호화키를 생성한 후 상기 관리 테이블을 상기 제1 암호화키로 암호화한다.The management
저장 처리부(122)는 상기 관리 테이블이 암호화되면, 상기 문서 데이터베이스에 상기 제1 해시 값과 암호화된 상기 관리 테이블을 서로 대응시켜 저장한다.When the management table is encrypted, the
정보 전송부(123)는 상기 문서 데이터베이스에 상기 제1 해시 값과 암호화된 상기 관리 테이블이 서로 대응되어 저장되면, 사용자 단말(140)로 상기 랜덤 번호를 전송하면서, 사용자 단말(140)로 상기 랜덤 번호가 암호화된 상기 관리 테이블의 복호화를 위한 보안 코드임을 지시하는 안내 메시지를 전송한다.When the first hash value and the encrypted management table are stored in correspondence with each other in the document database, the
관련해서, 랜덤 번호 생성부(118), 암호화키 생성 함수 추출부(119), 해시 값 생성부(120), 관리 테이블 암호화부(121), 저장 처리부(122) 및 정보 전송부(123)의 동작을 예를 들어 상세히 설명하기로 한다.In relation to this, the
먼저, k를 '4'라고 하고, 상기 t를 '5'라고 가정하자. 이때, 상기 표 3과 같이 관리 테이블에 상기 전자 문서에 포함된 콘텐츠 데이터에 대한 기록이 완료되면, 랜덤 번호 생성부(118)는 4 자릿수의 자연수로 구성된 랜덤 번호인 '1600'을 랜덤하게 생성할 수 있다.First, let us assume that k is '4' and t is '5'. At this time, when the recording of the content data included in the electronic document is completed in the management table as shown in Table 3, the
이렇게, 랜덤 번호 생성부(118)에 의해 상기 랜덤 번호가 생성되면, 암호화키 생성 함수 추출부(119)는 상기 랜덤 번호인 '1600'을 피제수로, 상기 5를 제수로 하는 모듈로 연산을 수행함으로써, 연산 값 '0'을 산출할 수 있고, 상기 표 5와 같은 암호화키 생성 함수 테이블로부터 상기 연산 값인 '0'에 대응되는 제1 암호화키 생성 함수로 '암호화키 생성 함수 1'을 추출할 수 있다.In this way, when the random number is generated by the
그러고 나서, 해시 값 생성부(120)는 상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가함으로써, '16d103c620a31345ag57qat327891700'과 같은 상기 제1 해시 값을 생성할 수 있다.Then, the
그 이후, 관리 테이블 암호화부(121)는 상기 제1 해시 값인 '16d103c620a31345ag57qat327891700'을 상기 제1 암호화키 생성 함수인 '암호화키 생성 함수 1'에 입력으로 인가하여 제1 암호화키를 생성한 후 상기 표 3과 같은 관리 테이블을 상기 제1 암호화키로 암호화할 수 있다.Afterwards, the management
이렇게, 관리 테이블 암호화부(121)에 의해 상기 표 3과 같은 관리 테이블이 암호화되면, 저장 처리부(122)는 상기 문서 데이터베이스에 상기 제1 해시 값인 '16d103c620a31345ag57qat327891700'과 암호화된 상기 표 3과 같은 관리 테이블을 서로 대응시켜 저장할 수 있다.In this way, when the management table as shown in Table 3 is encrypted by the management
이렇게, 저장 처리부(122)에 의해 상기 문서 데이터베이스에 상기 제1 해시 값인 '16d103c620a31345ag57qat327891700'과 암호화된 상기 표 3과 같은 관리 테이블이 서로 대응되어 저장되면, 정보 전송부(123)는 사용자 단말(140)로 상기 랜덤 번호인 '1600'을 전송하면서, 사용자 단말(140)로 상기 랜덤 번호인 '1600'이 암호화된 상기 표 3과 같은 관리 테이블의 복호화를 위한 보안 코드임을 지시하는 안내 메시지를 전송할 수 있다.In this way, when the first hash value '16d103c620a31345ag57qat327891700' and the encrypted management table shown in Table 3 are stored in correspondence with each other in the document database by the
본 발명의 일실시예에 따르면, 전자 문서 관리 서버(110)는 보안 코드 요청부(124), 관리 테이블 추출부(125), 함수 추출부(126), 관리 테이블 복호화부(127) 및 콘텐츠 데이터 전송부(128)를 더 포함할 수 있다.According to one embodiment of the present invention, the electronic
보안 코드 요청부(124)는 상기 문서 데이터베이스에 상기 제1 해시 값과 암호화된 상기 관리 테이블이 함께 대응되어 저장된 이후, 사용자 단말(140)로부터 상기 전자 문서에 대한 문서 파일과 제1 식별 태그가 수신되면서, 사용자 단말(140)로부터 상기 제1 식별 태그에 대응되는 콘텐츠 데이터에 대한 검색 요청이 수신되면, 사용자 단말(140)로 보안 코드의 전송을 요청한다.The security
관리 테이블 추출부(125)는 사용자 단말(140)로부터 보안 코드로 상기 랜덤 번호가 수신되면, 사용자 단말(140)로부터 수신된 상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 문서 데이터베이스로부터 상기 제1 해시 값에 대응되어 저장되어 있는 암호화된 상기 관리 테이블을 추출한다.When the random number is received as a security code from the
함수 추출부(126)는 암호화된 상기 관리 테이블이 추출되면, 사용자 단말(140)로부터 수신된 상기 랜덤 번호를 피제수로, 상기 t를 제수로 하는 모듈로 연산을 수행함으로써, 상기 연산 값을 산출하고, 상기 암호화키 생성 함수 테이블로부터 상기 연산 값에 대응되는 상기 제1 암호화키 생성 함수를 추출한다.When the encrypted management table is extracted, the
관리 테이블 복호화부(127)는 상기 제1 해시 값을 상기 제1 암호화키 생성 함수에 입력으로 인가하여 상기 제1 암호화키를 생성한 후 암호화된 상기 관리 테이블을 상기 제1 암호화키로 복호화한다.The management
콘텐츠 데이터 전송부(128)는 암호화된 상기 관리 테이블이 복호화되면, 복호화된 상기 관리 테이블로부터 상기 제1 식별 태그에 대응되어 기록되어 있는 제1 콘텐츠 테이터를 추출한 후, 사용자 단말(140)로 상기 제1 콘텐츠 데이터를 전송한다.When the encrypted management table is decrypted, the content
예컨대, 전술한 예와 같이, 저장 처리부(122)에 의해 상기 문서 데이터베이스에 상기 제1 해시 값인 '16d103c620a31345ag57qat327891700'과 암호화된 상기 표 3과 같은 관리 테이블이 함께 대응되어 저장되었다고 하고, 제1 식별 태그를 '식별 태그 1'이라고 가정하자.For example, as in the above-mentioned example, it is assumed that the first hash value '16d103c620a31345ag57qat327891700' and the encrypted management table shown in Table 3 are stored in the document database by the
이때, 사용자 단말(140)로부터 전자 문서 관리 서버(110)에 상기 전자 문서에 대한 문서 파일과 제1 식별 태그인 '식별 태그 1'이 수신되면서, 사용자 단말(140)로부터 전자 문서 관리 서버(110)에 상기 제1 식별 태그인 '식별 태그 1'에 대응되는 콘텐츠 데이터에 대한 검색 요청이 수신되면, 보안 코드 요청부(124)는 사용자 단말(140)로 보안 코드의 전송을 요청할 수 있다.At this time, as the document file for the electronic document and the first identification tag, 'identification tag 1', are received from the
이때, 사용자는 전자 문서 관리 서버(110)로부터 사용자 단말(140)에 보안 코드의 전송이 요청되면, 사용자 단말(140)에 보안 코드를 입력할 수 있다. 만약, 보안 코드로 상기 랜덤 번호인 '1600'이 입력되는 경우, 사용자 단말(140)은 전자 문서 관리 서버(110)로 상기 랜덤 번호인 '1600'을 전송할 수 있다.At this time, when transmission of a security code is requested from the electronic
이때, 사용자 단말(140)로부터 전자 문서 관리 서버(110)에 보안 코드로 상기 랜덤 번호인 '1600'이 수신되면, 관리 테이블 추출부(125)는 사용자 단말(140)로부터 수신된 상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가함으로써, '16d103c620a31345ag57qat327891700'과 같은 상기 제1 해시 값을 생성할 수 있다.At this time, when the random number '1600' is received as a security code from the
그 이후, 관리 테이블 추출부(125)는 상기 문서 데이터베이스로부터 상기 제1 해시 값인 '16d103c620a31345ag57qat327891700'에 대응되어 저장되어 있는 암호화된 상기 표 3과 같은 관리 테이블을 추출할 수 있다.Afterwards, the
이렇게, 관리 테이블 추출부(125)에 의해 암호화된 상기 표 3과 같은 관리 테이블이 추출되면, 함수 추출부(126)는 사용자 단말(140)로부터 수신된 상기 랜덤 번호인 '1600'를 피제수로, 상기 5를 제수로 하는 모듈로 연산을 수행함으로써, 상기 연산 값 '0'을 산출할 수 있고, 상기 표 5와 같은 암호화키 생성 함수 테이블로부터 상기 연산 값인 '0'에 대응되는 상기 제1 암호화키 생성 함수로 '암호화키 생성 함수 1'을 추출할 수 있다.In this way, when the management table as shown in Table 3 encrypted by the
그러고 나서, 관리 테이블 복호화부(127)는 상기 제1 해시 값인 '16d103c620a31345ag57qat327891700'을 상기 제1 암호화키 생성 함수인 '암호화키 생성 함수 1'에 입력으로 인가하여 상기 제1 암호화키를 생성한 후 암호화된 상기 표 3과 같은 관리 테이블을 상기 제1 암호화키로 복호화할 수 있다.Then, the management
이렇게, 관리 테이블 복호화부(127)에 의해 암호화된 상기 표 3과 같은 관리 테이블이 복호화되면, 콘텐츠 데이터 전송부(128)는 복호화된 상기 표 3과 같은 관리 테이블로부터 상기 제1 식별 태그인 '식별 태그 1'에 대응되어 기록되어 있는 제1 콘텐츠 테이터로 '문단 1'에 대한 '텍스트 데이터 1'을 추출한 후, 사용자 단말(140)로 상기 제1 콘텐츠 데이터인 '문단 1'에 대한 '텍스트 데이터 1'을 전송할 수 있다.In this way, when the management table shown in Table 3 encrypted by the management
이때, 사용자 단말(140)은 전자 문서 관리 서버(110)로부터 상기 제1 콘텐츠 데이터로 '문단 1'에 대한 '텍스트 데이터 1'이 수신되면, '문단 1'에 대한 '텍스트 데이터 1'을 리드하여, 사용자 단말(140)의 화면 상에 '문단 1'에 대한 콘텐츠를 표시할 수 있다.At this time, when 'text data 1' for 'paragraph 1' is received as the first content data from the electronic
만약, 전자 문서 관리 서버(110)로부터 사용자 단말(140)에 콘텐츠 데이터로 '개체'에 대한 '개체 데이터'가 수신되었다고 가정하는 경우, 사용자 단말(140)은 '개체'에 대한 '개체 데이터'를 리드하여, 사용자 단말(140)의 화면 상에 '개체'에 대한 콘텐츠를 표시할 수 있다.If it is assumed that 'object data' for the 'object' is received from the electronic
또한, 전자 문서 관리 서버(110)로부터 사용자 단말(140)에 콘텐츠 데이터로 '표'에 대한 '표 데이터'가 수신되었다고 가정하는 경우, 사용자 단말(140)은 '표'에 대한 '표 데이터'를 리드하여, 사용자 단말(140)의 화면 상에 '표'에 대한 콘텐츠를 표시할 수 있다.In addition, assuming that 'table data' for 'table' is received from the electronic
본 발명의 일실시예에 따르면, 전자 문서 관리 서버(110)는 주요 키워드 추출부(129) 및 주요 키워드 저장부(130)를 더 포함할 수 있다.According to one embodiment of the present invention, the electronic
주요 키워드 추출부(129)는 상기 문서 데이터베이스에 상기 제1 해시 값과 상기 관리 테이블이 서로 대응되어 저장되면, 상기 전자 문서로부터 사전 설정된 제1 개수의 주요 키워드들을 추출한다.The main
이때, 주요 키워드 추출부(129)는 단어 추출부(131), 빈도수 확인부(132), 후보 키워드 선택부(133), 평균 글자 크기 값 산출부(134), 횟수 카운트부(135), 단어 벡터 생성부(136) 및 키워드 추출부(137)를 포함할 수 있다.At this time, the main
단어 추출부(131)는 상기 전자 문서 내에 삽입되어 있는 복수의 단어들을 추출한다.The
빈도수 확인부(132)는 상기 복수의 단어들 각각의 상기 전자 문서 내에서의 등장 빈도수를 확인한다.The
예컨대, 상기 전자 문서에서 '특허', 상표', '디자인', '지식재산권', '출원', '등록' 등과 같은 단어가 추출되었다고 하는 경우, 빈도수 확인부(132)는 '특허', 상표', '디자인', '지식재산권', '출원', '등록' 각각의 상기 전자 문서 내에서의 등장 빈도수를 확인할 수 있다.For example, if words such as 'patent', trademark', 'design', 'intellectual property rights', 'application', 'registration', etc. are extracted from the electronic document, the
후보 키워드 선택부(133)는 상기 복수의 단어들 중 상기 등장 빈도수가 큰 순서대로 사전 설정된 제2 개수의 단어들을 후보 키워드로 선택한다.The candidate
예컨대, 상기 제2 개수를 '10개'라고 하는 경우, 후보 키워드 선택부(133)는 상기 복수의 단어들 중 전자 문서에서의 등장 빈도수가 큰 순서대로 '10개'의 단어들을 후보 키워드로 선택할 수 있다.For example, when the second number is '10', the candidate
평균 글자 크기 값 산출부(134)는 상기 후보 키워드로 선택된 상기 제2 개수의 단어들 각각의 상기 전자 문서 내에서의 평균 글자 크기 값을 산출한다.The average font
예컨대, 상기 후보 키워드 중 '특허'라는 단어가 포함되어 있다고 하는 경우, 평균 글자 크기 값 산출부(134)는 '특허'라는 단어의 상기 전자 문서 내에서의 평균 글자 크기 값을 산출할 수 있다. 관련해서, '특허'라는 단어가 상기 전자 문서에서 총 100회 등장하는데, 그중 50회는 '11pt'의 글자 크기를 갖고, 30회는 '14pt'의 글자 크기를 가지며, 20회는 '20pt'의 글자 크기를 갖는다고 하는 경우, 평균 글자 크기 값 산출부(134)는 '특허'라는 단어의 상기 전자 문서 내에서의 평균 글자 크기 값으로 '13.7pt'를 산출할 수 있다.For example, if the candidate keywords include the word 'patent', the average font
횟수 카운트부(135)는 상기 제2 개수의 단어들 각각의 평균 글자 크기 값 중 중앙값(Median)을 확인한 후 상기 전자 문서 내에서 상기 제2 개수의 단어들 각각이 상기 중앙값 이상의 글자 크기 값으로 등장하는 횟수를 카운트한다.The
예컨대, 상기 제2 개수의 단어들이 총 '10개'의 단어들이라고 하고, '10개'의 단어들 각각의 평균 글자 크기 값 중 중앙값이 '12pt'라고 하는 경우, 횟수 카운트부(135)는 상기 전자 문서 내에서 '10개'의 단어들 각각이 '12pt' 이상의 글자 크기 값으로 등장하는 횟수를 카운트한다. 관련해서, '10개'의 단어들 중 '특허'라는 단어에 대해서는 상기 전자 문서 내에서 총 '50회'가 '12pt' 이상의 글자 크기 값으로 등장하는 경우, 횟수 카운트부(135)는 '특허'라는 단어에 대해서 '50회'를 카운트할 수 있다.For example, if the second number of words are a total of '10' words and the median value among the average font size values of each of the '10' words is '12pt', the
단어 벡터 생성부(136)는 상기 제2 개수의 단어들 각각에 대해, 각 단어의 평균 글자 크기 값과 각 단어에 대해서 카운트된 상기 중앙값 이상의 글자 크기 값으로 등장하는 횟수를 성분으로 갖는 2차원의 벡터를 구성함으로써, 상기 제2 개수의 단어들 각각에 대응되는 단어 벡터를 생성한다.The
예컨대, 상기 제2 개수의 단어들 중 '특허'라는 단어가 있고, '특허'에 대한 평균 글자 크기 값이 '13.7pt', 중앙값 이상의 글자 크기 값으로 등장하는 횟수가 '50회'라고 하는 경우, 단어 벡터 생성부(136)는 '특허'라는 단어에 대해 '[13.7 50]'이라고 하는 단어 벡터를 생성할 수 있다. 이러한 방식으로, 단어 벡터 생성부(136)는 상기 제2 개수의 단어들 각각에 대해 단어 벡터를 생성할 수 있다.For example, if there is a word 'patent' among the second number of words, the average font size value for 'patent' is '13.7pt', and the number of times it appears with a font size value greater than the median is '50 times'. , the
키워드 추출부(137)는 상기 제2 개수의 단어들 중 상기 제2 개수의 단어들 각각에 대응되는 단어 벡터의 맨해튼 노름(Manhattan Norm)이 큰 순서대로 상기 제1 개수만큼의 단어들을 상기 주요 키워드들로 추출한다.The
여기서, 맨해튼 노름이란 벡터나 행렬의 크기를 나타내는 L1 노름으로, 하기의 수학식 1에 따라 연산될 수 있다.Here, the Manhattan norm is the L1 norm representing the size of a vector or matrix, and can be calculated according to Equation 1 below.
상기 수학식 1에서 은 맨해튼 노름을 의미하고, xi는 벡터나 행렬에 포함되어 있는 i번째 성분을 의미한다.In Equation 1 above, means the Manhattan norm, and x i means the ith component included in the vector or matrix.
본 발명에서 특정 단어의 맨해튼 노름이 크다는 의미는 해당 단어의 평균 글자 크기 값과 전자 문서 내에서 상기 중앙값 이상의 글자 크기로 등장하는 횟수가 많다라는 의미이기 때문에, 상기 단어는 상기 전자 문서 내에서 다른 단어들에 비해 더 중요한 의미를 담고 있는 단어라고 볼 수 있다.In the present invention, a large Manhattan norm of a specific word means that the average font size value of the word and the number of times it appears with a font size greater than the median value in the electronic document are high, so the word is a word that is similar to other words in the electronic document. It can be seen as a word that contains more important meaning than others.
따라서, 키워드 추출부(137)는 상기 제2 개수의 단어들 중 맨해튼 노름이 큰 순서대로 상기 제1 개수만큼의 단어들을 상기 주요 키워드들로 추출할 수 있다.Accordingly, the
이렇게, 주요 키워드 추출부(129)에 의해 상기 주요 키워드들이 추출되면, 주요 키워드 저장부(130)는 상기 문서 데이터베이스 상에서 상기 제1 해시 값에 대해, 상기 주요 키워드들을 추가로 대응시켜 저장할 수 있다.In this way, when the main keywords are extracted by the main
본 발명의 일실시예에 따르면, 전자 문서 관리 서버(110)는 주요 키워드 전송부(138)를 더 포함할 수 있다.According to one embodiment of the present invention, the electronic
주요 키워드 전송부(138)는 상기 문서 데이터베이스 상에서 상기 제1 해시 값에 대해 상기 주요 키워드들이 추가로 대응되어 저장된 이후, 사용자 단말(140)로부터 상기 전자 문서에 대한 문서 파일이 수신되면서, 사용자 단말(140)로부터 주요 키워드 정보에 대한 제공 요청이 수신되면, 사용자 단말(140)로부터 수신된 상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 문서 데이터베이스로부터 상기 제1 해시 값에 대응되어 저장되어 있는 상기 주요 키워드들을 추출한 후 사용자 단말(140)로 상기 주요 키워드들을 전송한다.After the main keywords are additionally stored in correspondence with the first hash value in the document database, the main
즉, 상기 문서 데이터베이스 상에서 상기 제1 해시 값에 대해 상기 주요 키워드들이 추가로 대응되어 저장된 이후, 사용자가 사용자 단말(140)을 통해서 상기 전자 문서에 대한 문서 파일을 전송하게 되면서, 사용자 단말(140)을 통해서 주요 키워드 정보에 대한 제공 요청을 전송하게 되면, 주요 키워드 전송부(138)는 사용자 단말(140)로부터 수신된 상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 문서 데이터베이스로부터 상기 제1 해시 값에 대응되어 저장되어 있는 상기 주요 키워드들을 추출한 후 사용자 단말(140)로 상기 주요 키워드들을 전송할 수 있다.That is, after the main keywords are additionally stored in correspondence with the first hash value in the document database, the user transmits a document file for the electronic document through the
이렇게, 상기 주요 키워드들에 대한 정보가 사용자 단말(140)에 수신되면, 사용자는 사용자 단말(140)을 통해 상기 주요 키워드들을 확인함으로써, 상기 전자 문서에 대한 문서 파일의 내용이 무엇인지를 한 눈에 파악할 수 있다.In this way, when information about the main keywords is received by the
도 2는 본 발명의 일실시예에 따른 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 전자 문서 관리 서버의 동작 방법을 도시한 순서도이다.Figure 2 is a flow chart illustrating a method of operating an electronic document management server that performs database processing on electronic documents based on identification tags according to an embodiment of the present invention.
단계(S210)에서는 사용자 단말로부터 전자 문서에 대한 문서 파일(상기 전자 문서에 대한 문서 파일은 상기 전자 문서에 대한 문서 데이터와, 상기 전자 문서에 포함된 복수의 문단들, 복수의 개체들 및 복수의 표들 각각을 식별하기 위한 사전 설정된 서로 다른 복수의 식별 태그들이 기록된 메타데이터로 구성됨)이 수신되면서, 상기 사용자 단말로부터 상기 전자 문서에 대한 데이터베이스화 요청 명령이 수신되면, 상기 전자 문서에 대한 문서 파일에 포함된 상기 메타데이터를 리드하여 상기 복수의 식별 태그들을 확인한다.In step S210, a document file for an electronic document is sent from a user terminal (the document file for the electronic document includes document data for the electronic document, a plurality of paragraphs, a plurality of objects, and a plurality of objects included in the electronic document. (consisting of metadata in which a plurality of preset different identification tags for identifying each of the tables are recorded) is received, and when a database request command for the electronic document is received from the user terminal, the document file for the electronic document The metadata included in is read to check the plurality of identification tags.
단계(S220)에서는 상기 복수의 식별 태그들이 확인되면, 상기 전자 문서에 포함된 콘텐츠 데이터를 기록하기 위한 관리 테이블을 생성한다.In step S220, when the plurality of identification tags are confirmed, a management table for recording content data included in the electronic document is created.
단계(S230)에서는 상기 관리 테이블이 생성되면, 상기 전자 문서에 대한 문서 파일에 포함된 상기 문서 데이터로부터 상기 복수의 문단들에 대한 텍스트 데이터를 추출한 후, 각 문단에 대한 텍스트 데이터와 각 문단에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록한다.In step S230, when the management table is created, text data for the plurality of paragraphs is extracted from the document data included in the document file for the electronic document, and text data for each paragraph is corresponding to each paragraph. The identification tags are recorded in correspondence with each other in the management table.
단계(S240)에서는 상기 문서 데이터로부터 상기 복수의 개체들에 대한 개체 데이터를 추출한 후, 각 개체에 대한 개체 데이터와 각 개체에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록한다.In step S240, after extracting entity data for the plurality of entities from the document data, entity data for each entity and identification tags corresponding to each entity are recorded in correspondence with each other in the management table.
단계(S250)에서는 상기 문서 데이터로부터 상기 복수의 표들에 대한 표 데이터를 추출한 후, 각 표에 대한 표 데이터와 각 표에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록한다.In step S250, table data for the plurality of tables is extracted from the document data, and then table data for each table and identification tags corresponding to each table are recorded in correspondence with each other in the management table.
단계(S260)에서는 상기 관리 테이블에 상기 전자 문서에 포함된 콘텐츠 데이터에 대한 기록이 완료되면, 상기 전자 문서에 대한 문서 파일을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성한 후, 문서 데이터베이스에 상기 제1 해시 값과 상기 관리 테이블을 서로 대응시켜 저장한다.In step S260, when the recording of the content data included in the electronic document is completed in the management table, the document file for the electronic document is applied as input to a preset hash function to generate a first hash value, The first hash value and the management table are stored in correspondence with each other in the document database.
이때, 본 발명의 일실시예에 따르면, 단계(S260)에서는 사전 설정된 t(t는 2이상의 자연수)개의 암호화키 생성 함수들과 각 암호화키 생성 함수에 대응되는 0 이상 t-1 이하의 서로 다른 정수가 대응되어 기록되어 있는 암호화키 생성 함수 테이블을 저장하여 유지하는 단계, 상기 관리 테이블에 상기 전자 문서에 포함된 콘텐츠 데이터에 대한 기록이 완료되면, k(k는 자연수) 자릿수의 자연수로 구성된 랜덤 번호를 생성하는 단계, 상기 랜덤 번호가 생성되면, 상기 랜덤 번호를 피제수로, 상기 t를 제수로 하는 모듈로 연산을 수행함으로써, 연산 값을 산출하고, 상기 암호화키 생성 함수 테이블로부터 상기 연산 값에 대응되는 제1 암호화키 생성 함수를 추출하는 단계, 상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성하는 단계, 상기 제1 해시 값을 상기 제1 암호화키 생성 함수에 입력으로 인가하여 제1 암호화키를 생성한 후 상기 관리 테이블을 상기 제1 암호화키로 암호화하는 단계, 상기 관리 테이블이 암호화되면, 상기 문서 데이터베이스에 상기 제1 해시 값과 암호화된 상기 관리 테이블을 서로 대응시켜 저장하는 단계 및 상기 문서 데이터베이스에 상기 제1 해시 값과 암호화된 상기 관리 테이블이 서로 대응되어 저장되면, 상기 사용자 단말로 상기 랜덤 번호를 전송하면서, 상기 사용자 단말로 상기 랜덤 번호가 암호화된 상기 관리 테이블의 복호화를 위한 보안 코드임을 지시하는 안내 메시지를 전송하는 단계를 포함할 수 있다.At this time, according to an embodiment of the present invention, in step S260, a preset number of encryption key generation functions (t is a natural number of 2 or more) and different numbers of 0 to t-1 corresponding to each encryption key generation function are used. A step of storing and maintaining an encryption key generation function table in which integers are recorded in correspondence, and when the recording of the content data included in the electronic document in the management table is completed, a random number consisting of a natural number of k (k is a natural number) digits is generated. Generating a number: When the random number is generated, a modulo operation is performed using the random number as a dividend and t as a divisor to calculate an operation value, and enter the operation value from the encryption key generation function table. Extracting a corresponding first encryption key generation function, applying a document file for the electronic document as input to the hash function to generate the first hash value, and converting the first hash value to the first encryption key Generating a first encryption key by applying it as an input to a creation function and then encrypting the management table with the first encryption key. When the management table is encrypted, the management table encrypted with the first hash value is stored in the document database. storing in correspondence with each other, and when the first hash value and the encrypted management table are stored in correspondence with each other in the document database, the random number is encrypted to the user terminal while transmitting the random number to the user terminal. It may include transmitting a guidance message indicating that it is a security code for decoding the management table.
이때, 본 발명의 일실시예에 따르면, 상기 전자 문서 관리 서버의 동작 방법은 상기 문서 데이터베이스에 상기 제1 해시 값과 암호화된 상기 관리 테이블이 함께 대응되어 저장된 이후, 상기 사용자 단말로부터 상기 전자 문서에 대한 문서 파일과 제1 식별 태그가 수신되면서, 상기 사용자 단말로부터 상기 제1 식별 태그에 대응되는 콘텐츠 데이터에 대한 검색 요청이 수신되면, 상기 사용자 단말로 보안 코드의 전송을 요청하는 단계, 상기 사용자 단말로부터 보안 코드로 상기 랜덤 번호가 수신되면, 상기 사용자 단말로부터 수신된 상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 문서 데이터베이스로부터 상기 제1 해시 값에 대응되어 저장되어 있는 암호화된 상기 관리 테이블을 추출하는 단계, 암호화된 상기 관리 테이블이 추출되면, 상기 사용자 단말로부터 수신된 상기 랜덤 번호를 피제수로, 상기 t를 제수로 하는 모듈로 연산을 수행함으로써, 상기 연산 값을 산출하고, 상기 암호화키 생성 함수 테이블로부터 상기 연산 값에 대응되는 상기 제1 암호화키 생성 함수를 추출하는 단계, 상기 제1 해시 값을 상기 제1 암호화키 생성 함수에 입력으로 인가하여 상기 제1 암호화키를 생성한 후 암호화된 상기 관리 테이블을 상기 제1 암호화키로 복호화하는 단계 및 암호화된 상기 관리 테이블이 복호화되면, 복호화된 상기 관리 테이블로부터 상기 제1 식별 태그에 대응되어 기록되어 있는 제1 콘텐츠 테이터를 추출한 후, 상기 사용자 단말로 상기 제1 콘텐츠 데이터를 전송하는 단계를 더 포함할 수 있다.At this time, according to one embodiment of the present invention, the method of operating the electronic document management server is to store the first hash value and the encrypted management table together in the document database, and then send the electronic document from the user terminal to the electronic document. When a document file and a first identification tag are received and a search request for content data corresponding to the first identification tag is received from the user terminal, requesting transmission of a security code to the user terminal, the user terminal When the random number is received as a security code from the user terminal, the document file for the electronic document received from the user terminal is applied as an input to the hash function to generate the first hash value, and then the first hash value is generated from the document database. Extracting the encrypted management table stored in correspondence with the hash value, once the encrypted management table is extracted, performing a modulo operation using the random number received from the user terminal as a dividend and the t as a divisor. By performing, calculating the operation value and extracting the first encryption key generation function corresponding to the operation value from the encryption key generation function table, inputting the first hash value into the first encryption key generation function generating the first encryption key and then decrypting the encrypted management table with the first encryption key; and when the encrypted management table is decrypted, the first identification tag is obtained from the decrypted management table. After extracting the recorded first content data, the step of transmitting the first content data to the user terminal may be further included.
또한, 본 발명의 일실시예에 따르면, 상기 전자 문서 관리 서버의 동작 방법은 상기 문서 데이터베이스에 상기 제1 해시 값과 상기 관리 테이블이 서로 대응되어 저장되면, 상기 전자 문서로부터 사전 설정된 제1 개수의 주요 키워드들을 추출하는 단계 및 상기 주요 키워드들이 추출되면, 상기 문서 데이터베이스 상에서 상기 제1 해시 값에 대해, 상기 주요 키워드들을 추가로 대응시켜 저장하는 단계를 더 포함할 수 있다.In addition, according to an embodiment of the present invention, the method of operating the electronic document management server is that when the first hash value and the management table are stored in correspondence with each other in the document database, the first number of preset numbers from the electronic document The method may further include extracting main keywords and, once the main keywords are extracted, additionally storing the main keywords in correspondence with the first hash value in the document database.
이때, 상기 주요 키워드들을 추출하는 단계는 상기 전자 문서 내에 삽입되어 있는 복수의 단어들을 추출하는 단계, 상기 복수의 단어들 각각의 상기 전자 문서 내에서의 등장 빈도수를 확인하는 단계, 상기 복수의 단어들 중 상기 등장 빈도수가 큰 순서대로 사전 설정된 제2 개수의 단어들을 후보 키워드로 선택하는 단계, 상기 후보 키워드로 선택된 상기 제2 개수의 단어들 각각의 상기 전자 문서 내에서의 평균 글자 크기 값을 산출하는 단계, 상기 제2 개수의 단어들 각각의 평균 글자 크기 값 중 중앙값을 확인한 후 상기 전자 문서 내에서 상기 제2 개수의 단어들 각각이 상기 중앙값 이상의 글자 크기 값으로 등장하는 횟수를 카운트하는 단계, 상기 제2 개수의 단어들 각각에 대해, 각 단어의 평균 글자 크기 값과 각 단어에 대해서 카운트된 상기 중앙값 이상의 글자 크기 값으로 등장하는 횟수를 성분으로 갖는 2차원의 벡터를 구성함으로써, 상기 제2 개수의 단어들 각각에 대응되는 단어 벡터를 생성하는 단계 및 상기 제2 개수의 단어들 중 상기 제2 개수의 단어들 각각에 대응되는 단어 벡터의 맨해튼 노름이 큰 순서대로 상기 제1 개수만큼의 단어들을 상기 주요 키워드들로 추출하는 단계를 포함할 수 있다.At this time, the step of extracting the main keywords includes extracting a plurality of words inserted in the electronic document, confirming the frequency of appearance of each of the plurality of words in the electronic document, and selecting the plurality of words. selecting a preset second number of words as candidate keywords in the order of their frequency of appearance; calculating an average font size value within the electronic document for each of the second number of words selected as candidate keywords; A step of determining the median value among the average font size values of each of the second number of words and then counting the number of times each of the second number of words appears with a font size value greater than or equal to the median value in the electronic document, For each of the second number of words, by constructing a two-dimensional vector whose components include the average font size value of each word and the number of occurrences with a font size value greater than the median counted for each word, the second number generating a word vector corresponding to each of the words, and selecting as many words as the first number in order of increasing Manhattan norm of the word vector corresponding to each of the second number of words among the second number of words. It may include a step of extracting the main keywords.
이때, 본 발명의 일실시예에 따르면, 상기 전자 문서 관리 서버의 동작 방법은 상기 문서 데이터베이스 상에서 상기 제1 해시 값에 대해 상기 주요 키워드들이 추가로 대응되어 저장된 이후, 상기 사용자 단말로부터 상기 전자 문서에 대한 문서 파일이 수신되면서, 상기 사용자 단말로부터 주요 키워드 정보에 대한 제공 요청이 수신되면, 상기 사용자 단말로부터 수신된 상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 문서 데이터베이스로부터 상기 제1 해시 값에 대응되어 저장되어 있는 상기 주요 키워드들을 추출한 후 상기 사용자 단말로 상기 주요 키워드들을 전송하는 단계를 더 포함할 수 있다.At this time, according to one embodiment of the present invention, the method of operating the electronic document management server is to store the main keywords in additional correspondence with the first hash value on the document database, and then send the electronic document from the user terminal. When a document file for the electronic document is received and a request for provision of key keyword information is received from the user terminal, the document file for the electronic document received from the user terminal is applied as input to the hash function to obtain the first hash value. After creation, the step of extracting the main keywords stored in correspondence with the first hash value from the document database and transmitting the main keywords to the user terminal may be further included.
이상, 도 2를 참조하여 본 발명의 일실시예에 따른 전자 문서 관리 서버의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 전자 문서 관리 서버의 동작 방법은 도 1을 이용하여 설명한 전자 문서 관리 서버(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.Above, the operation method of the electronic document management server according to an embodiment of the present invention has been described with reference to FIG. 2. Here, the operation method of the electronic document management server according to an embodiment of the present invention may correspond to the configuration of the operation of the electronic
본 발명의 일실시예에 따른 전자 문서 관리 서버의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.The operating method of the electronic document management server according to an embodiment of the present invention may be implemented as a computer program stored in a storage medium to be executed through combination with a computer.
또한, 본 발명의 일실시예에 따른 전자 문서 관리 서버의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 컴퓨터 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. Additionally, the operating method of the electronic document management server according to an embodiment of the present invention may be implemented in the form of computer program instructions for execution through combination with a computer and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc., singly or in combination. Program instructions recorded on the medium may be specially designed and constructed for the present invention or may be known and usable by those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -Includes optical media (magneto-optical media) and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, etc. Examples of program instructions include machine language code, such as that produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. As described above, the present invention has been described with specific details such as specific components and limited embodiments and drawings, but this is only provided to facilitate a more general understanding of the present invention, and the present invention is not limited to the above embodiments. , those skilled in the art can make various modifications and variations from this description.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Accordingly, the spirit of the present invention should not be limited to the described embodiments, and the scope of the patent claims described later as well as all things that are equivalent or equivalent to the scope of this patent claim shall fall within the scope of the spirit of the present invention. .
110: 전자 문서 관리 서버
111: 식별 태그 확인부 112: 관리 테이블 생성부
113: 제1 정보 기록 처리부 114: 제2 정보 기록 처리부
115: 제3 정보 기록 처리부 116: 정보 저장 처리부
117: 테이블 유지부 118: 랜덤 번호 생성부
119: 암호화키 생성 함수 추출부 120: 해시 값 생성부
121: 관리 테이블 암호화부 122: 저장 처리부
123: 정보 전송부 124: 보안 코드 요청부
125: 관리 테이블 추출부 126: 함수 추출부
127: 관리 테이블 복호화부 128: 콘텐츠 데이터 전송부
129: 주요 키워드 추출부 130: 주요 키워드 저장부
131: 단어 추출부 132: 빈도수 확인부
133: 후보 키워드 선택부 134: 평균 글자 크기 값 산출부
135: 횟수 카운트부 136: 단어 벡터 생성부
137: 키워드 추출부 138: 주요 키워드 전송부
140: 사용자 단말110: Electronic document management server
111: Identification tag confirmation unit 112: Management table creation unit
113: first information record processing unit 114: second information record processing unit
115: Third information recording processing unit 116: Information storage processing unit
117: table maintenance unit 118: random number generation unit
119: Encryption key generation function extraction unit 120: Hash value generation unit
121: Management table encryption unit 122: Storage processing unit
123: Information transmission unit 124: Security code request unit
125: Management table extraction unit 126: Function extraction unit
127: Management table decoding unit 128: Content data transmission unit
129: main keyword extraction unit 130: main keyword storage unit
131: word extraction unit 132: frequency confirmation unit
133: Candidate keyword selection unit 134: Average font size value calculation unit
135: Counting unit 136: Word vector generating unit
137: Keyword extraction unit 138: Main keyword transmission unit
140: User terminal
Claims (12)
상기 복수의 식별 태그들이 확인되면, 상기 전자 문서에 포함된 콘텐츠 데이터를 기록하기 위한 관리 테이블을 생성하는 관리 테이블 생성부;
상기 관리 테이블이 생성되면, 상기 전자 문서에 대한 문서 파일에 포함된 상기 문서 데이터로부터 상기 복수의 문단들에 대한 텍스트 데이터를 추출한 후, 각 문단에 대한 텍스트 데이터와 각 문단에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록하는 제1 정보 기록 처리부;
상기 문서 데이터로부터 상기 복수의 개체들에 대한 개체 데이터를 추출한 후, 각 개체에 대한 개체 데이터와 각 개체에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록하는 제2 정보 기록 처리부;
상기 문서 데이터로부터 상기 복수의 표들에 대한 표 데이터를 추출한 후, 각 표에 대한 표 데이터와 각 표에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록하는 제3 정보 기록 처리부;
상기 관리 테이블에 상기 전자 문서에 포함된 콘텐츠 데이터에 대한 기록이 완료되면, 상기 전자 문서에 대한 문서 파일을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성한 후, 문서 데이터베이스에 상기 제1 해시 값과 상기 관리 테이블을 서로 대응시켜 저장하는 정보 저장 처리부;
상기 문서 데이터베이스에 상기 제1 해시 값과 상기 관리 테이블이 서로 대응되어 저장되면, 상기 전자 문서로부터 사전 설정된 제1 개수의 주요 키워드들을 추출하는 주요 키워드 추출부; 및
상기 주요 키워드들이 추출되면, 상기 문서 데이터베이스 상에서 상기 제1 해시 값에 대해, 상기 주요 키워드들을 추가로 대응시켜 저장하는 주요 키워드 저장부
를 포함하고,
상기 주요 키워드 추출부는
상기 전자 문서 내에 삽입되어 있는 복수의 단어들을 추출하는 단어 추출부;
상기 복수의 단어들 각각의 상기 전자 문서 내에서의 등장 빈도수를 확인하는 빈도수 확인부;
상기 복수의 단어들 중 상기 등장 빈도수가 큰 순서대로 사전 설정된 제2 개수의 단어들을 후보 키워드로 선택하는 후보 키워드 선택부;
상기 후보 키워드로 선택된 상기 제2 개수의 단어들 각각의 상기 전자 문서 내에서의 평균 글자 크기 값을 산출하는 평균 글자 크기 값 산출부;
상기 제2 개수의 단어들 각각의 평균 글자 크기 값 중 중앙값(Median)을 확인한 후 상기 전자 문서 내에서 상기 제2 개수의 단어들 각각이 상기 중앙값 이상의 글자 크기 값으로 등장하는 횟수를 카운트하는 횟수 카운트부;
상기 제2 개수의 단어들 각각에 대해, 각 단어의 평균 글자 크기 값과 각 단어에 대해서 카운트된 상기 중앙값 이상의 글자 크기 값으로 등장하는 횟수를 성분으로 갖는 2차원의 벡터를 구성함으로써, 상기 제2 개수의 단어들 각각에 대응되는 단어 벡터를 생성하는 단어 벡터 생성부; 및
상기 제2 개수의 단어들 중 상기 제2 개수의 단어들 각각에 대응되는 단어 벡터의 맨해튼 노름(Manhattan Norm)이 큰 순서대로 상기 제1 개수만큼의 단어들을 상기 주요 키워드들로 추출하는 키워드 추출부
를 포함하는 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 전자 문서 관리 서버.A document file for an electronic document from a user terminal - the document file for the electronic document identifies document data for the electronic document, and each of a plurality of paragraphs, a plurality of objects, and a plurality of tables included in the electronic document. It consists of metadata in which a plurality of different preset identification tags are recorded - When a database request command for the electronic document is received from the user terminal, the electronic document an identification tag confirmation unit that reads the metadata included in a document file and checks the plurality of identification tags;
a management table generator that generates a management table for recording content data included in the electronic document when the plurality of identification tags are confirmed;
When the management table is created, text data for the plurality of paragraphs is extracted from the document data included in the document file for the electronic document, and then text data for each paragraph and an identification tag corresponding to each paragraph are stored in the text data. a first information recording processing unit that records records in correspondence with each other in a management table;
a second information recording processor that extracts entity data for the plurality of entities from the document data and then records the entity data for each entity and identification tags corresponding to each entity in correspondence with each other in the management table;
a third information recording processing unit that extracts table data for the plurality of tables from the document data and records the table data for each table and identification tags corresponding to each table in correspondence with each other in the management table;
When the recording of the content data included in the electronic document is completed in the management table, the document file for the electronic document is applied as input to a preset hash function to generate a first hash value, and then the first hash value is stored in the document database. 1 an information storage processing unit that stores the hash value and the management table in correspondence with each other;
a main keyword extraction unit that extracts a preset first number of main keywords from the electronic document when the first hash value and the management table are stored in correspondence with each other in the document database; and
When the main keywords are extracted, a main keyword storage unit that additionally stores the main keywords in correspondence with the first hash value in the document database.
Including,
The main keyword extraction section
a word extraction unit that extracts a plurality of words inserted in the electronic document;
a frequency confirmation unit that checks the frequency of appearance of each of the plurality of words in the electronic document;
a candidate keyword selection unit that selects a preset second number of words from among the plurality of words in the order of their frequency of occurrence as candidate keywords;
an average font size value calculation unit that calculates an average font size value within the electronic document for each of the second number of words selected as the candidate keywords;
After checking the median of the average font size values of each of the second number of words, count the number of times each of the second number of words appears with a font size value greater than the median in the electronic document. wealth;
For each of the second number of words, by constructing a two-dimensional vector having as components the average font size value of each word and the number of occurrences with a font size value greater than the median value counted for each word, the second a word vector generator that generates a word vector corresponding to each of the number of words; and
A keyword extraction unit that extracts the first number of words as the main keywords in order of increasing Manhattan Norm of the word vector corresponding to each of the second number of words among the second number of words.
An electronic document management server that performs database processing on electronic documents based on identification tags containing.
상기 정보 저장 처리부는
사전 설정된 t(t는 2이상의 자연수)개의 암호화키 생성 함수들과 각 암호화키 생성 함수에 대응되는 0 이상 t-1 이하의 서로 다른 정수가 대응되어 기록되어 있는 암호화키 생성 함수 테이블을 저장하여 유지하는 테이블 유지부;
상기 관리 테이블에 상기 전자 문서에 포함된 콘텐츠 데이터에 대한 기록이 완료되면, k(k는 자연수) 자릿수의 자연수로 구성된 랜덤 번호를 생성하는 랜덤 번호 생성부;
상기 랜덤 번호가 생성되면, 상기 랜덤 번호를 피제수로, 상기 t를 제수로 하는 모듈로(Modulo) 연산을 수행함으로써, 연산 값을 산출하고, 상기 암호화키 생성 함수 테이블로부터 상기 연산 값에 대응되는 제1 암호화키 생성 함수를 추출하는 암호화키 생성 함수 추출부;
상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성하는 해시 값 생성부;
상기 제1 해시 값을 상기 제1 암호화키 생성 함수에 입력으로 인가하여 제1 암호화키를 생성한 후 상기 관리 테이블을 상기 제1 암호화키로 암호화하는 관리 테이블 암호화부;
상기 관리 테이블이 암호화되면, 상기 문서 데이터베이스에 상기 제1 해시 값과 암호화된 상기 관리 테이블을 서로 대응시켜 저장하는 저장 처리부; 및
상기 문서 데이터베이스에 상기 제1 해시 값과 암호화된 상기 관리 테이블이 서로 대응되어 저장되면, 상기 사용자 단말로 상기 랜덤 번호를 전송하면서, 상기 사용자 단말로 상기 랜덤 번호가 암호화된 상기 관리 테이블의 복호화를 위한 보안 코드임을 지시하는 안내 메시지를 전송하는 정보 전송부
를 포함하는 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 전자 문서 관리 서버.According to paragraph 1,
The information storage processing unit
Store and maintain an encryption key generation function table in which preset t (t is a natural number of 2 or more) encryption key generation functions and different integers between 0 and t-1 corresponding to each encryption key generation function are recorded. A table maintenance unit that does;
a random number generator that generates a random number composed of a natural number with k (k is a natural number) digits when the recording of the content data included in the electronic document is completed in the management table;
When the random number is generated, a modulo operation is performed using the random number as a dividend and t as a divisor to calculate an operation value, and a second number corresponding to the operation value from the encryption key generation function table. 1 An encryption key generation function extractor that extracts an encryption key generation function;
a hash value generator that generates the first hash value by applying a document file for the electronic document as input to the hash function;
a management table encryption unit that generates a first encryption key by applying the first hash value as an input to the first encryption key generation function and then encrypts the management table with the first encryption key;
When the management table is encrypted, a storage processing unit that stores the first hash value and the encrypted management table in correspondence with each other in the document database; and
When the first hash value and the encrypted management table are stored in correspondence with each other in the document database, the random number is transmitted to the user terminal and the user terminal is used to decrypt the management table in which the random number is encrypted. Information transmission unit that transmits a message indicating that it is a security code
An electronic document management server that performs database processing on electronic documents based on identification tags containing.
상기 문서 데이터베이스에 상기 제1 해시 값과 암호화된 상기 관리 테이블이 함께 대응되어 저장된 이후, 상기 사용자 단말로부터 상기 전자 문서에 대한 문서 파일과 제1 식별 태그가 수신되면서, 상기 사용자 단말로부터 상기 제1 식별 태그에 대응되는 콘텐츠 데이터에 대한 검색 요청이 수신되면, 상기 사용자 단말로 보안 코드의 전송을 요청하는 보안 코드 요청부;
상기 사용자 단말로부터 보안 코드로 상기 랜덤 번호가 수신되면, 상기 사용자 단말로부터 수신된 상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 문서 데이터베이스로부터 상기 제1 해시 값에 대응되어 저장되어 있는 암호화된 상기 관리 테이블을 추출하는 관리 테이블 추출부;
암호화된 상기 관리 테이블이 추출되면, 상기 사용자 단말로부터 수신된 상기 랜덤 번호를 피제수로, 상기 t를 제수로 하는 모듈로 연산을 수행함으로써, 상기 연산 값을 산출하고, 상기 암호화키 생성 함수 테이블로부터 상기 연산 값에 대응되는 상기 제1 암호화키 생성 함수를 추출하는 함수 추출부;
상기 제1 해시 값을 상기 제1 암호화키 생성 함수에 입력으로 인가하여 상기 제1 암호화키를 생성한 후 암호화된 상기 관리 테이블을 상기 제1 암호화키로 복호화하는 관리 테이블 복호화부; 및
암호화된 상기 관리 테이블이 복호화되면, 복호화된 상기 관리 테이블로부터 상기 제1 식별 태그에 대응되어 기록되어 있는 제1 콘텐츠 테이터를 추출한 후, 상기 사용자 단말로 상기 제1 콘텐츠 데이터를 전송하는 콘텐츠 데이터 전송부
를 더 포함하는 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 전자 문서 관리 서버.According to paragraph 2,
After the first hash value and the encrypted management table are stored in correspondence with each other in the document database, a document file and a first identification tag for the electronic document are received from the user terminal, and the first identification tag is received from the user terminal. a security code request unit that requests transmission of a security code to the user terminal when a search request for content data corresponding to a tag is received;
When the random number is received as a security code from the user terminal, the document file for the electronic document received from the user terminal is applied as an input to the hash function to generate the first hash value, and then retrieved from the document database. a management table extraction unit that extracts the encrypted management table stored corresponding to the first hash value;
When the encrypted management table is extracted, the operation value is calculated by performing a modulo operation using the random number received from the user terminal as a dividend and t as a divisor, and the calculation value is calculated from the encryption key generation function table. a function extractor that extracts the first encryption key generation function corresponding to the operation value;
a management table decryption unit that generates the first encryption key by applying the first hash value as an input to the first encryption key generation function and then decrypts the encrypted management table with the first encryption key; and
When the encrypted management table is decrypted, a content data transmission unit extracts the first content data recorded corresponding to the first identification tag from the decrypted management table and then transmits the first content data to the user terminal.
An electronic document management server that performs database processing on electronic documents based on an identification tag further comprising:
상기 문서 데이터베이스 상에서 상기 제1 해시 값에 대해 상기 주요 키워드들이 추가로 대응되어 저장된 이후, 상기 사용자 단말로부터 상기 전자 문서에 대한 문서 파일이 수신되면서, 상기 사용자 단말로부터 주요 키워드 정보에 대한 제공 요청이 수신되면, 상기 사용자 단말로부터 수신된 상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 문서 데이터베이스로부터 상기 제1 해시 값에 대응되어 저장되어 있는 상기 주요 키워드들을 추출한 후 상기 사용자 단말로 상기 주요 키워드들을 전송하는 주요 키워드 전송부
를 더 포함하는 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 전자 문서 관리 서버.According to paragraph 1,
After the main keywords are additionally stored in correspondence with the first hash value in the document database, a document file for the electronic document is received from the user terminal, and a request for provision of main keyword information is received from the user terminal. Then, the document file for the electronic document received from the user terminal is applied as input to the hash function to generate the first hash value, and then the first hash value is stored in correspondence with the first hash value from the document database. A main keyword transmission unit that extracts main keywords and then transmits the main keywords to the user terminal.
An electronic document management server that performs database processing on electronic documents based on an identification tag further comprising:
상기 복수의 식별 태그들이 확인되면, 상기 전자 문서에 포함된 콘텐츠 데이터를 기록하기 위한 관리 테이블을 생성하는 단계;
상기 관리 테이블이 생성되면, 상기 전자 문서에 대한 문서 파일에 포함된 상기 문서 데이터로부터 상기 복수의 문단들에 대한 텍스트 데이터를 추출한 후, 각 문단에 대한 텍스트 데이터와 각 문단에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록하는 단계;
상기 문서 데이터로부터 상기 복수의 개체들에 대한 개체 데이터를 추출한 후, 각 개체에 대한 개체 데이터와 각 개체에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록하는 단계;
상기 문서 데이터로부터 상기 복수의 표들에 대한 표 데이터를 추출한 후, 각 표에 대한 표 데이터와 각 표에 대응되는 식별 태그를 상기 관리 테이블에 서로 대응시켜 기록하는 단계;
상기 관리 테이블에 상기 전자 문서에 포함된 콘텐츠 데이터에 대한 기록이 완료되면, 상기 전자 문서에 대한 문서 파일을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성한 후, 문서 데이터베이스에 상기 제1 해시 값과 상기 관리 테이블을 서로 대응시켜 저장하는 단계;
상기 문서 데이터베이스에 상기 제1 해시 값과 상기 관리 테이블이 서로 대응되어 저장되면, 상기 전자 문서로부터 사전 설정된 제1 개수의 주요 키워드들을 추출하는 단계; 및
상기 주요 키워드들이 추출되면, 상기 문서 데이터베이스 상에서 상기 제1 해시 값에 대해, 상기 주요 키워드들을 추가로 대응시켜 저장하는 단계
를 포함하고,
상기 주요 키워드들을 추출하는 단계는
상기 전자 문서 내에 삽입되어 있는 복수의 단어들을 추출하는 단계;
상기 복수의 단어들 각각의 상기 전자 문서 내에서의 등장 빈도수를 확인하는 단계;
상기 복수의 단어들 중 상기 등장 빈도수가 큰 순서대로 사전 설정된 제2 개수의 단어들을 후보 키워드로 선택하는 단계;
상기 후보 키워드로 선택된 상기 제2 개수의 단어들 각각의 상기 전자 문서 내에서의 평균 글자 크기 값을 산출하는 단계;
상기 제2 개수의 단어들 각각의 평균 글자 크기 값 중 중앙값(Median)을 확인한 후 상기 전자 문서 내에서 상기 제2 개수의 단어들 각각이 상기 중앙값 이상의 글자 크기 값으로 등장하는 횟수를 카운트하는 단계;
상기 제2 개수의 단어들 각각에 대해, 각 단어의 평균 글자 크기 값과 각 단어에 대해서 카운트된 상기 중앙값 이상의 글자 크기 값으로 등장하는 횟수를 성분으로 갖는 2차원의 벡터를 구성함으로써, 상기 제2 개수의 단어들 각각에 대응되는 단어 벡터를 생성하는 단계; 및
상기 제2 개수의 단어들 중 상기 제2 개수의 단어들 각각에 대응되는 단어 벡터의 맨해튼 노름(Manhattan Norm)이 큰 순서대로 상기 제1 개수만큼의 단어들을 상기 주요 키워드들로 추출하는 단계
를 포함하는 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 전자 문서 관리 서버의 동작 방법.A document file for an electronic document from a user terminal - the document file for the electronic document identifies document data for the electronic document, and each of a plurality of paragraphs, a plurality of objects, and a plurality of tables included in the electronic document. Consisting of metadata in which a plurality of different preset identification tags are recorded - When a database request command for the electronic document is received from the user terminal, the electronic document Reading the metadata included in a document file to check the plurality of identification tags;
When the plurality of identification tags are confirmed, creating a management table for recording content data included in the electronic document;
When the management table is created, text data for the plurality of paragraphs is extracted from the document data included in the document file for the electronic document, and text data for each paragraph and an identification tag corresponding to each paragraph are stored in the text data. Steps of recording in correspondence with each other in a management table;
extracting entity data for the plurality of entities from the document data, and then recording entity data for each entity and identification tags corresponding to each entity in correspondence with each other in the management table;
extracting table data for the plurality of tables from the document data, and then recording table data for each table and identification tags corresponding to each table in correspondence with each other in the management table;
When the recording of the content data included in the electronic document is completed in the management table, the document file for the electronic document is applied as input to a preset hash function to generate a first hash value, and then the first hash value is stored in the document database. 1: storing the hash value and the management table in correspondence with each other;
When the first hash value and the management table are stored in correspondence with each other in the document database, extracting a first preset number of main keywords from the electronic document; and
When the main keywords are extracted, additionally storing the main keywords in correspondence with the first hash value in the document database.
Including,
The step of extracting the main keywords is
extracting a plurality of words inserted in the electronic document;
confirming the frequency of appearance of each of the plurality of words in the electronic document;
selecting a preset second number of words from among the plurality of words in the order of their frequency of appearance as candidate keywords;
calculating an average font size value within the electronic document for each of the second number of words selected as the candidate keywords;
Checking the median among the average font sizes of each of the second number of words and then counting the number of times each of the second number of words appears with a font size greater than the median in the electronic document;
For each of the second number of words, by constructing a two-dimensional vector having as components the average font size value of each word and the number of occurrences with a font size value greater than the median value counted for each word, the second generating a word vector corresponding to each of the number of words; and
Extracting as many words as the first number as the main keywords in order of increasing Manhattan Norm of the word vector corresponding to each of the second number of words among the second number of words.
A method of operating an electronic document management server that performs database processing on electronic documents based on an identification tag including.
상기 저장하는 단계는
사전 설정된 t(t는 2이상의 자연수)개의 암호화키 생성 함수들과 각 암호화키 생성 함수에 대응되는 0 이상 t-1 이하의 서로 다른 정수가 대응되어 기록되어 있는 암호화키 생성 함수 테이블을 저장하여 유지하는 단계;
상기 관리 테이블에 상기 전자 문서에 포함된 콘텐츠 데이터에 대한 기록이 완료되면, k(k는 자연수) 자릿수의 자연수로 구성된 랜덤 번호를 생성하는 단계;
상기 랜덤 번호가 생성되면, 상기 랜덤 번호를 피제수로, 상기 t를 제수로 하는 모듈로(Modulo) 연산을 수행함으로써, 연산 값을 산출하고, 상기 암호화키 생성 함수 테이블로부터 상기 연산 값에 대응되는 제1 암호화키 생성 함수를 추출하는 단계;
상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성하는 단계;
상기 제1 해시 값을 상기 제1 암호화키 생성 함수에 입력으로 인가하여 제1 암호화키를 생성한 후 상기 관리 테이블을 상기 제1 암호화키로 암호화하는 단계;
상기 관리 테이블이 암호화되면, 상기 문서 데이터베이스에 상기 제1 해시 값과 암호화된 상기 관리 테이블을 서로 대응시켜 저장하는 단계; 및
상기 문서 데이터베이스에 상기 제1 해시 값과 암호화된 상기 관리 테이블이 서로 대응되어 저장되면, 상기 사용자 단말로 상기 랜덤 번호를 전송하면서, 상기 사용자 단말로 상기 랜덤 번호가 암호화된 상기 관리 테이블의 복호화를 위한 보안 코드임을 지시하는 안내 메시지를 전송하는 단계
를 포함하는 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 전자 문서 관리 서버의 동작 방법.According to clause 6,
The saving step is
Store and maintain an encryption key generation function table in which preset t (t is a natural number of 2 or more) encryption key generation functions and different integers between 0 and t-1 corresponding to each encryption key generation function are recorded. steps;
When recording the content data included in the electronic document in the management table is completed, generating a random number consisting of a natural number with k (k is a natural number) digits;
When the random number is generated, a modulo operation is performed using the random number as a dividend and t as a divisor to calculate an operation value, and a second number corresponding to the operation value from the encryption key generation function table. 1 extracting an encryption key generation function;
Generating the first hash value by applying a document file for the electronic document as input to the hash function;
Generating a first encryption key by applying the first hash value as an input to the first encryption key generation function and then encrypting the management table with the first encryption key;
When the management table is encrypted, storing the first hash value and the encrypted management table in correspondence with each other in the document database; and
When the first hash value and the encrypted management table are stored in correspondence with each other in the document database, the random number is transmitted to the user terminal and the user terminal is used to decrypt the management table in which the random number is encrypted. Step of transmitting an information message indicating that it is a security code
A method of operating an electronic document management server that performs database processing on electronic documents based on an identification tag including.
상기 문서 데이터베이스에 상기 제1 해시 값과 암호화된 상기 관리 테이블이 함께 대응되어 저장된 이후, 상기 사용자 단말로부터 상기 전자 문서에 대한 문서 파일과 제1 식별 태그가 수신되면서, 상기 사용자 단말로부터 상기 제1 식별 태그에 대응되는 콘텐츠 데이터에 대한 검색 요청이 수신되면, 상기 사용자 단말로 보안 코드의 전송을 요청하는 단계;
상기 사용자 단말로부터 보안 코드로 상기 랜덤 번호가 수신되면, 상기 사용자 단말로부터 수신된 상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 문서 데이터베이스로부터 상기 제1 해시 값에 대응되어 저장되어 있는 암호화된 상기 관리 테이블을 추출하는 단계;
암호화된 상기 관리 테이블이 추출되면, 상기 사용자 단말로부터 수신된 상기 랜덤 번호를 피제수로, 상기 t를 제수로 하는 모듈로 연산을 수행함으로써, 상기 연산 값을 산출하고, 상기 암호화키 생성 함수 테이블로부터 상기 연산 값에 대응되는 상기 제1 암호화키 생성 함수를 추출하는 단계;
상기 제1 해시 값을 상기 제1 암호화키 생성 함수에 입력으로 인가하여 상기 제1 암호화키를 생성한 후 암호화된 상기 관리 테이블을 상기 제1 암호화키로 복호화하는 단계; 및
암호화된 상기 관리 테이블이 복호화되면, 복호화된 상기 관리 테이블로부터 상기 제1 식별 태그에 대응되어 기록되어 있는 제1 콘텐츠 테이터를 추출한 후, 상기 사용자 단말로 상기 제1 콘텐츠 데이터를 전송하는 단계
를 더 포함하는 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 전자 문서 관리 서버의 동작 방법.In clause 7,
After the first hash value and the encrypted management table are stored in correspondence with each other in the document database, a document file and a first identification tag for the electronic document are received from the user terminal, and the first identification tag is received from the user terminal. When a search request for content data corresponding to a tag is received, requesting transmission of a security code to the user terminal;
When the random number is received as a security code from the user terminal, the document file for the electronic document received from the user terminal is applied as input to the hash function to generate the first hash value, and then retrieved from the document database. extracting the encrypted management table stored corresponding to the first hash value;
When the encrypted management table is extracted, the operation value is calculated by performing a modulo operation using the random number received from the user terminal as a dividend and t as a divisor, and the calculation value is calculated from the encryption key generation function table. extracting the first encryption key generation function corresponding to the operation value;
applying the first hash value as an input to the first encryption key generation function to generate the first encryption key and then decrypting the encrypted management table with the first encryption key; and
When the encrypted management table is decrypted, extracting first content data recorded corresponding to the first identification tag from the decrypted management table, and then transmitting the first content data to the user terminal.
A method of operating an electronic document management server that performs database processing on electronic documents based on an identification tag further comprising:
상기 문서 데이터베이스 상에서 상기 제1 해시 값에 대해 상기 주요 키워드들이 추가로 대응되어 저장된 이후, 상기 사용자 단말로부터 상기 전자 문서에 대한 문서 파일이 수신되면서, 상기 사용자 단말로부터 주요 키워드 정보에 대한 제공 요청이 수신되면, 상기 사용자 단말로부터 수신된 상기 전자 문서에 대한 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 문서 데이터베이스로부터 상기 제1 해시 값에 대응되어 저장되어 있는 상기 주요 키워드들을 추출한 후 상기 사용자 단말로 상기 주요 키워드들을 전송하는 단계
를 더 포함하는 식별 태그를 기초로 전자 문서에 대한 데이터베이스화 처리를 수행하는 전자 문서 관리 서버의 동작 방법.According to clause 6,
After the main keywords are additionally stored in correspondence with the first hash value in the document database, a document file for the electronic document is received from the user terminal, and a request for provision of main keyword information is received from the user terminal. Then, the document file for the electronic document received from the user terminal is applied as input to the hash function to generate the first hash value, and then the first hash value is stored in correspondence with the first hash value from the document database. Extracting main keywords and then transmitting the main keywords to the user terminal
A method of operating an electronic document management server that performs database processing on electronic documents based on an identification tag further comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210031817A KR102658134B1 (en) | 2021-03-11 | Electronic document management server that performs database processing for electronic document based on identification tag and operating method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210031817A KR102658134B1 (en) | 2021-03-11 | Electronic document management server that performs database processing for electronic document based on identification tag and operating method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220127484A KR20220127484A (en) | 2022-09-20 |
KR102658134B1 true KR102658134B1 (en) | 2024-04-26 |
Family
ID=
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006048716A (en) | 1995-02-13 | 2006-02-16 | Intertrust Technologies Corp | Method for managing electronic file |
JP2008152546A (en) * | 2006-12-18 | 2008-07-03 | Fuji Xerox Co Ltd | Document management system, document processing client device, document management server device, and program |
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006048716A (en) | 1995-02-13 | 2006-02-16 | Intertrust Technologies Corp | Method for managing electronic file |
JP2008152546A (en) * | 2006-12-18 | 2008-07-03 | Fuji Xerox Co Ltd | Document management system, document processing client device, document management server device, and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9576005B2 (en) | Search system | |
Xia et al. | A Privacy-Preserving Image Retrieval Based on AC-Coefficients and Color Histograms in Cloud Environment. | |
Song et al. | Protection of image ROI using chaos-based encryption and DCNN-based object detection | |
Deng et al. | A digital image encryption algorithm based on chaotic mapping | |
Al Sibahee et al. | Efficient encrypted image retrieval in IoT-cloud with multi-user authentication | |
Gong et al. | A privacy-preserving image retrieval method based on improved bovw model in cloud environment | |
JP6781373B2 (en) | Search program, search method, and search device | |
Magdy et al. | Privacy preserving search index for image databases based on SURF and order preserving encryption | |
Tang et al. | OPPR: An outsourcing privacy-preserving JPEG image retrieval scheme with local histograms in cloud environment | |
KR102658134B1 (en) | Electronic document management server that performs database processing for electronic document based on identification tag and operating method thereof | |
KR101444828B1 (en) | Method for storing encrypted image and searching the image | |
KR20220127484A (en) | Electronic document management server that performs database processing for electronic document based on identification tag and operating method thereof | |
KR20220013084A (en) | Document storage management server for performing storage processing of document files received from a client terminal in conjunction with a plurality of document storage and operating method thereof | |
KR102613911B1 (en) | Electronic terminal apparatus capable of preventing access to url addresses of harmful sites inserted as hyperlinks in document files and operating method thereof | |
KR102545264B1 (en) | Web contents crawling apparatus which collects web contents data from the body area on the web page, and the operating method thereof | |
KR102417814B1 (en) | Electronic document management server that supports security settings for some content embedded in electronic documents based on member identification information and operating method thereof | |
KR102466721B1 (en) | Electronic device for converting the electronic document to the knowledge data document and the operating method thereof | |
KR102545262B1 (en) | Electronic terminal apparatus for providing information of the associated documents which are associated with the particular document based on simultaneous usage criteria and operating method thereof | |
KR102513228B1 (en) | Electronic apparatus that can automatically convert and migrate the display format of data according to data conversion rules and the operating method thereof | |
CN111339566B (en) | Block summarization method, device, computer equipment and storage medium | |
KR20230115177A (en) | Service providing server that provides sentiment analysis service for marketing and the operating method thereof | |
KR102417811B1 (en) | Document translation service server which provides document translation services with personal information protection function and the operating method thereof | |
US20130036474A1 (en) | Method and Apparatus for Secure Data Representation Allowing Efficient Collection, Search and Retrieval | |
KR20240053970A (en) | Document conversion service providing server that provides the document conversion service that can convert the electronic document written with a word processor into a presentation document and operating method thereof | |
KR20240053957A (en) | Document management service server which is able to provide representative images for electronic documents and the operating method thereof |