KR102300467B1 - 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치 및 그 동작 방법 - Google Patents

스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치 및 그 동작 방법 Download PDF

Info

Publication number
KR102300467B1
KR102300467B1 KR1020190134549A KR20190134549A KR102300467B1 KR 102300467 B1 KR102300467 B1 KR 102300467B1 KR 1020190134549 A KR1020190134549 A KR 1020190134549A KR 20190134549 A KR20190134549 A KR 20190134549A KR 102300467 B1 KR102300467 B1 KR 102300467B1
Authority
KR
South Korea
Prior art keywords
matrix
user
knowledge database
authentication
user terminal
Prior art date
Application number
KR1020190134549A
Other languages
English (en)
Other versions
KR20210050206A (ko
Inventor
김세현
이민재
Original Assignee
주식회사 한글과컴퓨터
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 한글과컴퓨터 filed Critical 주식회사 한글과컴퓨터
Priority to KR1020190134549A priority Critical patent/KR102300467B1/ko
Publication of KR20210050206A publication Critical patent/KR20210050206A/ko
Application granted granted Critical
Publication of KR102300467B1 publication Critical patent/KR102300467B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2291User-Defined Types; Storage management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • G06F40/18Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치 및 그 동작 방법이 개시된다. 본 발명은 복수의 스프레드시트 문서들에 포함된 표를 확인하여 표를 구성하는 필드명과 데이터를 기초로 복수의 데이터 세트들을 구성한 후 상기 복수의 데이터 세트들을 데이터 저장소에 저장함으로써, 스프레드시트 문서에 기반한 지식 데이터베이스를 구축할 수 있는 장치 및 그 동작 방법을 제시하고자 한다.

Description

스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치 및 그 동작 방법{KNOWLEDGE DATABASE MANAGEMENT DEVICE FOR BUILDING A KNOWLEDGE DATABASE USING TABLES INCLUDED IN SPREADSHEET DOCUMENTS AND ENABLING USER ACCESS TO THE KNOWLEDGE DATABASE, AND OPERATING METHOD THEREOF}
본 발명은 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치 및 그 동작 방법에 대한 것이다.
스프레드시트는 표를 쉽게 작성할 수 있게 지원하는 문서라는 점에서 업무에 자주 활용되곤 한다.
보통, 스프레드시트를 이용하여 표를 작성하는 경우, 도 2에 도시된 그림과 같이, 첫 번째 행(211)과 첫 번째 열(212)에 필드명을 삽입하고, 내부 셀(213)에 각 필드명에 매칭되는 데이터를 삽입한다.
예컨대, 복수의 상품들에 대한 월별 재고 상황을 표로 구성하는 경우, 첫 번째 행(211)에 각 상품명을 필드명으로 삽입하고, 첫 번째 열(212)에 각 월을 필드명으로 삽입한 후 월별 각 상품에 따른 재고량을 내부 셀(213)에 삽입할 수 있다.
이렇게, 스프레드시트는 업무에 많이 사용되는 수단이지만, 특정 업무 조직 내에서 각 사용자들이 작성한 스프레드시트 문서가 서로 공유되지 못하는 경우가 많아서, 동일 업무 조직에 속해 있는 사용자라 하더라도 다른 사용자가 작성한 표의 데이터를 쉽게 획득하지 못하는 경우가 많다.
따라서, 같은 업무 조직 내에 속하는 사용자들이 표가 포함된 스프레드시트 문서를 생산한 경우, 상기 스프레드시트 문서에 포함된 표의 데이터들을 하나의 지식 데이터베이스로 구축함으로써, 같은 업무 조직 내에 속하는 사용자들이 손쉽게 업무 관련 데이터를 공유할 수 있도록 지원하기 위한 기술에 대한 연구가 필요하다.
또한, 이러한 지식 데이터베이스에 대해서는 특정 업무 조직에 속하는 사용자들만 접근 권한을 가져야 한다는 점에서, 스프레드시트 문서를 기반으로 구축된 지식 데이터베이스에 대한 사용자 접근 권한을 관리할 수 있는 기술에 대한 연구가 필요하다.
본 발명은 복수의 스프레드시트 문서들에 포함된 표를 확인하여 표를 구성하는 필드명과 데이터를 기초로 복수의 데이터 세트들을 구성한 후 상기 복수의 데이터 세트들을 데이터 저장소에 저장함으로써, 스프레드시트 문서에 기반한 지식 데이터베이스를 구축할 수 있는 장치 및 그 동작 방법을 제시하고자 한다.
또한, 본 발명은 상기 지식 데이터베이스에 대한 접근 권한을 갖는 사용자들에 대해서만 소정의 인증 정보를 발급해 준 후 인증 정보를 갖는 사용자들만이 상기 지식 데이터베이스에 접근하여 소정의 데이터 세트를 제공받을 수 있도록 하는 사용자 접근 권한 관리 기술을 제시하고자 한다.
본 발명의 일실시예에 따른 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치는 데이터가 삽입된 복수의 셀들로 구성되되, 첫 번째 행과 첫 번째 열 각각에 적어도 하나의 필드명이 삽입된 표를 포함하는 복수의 스프레드시트 문서들이 저장되어 있는 문서 저장부, 상기 복수의 스프레드시트 문서들에 기반한 지식 데이터베이스 구축 명령이 인가되면, 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표를 확인하여 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표로부터 첫 번째 행에 삽입된 적어도 하나의 제1 필드명과 첫 번째 열에 삽입된 적어도 하나의 제2 필드명을 확인하고, 첫 번째 행과 첫 번째 열을 제외한 나머지 셀들에 삽입된 데이터를 확인하는 데이터 확인부, 상기 적어도 하나의 제1 필드명 중 하나인 세로 필드명과 상기 적어도 하나의 제2 필드명 중 하나인 가로 필드명, 및 상기 세로 필드명과 상기 가로 필드명에 대응되는 셀에 삽입된 데이터를 하나의 데이터 세트로 구성함으로써, 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표로부터 복수의 데이터 세트들을 생성하는 데이터 세트 생성부 및 상기 복수의 데이터 세트들을 데이터 저장소에 저장함으로써, 상기 지식 데이터베이스의 구축을 완료하는 지식 데이터베이스 구축부를 포함한다.
또한, 본 발명의 일실시예에 따른 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치의 동작 방법은 데이터가 삽입된 복수의 셀들로 구성되되, 첫 번째 행과 첫 번째 열 각각에 적어도 하나의 필드명이 삽입된 표를 포함하는 복수의 스프레드시트 문서들이 저장되어 있는 문서 저장부를 유지하는 단계, 상기 복수의 스프레드시트 문서들에 기반한 지식 데이터베이스 구축 명령이 인가되면, 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표를 확인하여 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표로부터 첫 번째 행에 삽입된 적어도 하나의 제1 필드명과 첫 번째 열에 삽입된 적어도 하나의 제2 필드명을 확인하고, 첫 번째 행과 첫 번째 열을 제외한 나머지 셀들에 삽입된 데이터를 확인하는 단계, 상기 적어도 하나의 제1 필드명 중 하나인 세로 필드명과 상기 적어도 하나의 제2 필드명 중 하나인 가로 필드명, 및 상기 세로 필드명과 상기 가로 필드명에 대응되는 셀에 삽입된 데이터를 하나의 데이터 세트로 구성함으로써, 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표로부터 복수의 데이터 세트들을 생성하는 단계 및 상기 복수의 데이터 세트들을 데이터 저장소에 저장함으로써, 상기 지식 데이터베이스의 구축을 완료하는 단계를 포함한다.
본 발명은 복수의 스프레드시트 문서들에 포함된 표를 확인하여 표를 구성하는 필드명과 데이터를 기초로 복수의 데이터 세트들을 구성한 후 상기 복수의 데이터 세트들을 데이터 저장소에 저장함으로써, 스프레드시트 문서에 기반한 지식 데이터베이스를 구축할 수 있는 장치 및 그 동작 방법을 제공할 수 있다.
또한, 본 발명은 상기 지식 데이터베이스에 대한 접근 권한을 갖는 사용자들에 대해서만 소정의 인증 정보를 발급해 준 후 인증 정보를 갖는 사용자들만이 상기 지식 데이터베이스에 접근하여 소정의 데이터 세트를 제공받을 수 있도록 하는 사용자 접근 권한 관리 기술을 제공할 수 있다.
도 1은 본 발명의 일실시예에 따른 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치의 동작을 설명하기 위한 도면이다.
도 3은 본 발명의 일실시예에 따른 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치의 동작 방법을 도시한 순서도이다.
이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.
본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다.
한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.
도 1은 본 발명의 일실시예에 따른 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치의 구조를 도시한 도면이다.
도 1을 참조하면, 본 발명에 따른 지식 데이터베이스 관리 장치(110)는 문서 저장부(111), 데이터 확인부(112), 데이터 세트 생성부(113), 지식 데이터베이스 구축부(114)를 포함한다.
문서 저장부(111)에는 데이터가 삽입된 복수의 셀들로 구성되되, 첫 번째 행과 첫 번째 열 각각에 적어도 하나의 필드명이 삽입된 표를 포함하는 복수의 스프레드시트 문서들이 저장되어 있다.
관련해서, 상기 복수의 스프레드시트 문서들 각각에 삽입된 표는 도 2에 도시된 그림과 같이, 첫 번째 행(211)과 첫 번째 열(212)에 필드명이 삽입되어 있고, 내부 셀(213)에 각 필드명에 매칭되는 데이터가 삽입되어 있다.
데이터 확인부(112)는 상기 복수의 스프레드시트 문서들에 기반한 지식 데이터베이스 구축 명령이 인가되면, 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표를 확인하여 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표로부터 첫 번째 행(211)에 삽입된 적어도 하나의 제1 필드명과 첫 번째 열(212)에 삽입된 적어도 하나의 제2 필드명을 확인하고, 첫 번째 행(211)과 첫 번째 열(212)을 제외한 나머지 셀들(213)에 삽입된 데이터를 확인한다.
데이터 세트 생성부(113)는 상기 적어도 하나의 제1 필드명 중 하나인 세로 필드명과 상기 적어도 하나의 제2 필드명 중 하나인 가로 필드명, 및 상기 세로 필드명과 상기 가로 필드명에 대응되는 셀에 삽입된 데이터를 하나의 데이터 세트로 구성함으로써, 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표로부터 복수의 데이터 세트들을 생성한다.
예컨대, 도 2에 도시된 그림에서, 데이터 세트 생성부(113)는 'B'라고 하는 세로 필드명과 '가'라고 하는 가로 필드명 및 'B'와 '가'에 대응하는 셀에 삽입된 '데이터 4'를 '(B, 가, 데이터 4)'라고 하는 하나의 데이터 세트로 구성하는 방식으로, 'A', 'B', 'C'와 '가', '나', '다' 각각에 대응하는 데이터 세트들을 구성함으로써, 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표로부터 복수의 데이터 세트들을 생성할 수 있다.
지식 데이터베이스 구축부(114)는 상기 복수의 데이터 세트들을 데이터 저장소(미도시)에 저장함으로써, 상기 지식 데이터베이스의 구축을 완료한다.
이때, 본 발명의 일실시예에 따르면, 지식 데이터베이스 관리 장치(110)는 사용자 식별자 저장부(115), 난수 생성 함수 저장부(116), 인증용 행렬 생성부(117), 인증용 행렬 저장 처리부(118), 인증용 행렬 발급부(119) 및 데이터 전송부(120)를 더 포함할 수 있다.
사용자 식별자 저장부(115)에는 상기 지식 데이터베이스에 대한 접근 권한을 갖는 것으로 미리 지정된 복수의 사용자들 각각에 대한 서로 다른 사용자 식별자가 저장되어 있다.
난수 생성 함수 저장부(116)에는 인증용 행렬을 생성하기 위한 미리 설정된 서로 다른 k2(k는 2이상의 자연수)개의 난수 생성 함수들이 저장되어 있다.
인증용 행렬 생성부(117)는 상기 지식 데이터베이스의 구축이 완료되면, 상기 복수의 사용자들 각각에 대해 상기 k2개의 난수 생성 함수들을 기초로 k2개의 난수들을 생성하고, 상기 k2개의 난수들을 성분으로 갖는 k x k 크기의 인증용 행렬을 생성함으로써, 상기 복수의 사용자들 각각에 대응하는 k x k 크기의 서로 다른 인증용 행렬을 생성한다.
예컨대, 10명의 사용자들이 상기 지식 데이터베이스에 대한 접근 권한을 갖는다고 하고, k를 3이라고 하는 경우, 인증용 행렬 생성부(117)는 10명의 사용자들 각각에 대해 9개의 서로 다른 난수 생성 함수를 이용하여 9개의 난수를 생성한 후 9개의 난수를 성분으로 갖는 3 x 3 크기의 인증용 행렬을 생성함으로써, 10명의 사용자들 각각에 대응하는 3 x 3 크기의 서로 다른 인증용 행렬을 생성할 수 있다.
이때, 인증용 행렬 생성부(117)는 9개의 난수를 3 x 3 크기의 인증용 행렬의 성분으로 지정할 때, 상기 인증용 행렬에서의 9개의 난수들의 위치를 랜덤하게 결정할 수 있다.
인증용 행렬 저장 처리부(118)는 사용자 식별자 저장부(115)에 상기 복수의 사용자들 각각에 대응하는 인증용 행렬을 각 사용자의 사용자 식별자에 대응시켜 저장한다.
인증용 행렬 발급부(119)는 상기 복수의 사용자들 각각에 대한 사용자 단말로 각 사용자에 대응하는 인증용 행렬을 전송함으로써, 상기 복수의 사용자들 각각에 대한 인증용 행렬의 발급을 완료한다.
데이터 전송부(120)는 상기 복수의 사용자들 각각에 대한 인증용 행렬의 발급이 완료된 후 상기 복수의 사용자들 중 제1 사용자의 사용자 단말(100)로부터 상기 복수의 데이터 세트들 중 제1 데이터 세트에 대한 전송 요청이 수신되면, 상기 제1 사용자에 대해 발급된 제1 인증용 행렬을 기초로 상기 제1 사용자에 대한 인증을 수행한 후 상기 제1 사용자의 사용자 단말(100)로 상기 제1 데이터 세트를 전송한다.
이때, 본 발명의 일실시예에 따르면, 데이터 전송부(120)는 인증용 행렬 추출부(121), 랜덤 행렬 생성부(122), 피드백 요청부(123), 인증 수행부(124) 및 전송 처리부(125)를 포함할 수 있다.
인증용 행렬 추출부(121)는 상기 복수의 사용자들 중 상기 제1 사용자의 사용자 단말(100)로부터 상기 복수의 데이터 세트들 중 상기 제1 데이터 세트에 대한 전송 요청이 수신되면, 사용자 식별자 저장부(115)로부터 상기 제1 사용자의 사용자 식별자에 대응되어 저장되어 있는 상기 제1 인증용 행렬을 추출한다.
랜덤 행렬 생성부(122)는 상기 제1 인증용 행렬이 추출되면, (k+t) x k(t은 k보다 작은 자연수) 크기를 갖는 랜덤한 성분 값들로 구성된 랜덤 행렬을 생성한다.
예컨대, 사용자 식별자 저장부(115)에 저장되어 있는 상기 제1 인증용 행렬이 3 x 3 크기를 갖는 행렬이라고 하고, 상기 t를 2이라고 하는 경우, 랜덤 행렬 생성부(122)는 5 x 3 크기를 갖는 랜덤 행렬을 생성할 수 있다.
피드백 요청부(123)는 상기 랜덤 행렬에서 행의 성분들이 제거될 t개의 행의 위치를 랜덤하게 결정한 후 상기 랜덤 행렬과 상기 t개의 행의 위치를 상기 제1 사용자의 사용자 단말(100)로 전송하면서, 상기 제1 사용자의 사용자 단말(100)로 상기 랜덤 행렬에 대응되는 피드백 행렬의 전송을 요청한다.
이때, 본 발명의 일실시예에 따르면, 상기 제1 사용자의 사용자 단말(100)은 지식 데이터베이스 관리 장치(110)로부터 상기 랜덤 행렬과 상기 t개의 행의 위치가 수신되면, 상기 랜덤 행렬에서 상기 t개의 행의 위치에 따른 행의 성분들을 제거하여 변형 행렬을 생성하고, 상기 제1 사용자의 사용자 단말(100)에 기 발급되어 저장되어 있는 상기 제1 인증용 행렬과 상기 변형 행렬 간의 아다마르 곱(Hadamard product)을 연산하여 제1 피드백 행렬을 생성한 후 상기 제1 피드백 행렬을 지식 데이터베이스 관리 장치(110)로 전송할 수 있다.
예컨대, 상기 랜덤 행렬이 5 x 3 크기를 갖는 행렬이라고 하고, 상기 t개의 행의 위치가 1행, 2행이라고 하는 경우, 상기 제1 사용자의 사용자 단말(100)은 상기 랜덤 행렬에서 1행, 2행에 위치하는 성분들을 제거하여 3 x 3 크기의 변형 행렬을 생성하고, 상기 제1 사용자의 사용자 단말(100)에 기 발급되어 있는 상기 제1 인증용 행렬과 상기 변형 행렬 간의 아다마르 곱을 연산하여 상기 제1 피드백 행렬을 생성할 수 있다.
여기서, 아다마르 곱이란 같은 크기의 행렬에서 각 성분을 곱하는 연산을 의미한다.
인증 수행부(124)는 상기 제1 사용자의 사용자 단말(100)로부터 상기 랜덤 행렬에 대응되는 피드백 행렬로 제1 피드백 행렬(상기 제1 피드백 행렬은 상기 랜덤 행렬에서 상기 t개의 행의 위치에 따른 행의 성분들이 제거되어 k x k 크기의 변형 행렬이 생성된 후 상기 제1 사용자의 사용자 단말(100)에 기 발급되어 저장되어 있는 상기 제1 인증용 행렬과 상기 변형 행렬 간의 아다마르 곱이 연산되어 생성된 행렬임)이 수신되면, 상기 랜덤 행렬에서 상기 t개의 행의 위치에 따른 행의 성분들을 제거하여 상기 변형 행렬을 생성한 후 상기 제1 인증용 행렬과 상기 변형 행렬 간의 아다마르 곱을 연산하여 제1 연산 행렬을 생성하고, 상기 제1 연산 행렬이 상기 제1 피드백 행렬과 동일한지 확인함으로써, 상기 제1 사용자에 대한 인증을 수행한다.
즉, 인증 수행부(124)는 상기 제1 사용자의 사용자 단말(100)로부터 수신된 상기 제1 피드백 행렬과 상기 제1 연산 행렬이 서로 일치하는 것으로 확인되는 경우, 상기 제1 사용자의 사용자 단말(100)이 상기 제1 인증용 행렬을 정상적으로 공유하고 있는 장치인 것으로 볼 수 있기 때문에, 상기 제1 사용자에 대한 인증을 완료할 수 있다.
전송 처리부(125)는 상기 제1 사용자에 대한 인증이 완료되면, 상기 데이터 저장소로부터 상기 제1 데이터 세트를 추출한 후 상기 제1 사용자의 사용자 단말(100)로 상기 제1 데이터 세트를 전송한다.
이때, 본 발명의 일실시예에 따르면, 지식 데이터베이스 관리 장치(110)는 행렬 갱신부(126) 및 갱신 명령 전송부(127)를 더 포함할 수 있다.
행렬 갱신부(126)는 상기 제1 사용자의 사용자 단말(100)로 상기 제1 데이터 세트의 전송이 완료되면, 0 초과 1 미만의 보정 값들을 성분으로 갖는 k x k 크기의 보정 행렬을 랜덤하게 생성한 후 상기 제1 인증용 행렬과 상기 보정 행렬을 서로 곱하여 상기 제1 인증용 행렬의 갱신을 위한 제1 갱신 행렬을 생성한 후 사용자 식별자 저장부(115)에 저장되어 있는 상기 제1 인증용 행렬을 상기 제1 갱신 행렬로 대체한다.
갱신 명령 전송부(127)는 상기 제1 갱신 행렬을 상기 제1 사용자의 사용자 단말(100)로 전송하면서, 상기 제1 사용자의 사용자 단말(100)에 대해 상기 제1 사용자의 사용자 단말(100)에 저장되어 있는 상기 제1 인증용 행렬을 상기 제1 갱신 행렬로 대체할 것을 지시하는 갱신 명령을 전송한다.
이때, 상기 제1 사용자의 사용자 단말(100)은 지식 데이터베이스 관리 장치(110)로부터 상기 제1 갱신 행렬과 함께 상기 갱신 명령이 수신되면, 상기 갱신 명령에 기초하여 상기 제1 사용자의 사용자 단말(100)에 저장되어 있는 상기 제1 인증용 행렬을 상기 제1 갱신 행렬로 대체할 수 있다.
예컨대, 상기 제1 인증용 행렬이 3 x 3 크기의 행렬이라고 하는 경우, 행렬 갱신부(126)는 0 초과 1 미만의 보정 값들을 성분으로 갖는 3 x 3 크기의 보정 행렬을 랜덤하게 생성한 후 상기 제1 인증용 행렬과 상기 보정 행렬을 서로 곱하여 3 x 3 크기의 제1 갱신 행렬을 생성할 수 있다. 그러고 나서, 행렬 갱신부(126)는 사용자 식별자 저장부(115)에 저장되어 있는 상기 제1 인증용 행렬을 상기 제1 갱신 행렬로 대체하고, 갱신 명령 전송부(127)는 상기 제1 갱신 행렬을 상기 제1 사용자의 사용자 단말(100)에 제공함으로써, 사용자의 인증에 사용되는 인증용 행렬이 특정 데이터 세트가 사용자 단말에 제공할 때마다 매번 달라지도록 구성할 수 있다. 이렇게, 인증용 행렬이 매번 달라지게 되면, 그만큼 보안성이 강화되는 장점이 있다.
도 3은 본 발명의 일실시예에 따른 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치의 동작 방법을 도시한 순서도이다.
단계(S310)에서는 데이터가 삽입된 복수의 셀들로 구성되되, 첫 번째 행과 첫 번째 열 각각에 적어도 하나의 필드명이 삽입된 표를 포함하는 복수의 스프레드시트 문서들이 저장되어 있는 문서 저장부를 유지한다.
단계(S320)에서는 상기 복수의 스프레드시트 문서들에 기반한 지식 데이터베이스 구축 명령이 인가되면, 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표를 확인하여 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표로부터 첫 번째 행에 삽입된 적어도 하나의 제1 필드명과 첫 번째 열에 삽입된 적어도 하나의 제2 필드명을 확인하고, 첫 번째 행과 첫 번째 열을 제외한 나머지 셀들에 삽입된 데이터를 확인한다.
단계(S330)에서는 상기 적어도 하나의 제1 필드명 중 하나인 세로 필드명과 상기 적어도 하나의 제2 필드명 중 하나인 가로 필드명, 및 상기 세로 필드명과 상기 가로 필드명에 대응되는 셀에 삽입된 데이터를 하나의 데이터 세트로 구성함으로써, 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표로부터 복수의 데이터 세트들을 생성한다.
단계(S340)에서는 상기 복수의 데이터 세트들을 데이터 저장소에 저장함으로써, 상기 지식 데이터베이스의 구축을 완료한다.
이때, 본 발명의 일실시예에 따르면, 상기 지식 데이터베이스 관리 장치의 동작 방법은 상기 지식 데이터베이스에 대한 접근 권한을 갖는 것으로 미리 지정된 복수의 사용자들 각각에 대한 서로 다른 사용자 식별자가 저장되어 있는 사용자 식별자 저장부를 유지하는 단계, 인증용 행렬을 생성하기 위한 미리 설정된 서로 다른 k2(k는 2이상의 자연수)개의 난수 생성 함수들이 저장되어 있는 난수 생성 함수 저장부를 유지하는 단계, 상기 지식 데이터베이스의 구축이 완료되면, 상기 복수의 사용자들 각각에 대해 상기 k2개의 난수 생성 함수들을 기초로 k2개의 난수들을 생성하고, 상기 k2개의 난수들을 성분으로 갖는 k x k 크기의 인증용 행렬을 생성함으로써, 상기 복수의 사용자들 각각에 대응하는 k x k 크기의 서로 다른 인증용 행렬을 생성하는 단계, 상기 사용자 식별자 저장부에 상기 복수의 사용자들 각각에 대응하는 인증용 행렬을 각 사용자의 사용자 식별자에 대응시켜 저장하는 단계, 상기 복수의 사용자들 각각에 대한 사용자 단말로 각 사용자에 대응하는 인증용 행렬을 전송함으로써, 상기 복수의 사용자들 각각에 대한 인증용 행렬의 발급을 완료하는 단계 및 상기 복수의 사용자들 각각에 대한 인증용 행렬의 발급이 완료된 후 상기 복수의 사용자들 중 제1 사용자의 사용자 단말로부터 상기 복수의 데이터 세트들 중 제1 데이터 세트에 대한 전송 요청이 수신되면, 상기 제1 사용자에 대해 발급된 제1 인증용 행렬을 기초로 상기 제1 사용자에 대한 인증을 수행한 후 상기 제1 사용자의 사용자 단말로 상기 제1 데이터 세트를 전송하는 단계를 더 포함할 수 있다.
이때, 본 발명의 일실시예에 따르면, 상기 제1 데이터 세트를 전송하는 단계는 상기 복수의 사용자들 중 상기 제1 사용자의 사용자 단말로부터 상기 복수의 데이터 세트들 중 상기 제1 데이터 세트에 대한 전송 요청이 수신되면, 상기 사용자 식별자 저장부로부터 상기 제1 사용자의 사용자 식별자에 대응되어 저장되어 있는 상기 제1 인증용 행렬을 추출하는 단계, 상기 제1 인증용 행렬이 추출되면, (k+t) x k(t은 k보다 작은 자연수) 크기를 갖는 랜덤한 성분 값들로 구성된 랜덤 행렬을 생성하는 단계, 상기 랜덤 행렬에서 행의 성분들이 제거될 t개의 행의 위치를 랜덤하게 결정한 후 상기 랜덤 행렬과 상기 t개의 행의 위치를 상기 제1 사용자의 사용자 단말로 전송하면서, 상기 제1 사용자의 사용자 단말로 상기 랜덤 행렬에 대응되는 피드백 행렬의 전송을 요청하는 단계, 상기 제1 사용자의 사용자 단말로부터 상기 랜덤 행렬에 대응되는 피드백 행렬로 제1 피드백 행렬(상기 제1 피드백 행렬은 상기 랜덤 행렬에서 상기 t개의 행의 위치에 따른 행의 성분들이 제거되어 k x k 크기의 변형 행렬이 생성된 후 상기 제1 사용자의 사용자 단말에 기 발급되어 저장되어 있는 상기 제1 인증용 행렬과 상기 변형 행렬 간의 아다마르 곱이 연산되어 생성된 행렬임)이 수신되면, 상기 랜덤 행렬에서 상기 t개의 행의 위치에 따른 행의 성분들을 제거하여 상기 변형 행렬을 생성한 후 상기 제1 인증용 행렬과 상기 변형 행렬 간의 아다마르 곱을 연산하여 제1 연산 행렬을 생성하고, 상기 제1 연산 행렬이 상기 제1 피드백 행렬과 동일한지 확인함으로써, 상기 제1 사용자에 대한 인증을 수행하는 단계 및 상기 제1 사용자에 대한 인증이 완료되면, 상기 데이터 저장소로부터 상기 제1 데이터 세트를 추출한 후 상기 제1 사용자의 사용자 단말로 상기 제1 데이터 세트를 전송하는 단계를 포함할 수 있다.
이때, 본 발명의 일실시예에 따르면, 상기 제1 사용자의 사용자 단말은 상기 지식 데이터베이스 관리 장치로부터 상기 랜덤 행렬과 상기 t개의 행의 위치가 수신되면, 상기 랜덤 행렬에서 상기 t개의 행의 위치에 따른 행의 성분들을 제거하여 상기 변형 행렬을 생성하고, 상기 제1 사용자의 사용자 단말에 기 발급되어 저장되어 있는 상기 제1 인증용 행렬과 상기 변형 행렬 간의 아다마르 곱을 연산하여 상기 제1 피드백 행렬을 생성한 후 상기 제1 피드백 행렬을 상기 지식 데이터베이스 관리 장치로 전송할 수 있다.
이때, 본 발명의 일실시예에 따르면, 상기 지식 데이터베이스 관리 장치의 동작 방법은 상기 제1 사용자의 사용자 단말로 상기 제1 데이터 세트의 전송이 완료되면, 0 초과 1 미만의 보정 값들을 성분으로 갖는 k x k 크기의 보정 행렬을 랜덤하게 생성한 후 상기 제1 인증용 행렬과 상기 보정 행렬을 서로 곱하여 상기 제1 인증용 행렬의 갱신을 위한 제1 갱신 행렬을 생성한 후 상기 사용자 식별자 저장부에 저장되어 있는 상기 제1 인증용 행렬을 상기 제1 갱신 행렬로 대체하는 단계 및 상기 제1 갱신 행렬을 상기 제1 사용자의 사용자 단말로 전송하면서, 상기 제1 사용자의 사용자 단말에 대해 상기 제1 사용자의 사용자 단말에 저장되어 있는 상기 제1 인증용 행렬을 상기 제1 갱신 행렬로 대체할 것을 지시하는 갱신 명령을 전송하는 단계를 더 포함할 수 있다.
이상, 도 2를 참조하여 본 발명의 일실시예에 따른 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치의 동작 방법은 도 1을 이용하여 설명한 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.
본 발명의 일실시예에 따른 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.
또한, 본 발명의 일실시예에 따른 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
110: 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치
111: 문서 저장부 112: 데이터 확인부
113: 데이터 세트 생성부 114: 지식 데이터베이스 구축부
115: 사용자 식별자 저장부 116: 난수 생성 함수 저장부
117: 인증용 행렬 생성부 118: 인증용 행렬 저장 처리부
119: 인증용 행렬 발급부 120: 데이터 전송부
121: 인증용 행렬 추출부 122: 랜덤 행렬 생성부
123: 피드백 요청부 124: 인증 수행부
125: 전송 처리부 126: 행렬 갱신부
127: 갱신 명령 전송부
100: 제1 사용자의 사용자 단말

Claims (12)

  1. 데이터가 삽입된 복수의 셀들로 구성되되, 첫 번째 행과 첫 번째 열 각각에 적어도 하나의 필드명이 삽입된 표를 포함하는 복수의 스프레드시트 문서들이 저장되어 있는 문서 저장부;
    상기 복수의 스프레드시트 문서들에 기반한 지식 데이터베이스 구축 명령이 인가되면, 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표를 확인하여 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표로부터 첫 번째 행에 삽입된 적어도 하나의 제1 필드명과 첫 번째 열에 삽입된 적어도 하나의 제2 필드명을 확인하고, 첫 번째 행과 첫 번째 열을 제외한 나머지 셀들에 삽입된 데이터를 확인하는 데이터 확인부;
    상기 적어도 하나의 제1 필드명 중 하나인 세로 필드명과 상기 적어도 하나의 제2 필드명 중 하나인 가로 필드명, 및 상기 세로 필드명과 상기 가로 필드명에 대응되는 셀에 삽입된 데이터를 하나의 데이터 세트로 구성함으로써, 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표로부터 복수의 데이터 세트들을 생성하는 데이터 세트 생성부;
    상기 복수의 데이터 세트들을 데이터 저장소에 저장함으로써, 상기 지식 데이터베이스의 구축을 완료하는 지식 데이터베이스 구축부;
    상기 지식 데이터베이스에 대한 접근 권한을 갖는 것으로 미리 지정된 복수의 사용자들 각각에 대한 서로 다른 사용자 식별자가 저장되어 있는 사용자 식별자 저장부;
    인증용 행렬을 생성하기 위한 미리 설정된 서로 다른 k2(k는 2이상의 자연수)개의 난수 생성 함수들이 저장되어 있는 난수 생성 함수 저장부;
    상기 지식 데이터베이스의 구축이 완료되면, 상기 복수의 사용자들 각각에 대해 상기 k2개의 난수 생성 함수들을 기초로 k2개의 난수들을 생성하고, 상기 k2개의 난수들을 성분으로 갖는 k x k 크기의 인증용 행렬을 생성함으로써, 상기 복수의 사용자들 각각에 대응하는 k x k 크기의 서로 다른 인증용 행렬을 생성하는 인증용 행렬 생성부;
    상기 사용자 식별자 저장부에 상기 복수의 사용자들 각각에 대응하는 인증용 행렬을 각 사용자의 사용자 식별자에 대응시켜 저장하는 인증용 행렬 저장 처리부;
    상기 복수의 사용자들 각각에 대한 사용자 단말로 각 사용자에 대응하는 인증용 행렬을 전송함으로써, 상기 복수의 사용자들 각각에 대한 인증용 행렬의 발급을 완료하는 인증용 행렬 발급부; 및
    상기 복수의 사용자들 각각에 대한 인증용 행렬의 발급이 완료된 후 상기 복수의 사용자들 중 제1 사용자의 사용자 단말로부터 상기 복수의 데이터 세트들 중 제1 데이터 세트에 대한 전송 요청이 수신되면, 상기 제1 사용자에 대해 발급된 제1 인증용 행렬을 기초로 상기 제1 사용자에 대한 인증을 수행한 후 상기 제1 사용자의 사용자 단말로 상기 제1 데이터 세트를 전송하는 데이터 전송부
    를 포함하는 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치.
  2. 삭제
  3. 제1항에 있어서,
    상기 데이터 전송부는
    상기 복수의 사용자들 중 상기 제1 사용자의 사용자 단말로부터 상기 복수의 데이터 세트들 중 상기 제1 데이터 세트에 대한 전송 요청이 수신되면, 상기 사용자 식별자 저장부로부터 상기 제1 사용자의 사용자 식별자에 대응되어 저장되어 있는 상기 제1 인증용 행렬을 추출하는 인증용 행렬 추출부;
    상기 제1 인증용 행렬이 추출되면, (k+t) x k(t은 k보다 작은 자연수) 크기를 갖는 랜덤한 성분 값들로 구성된 랜덤 행렬을 생성하는 랜덤 행렬 생성부;
    상기 랜덤 행렬에서 행의 성분들이 제거될 t개의 행의 위치를 랜덤하게 결정한 후 상기 랜덤 행렬과 상기 t개의 행의 위치를 상기 제1 사용자의 사용자 단말로 전송하면서, 상기 제1 사용자의 사용자 단말로 상기 랜덤 행렬에 대응되는 피드백 행렬의 전송을 요청하는 피드백 요청부;
    상기 제1 사용자의 사용자 단말로부터 상기 랜덤 행렬에 대응되는 피드백 행렬로 제1 피드백 행렬 - 상기 제1 피드백 행렬은 상기 랜덤 행렬에서 상기 t개의 행의 위치에 따른 행의 성분들이 제거되어 k x k 크기의 변형 행렬이 생성된 후 상기 제1 사용자의 사용자 단말에 기 발급되어 저장되어 있는 상기 제1 인증용 행렬과 상기 변형 행렬 간의 아다마르 곱(Hadamard product)이 연산되어 생성된 행렬임 - 이 수신되면, 상기 랜덤 행렬에서 상기 t개의 행의 위치에 따른 행의 성분들을 제거하여 상기 변형 행렬을 생성한 후 상기 제1 인증용 행렬과 상기 변형 행렬 간의 아다마르 곱을 연산하여 제1 연산 행렬을 생성하고, 상기 제1 연산 행렬이 상기 제1 피드백 행렬과 동일한지 확인함으로써, 상기 제1 사용자에 대한 인증을 수행하는 인증 수행부; 및
    상기 제1 사용자에 대한 인증이 완료되면, 상기 데이터 저장소로부터 상기 제1 데이터 세트를 추출한 후 상기 제1 사용자의 사용자 단말로 상기 제1 데이터 세트를 전송하는 전송 처리부
    를 포함하는 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치.
  4. 제3항에 있어서,
    상기 제1 사용자의 사용자 단말은
    상기 지식 데이터베이스 관리 장치로부터 상기 랜덤 행렬과 상기 t개의 행의 위치가 수신되면, 상기 랜덤 행렬에서 상기 t개의 행의 위치에 따른 행의 성분들을 제거하여 상기 변형 행렬을 생성하고, 상기 제1 사용자의 사용자 단말에 기 발급되어 저장되어 있는 상기 제1 인증용 행렬과 상기 변형 행렬 간의 아다마르 곱을 연산하여 상기 제1 피드백 행렬을 생성한 후 상기 제1 피드백 행렬을 상기 지식 데이터베이스 관리 장치로 전송하는 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치.
  5. 제4항에 있어서,
    상기 지식 데이터베이스 관리 장치는
    상기 제1 사용자의 사용자 단말로 상기 제1 데이터 세트의 전송이 완료되면, 0 초과 1 미만의 보정 값들을 성분으로 갖는 k x k 크기의 보정 행렬을 랜덤하게 생성한 후 상기 제1 인증용 행렬과 상기 보정 행렬을 서로 곱하여 상기 제1 인증용 행렬의 갱신을 위한 제1 갱신 행렬을 생성한 후 상기 사용자 식별자 저장부에 저장되어 있는 상기 제1 인증용 행렬을 상기 제1 갱신 행렬로 대체하는 행렬 갱신부; 및
    상기 제1 갱신 행렬을 상기 제1 사용자의 사용자 단말로 전송하면서, 상기 제1 사용자의 사용자 단말에 대해 상기 제1 사용자의 사용자 단말에 저장되어 있는 상기 제1 인증용 행렬을 상기 제1 갱신 행렬로 대체할 것을 지시하는 갱신 명령을 전송하는 갱신 명령 전송부
    를 더 포함하는 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치.
  6. 데이터가 삽입된 복수의 셀들로 구성되되, 첫 번째 행과 첫 번째 열 각각에 적어도 하나의 필드명이 삽입된 표를 포함하는 복수의 스프레드시트 문서들이 저장되어 있는 문서 저장부를 유지하는 단계;
    상기 복수의 스프레드시트 문서들에 기반한 지식 데이터베이스 구축 명령이 인가되면, 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표를 확인하여 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표로부터 첫 번째 행에 삽입된 적어도 하나의 제1 필드명과 첫 번째 열에 삽입된 적어도 하나의 제2 필드명을 확인하고, 첫 번째 행과 첫 번째 열을 제외한 나머지 셀들에 삽입된 데이터를 확인하는 단계;
    상기 적어도 하나의 제1 필드명 중 하나인 세로 필드명과 상기 적어도 하나의 제2 필드명 중 하나인 가로 필드명, 및 상기 세로 필드명과 상기 가로 필드명에 대응되는 셀에 삽입된 데이터를 하나의 데이터 세트로 구성함으로써, 상기 복수의 스프레드시트 문서들 각각에 포함되어 있는 표로부터 복수의 데이터 세트들을 생성하는 단계;
    상기 복수의 데이터 세트들을 데이터 저장소에 저장함으로써, 상기 지식 데이터베이스의 구축을 완료하는 단계;
    상기 지식 데이터베이스에 대한 접근 권한을 갖는 것으로 미리 지정된 복수의 사용자들 각각에 대한 서로 다른 사용자 식별자가 저장되어 있는 사용자 식별자 저장부를 유지하는 단계;
    인증용 행렬을 생성하기 위한 미리 설정된 서로 다른 k2(k는 2이상의 자연수)개의 난수 생성 함수들이 저장되어 있는 난수 생성 함수 저장부를 유지하는 단계;
    상기 지식 데이터베이스의 구축이 완료되면, 상기 복수의 사용자들 각각에 대해 상기 k2개의 난수 생성 함수들을 기초로 k2개의 난수들을 생성하고, 상기 k2개의 난수들을 성분으로 갖는 k x k 크기의 인증용 행렬을 생성함으로써, 상기 복수의 사용자들 각각에 대응하는 k x k 크기의 서로 다른 인증용 행렬을 생성하는 단계;
    상기 사용자 식별자 저장부에 상기 복수의 사용자들 각각에 대응하는 인증용 행렬을 각 사용자의 사용자 식별자에 대응시켜 저장하는 단계;
    상기 복수의 사용자들 각각에 대한 사용자 단말로 각 사용자에 대응하는 인증용 행렬을 전송함으로써, 상기 복수의 사용자들 각각에 대한 인증용 행렬의 발급을 완료하는 단계; 및
    상기 복수의 사용자들 각각에 대한 인증용 행렬의 발급이 완료된 후 상기 복수의 사용자들 중 제1 사용자의 사용자 단말로부터 상기 복수의 데이터 세트들 중 제1 데이터 세트에 대한 전송 요청이 수신되면, 상기 제1 사용자에 대해 발급된 제1 인증용 행렬을 기초로 상기 제1 사용자에 대한 인증을 수행한 후 상기 제1 사용자의 사용자 단말로 상기 제1 데이터 세트를 전송하는 단계
    를 포함하는 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치의 동작 방법.
  7. 삭제
  8. 제6항에 있어서,
    상기 제1 데이터 세트를 전송하는 단계는
    상기 복수의 사용자들 중 상기 제1 사용자의 사용자 단말로부터 상기 복수의 데이터 세트들 중 상기 제1 데이터 세트에 대한 전송 요청이 수신되면, 상기 사용자 식별자 저장부로부터 상기 제1 사용자의 사용자 식별자에 대응되어 저장되어 있는 상기 제1 인증용 행렬을 추출하는 단계;
    상기 제1 인증용 행렬이 추출되면, (k+t) x k(t은 k보다 작은 자연수) 크기를 갖는 랜덤한 성분 값들로 구성된 랜덤 행렬을 생성하는 단계;
    상기 랜덤 행렬에서 행의 성분들이 제거될 t개의 행의 위치를 랜덤하게 결정한 후 상기 랜덤 행렬과 상기 t개의 행의 위치를 상기 제1 사용자의 사용자 단말로 전송하면서, 상기 제1 사용자의 사용자 단말로 상기 랜덤 행렬에 대응되는 피드백 행렬의 전송을 요청하는 단계;
    상기 제1 사용자의 사용자 단말로부터 상기 랜덤 행렬에 대응되는 피드백 행렬로 제1 피드백 행렬 - 상기 제1 피드백 행렬은 상기 랜덤 행렬에서 상기 t개의 행의 위치에 따른 행의 성분들이 제거되어 k x k 크기의 변형 행렬이 생성된 후 상기 제1 사용자의 사용자 단말에 기 발급되어 저장되어 있는 상기 제1 인증용 행렬과 상기 변형 행렬 간의 아다마르 곱(Hadamard product)이 연산되어 생성된 행렬임 - 이 수신되면, 상기 랜덤 행렬에서 상기 t개의 행의 위치에 따른 행의 성분들을 제거하여 상기 변형 행렬을 생성한 후 상기 제1 인증용 행렬과 상기 변형 행렬 간의 아다마르 곱을 연산하여 제1 연산 행렬을 생성하고, 상기 제1 연산 행렬이 상기 제1 피드백 행렬과 동일한지 확인함으로써, 상기 제1 사용자에 대한 인증을 수행하는 단계; 및
    상기 제1 사용자에 대한 인증이 완료되면, 상기 데이터 저장소로부터 상기 제1 데이터 세트를 추출한 후 상기 제1 사용자의 사용자 단말로 상기 제1 데이터 세트를 전송하는 단계
    를 포함하는 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치의 동작 방법.
  9. 제8항에 있어서,
    상기 제1 사용자의 사용자 단말은
    상기 지식 데이터베이스 관리 장치로부터 상기 랜덤 행렬과 상기 t개의 행의 위치가 수신되면, 상기 랜덤 행렬에서 상기 t개의 행의 위치에 따른 행의 성분들을 제거하여 상기 변형 행렬을 생성하고, 상기 제1 사용자의 사용자 단말에 기 발급되어 저장되어 있는 상기 제1 인증용 행렬과 상기 변형 행렬 간의 아다마르 곱을 연산하여 상기 제1 피드백 행렬을 생성한 후 상기 제1 피드백 행렬을 상기 지식 데이터베이스 관리 장치로 전송하는 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치의 동작 방법.
  10. 제9항에 있어서,
    상기 지식 데이터베이스 관리 장치의 동작 방법은
    상기 제1 사용자의 사용자 단말로 상기 제1 데이터 세트의 전송이 완료되면, 0 초과 1 미만의 보정 값들을 성분으로 갖는 k x k 크기의 보정 행렬을 랜덤하게 생성한 후 상기 제1 인증용 행렬과 상기 보정 행렬을 서로 곱하여 상기 제1 인증용 행렬의 갱신을 위한 제1 갱신 행렬을 생성한 후 상기 사용자 식별자 저장부에 저장되어 있는 상기 제1 인증용 행렬을 상기 제1 갱신 행렬로 대체하는 단계; 및
    상기 제1 갱신 행렬을 상기 제1 사용자의 사용자 단말로 전송하면서, 상기 제1 사용자의 사용자 단말에 대해 상기 제1 사용자의 사용자 단말에 저장되어 있는 상기 제1 인증용 행렬을 상기 제1 갱신 행렬로 대체할 것을 지시하는 갱신 명령을 전송하는 단계
    를 더 포함하는 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치의 동작 방법.
  11. 제6항, 제8항, 제9항 또는 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
  12. 제6항, 제8항, 제9항 또는 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.
KR1020190134549A 2019-10-28 2019-10-28 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치 및 그 동작 방법 KR102300467B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190134549A KR102300467B1 (ko) 2019-10-28 2019-10-28 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치 및 그 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190134549A KR102300467B1 (ko) 2019-10-28 2019-10-28 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치 및 그 동작 방법

Publications (2)

Publication Number Publication Date
KR20210050206A KR20210050206A (ko) 2021-05-07
KR102300467B1 true KR102300467B1 (ko) 2021-09-09

Family

ID=75916963

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190134549A KR102300467B1 (ko) 2019-10-28 2019-10-28 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치 및 그 동작 방법

Country Status (1)

Country Link
KR (1) KR102300467B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015210586A (ja) 2014-04-24 2015-11-24 秀一 黒木 多様なデータベースのデータの抽出編集装置及びそのプログラム
KR101739540B1 (ko) 2016-01-27 2017-06-08 주식회사 솔트룩스 통합 지식베이스 구축 시스템 및 방법
KR101797573B1 (ko) * 2016-05-23 2017-11-14 주식회사 한글과컴퓨터 웹 기반의 스프레드시트 서비스 제공 장치 및 방법

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7093137B1 (en) * 1999-09-30 2006-08-15 Casio Computer Co., Ltd. Database management apparatus and encrypting/decrypting system
US20160026616A1 (en) * 2014-07-28 2016-01-28 Microsoft Corporation Presenting dataset of spreadsheet in form based view
KR101769857B1 (ko) * 2015-12-28 2017-08-22 (주)비아이매트릭스 스프레드시트 인터페이스를 이용한 데이터베이스 갱신 시스템
KR101864700B1 (ko) * 2016-07-04 2018-07-13 한다시스템 주식회사 스프레드 시트를 데이터베이스로 통합하는 방법 및 컴퓨터 프로그램
KR102056709B1 (ko) * 2017-04-25 2019-12-17 한다시스템 주식회사 스프레드 시트에서 테이블 레코드를 추출하는 방법 및 이를 실행하기 위한 컴퓨터 프로그램

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015210586A (ja) 2014-04-24 2015-11-24 秀一 黒木 多様なデータベースのデータの抽出編集装置及びそのプログラム
KR101739540B1 (ko) 2016-01-27 2017-06-08 주식회사 솔트룩스 통합 지식베이스 구축 시스템 및 방법
KR101797573B1 (ko) * 2016-05-23 2017-11-14 주식회사 한글과컴퓨터 웹 기반의 스프레드시트 서비스 제공 장치 및 방법

Also Published As

Publication number Publication date
KR20210050206A (ko) 2021-05-07

Similar Documents

Publication Publication Date Title
EP3560143B1 (en) Data isolation in a blockchain network
Fill et al. Knowledge blockchains: Applying blockchain technologies to enterprise modeling
CN109816327B (zh) 合同数据处理方法、装置、计算机设备和存储介质
CN112805694A (zh) 用于改进的实施区块链的智能合约的***和方法
CN108415846B (zh) 一种生成最小自动化测试用例集的方法和装置
CN112184177B (zh) 一种项目监管的方法、设备及存储介质
CN110022315B (zh) 一种块链式账本中的权重管理方法、装置及设备
CN111414739B (zh) Excel数据录入组件、录入方法及装置
CN105471581A (zh) 一种身份验证方法及装置
CN103996000A (zh) 权限管理***及方法
KR20180124545A (ko) 블록체인 시스템 및 블록체인 생성 방법
KR101427990B1 (ko) 비밀번호 변경 방법, 이를 적용한 비밀번호 변경 장치 및 컴퓨터로 읽을 수 있는 기록매체
KR20200077830A (ko) 블록체인 기반 테스트 데이터 관리 방법 및 블록체인 노드 장치
CN104021219A (zh) 一种数据模板的生成方法及装置
CN105812357A (zh) 一种云计算平台的用户密码管理方法
US10700934B2 (en) Communication control device, communication control method, and computer program product
KR102300467B1 (ko) 스프레드시트 문서에 포함된 표를 이용한 지식 데이터베이스의 구축 및 상기 지식 데이터베이스에 대한 사용자 접근을 가능하게 하는 지식 데이터베이스 관리 장치 및 그 동작 방법
CN114372868A (zh) 纸质档案与电子档案的关联管理方法及装置
KR101926566B1 (ko) 다중 서버 환경을 갖는 문서 공동 편집 시스템에서 편집 명령 처리를 수행하기 위한 편집 명령 처리 서버 장치 및 그 동작 방법
CN109726535A (zh) 一种用于大数据平台的数据权限管理的方法和***
CN109241057A (zh) 一种用于分布式***的数字id生成方法
CN108376082A (zh) 一种引用库版本更新方法和***
CN114238273A (zh) 数据库管理方法、装置、设备及存储介质
KR102394483B1 (ko) 전자 문서에 오류가 있는지 여부를 판단하는 오류 판단 서비스를 제공하기 위한 서비스 제공 서버 및 그 동작 방법
CN113392382A (zh) 数据管理方法、电子设备及可读存储介质

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right