[go: up one dir, main page]

KR102328057B1 - Document security service server that supports encryption of document files based on terminal information and operating method thereof - Google Patents

Document security service server that supports encryption of document files based on terminal information and operating method thereof Download PDF

Info

Publication number
KR102328057B1
KR102328057B1 KR1020200131767A KR20200131767A KR102328057B1 KR 102328057 B1 KR102328057 B1 KR 102328057B1 KR 1020200131767 A KR1020200131767 A KR 1020200131767A KR 20200131767 A KR20200131767 A KR 20200131767A KR 102328057 B1 KR102328057 B1 KR 102328057B1
Authority
KR
South Korea
Prior art keywords
user terminal
document file
password
key
identification number
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020200131767A
Other languages
Korean (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 KR1020200131767A priority Critical patent/KR102328057B1/en
Application granted granted Critical
Publication of KR102328057B1 publication Critical patent/KR102328057B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버 및 그 동작 방법이 개시된다. 본 발명은 사용자 단말로부터 상기 사용자 단말에서 생성된 문서 파일에 대한 암호화 요청이 수신되면, 상기 사용자 단말의 기기 고유 식별번호를 기초로 상기 문서 파일의 암호화를 위한 암호화키를 추출하여 상기 사용자 단말로 제공하는 문서 보안 서비스 서버 및 그 동작 방법을 제시함으로써, 상기 사용자 단말에서 상기 사용자 단말의 기기 고유 식별번호를 기초로 상기 문서 파일의 암호화가 완료될 수 있도록 지원하고, 이를 통해, 상기 사용자 단말에서 상기 문서 파일이 복호화될 때, 상기 사용자 단말의 기기 고유 식별번호를 기초로 상기 문서 파일의 복호화가 가능하도록 함으로써, 별도의 비밀번호의 입력 없이, 상기 사용자 단말에서 상기 문서 파일의 암호화와 복호화가 가능하도록 지원할 수 있다.Disclosed are a document security service server that supports encryption of a document file based on terminal information and an operating method thereof. In the present invention, when an encryption request for a document file generated in the user terminal is received from a user terminal, an encryption key for encryption of the document file is extracted based on the device unique identification number of the user terminal and provided to the user terminal By presenting a document security service server and an operating method thereof, the user terminal supports to complete the encryption of the document file based on the device unique identification number of the user terminal, and through this, the document in the user terminal When the file is decrypted, by enabling decryption of the document file based on the device unique identification number of the user terminal, it is possible to support encryption and decryption of the document file in the user terminal without input of a separate password have.

Description

단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버 및 그 동작 방법{DOCUMENT SECURITY SERVICE SERVER THAT SUPPORTS ENCRYPTION OF DOCUMENT FILES BASED ON TERMINAL INFORMATION AND OPERATING METHOD THEREOF}A document security service server that supports encryption of a document file based on terminal information and an operating method thereof

본 발명은 단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버 및 그 동작 방법에 대한 것이다.The present invention relates to a document security service server that supports encryption of a document file based on terminal information and an operating method thereof.

최근, 컴퓨터나 스마트폰 또는 태블릿 PC 등과 같은 전자 단말이 널리 보급됨에 따라 이러한 전자 단말을 이용하여 문서를 열람, 작성, 편집할 수 있도록 하는 다양한 종류의 전자 문서 관련 프로그램들이 출시되고 있다.In recent years, as electronic terminals such as computers, smart phones, or tablet PCs have become widespread, various types of electronic document-related programs have been released that allow users to read, write, and edit documents using the electronic terminals.

이러한 전자 문서 관련 프로그램들로는 기본적인 문서의 작성, 편집 등을 지원하는 워드프로세서, 데이터의 입력, 산술연산, 데이터 관리를 보조하는 스프레드시트, 발표자의 발표를 보조하기 위한 프레젠테이션 프로그램들이 있다.These electronic document-related programs include a word processor supporting basic document creation and editing, a spreadsheet supporting data input, arithmetic operations, and data management, and presentation programs supporting a presenter's presentation.

기존에는 사용자가 보안이 필요한 문서에 대한 암호화를 수행할 때, 소정의 비밀번호를 문서 상에 설정해 둠으로써, 비밀번호를 알지 못하는 사람이 해당 문서를 열람하거나 수정하는 것을 제한해 왔었다.Conventionally, when a user encrypts a document requiring security, by setting a predetermined password on the document, a person who does not know the password has been restricted from reading or modifying the document.

하지만, 이렇게 비밀번호를 이용하여 문서에 대한 암호화를 수행하는 경우, 사용자가 문서를 열람할 때마다 일일히 비밀번호를 입력해야 하는 번거로움이 발생할 수 있다.However, when the document is encrypted by using the password in this way, the inconvenience of having to input the password every time the user reads the document may occur.

또한, 사용자가 문서에 설정된 비밀번호를 잊어버리는 경우, 해당 문서를 열람하지 못하는 문제도 발생할 수 있다.In addition, if the user forgets the password set in the document, there may be a problem that the document cannot be read.

보통, 보안이 필요한 문서는 여러 전자 단말이 아닌, 문서 열람이 허가된 특정 전자 단말에서만 열람 가능하도록 지정되는 경우가 많다.In general, documents requiring security are often designated so that they can be read only in a specific electronic terminal that is permitted to read the document, not in several electronic terminals.

이렇게, 특정 전자 단말에서만 문서 열람이 허가되는 경우에는 상기 특정 전자 단말의 MAC 주소나 상기 특정 전자 단말이 모바일 단말이라면, 해당 전자 단말의 국제모바일기기 식별코드 또는 전화번호 등과 같은 고유 식별번호를 기초로 문서에 대한 암호화와 복호화가 가능하도록 하는 시스템을 구성할 수 있을 것이다.In this way, when document reading is permitted only in a specific electronic terminal, the MAC address of the specific electronic terminal or, if the specific electronic terminal is a mobile terminal, based on a unique identification number such as an international mobile device identification code or phone number of the corresponding electronic terminal It is possible to configure a system that enables encryption and decryption of documents.

이렇게, 특정 전자 단말의 고유 식별번호를 기초로 문서에 대한 암호화와 복호화가 가능하도록 하는 시스템이 도입되는 경우, 사용자가 상기 특정 전자 단말에서 문서를 열람할 때, 별도의 비밀번호가 입력되지 않더라도 상기 고유 식별번호를 기초로 문서의 복호화가 진행될 수 있기 때문에, 사용자는 문서 복호화를 위한 비밀번호를 기억하고 있거나, 비밀번호를 입력할 필요없이, 보다 쉽게 보안이 설정된 문서를 열람할 수 있을 것이다.In this way, when a system enabling encryption and decryption of a document based on a unique identification number of a specific electronic terminal is introduced, when a user reads a document in the specific electronic terminal, even if a separate password is not input Since the decryption of the document can be performed based on the identification number, the user will be able to more easily read the secured document without having to remember the password for decrypting the document or input the password.

본 발명은 사용자 단말로부터 상기 사용자 단말에서 생성된 문서 파일에 대한 암호화 요청이 수신되면, 상기 사용자 단말의 기기 고유 식별번호를 기초로 상기 문서 파일의 암호화를 위한 암호화키를 추출하여 상기 사용자 단말로 제공하는 문서 보안 서비스 서버 및 그 동작 방법을 제시함으로써, 상기 사용자 단말에서 상기 사용자 단말의 기기 고유 식별번호를 기초로 상기 문서 파일의 암호화가 완료될 수 있도록 지원하고, 이를 통해, 상기 사용자 단말에서 상기 문서 파일이 복호화될 때, 상기 사용자 단말의 기기 고유 식별번호를 기초로 상기 문서 파일의 복호화가 가능하도록 함으로써, 별도의 비밀번호의 입력없이, 상기 사용자 단말에서 상기 문서 파일의 암호화와 복호화가 가능하도록 지원하고자 한다.In the present invention, when an encryption request for a document file generated in the user terminal is received from a user terminal, an encryption key for encryption of the document file is extracted based on the device unique identification number of the user terminal and provided to the user terminal By presenting a document security service server and an operating method thereof, the user terminal supports to complete the encryption of the document file based on the device unique identification number of the user terminal, and through this, the document in the user terminal To support encryption and decryption of the document file in the user terminal without input of a separate password by enabling decryption of the document file based on the device unique identification number of the user terminal when the file is decrypted do.

본 발명의 일실시예에 따른 단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버는 공개키와 상기 공개키에 대응되는 개인키로 구성된 서로 다른 n(n은 2이상의 자연수)개의 키 쌍들이 저장되어 있는 키 쌍 저장부, 복수의 사용자 단말들 중 제1 사용자 단말로부터 상기 제1 사용자 단말에서 생성된 문서 파일에 대한 암호화 요청 신호가 수신되면, 상기 제1 사용자 단말로 상기 제1 사용자 단말에 대한 기기 고유 식별번호의 전송을 요청하는 암호화 정보 요청부, 상기 제1 사용자 단말로부터 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 기초로 상기 키 쌍 저장부로부터 상기 n개의 키 쌍들 중 어느 하나인 제1 키 쌍을 구성하는 제1 공개키를 추출하는 공개키 추출부, 상기 제1 공개키가 추출되면, 상기 제1 공개키를 상기 제1 사용자 단말로 전송함과 동시에, 상기 문서 파일을 상기 제1 공개키로 암호화하도록 지시하는 암호화 명령을 상기 제1 사용자 단말에 전송하는 암호화 정보 전송부 및 상기 제1 사용자 단말에서 상기 문서 파일에 대한 암호화가 완료되면, 상기 제1 사용자 단말로부터 상기 문서 파일에 대한 암호화가 완료되었음을 지시하는 암호화 완료 메시지를 수신하는 암호화 메시지 수신부를 포함한다.A document security service server supporting encryption of a document file based on terminal information according to an embodiment of the present invention includes n different (n is a natural number greater than or equal to 2) composed of a public key and a private key corresponding to the public key. When an encryption request signal for a document file generated in the first user terminal is received from a key pair storage unit in which key pairs are stored, and a first user terminal among a plurality of user terminals, the first user terminal is sent to the first user terminal. An encryption information requesting unit for requesting transmission of a device-specific identification number to a user terminal, when a first device-specific identification number is received from the first user terminal, from the key pair storage unit based on the first device-specific identification number A public key extraction unit for extracting a first public key constituting a first key pair, which is one of the n key pairs, and when the first public key is extracted, transmits the first public key to the first user terminal At the same time, an encryption information transmission unit for transmitting an encryption command instructing to encrypt the document file with the first public key to the first user terminal and when encryption of the document file is completed in the first user terminal, the and an encryption message receiving unit for receiving an encryption completion message indicating that encryption of the document file is completed from the first user terminal.

또한, 본 발명의 일실시예에 따른 단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버의 동작 방법은 공개키와 상기 공개키에 대응되는 개인키로 구성된 서로 다른 n(n은 2이상의 자연수)개의 키 쌍들이 저장되어 있는 키 쌍 저장부를 유지하는 단계, 복수의 사용자 단말들 중 제1 사용자 단말로부터 상기 제1 사용자 단말에서 생성된 문서 파일에 대한 암호화 요청 신호가 수신되면, 상기 제1 사용자 단말로 상기 제1 사용자 단말에 대한 기기 고유 식별번호의 전송을 요청하는 단계, 상기 제1 사용자 단말로부터 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 기초로 상기 키 쌍 저장부로부터 상기 n개의 키 쌍들 중 어느 하나인 제1 키 쌍을 구성하는 제1 공개키를 추출하는 단계, 상기 제1 공개키가 추출되면, 상기 제1 공개키를 상기 제1 사용자 단말로 전송함과 동시에, 상기 문서 파일을 상기 제1 공개키로 암호화하도록 지시하는 암호화 명령을 상기 제1 사용자 단말에 전송하는 단계 및 상기 제1 사용자 단말에서 상기 문서 파일에 대한 암호화가 완료되면, 상기 제1 사용자 단말로부터 상기 문서 파일에 대한 암호화가 완료되었음을 지시하는 암호화 완료 메시지를 수신하는 단계를 포함한다.In addition, the operating method of the document security service server supporting the encryption of a document file based on terminal information according to an embodiment of the present invention is different n (n is a public key and a private key corresponding to the public key) 2 or more) maintaining a key pair storage unit in which key pairs are stored, when an encryption request signal for a document file generated in the first user terminal is received from a first user terminal among a plurality of user terminals, the requesting transmission of a device-specific identification number for the first user terminal to a first user terminal; when a first device-specific identification number is received from the first user terminal, based on the first device-specific identification number extracting a first public key constituting a first key pair that is any one of the n key pairs from a key pair storage unit; when the first public key is extracted, the first public key is transferred to the first user terminal at the same time as transmitting to the first user terminal, transmitting an encryption command instructing to encrypt the document file with the first public key, and when encryption of the document file is completed in the first user terminal, the second and receiving an encryption completion message indicating that encryption of the document file is completed from a user terminal.

본 발명은 사용자 단말로부터 상기 사용자 단말에서 생성된 문서 파일에 대한 암호화 요청이 수신되면, 상기 사용자 단말의 기기 고유 식별번호를 기초로 상기 문서 파일의 암호화를 위한 암호화키를 추출하여 상기 사용자 단말로 제공하는 문서 보안 서비스 서버 및 그 동작 방법을 제시함으로써, 상기 사용자 단말에서 상기 사용자 단말의 기기 고유 식별번호를 기초로 상기 문서 파일의 암호화가 완료될 수 있도록 지원하고, 이를 통해, 상기 사용자 단말에서 상기 문서 파일이 복호화될 때, 상기 사용자 단말의 기기 고유 식별번호를 기초로 상기 문서 파일의 복호화가 가능하도록 함으로써, 별도의 비밀번호의 입력없이, 상기 사용자 단말에서 상기 문서 파일의 암호화와 복호화가 가능하도록 지원할 수 있다.In the present invention, when an encryption request for a document file generated in the user terminal is received from a user terminal, an encryption key for encryption of the document file is extracted based on the device unique identification number of the user terminal and provided to the user terminal By presenting a document security service server and an operating method thereof, the user terminal supports to complete the encryption of the document file based on the device unique identification number of the user terminal, and through this, the document in the user terminal When the file is decrypted, by enabling decryption of the document file based on the device unique identification number of the user terminal, it is possible to support encryption and decryption of the document file in the user terminal without input of a separate password have.

도 1은 본 발명의 일실시예에 따른 문서 보안 서비스 서버의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 문서 보안 서비스 서버의 동작 방법을 도시한 순서도이다.
1 is a diagram showing the structure of a document security service server according to an embodiment of the present invention.
2 is a flowchart illustrating a method of operating a document security service 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 accompanying drawings. These descriptions are not intended to limit the present invention to specific embodiments, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. While describing each drawing, like reference numerals are used for similar components, and unless otherwise defined, all terms used in this specification, including technical or scientific terms, refer to those of ordinary skill in the art to which the present invention belongs. It has the same meaning as is commonly understood by those who have it.

본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다. In this document, when a part "includes" a certain component, it means that other components may be further included, rather than excluding other components, unless otherwise stated. In addition, in various embodiments of the present invention, each of the components, functional blocks or means may be composed of one or more sub-components, and the electrical, electronic, and mechanical functions performed by each component are electronic. A circuit, an integrated circuit, an ASIC (Application Specific Integrated Circuit), etc. may be implemented with various well-known devices or mechanical elements, and may be implemented separately or two or more may be integrated into one.

한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.On the other hand, the blocks in the accompanying block diagram or steps in the flowchart are computer program instructions that are loaded in a processor or memory of equipment capable of data processing, such as a general-purpose computer, a special-purpose computer, a portable notebook computer, and a network computer, and perform specified functions. can be interpreted as meaning Since these computer program instructions may be stored in a memory provided in a computer device or in a memory readable by a computer, the functions described in the blocks of the block diagrams or the steps of the flowcharts are produced as articles of manufacture containing instruction means for performing the same. could be In addition, each block or each step may represent a module, segment, or portion of code comprising one or more executable instructions for executing the specified logical function(s). It should also be noted that, in some alternative embodiments, it is also possible for the functions recited in blocks or steps to be executed out of the prescribed order. For example, two blocks or steps shown one after another may be performed substantially simultaneously or in the reverse order, and in some cases, some blocks or steps may be omitted.

도 1은 본 발명의 일실시예에 따른 단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버의 구조를 도시한 도면이다.1 is a diagram illustrating a structure of a document security service server that supports encryption of a document file based on terminal information according to an embodiment of the present invention.

본 발명에 따른 문서 보안 서비스 서버(110)는 키 쌍 저장부(111), 암호화 정보 요청부(112), 공개키 추출부(113), 암호화 정보 전송부(114) 및 암호화 메시지 수신부(115)를 포함한다.The document security service server 110 according to the present invention includes a key pair storage unit 111 , an encryption information request unit 112 , a public key extraction unit 113 , an encryption information transmission unit 114 , and an encryption message reception unit 115 . includes

키 쌍 저장부(111)에는 공개키와 상기 공개키에 대응되는 개인키로 구성된 서로 다른 n(n은 2이상의 자연수)개의 키 쌍들이 저장되어 있다.In the key pair storage unit 111, n different (n is a natural number greater than or equal to 2) key pairs composed of a public key and a private key corresponding to the public key are stored.

이때, 본 발명의 일실시예에 따르면, 키 쌍 저장부(111)에는 상기 n개의 키 쌍들 각각에 대해, 상기 n개의 키 쌍들 각각에 대응하는 0 이상 n-1 이하의 사전 설정된 서로 다른 정수 값이 추가로 대응되어 저장되어 있을 수 있다.At this time, according to an embodiment of the present invention, in the key pair storage unit 111, for each of the n key pairs, preset different integer values of 0 or more and n-1 or less corresponding to each of the n key pairs This may be additionally stored in correspondence.

예컨대, 'n=5'라고 가정하는 경우, 키 쌍 저장부(111)에는 하기의 표 1 같이, 5개의 키 쌍들과 각 키 쌍에 대응되는 '0 이상 4 이하의 서로 다른 정수 값'에 대한 정보가 저장되어 있을 수 있다.For example, if it is assumed that 'n=5', the key pair storage unit 111 contains five key pairs and 'different integer values between 0 and 4' corresponding to each key pair as shown in Table 1 below. Information may be stored.

5개의 키 쌍들5 key pairs 정수 값integer value 공개키 1 - 개인키 1public key 1 - private key 1 00 공개키 2 - 개인키 2public key 2 - private key 2 1One 공개키 3 - 개인키 3public key 3 - private key 3 22 공개키 4 - 개인키 4public key 4 - private key 4 33 공개키 5 - 개인키 5public key 5 - private key 5 44

암호화 정보 요청부(112)는 복수의 사용자 단말들(101, 102, 103, 104) 중 제1 사용자 단말(101)로부터 제1 사용자 단말(101)에서 생성된 문서 파일에 대한 암호화 요청 신호가 수신되면, 제1 사용자 단말(101)로 제1 사용자 단말(101)에 대한 기기 고유 식별번호의 전송을 요청한다.The encryption information request unit 112 receives an encryption request signal for the document file generated in the first user terminal 101 from the first user terminal 101 among the plurality of user terminals 101 , 102 , 103 , 104 . If it is, it requests transmission of the device-specific identification number for the first user terminal 101 to the first user terminal 101 .

여기서, 기기 고유 식별번호란 MAC 주소(Media Access Control Address), 복수의 사용자 단말들(101, 102, 103, 104)이 모바일 단말이라면, 국제모바일기기 식별코드(International Mobile Equipment Identity) 또는 각 사용자 단말에 할당된 전화번호 등을 의미한다.Here, the device-specific identification number is a MAC address (Media Access Control Address), if the plurality of user terminals 101, 102, 103, 104 is a mobile terminal, an International Mobile Equipment Identity or each user terminal means a phone number assigned to

공개키 추출부(113)는 제1 사용자 단말(101)로부터 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 기초로 키 쌍 저장부(111)로부터 상기 n개의 키 쌍들 중 어느 하나인 제1 키 쌍을 구성하는 제1 공개키를 추출한다.When the first device-specific identification number is received from the first user terminal 101, the public key extraction unit 113 receives the first device-specific identification number from among the n key pairs from the key pair storage unit 111 based on the first device-specific identification number. Extracts the first public key constituting any one of the first key pair.

이때, 본 발명의 일실시예에 따르면, 공개키 추출부(113)는 제1 사용자 단말(101)로부터 상기 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 제1 정수 값으로 변환하고, 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로(modulo) 연산을 수행함으로써, 제1 연산 값을 산출하며, 키 쌍 저장부(111)로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 상기 제1 공개키를 추출할 수 있다.At this time, according to an embodiment of the present invention, when the public key extraction unit 113 receives the first device-specific identification number from the first user terminal 101, the first device-specific identification number is an integer of a decimal number. Converting to a first integer value, and performing a modulo operation of dividing the first integer value as a dividend by n as a divisor, thereby calculating a first operation value, and storing the first value from the key pair storage 111 After selecting the first key pair corresponding to the operation value, the first public key may be extracted from the first key pair.

여기서, 모듈로 연산은 피제수를 제수로 나누는 나눗셈을 수행하여 그에 대한 나머지(remainder)를 산출하는 연산을 의미한다.Here, the modulo operation refers to an operation of dividing a dividend by a divisor to calculate a remainder thereof.

예컨대, 'n=5'라고 하고, 상기 제1 기기 고유 식별번호를 '1A:00:3F:F1:4C:C5'와 같은 MAC 주소라고 가정하자. 보통, MAC 주소는 16진수로 구성된 숫자이기 때문에, 공개키 추출부(113)는 상기 제1 기기 고유 식별번호인 '1A:00:3F:F1:4C:C5'에서 16진수의 숫자인 '1A003FF14CC5'를 10진수의 제1 정수 값인 '28588375100613'으로 변환할 수 있다.For example, it is assumed that 'n=5' and the first device unique identification number is a MAC address such as '1A:00:3F:F1:4C:C5'. Usually, since the MAC address is a hexadecimal number, the public key extraction unit 113 performs the first device unique identification number '1A:00:3F:F1:4C:C5' to the hexadecimal number '1A003FF14CC5'. ' can be converted to '28588375100613', which is the first integer value of a decimal number.

그 이후, 공개키 추출부(113)는 상기 제1 정수 값인 '28588375100613'을 피제수로 5를 제수로 하는 모듈로 연산을 수행함으로써, 제1 연산 값인 '3'을 산출할 수 있다.Thereafter, the public key extraction unit 113 may calculate a first calculated value of '3' by performing a modulo operation of dividing 5 as a divisor of the first integer value '28588375100613'.

그러고 나서, 공개키 추출부(113)는 상기 표 1과 같은 키 쌍 저장부(111)로부터 상기 제1 연산 값인 '3'에 대응되는 제1 키 쌍인 '공개키 4 - 개인키 4'를 선택한 후 상기 제1 키 쌍인 '공개키 4 - 개인키 4'에서 '공개키 4'를 상기 제1 공개키로 추출할 수 있다.Then, the public key extraction unit 113 selects the first key pair 'public key 4 - private key 4' corresponding to the first operation value '3' from the key pair storage unit 111 as shown in Table 1 above. Thereafter, 'public key 4' may be extracted from the first key pair 'public key 4 - private key 4' as the first public key.

이렇게, 공개키 추출부(113)에 의해 상기 제1 공개키가 추출되면, 암호화 정보 전송부(114)는 상기 제1 공개키를 제1 사용자 단말(101)로 전송함과 동시에, 상기 문서 파일을 상기 제1 공개키로 암호화하도록 지시하는 암호화 명령을 제1 사용자 단말(101)에 전송한다.In this way, when the first public key is extracted by the public key extracting unit 113 , the encryption information transmitting unit 114 transmits the first public key to the first user terminal 101 and at the same time as the document file transmits an encryption command instructing to encrypt with the first public key to the first user terminal 101 .

이때, 제1 사용자 단말(101)은 문서 보안 서비스 서버(110)로부터 상기 제1 공개키와 상기 암호화 명령이 수신되면, 상기 제1 공개키를 기초로 상기 문서 파일을 암호화한 후 상기 문서 파일에 대한 암호화가 완료되었음을 지시하는 암호화 완료 메시지를 문서 보안 서비스 서버(110)로 전송할 수 있다.At this time, when the first public key and the encryption command are received from the document security service server 110 , the first user terminal 101 encrypts the document file based on the first public key and then An encryption completion message indicating that encryption is completed may be transmitted to the document security service server 110 .

이때, 암호화 메시지 수신부(115)는 제1 사용자 단말(101)로부터 제1 사용자 단말(101)에서 상기 문서 파일에 대한 암호화가 완료됨에 따라 전송되는 상기 암호화 완료 메시지를 수신한다.In this case, the encryption message receiving unit 115 receives the encryption completion message transmitted from the first user terminal 101 as the encryption of the document file is completed in the first user terminal 101 .

즉, 문서 보안 서비스 서버(110)는 키 쌍 저장부(111)에 공개키와 상기 공개키에 대응되는 개인키로 구성된 서로 다른 키 쌍들을 저장해 둔 상태에서, 복수의 사용자 단말들(101, 102, 103, 104) 중 제1 사용자 단말(101)로부터 제1 사용자 단말(101)에서 생성된 문서 파일에 대한 암호화 요청 신호가 수신되면, 제1 사용자 단말(101)로 제1 사용자 단말(101)에 대한 기기 고유 식별번호의 전송을 요청하고, 제1 사용자 단말(101)로부터 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 기초로 키 쌍 저장부(111)로부터 제1 키 쌍을 구성하는 제1 공개키를 추출하고, 상기 제1 공개키를 제1 사용자 단말(101)로 전송함과 동시에, 상기 문서 파일을 상기 제1 공개키로 암호화하도록 지시하는 암호화 명령을 제1 사용자 단말(101)에 전송함으로써, 제1 사용자 단말(101)에서 상기 문서 파일이 제1 사용자 단말(101)의 기기 고유 식별번호를 기초로 암호화가 완료될 수 있도록 지원할 수 있다.That is, the document security service server 110 stores different key pairs composed of a public key and a private key corresponding to the public key in the key pair storage unit 111, and the plurality of user terminals 101, 102, When an encryption request signal for the document file generated in the first user terminal 101 is received from the first user terminal 101 among 103 and 104 , the first user terminal 101 sends the first user terminal 101 to the first user terminal 101 . When a device-specific identification number is requested to be transmitted, and a first device-specific identification number is received from the first user terminal 101, the first key from the key pair storage unit 111 based on the first device-specific identification number The first user extracts the first public key constituting the pair, transmits the first public key to the first user terminal 101, and at the same time sends an encryption command instructing to encrypt the document file with the first public key By transmitting to the terminal 101 , it is possible to support the document file to be encrypted in the first user terminal 101 based on the device-specific identification number of the first user terminal 101 .

본 발명의 일실시예에 따르면, 문서 보안 서비스 서버(110)는 복호화 정보 요청부(116), 개인키 추출부(117), 복호화 정보 전송부(118) 및 복호화 메시지 수신부(119)를 더 포함할 수 있다.According to an embodiment of the present invention, the document security service server 110 further includes a decryption information request unit 116 , a private key extractor 117 , a decryption information transmitter 118 , and a decryption message receiver 119 . can do.

복호화 정보 요청부(116)는 제1 사용자 단말(101)로부터 상기 암호화 완료 메시지가 수신된 이후, 제1 사용자 단말(101)에서 암호화된 상기 문서 파일이 실행됨에 따라 제1 사용자 단말(101)로부터 암호화된 상기 문서 파일에 대한 복호화 요청 신호가 수신되면, 제1 사용자 단말(101)로 제1 사용자 단말(101)에 대한 기기 고유 식별번호의 전송을 요청한다.After receiving the encryption completion message from the first user terminal 101 , the decryption information requesting unit 116 receives the encrypted document file from the first user terminal 101 as the encrypted document file is executed. When the decryption request signal for the encrypted document file is received, the transmission of the device-specific identification number to the first user terminal 101 is requested to the first user terminal 101 .

개인키 추출부(117)는 제1 사용자 단말(101)로부터 상기 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 상기 제1 정수 값으로 변환하고, 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출하며, 키 쌍 저장부(111)로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 제1 개인키를 추출한다.When the first device-specific identification number is received from the first user terminal 101, the private key extraction unit 117 converts the first device-specific identification number into the first integer value that is an integer of a decimal number, and the second By performing a modulo operation in which an integer value is a dividend and n is a divisor, the first operation value is calculated, and the first key pair corresponding to the first operation value is selected from the key pair storage unit 111 . Then, a first private key is extracted from the first key pair.

복호화 정보 전송부(118)는 상기 제1 개인키가 추출되면, 상기 제1 개인키를 제1 사용자 단말(101)로 전송함과 동시에, 암호화된 상기 문서 파일을 상기 제1 개인키로 복호화하도록 지시하는 복호화 명령을 제1 사용자 단말(101)에 전송한다.When the first private key is extracted, the decryption information transmission unit 118 transmits the first private key to the first user terminal 101 and at the same time instructs to decrypt the encrypted document file with the first private key. transmits a decryption command to the first user terminal 101 .

복호화 메시지 수신부(119)는 제1 사용자 단말(101)에서 암호화된 상기 문서 파일에 대한 복호화가 완료되면, 제1 사용자 단말(101)로부터 암호화된 상기 문서 파일에 대한 복호화가 완료되었음을 지시하는 복호화 완료 메시지를 수신한다.When the decryption of the document file encrypted by the first user terminal 101 is completed, the decryption message receiving unit 119 indicates that the decryption of the encrypted document file from the first user terminal 101 is completed. receive a message

이하에서는 복호화 정보 요청부(116), 개인키 추출부(117), 복호화 정보 전송부(118) 및 복호화 메시지 수신부(119)의 동작에 대해 예를 들어 상세히 설명하기로 한다.Hereinafter, operations of the decryption information request unit 116 , the private key extractor 117 , the decryption information transmitter 118 , and the decryption message receiver 119 will be described in detail with an example.

먼저, 앞서 설명한 예시와 같이, 'n=5'라고 하고, 상기 제1 기기 고유 식별번호를 '1A:00:3F:F1:4C:C5'라고 가정하자.First, as in the example described above, it is assumed that 'n=5' and the first device unique identification number is '1A:00:3F:F1:4C:C5'.

이때, 제1 사용자 단말(101)로부터 문서 보안 서비스 서버(110)에 상기 암호화 완료 메시지가 수신된 이후, 제1 사용자 단말(101)에서 암호화된 상기 문서 파일이 실행됨에 따라 제1 사용자 단말(101)로부터 문서 보안 서비스 서버(110)에 암호화된 상기 문서 파일에 대한 복호화 요청 신호가 수신되면, 복호화 정보 요청부(116)는 제1 사용자 단말(101)로 제1 사용자 단말(101)에 대한 기기 고유 식별번호의 전송을 요청할 수 있다.At this time, after the encryption completion message is received from the first user terminal 101 to the document security service server 110 , as the encrypted document file is executed in the first user terminal 101 , the first user terminal 101 ), when a decryption request signal for the encrypted document file is received from the document security service server 110 , the decryption information request unit 116 sends the first user terminal 101 to the first user terminal 101 You can request transmission of a unique identification number.

이때, 제1 사용자 단말(101)로부터 문서 보안 서비스 서버(110)에 상기 제1 기기 고유 식별번호인 '1A:00:3F:F1:4C:C5'가 수신되면, 개인키 추출부(117)는 상기 제1 기기 고유 식별번호인 '1A:00:3F:F1:4C:C5'에서 16진수의 숫자인 '1A003FF14CC5'를 10진수의 제1 정수 값인 '28588375100613'으로 변환할 수 있다.At this time, when '1A:00:3F:F1:4C:C5', which is the first device unique identification number, is received from the first user terminal 101 to the document security service server 110, the private key extraction unit 117 can convert '1A003FF14CC5', which is a hexadecimal number, from '1A:00:3F:F1:4C:C5', which is the first device unique identification number, to '28588375100613', which is a first integer value of a decimal number.

그 이후, 개인키 추출부(117)는 상기 제1 정수 값인 '28588375100613'을 피제수로 5를 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값인 '3'을 산출할 수 있다.Thereafter, the private key extraction unit 117 may calculate the first calculated value '3' by performing a modulo operation of dividing 5 as a divisor of the first integer value '28588375100613'.

그러고 나서, 개인키 추출부(117)는 상기 표 1과 같은 키 쌍 저장부(111)로부터 상기 제1 연산 값인 '3'에 대응되는 상기 제1 키 쌍인 '공개키 4 - 개인키 4'를 선택한 후 상기 제1 키 쌍인 '공개키 4 - 개인키 4'에서 제1 개인키인 '개인키 4'를 추출할 수 있다.Then, the private key extraction unit 117 extracts the first key pair 'public key 4 - private key 4' corresponding to the first operation value '3' from the key pair storage unit 111 as shown in Table 1 above. After selection, the first private key 'private key 4' may be extracted from the first key pair 'public key 4 - private key 4'.

이렇게, 개인키 추출부(117)에 의해 상기 제1 개인키인 '개인키 4'가 추출되면, 복호화 정보 전송부(118)는 상기 제1 개인키인 '개인키 4'를 제1 사용자 단말(101)로 전송함과 동시에, 암호화된 상기 문서 파일을 상기 제1 개인키인 '개인키 4'로 복호화하도록 지시하는 복호화 명령을 제1 사용자 단말(101)에 전송할 수 있다.In this way, when the 'private key 4' which is the first private key is extracted by the private key extraction unit 117, the decryption information transmission unit 118 converts the 'private key 4' which is the first private key to the first user terminal. At the same time as transmitting to 101 , a decryption command instructing to decrypt the encrypted document file using the 'private key 4', which is the first private key, may be transmitted to the first user terminal 101 .

이렇게, 복호화 정보 전송부(118)에 의해, 제1 사용자 단말(101)로 상기 제1 개인키인 '개인키 4'와 상기 복호화 명령이 전송되면, 제1 사용자 단말(101)은 상기 제1 개인키인 '개인키 4'와 상기 복호화 명령을 수신하여, 상기 제1 개인키인 '개인키 4'를 기초로 상기 문서 파일을 복호화한 후 상기 문서 파일에 대한 복호화가 완료되었음을 지시하는 복호화 완료 메시지를 문서 보안 서비스 서버(110)로 전송할 수 있다.In this way, when the 'private key 4' which is the first private key and the decryption command are transmitted to the first user terminal 101 by the decryption information transmission unit 118, the first user terminal 101 transmits the first After receiving the 'private key 4' which is the private key and the decryption command, the document file is decrypted based on the 'private key 4' which is the first private key, and then the decryption completion indicating that the decryption of the document file is completed The message may be transmitted to the document security service server 110 .

이때, 복호화 메시지 수신부(119)는 제1 사용자 단말(101)로부터 제1 사용자 단말(101)에서 상기 문서 파일에 대한 복호화가 완료됨에 따라 전송되는 상기 복호화 완료 메시지를 수신할 수 있다.In this case, the decryption message receiver 119 may receive the decryption completion message transmitted from the first user terminal 101 as the decryption of the document file is completed in the first user terminal 101 .

결국, 본 발명에 따른 문서 보안 서비스 서버(110)는 제1 사용자 단말(101)의 기기 고유 식별번호에 기반하여 추출된 제1 공개키로 제1 사용자 단말(101)에서 상기 문서 파일의 암호화가 완료된 이후, 제1 사용자 단말(101)로부터 상기 문서 파일이 실행됨에 따라 제1 사용자 단말(101)로부터 상기 문서 파일의 복호화 요청이 수신되면, 제1 사용자 단말(101)의 기기 고유 식별번호를 기초로 상기 제1 공개키에 대응되는 제1 개인키를 추출하여 제1 사용자 단말(101)로 제공함으로써, 제1 사용자 단말(101)에서 상기 문서 파일이 별도의 비밀번호의 입력 없이도, 자동으로 복호화가 완료될 수 있도록 지원할 수 있다.As a result, the document security service server 110 according to the present invention completes the encryption of the document file in the first user terminal 101 with the first public key extracted based on the device-specific identification number of the first user terminal 101 . Thereafter, when a request to decrypt the document file is received from the first user terminal 101 as the document file is executed from the first user terminal 101 , based on the device unique identification number of the first user terminal 101 , By extracting the first private key corresponding to the first public key and providing it to the first user terminal 101, the document file is automatically decrypted in the first user terminal 101 without entering a separate password. can support you to become

본 발명의 일실시예에 따르면, 문서 보안 서비스 서버(110)는 특정 사용자 단말에서 문서 파일의 암호화가 완료된 이후, 상기 특정 사용자 단말의 사용자가 상기 문서 파일에 대한 복호화 권한을 다른 사용자 단말로 넘기고자 하는 경우, 상기 문서 파일에 대한 복호화 권한이 상기 특정 사용자 단말에서 다른 사용자 단말로 전달될 수 있도록 하기 위한 구성을 더 포함할 수 있다.According to an embodiment of the present invention, after the document security service server 110 completes encryption of a document file in a specific user terminal, the user of the specific user terminal wants to transfer the decryption right for the document file to another user terminal. In this case, the method may further include a configuration for allowing the decryption right for the document file to be transferred from the specific user terminal to another user terminal.

이와 관련해서, 본 발명에 따른 문서 보안 서비스 서버(110)는 정보 요청부(120), 복호화부(121), 단말 정보 요청부(122), 추가 키 추출부(123) 및 문서 파일 전달부(124)를 더 포함할 수 있다.In this regard, the document security service server 110 according to the present invention includes an information requesting unit 120, a decrypting unit 121, a terminal information requesting unit 122, an additional key extracting unit 123, and a document file transmitting unit ( 124) may be further included.

정보 요청부(120)는 제1 사용자 단말(101)로부터 암호화된 상기 문서 파일을 제2 사용자 단말(102)로 전달할 것을 요청하는 전달 요청 신호가 수신되면, 제1 사용자 단말(101)로 암호화된 상기 문서 파일과 제1 사용자 단말(101)에 대한 기기 고유 식별번호의 전송을 요청한다.When the information requesting unit 120 receives a transmission request signal requesting to transmit the encrypted document file to the second user terminal 102 from the first user terminal 101, the encrypted document file to the first user terminal 101 is received. It requests transmission of the document file and the device-specific identification number to the first user terminal 101 .

복호화부(121)는 제1 사용자 단말(101)로부터 암호화된 상기 문서 파일과 상기 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 상기 제1 정수 값으로 변환하고, 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출하며, 키 쌍 저장부(111)로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 상기 제1 개인키를 추출하여 암호화된 상기 문서 파일을 상기 제1 개인키로 복호화한다.When the encrypted document file and the first device-specific identification number are received from the first user terminal 101, the decryption unit 121 converts the first device-specific identification number into the first integer value that is an integer of a decimal number. and, by performing a modulo operation in which the first integer value is a dividend and n as a divisor, the first operation value is calculated, and the first operation value corresponding to the first operation value is obtained from the key pair storage unit 111 . After selecting a key pair, the first private key is extracted from the first key pair, and the encrypted document file is decrypted with the first private key.

단말 정보 요청부(122)는 제2 사용자 단말(102)과의 통신 접속을 시도하고, 제2 사용자 단말(102)과의 통신 접속이 이루어지면, 제2 사용자 단말(102)로 제2 사용자 단말(102)에 대한 기기 고유 식별번호의 전송을 요청한다.The terminal information requesting unit 122 attempts a communication connection with the second user terminal 102 , and when the communication connection with the second user terminal 102 is established, the second user terminal 102 is sent to the second user terminal. Request the transmission of the device unique identification number to (102).

추가 키 추출부(123)는 제2 사용자 단말(102)로부터 제2 기기 고유 식별번호가 수신되면, 상기 제2 기기 고유 식별번호를 10진수의 정수인 제2 정수 값으로 변환하고, 상기 제2 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 제2 연산 값을 산출하며, 키 쌍 저장부(111)로부터 상기 제2 연산 값에 대응되는 제2 키 쌍을 선택한 후 상기 제2 키 쌍에서 제2 공개키를 추출한다.When the second device-specific identification number is received from the second user terminal 102 , the additional key extraction unit 123 converts the second device-specific identification number into a second integer value that is an integer of a decimal number, and the second integer A second operation value is calculated by performing a modulo operation in which a value is a dividend and n is a divisor, and after selecting a second key pair corresponding to the second operation value from the key pair storage unit 111 , the second A second public key is extracted from the key pair.

문서 파일 전달부(124)는 상기 제2 공개키가 추출되면, 복호화된 상기 문서 파일을 상기 제2 공개키로 재암호화한 후 재암호화된 상기 문서 파일을 제2 사용자 단말(102)로 전송한다.When the second public key is extracted, the document file transfer unit 124 re-encrypts the decrypted document file with the second public key and then transmits the re-encrypted document file to the second user terminal 102 .

이하에서는 정보 요청부(120), 복호화부(121), 단말 정보 요청부(122), 추가 키 추출부(123) 및 문서 파일 전달부(124)의 동작에 대해 예를 들어 상세히 설명하기로 한다.Hereinafter, operations of the information request unit 120 , the decryption unit 121 , the terminal information request unit 122 , the additional key extraction unit 123 , and the document file transfer unit 124 will be described in detail with an example. .

먼저, 앞서 설명한 예시와 같이, 'n=5'라고 하고, 상기 제1 기기 고유 식별번호를 '1A:00:3F:F1:4C:C5'라고 하며, 제2 기기 고유 식별번호를 '2C:4B:00:A1:3C:E7'이라고 가정하자.First, as in the example described above, 'n=5', the first device-specific identification number is '1A:00:3F:F1:4C:C5', and the second device-specific identification number is '2C: Assume 4B:00:A1:3C:E7'.

이때, 제1 사용자 단말(101)로부터 문서 보안 서비스 서버(110)에 암호화된 상기 문서 파일을 제2 사용자 단말(102)로 전달할 것을 요청하는 전달 요청 신호가 수신되면, 정보 요청부(120)는 제1 사용자 단말(101)로 암호화된 상기 문서 파일과 제1 사용자 단말(101)에 대한 기기 고유 식별번호의 전송을 요청할 수 있다.At this time, when a transmission request signal requesting to transmit the encrypted document file to the document security service server 110 from the first user terminal 101 is received to the second user terminal 102, the information requesting unit 120 is The transmission of the encrypted document file and the device-specific identification number to the first user terminal 101 may be requested to the first user terminal 101 .

이때, 제1 사용자 단말(101)로부터 문서 보안 서비스 서버(110)에 암호화된 상기 문서 파일과 상기 제1 기기 고유 식별번호인 '1A:00:3F:F1:4C:C5'가 수신되면, 복호화부(121)는 상기 제1 기기 고유 식별번호인 '1A:00:3F:F1:4C:C5'에서 16진수의 숫자인 '1A003FF14CC5'를 10진수의 상기 제1 정수 값인 '28588375100613'으로 변환할 수 있다.At this time, when the document file encrypted in the document security service server 110 and '1A:00:3F:F1:4C:C5', which is the first device-specific identification number, are received from the first user terminal 101, the decryption The unit 121 converts '1A003FF14CC5', which is a hexadecimal number, from '1A:00:3F:F1:4C:C5', which is the first device unique identification number, to '28588375100613', which is the first integer value of a decimal number. can

그 이후, 복호화부(121)는 상기 제1 정수 값인 '28588375100613'을 피제수로 5를 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값인 '3'을 산출할 수 있다.Thereafter, the decoder 121 may calculate the first calculated value '3' by performing a modulo operation of dividing 5 as a divisor on the first integer value '28588375100613'.

그러고 나서, 복호화부(121)는 상기 표 1과 같은 키 쌍 저장부(111)로부터 상기 제1 연산 값인 '3'에 대응되는 상기 제1 키 쌍인 '공개키 4 - 개인키 4'를 선택한 후 상기 제1 키 쌍인 '공개키 4 - 개인키 4'에서 상기 제1 개인키인 '개인키 4'를 추출하여 암호화된 상기 문서 파일을 상기 제1 개인키인 '개인키 4'로 복호화할 수 있다.Then, the decryption unit 121 selects the first key pair 'public key 4 - private key 4' corresponding to the first operation value '3' from the key pair storage unit 111 as shown in Table 1 above. The first private key, 'private key 4', is extracted from the first key pair 'public key 4 - private key 4', and the encrypted document file can be decrypted with the first private key 'private key 4'. have.

그 이후, 단말 정보 요청부(122)는 제2 사용자 단말(102)과의 통신 접속을 시도하고, 제2 사용자 단말(102)과의 통신 접속이 이루어지면, 제2 사용자 단말(102)로 제2 사용자 단말(102)에 대한 기기 고유 식별번호의 전송을 요청할 수 있다.Thereafter, the terminal information requesting unit 122 attempts a communication connection with the second user terminal 102 , and when the communication connection with the second user terminal 102 is established, the second user terminal 102 is 2 It is possible to request transmission of a device-specific identification number to the user terminal 102 .

이때, 제2 사용자 단말(102)로부터 문서 보안 서비스 서버(110)에 제2 기기 고유 식별번호인 '2C:4B:00:A1:3C:E7'이 수신되면, 추가 키 추출부(123)는 상기 제2 기기 고유 식별번호인 '2C:4B:00:A1:3C:E7'에서 16진수의 숫자인 '2C4B00A13CE7'을 10진수의 제2 정수 값인 '48700644736231'로 변환할 수 있다.At this time, when the second device unique identification number '2C:4B:00:A1:3C:E7' is received from the second user terminal 102 to the document security service server 110, the additional key extraction unit 123 is In the second device unique identification number '2C:4B:00:A1:3C:E7', '2C4B00A13CE7', which is a hexadecimal number, may be converted into '48700644736231', which is a second integer value of a decimal number.

그러고 나서, 추가 키 추출부(123)는 상기 제2 정수 값인 '48700644736231'을 피제수로 5를 제수로 하는 모듈로 연산을 수행함으로써, 제2 연산 값인 '1'을 산출할 수 있다.Then, the additional key extractor 123 may calculate the second operation value '1' by performing a modulo operation of dividing 5 as a divisor of the second integer value '48700644736231'.

그 이후, 추가 키 추출부(123)는 상기 표 1과 같은 키 쌍 저장부(111)로부터 상기 제2 연산 값인 '1'에 대응되는 제2 키 쌍인 '공개키 2 - 개인키 2'를 선택한 후 상기 제2 키 쌍인 '공개키 2 - 개인키 2'에서 제2 공개키인 '공개키 2'를 추출할 수 있다.After that, the additional key extraction unit 123 selects the second key pair 'public key 2 - private key 2' corresponding to the second operation value '1' from the key pair storage unit 111 as shown in Table 1 above. Afterwards, the second public key 'public key 2' may be extracted from the second key pair 'public key 2 - private key 2'.

이렇게, 추가 키 추출부(123)에 의해 상기 제2 공개키인 '공개키 2'가 추출되면, 문서 파일 전달부(124)는 복호화된 상기 문서 파일을 상기 제2 공개키인 '공개키 2'로 재암호화한 후 재암호화된 상기 문서 파일을 제2 사용자 단말(102)로 전송할 수 있다.In this way, when the 'public key 2' which is the second public key is extracted by the additional key extraction unit 123, the document file transfer unit 124 transmits the decrypted document file to the 'public key 2' which is the second public key. After re-encrypting with ', the re-encrypted document file may be transmitted to the second user terminal 102 .

이렇게, 재암호화된 상기 문서 파일이 제2 사용자 단말(102)로 전송된 이후, 제2 사용자 단말(102)에서 재암호화된 상기 문서 파일이 실행됨에 따라 제2 사용자 단말(102)로부터 문서 보안 서비스 서버(110)에 재암호화된 상기 문서 파일에 대한 복호화 요청 신호가 수신되면, 복호화 정보 요청부(116)는 제2 사용자 단말(102)로 제2 사용자 단말(102)에 대한 기기 고유 식별번호의 전송을 요청할 수 있다.In this way, after the re-encrypted document file is transmitted to the second user terminal 102, as the re-encrypted document file is executed in the second user terminal 102, the document security service from the second user terminal 102 When a decryption request signal for the re-encrypted document file is received by the server 110 , the decryption information requesting unit 116 sends the second user terminal 102 to the device-specific identification number for the second user terminal 102 . You can request a transfer.

이때, 제2 사용자 단말(102)로부터 문서 보안 서비스 서버(110)에 상기 제2 기기 고유 식별번호인 '2C:4B:00:A1:3C:E7'이 수신되면, 개인키 추출부(117)는 상기 제2 기기 고유 식별번호인 '2C:4B:00:A1:3C:E7'에서 16진수의 숫자인 '2C4B00A13CE7'을 10진수의 상기 제2 정수 값인 '48700644736231'로 변환할 수 있다.At this time, when the second device unique identification number '2C:4B:00:A1:3C:E7' is received from the second user terminal 102 to the document security service server 110, the private key extraction unit 117 may convert '2C4B00A13CE7', which is a hexadecimal number, from '2C:4B:00:A1:3C:E7', which is the second device unique identification number, to '48700644736231', which is the second integer value of a decimal number.

그 이후, 개인키 추출부(117)는 상기 제2 정수 값인 '48700644736231'을 피제수로 5를 제수로 하는 모듈로 연산을 수행함으로써, 상기 제2 연산 값인 '1'을 산출할 수 있다.Thereafter, the private key extraction unit 117 may calculate the second calculated value '1' by performing a modulo operation of dividing 5 as a divisor of the second integer value '48700644736231'.

그러고 나서, 개인키 추출부(117)는 상기 표 1과 같은 키 쌍 저장부(111)로부터 상기 제2 연산 값인 '1'에 대응되는 상기 제2 키 쌍인 '공개키 2 - 개인키 2'를 선택한 후 상기 제2 키 쌍인 '공개키 2 - 개인키 2'에서 제2 개인키인 '개인키 2'를 추출할 수 있다.Then, the private key extraction unit 117 extracts the second key pair 'public key 2 - private key 2' corresponding to the second operation value '1' from the key pair storage unit 111 as shown in Table 1 above. After selection, the second private key 'private key 2' may be extracted from the second key pair 'public key 2 - private key 2'.

이렇게, 개인키 추출부(117)에 의해 상기 제2 개인키인 '개인키 2'가 추출되면, 복호화 정보 전송부(118)는 상기 제2 개인키인 '개인키 2'를 제2 사용자 단말(102)로 전송함과 동시에, 재암호화된 상기 문서 파일을 상기 제2 개인키인 '개인키 2'로 복호화하도록 지시하는 복호화 명령을 제2 사용자 단말(102)에 전송할 수 있다.In this way, when the 'private key 2' which is the second private key is extracted by the private key extraction unit 117, the decryption information transmission unit 118 converts the 'private key 2' which is the second private key to the second user terminal. Simultaneously with the transmission to 102 , a decryption command instructing to decrypt the re-encrypted document file with the second private key 'private key 2' may be transmitted to the second user terminal 102 .

이렇게, 복호화 정보 전송부(118)에 의해, 제2 사용자 단말(102)로 상기 제2 개인키인 '개인키 2'와 상기 복호화 명령이 전송되면, 제2 사용자 단말(102)은 상기 제2 개인키인 '개인키 2'와 상기 복호화 명령을 수신하여, 상기 제2 개인키인 '개인키 2'를 기초로 상기 문서 파일을 복호화한 후 상기 문서 파일에 대한 복호화가 완료되었음을 지시하는 복호화 완료 메시지를 문서 보안 서비스 서버(110)로 전송할 수 있다.In this way, when the 'private key 2' which is the second private key and the decryption command are transmitted to the second user terminal 102 by the decryption information transmitting unit 118, the second user terminal 102 is the second user terminal 102 After receiving the 'private key 2' which is the private key and the decryption command, and decrypting the document file based on the 'private key 2' which is the second private key, decryption complete indicating that the decryption of the document file is completed The message may be transmitted to the document security service server 110 .

이때, 복호화 메시지 수신부(119)는 제2 사용자 단말(102)로부터 제2 사용자 단말(102)에서 상기 문서 파일에 대한 복호화가 완료됨에 따라 전송되는 상기 복호화 완료 메시지를 수신할 수 있다.In this case, the decryption message receiving unit 119 may receive the decryption completion message transmitted from the second user terminal 102 as the decryption of the document file is completed in the second user terminal 102 .

결국, 본 발명에 따른 문서 보안 서비스 서버(110)는 제1 사용자 단말(101)의 기기 고유 식별번호에 기반하여 추출된 제1 공개키로 제1 사용자 단말(101)에서 문서 파일의 암호화가 완료된 이후, 제1 사용자 단말(101)의 사용자가 상기 문서 파일에 대한 복호화 권한을 제2 사용자 단말(102)로 넘기고자 하는 경우, 상기 문서 파일에 대한 복호화 권한이 제1 사용자 단말(101)에서 제2 사용자 단말(102)로 전달될 수 있도록 지원할 수 있다.After all, the document security service server 110 according to the present invention completes encryption of the document file in the first user terminal 101 with the first public key extracted based on the device unique identification number of the first user terminal 101 . , when the user of the first user terminal 101 wants to transfer the decryption authority for the document file to the second user terminal 102 , the decryption authority for the document file is transferred from the first user terminal 101 to the second user terminal 101 . It may support to be delivered to the user terminal 102 .

본 발명의 일실시예에 따르면, 문서 보안 서비스 서버(110)는 특정 사용자 단말의 기기 고유 식별번호를 기초로 문서 파일이 암호화된 이후, 상기 특정 사용자 단말의 사용자가 상기 특정 사용자 단말이 아닌 다른 사용자 단말에서 암호화된 문서 파일을 열람하고자 하는 경우, 상기 다른 사용자 단말에서도 상기 문서 파일의 열람이 가능하도록 하기 위한 구성을 더 포함할 수 있다.According to an embodiment of the present invention, after the document file is encrypted based on the device unique identification number of the specific user terminal, the document security service server 110 determines that the user of the specific user terminal is a user other than the specific user terminal. When the terminal wants to read the encrypted document file, the other user terminal may further include a configuration for enabling the reading of the document file.

이와 관련해서, 본 발명의 일실시예에 따른 문서 보안 서비스 서버(110)는 제1 비밀번호 요청부(125), 문서 파일 요청부(126), 해시 값 생성부(127), 기록부(128), 이벤트 발생부(129), 제2 비밀번호 요청부(130), 식별번호 추출부(131), 보조 복호화 처리부(132) 및 보조 복호화 완료 메시지 수신부(133)를 더 포함할 수 있다.In this regard, the document security service server 110 according to an embodiment of the present invention includes a first password request unit 125 , a document file request unit 126 , a hash value generator 127 , a recording unit 128 , It may further include an event generating unit 129 , a second password requesting unit 130 , an identification number extracting unit 131 , an auxiliary decryption processing unit 132 , and an auxiliary decryption completion message receiving unit 133 .

제1 비밀번호 요청부(125)는 제1 사용자 단말(101)로부터 상기 암호화 완료 메시지가 수신된 이후, 제1 사용자 단말(101)로부터 암호화된 상기 문서 파일에 대한 비밀번호 기반의 보조 복호화가 가능하도록 하기 위한 비밀번호 설정 요청 신호가 수신되면, 제1 사용자 단말(101)로 암호화된 상기 문서 파일의 보조 복호화에 사용될 비밀번호의 전송을 요청한다.After the encryption completion message is received from the first user terminal 101, the first password request unit 125 enables password-based auxiliary decryption of the encrypted document file from the first user terminal 101. When a password setting request signal is received, the first user terminal 101 requests transmission of a password to be used for auxiliary decryption of the encrypted document file.

문서 파일 요청부(126)는 제1 사용자 단말(101)로부터 제1 비밀번호가 수신되면, 제1 사용자 단말(101)로 암호화된 상기 문서 파일의 전송을 요청한다.When the first password is received from the first user terminal 101 , the document file request unit 126 requests transmission of the encrypted document file to the first user terminal 101 .

해시 값 생성부(127)는 제1 사용자 단말(101)로부터 암호화된 상기 문서 파일이 수신되면, 암호화된 상기 문서 파일을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성한다.When the encrypted document file is received from the first user terminal 101 , the hash value generator 127 applies the encrypted document file to a preset hash function as an input to generate a first hash value.

기록부(128)는 상기 제1 해시 값과 상기 제1 기기 고유 식별번호 및 상기 제1 비밀번호를 대응시켜 비밀번호 테이블에 기록한다.The recording unit 128 associates the first hash value with the first device unique identification number and the first password and records it in the password table.

이벤트 발생부(129)는 상기 제1 해시 값과 상기 제1 기기 고유 식별번호 및 상기 제1 비밀번호가 상기 비밀번호 테이블에 기록 완료된 이후에, 제1 사용자 단말(101)이 아닌 제3 사용자 단말(103)에서 암호화된 상기 문서 파일이 실행됨에 따라 제3 사용자 단말(103)로부터 암호화된 상기 문서 파일에 대한 복호화가 실패하였음을 지시하는 복호화 실패 메시지가 수신되면, 암호화된 상기 문서 파일의 보조 복호화를 수행하기 위한 이벤트를 발생시킨다.After the first hash value, the first device unique identification number, and the first password are recorded in the password table, the event generating unit 129 is configured not to the first user terminal 101 but to the third user terminal 103 . ), when a decryption failure message indicating that decryption of the encrypted document file has failed is received from the third user terminal 103 as the encrypted document file is executed, auxiliary decryption of the encrypted document file is performed event to be triggered.

제2 비밀번호 요청부(130)는 상기 이벤트가 발생되면, 제3 사용자 단말(103)로 암호화된 상기 문서 파일과 암호화된 상기 문서 파일의 보조 복호화를 위한 비밀번호의 전송을 요청한다.When the event occurs, the second password request unit 130 requests the third user terminal 103 to transmit the encrypted document file and a password for auxiliary decryption of the encrypted document file.

식별번호 추출부(131)는 제3 사용자 단말(103)로부터 암호화된 상기 문서 파일과 제2 비밀번호가 수신되면, 암호화된 상기 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성하고, 상기 비밀번호 테이블로부터 상기 제1 해시 값에 대응되어 기록되어 있는 상기 제1 비밀번호를 추출하며, 상기 제1 비밀번호가 상기 제2 비밀번호와 동일한지 확인하여 상기 제1 비밀번호가 상기 제2 비밀번호와 동일한 것으로 확인되면, 상기 비밀번호 테이블로부터 상기 제1 해시 값에 대응되어 기록되어 있는 상기 제1 기기 고유 식별번호를 추출한다.When the encrypted document file and the second password are received from the third user terminal 103, the identification number extraction unit 131 applies the encrypted document file as an input to the hash function to generate the first hash value. and extracts the first password recorded in correspondence with the first hash value from the password table, and checks whether the first password is the same as the second password, so that the first password is the same as the second password If confirmed, the first device unique identification number recorded corresponding to the first hash value is extracted from the password table.

보조 복호화 처리부(132)는 상기 비밀번호 테이블로부터 상기 제1 기기 고유 식별번호가 추출되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 상기 제1 정수 값으로 변환한 후 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출하며, 키 쌍 저장부(111)로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 상기 제1 개인키를 추출하고, 상기 제1 개인키가 추출되면, 상기 제1 개인키를 제3 사용자 단말(103)로 전송함과 동시에, 암호화된 상기 문서 파일을 상기 제1 개인키로 복호화하도록 지시하는 복호화 명령을 제3 사용자 단말(103)에 전송한다.When the first device-specific identification number is extracted from the password table, the auxiliary decryption processing unit 132 converts the first device-specific identification number into the first integer value that is an integer of a decimal number, and then converts the first integer value to the dividend By performing a modulo operation in which n is a divisor, the first operation value is calculated, and after selecting the first key pair corresponding to the first operation value from the key pair storage unit 111 , the first key The first private key is extracted from the pair, and when the first private key is extracted, the first private key is transmitted to the third user terminal 103 and, at the same time, the encrypted document file is transferred to the first private key. A decryption command instructing to decrypt is transmitted to the third user terminal 103 .

보조 복호화 완료 메시지 수신부(133)는 제3 사용자 단말(103)에서 암호화된 상기 문서 파일에 대한 복호화가 완료되면, 제3 사용자 단말(103)로부터 암호화된 상기 문서 파일에 대한 복호화가 완료되었음을 지시하는 복호화 완료 메시지를 수신한다.The auxiliary decryption completion message receiving unit 133 indicates that when the decryption of the document file encrypted by the third user terminal 103 is completed, the decryption of the encrypted document file from the third user terminal 103 is completed. Receive a decryption completion message.

이하에서는 제1 비밀번호 요청부(125), 문서 파일 요청부(126), 해시 값 생성부(127), 기록부(128), 이벤트 발생부(129), 제2 비밀번호 요청부(130), 식별번호 추출부(131), 보조 복호화 처리부(132) 및 보조 복호화 완료 메시지 수신부(133)의 동작에 대해 예를 들어 상세히 설명하기로 한다.Hereinafter, the first password requesting unit 125, the document file requesting unit 126, the hash value generating unit 127, the recording unit 128, the event generating unit 129, the second password requesting unit 130, the identification number Operations of the extraction unit 131 , the auxiliary decryption processing unit 132 , and the auxiliary decryption completion message receiving unit 133 will be described in detail with an example.

먼저, 앞서 설명한 예시와 같이, 'n=5'라고 하고, 상기 제1 기기 고유 식별번호를 '1A:00:3F:F1:4C:C5'라고 가정하자.First, as in the example described above, it is assumed that 'n=5' and the first device unique identification number is '1A:00:3F:F1:4C:C5'.

이때, 제1 사용자 단말(101)로부터 문서 보안 서비스 서버(110)에 상기 암호화 완료 메시지가 수신된 이후, 제1 사용자 단말(101)로부터 문서 보안 서비스 서버(110)에 암호화된 상기 문서 파일에 대한 비밀번호 기반의 보조 복호화가 가능하도록 하기 위한 비밀번호 설정 요청 신호가 수신되면, 제1 비밀번호 요청부(125)는 제1 사용자 단말(101)로 암호화된 상기 문서 파일의 보조 복호화에 사용될 비밀번호의 전송을 요청할 수 있다.At this time, after the encryption completion message is received from the first user terminal 101 to the document security service server 110 , the document file encrypted from the first user terminal 101 to the document security service server 110 is When a password setting request signal for enabling password-based auxiliary decryption is received, the first password request unit 125 requests transmission of a password to be used for auxiliary decryption of the encrypted document file to the first user terminal 101 . can

이때, 제1 사용자 단말(101)로부터 문서 보안 서비스 서버(110)에 제1 비밀번호로 'Connection01234'가 수신되면, 문서 파일 요청부(126)는 제1 사용자 단말(101)로 암호화된 상기 문서 파일의 전송을 요청할 수 있다.At this time, when 'Connection01234' is received as the first password from the first user terminal 101 to the document security service server 110 , the document file request unit 126 sends the document file encrypted by the first user terminal 101 . may request to be sent.

이때, 제1 사용자 단말(101)로부터 문서 보안 서비스 서버(110)에 암호화된 상기 문서 파일이 수신되면, 해시 값 생성부(127)는 암호화된 상기 문서 파일을 상기 해시 함수에 입력으로 인가함으로써, '42d103c620a31345ag57qat327891717'과 같은 제1 해시 값을 생성할 수 있다.At this time, when the encrypted document file is received from the first user terminal 101 to the document security service server 110, the hash value generator 127 applies the encrypted document file as an input to the hash function, A first hash value such as '42d103c620a31345ag57qat327891717' may be generated.

그 이후, 기록부(128)는 상기 제1 해시 값인 '42d103c620a31345ag57qat327891717'과 상기 제1 기기 고유 식별번호인 '1A:00:3F:F1:4C:C5' 및 상기 제1 비밀번호인 'Connection01234'를 대응시켜 하기 표 2와 같이 비밀번호 테이블에 기록할 수 있다.After that, the recording unit 128 corresponds to the first hash value '42d103c620a31345ag57qat327891717', the first device unique identification number '1A:00:3F:F1:4C:C5', and the first password 'Connection01234' It can be recorded in the password table as shown in Table 2 below.

해시 값hash value 기기 고유 식별번호Device unique identification number 비밀번호password 42d103c620a31345ag57qat32789171742d103c620a31345ag57qat327891717 1A:00:3F:F1:4C:C51A:00:3F:F1:4C:C5 Connection01234Connection01234

이렇게, 기록부(128)에 의해 상기 제1 해시 값인 '42d103c620a31345ag57qat327891717'과 상기 제1 기기 고유 식별번호인 '1A:00:3F:F1:4C:C5' 및 상기 제1 비밀번호인 'Connection01234'가 상기 표 2와 같은 비밀번호 테이블에 기록 완료된 이후에, 제1 사용자 단말(101)이 아닌 제3 사용자 단말(103)에서 암호화된 상기 문서 파일이 실행됨에 따라 제3 사용자 단말(103)로부터 문서 보안 서비스 서버(110)에 암호화된 상기 문서 파일에 대한 복호화가 실패하였음을 지시하는 복호화 실패 메시지가 수신되면, 이벤트 발생부(129)는 암호화된 상기 문서 파일의 보조 복호화를 수행하기 위한 이벤트를 발생시킬 수 있다.In this way, by the recording unit 128, the first hash value '42d103c620a31345ag57qat327891717', the first device unique identification number '1A:00:3F:F1:4C:C5', and the first password 'Connection01234' are stored in the table After completion of recording in the password table such as 2, as the encrypted document file is executed in the third user terminal 103 rather than the first user terminal 101, the When a decryption failure message indicating that decryption of the encrypted document file has failed is received at 110 ), the event generator 129 may generate an event for performing auxiliary decryption of the encrypted document file.

이때, 이벤트 발생부(129)에 의해 상기 이벤트가 발생되면, 제2 비밀번호 요청부(130)는 제3 사용자 단말(103)로 암호화된 상기 문서 파일과 암호화된 상기 문서 파일의 보조 복호화를 위한 비밀번호의 전송을 요청할 수 있다.At this time, when the event is generated by the event generating unit 129 , the second password requesting unit 130 provides a password for auxiliary decryption of the encrypted document file and the encrypted document file by the third user terminal 103 . may request to be sent.

이때, 사용자에 의해 제3 사용자 단말(103)에 'Connection01234'라고 하는 제2 비밀번호가 입력됨에 따라, 제3 사용자 단말(103)로부터 문서 보안 서비스 서버(110)에 암호화된 상기 문서 파일과 'Connection01234'라고 하는 상기 제2 비밀번호가 수신되었다고 가정하는 경우, 식별번호 추출부(131)는 암호화된 상기 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값인 '42d103c620a31345ag57qat327891717'을 생성할 수 있다.At this time, as the second password of 'Connection01234' is input to the third user terminal 103 by the user, the document file encrypted from the third user terminal 103 to the document security service server 110 and 'Connection01234' ', the identification number extraction unit 131 applies the encrypted document file as an input to the hash function to generate the first hash value '42d103c620a31345ag57qat327891717'.

그 이후, 식별번호 추출부(131)는 상기 표 2와 같은 비밀번호 테이블로부터 상기 제1 해시 값인 '42d103c620a31345ag57qat327891717'에 대응되어 기록되어 있는 상기 제1 비밀번호인 'Connection01234'를 추출하며, 상기 제1 비밀번호인 'Connection01234'가 상기 제2 비밀번호인 'Connection01234'와 동일한 것으로 확인함으로써, 상기 표 2와 같은 비밀번호 테이블로부터 상기 제1 해시 값인 '42d103c620a31345ag57qat327891717'에 대응되어 기록되어 있는 상기 제1 기기 고유 식별번호인 '1A:00:3F:F1:4C:C5'를 추출할 수 있다.After that, the identification number extraction unit 131 extracts the first password 'Connection01234' recorded in correspondence with the first hash value '42d103c620a31345ag57qat327891717' from the password table as shown in Table 2, and the first password is By confirming that 'Connection01234' is the same as 'Connection01234', which is the second password, from the password table shown in Table 2 above, '1A, which is the first device unique identification number, is recorded in correspondence to '42d103c620a31345ag57qat327891717', which is the first hash value. :00:3F:F1:4C:C5' can be extracted.

이렇게, 식별번호 추출부(131)에 의해 상기 표 2와 같은 비밀번호 테이블로부터 상기 제1 기기 고유 식별번호인 '1A:00:3F:F1:4C:C5'가 추출되면, 보조 복호화 처리부(132)는 상기 제1 기기 고유 식별번호인 '1A:00:3F:F1:4C:C5'에서 16진수의 숫자인 '1A003FF14CC5'를 10진수의 제1 정수 값인 '28588375100613'으로 변환할 수 있다.In this way, when '1A:00:3F:F1:4C:C5', which is the first device-specific identification number, is extracted from the password table as shown in Table 2 by the identification number extraction unit 131, the auxiliary decryption processing unit 132 can convert '1A003FF14CC5', which is a hexadecimal number, from '1A:00:3F:F1:4C:C5', which is the first device unique identification number, to '28588375100613', which is a first integer value of a decimal number.

그 이후, 보조 복호화 처리부(132)는 상기 제1 정수 값인 '28588375100613'을 피제수로 5를 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값인 '3'을 산출할 수 있다.Thereafter, the auxiliary decoding processing unit 132 may calculate the first operation value '3' by performing a modulo operation of dividing 5 as a divisor of the first integer value '28588375100613'.

그러고 나서, 보조 복호화 처리부(132)는 상기 표 1과 같은 키 쌍 저장부(111)로부터 상기 제1 연산 값인 '3'에 대응되는 상기 제1 키 쌍인 '공개키 4 - 개인키 4'를 선택한 후 상기 제1 키 쌍인 '공개키 4 - 개인키 4'에서 상기 제1 개인키인 '개인키 4'를 추출할 수 있다.Then, the auxiliary decryption processing unit 132 selects the first key pair 'public key 4 - private key 4' corresponding to the first operation value '3' from the key pair storage unit 111 as shown in Table 1 above. Thereafter, the 'private key 4' as the first private key may be extracted from the 'public key 4 - the private key 4' which is the first key pair.

그 이후, 보조 복호화 처리부(132)는 상기 제1 개인키인 '개인키 4'를 제3 사용자 단말(103)로 전송함과 동시에, 암호화된 상기 문서 파일을 상기 제1 개인키인 '개인키 4'로 복호화하도록 지시하는 복호화 명령을 제3 사용자 단말(103)에 전송할 수 있다.After that, the auxiliary decryption processing unit 132 transmits the 'private key 4', which is the first private key, to the third user terminal 103, and simultaneously transmits the encrypted document file to the 'private key' as the first private key. A decoding command instructing to decode 4' may be transmitted to the third user terminal 103 .

이때, 제3 사용자 단말(103)은 문서 보안 서비스 서버(110)로부터 상기 제1 개인키인 '개인키 4'와 상기 복호화 명령을 수신하여, 상기 제1 개인키인 '개인키 4'를 기초로 상기 문서 파일을 복호화한 후 상기 문서 파일에 대한 복호화가 완료되었음을 지시하는 복호화 완료 메시지를 문서 보안 서비스 서버(110)로 전송할 수 있다.At this time, the third user terminal 103 receives the first private key 'private key 4' and the decryption command from the document security service server 110, and based on the first private key 'private key 4' After decrypting the document file, a decryption completion message indicating that the decryption of the document file is completed may be transmitted to the document security service server 110 .

이때, 보조 복호화 완료 메시지 수신부(133)는 제3 사용자 단말(103)로부터 제3 사용자 단말(103)에서 상기 문서 파일에 대한 복호화가 완료됨에 따라 전송되는 상기 복호화 완료 메시지를 수신할 수 있다.In this case, the auxiliary decryption completion message receiving unit 133 may receive the decryption completion message transmitted from the third user terminal 103 upon completion of the decryption of the document file in the third user terminal 103 .

즉, 본 발명에 따른 문서 보안 서비스 서버(110)는 제1 사용자 단말(101)의 기기 고유 식별번호를 기초로 문서 파일의 암호화가 완료된 이후, 상기 문서 파일에 대해 보조 복호화를 위한 소정의 비밀번호를 설정할 수 있도록 지원함으로써, 상기 문서 파일이 제1 사용자 단말(101)이 아닌 제3 사용자 단말(103)에서 실행되어, 제3 사용자 단말(103)의 기기 고유 식별번호가 상기 문서 파일의 암호화에 사용된 기기 고유 식별번호와 다름으로 인해 상기 문서 파일의 복호화가 실패하는 경우, 사용자가 상기 비밀번호를 기반으로 제3 사용자 단말(103)에서 상기 문서 파일을 열람할 수 있도록 지원할 수 있다.That is, the document security service server 110 according to the present invention generates a predetermined password for auxiliary decryption for the document file after encryption of the document file is completed based on the device-specific identification number of the first user terminal 101 . By supporting setting, the document file is executed in the third user terminal 103 instead of the first user terminal 101, and the device unique identification number of the third user terminal 103 is used for encryption of the document file When the decryption of the document file fails due to a difference from the device-specific identification number, it is possible to support the user to browse the document file in the third user terminal 103 based on the password.

도 2는 본 발명의 일실시예에 따른 단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버의 동작 방법을 도시한 순서도이다.2 is a flowchart illustrating a method of operating a document security service server that supports encryption of a document file based on terminal information according to an embodiment of the present invention.

단계(S210)에서는 공개키와 상기 공개키에 대응되는 개인키로 구성된 서로 다른 n(n은 2이상의 자연수)개의 키 쌍들이 저장되어 있는 키 쌍 저장부를 유지한다.In step S210, a key pair storage unit in which n different (n is a natural number greater than or equal to 2) key pairs composed of a public key and a private key corresponding to the public key is stored is maintained.

단계(S220)에서는 복수의 사용자 단말들 중 제1 사용자 단말로부터 상기 제1 사용자 단말에서 생성된 문서 파일에 대한 암호화 요청 신호가 수신되면, 상기 제1 사용자 단말로 상기 제1 사용자 단말에 대한 기기 고유 식별번호의 전송을 요청한다.In step S220, when an encryption request signal for the document file generated in the first user terminal is received from a first user terminal among a plurality of user terminals, the device specific to the first user terminal is transmitted to the first user terminal. Request transmission of identification number.

단계(S230)에서는 상기 제1 사용자 단말로부터 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 기초로 상기 키 쌍 저장부로부터 상기 n개의 키 쌍들 중 어느 하나인 제1 키 쌍을 구성하는 제1 공개키를 추출한다.In step S230, when a first device-specific identification number is received from the first user terminal, a first key pair that is any one of the n key pairs from the key pair storage unit based on the first device-specific identification number Extracts the first public key constituting the .

단계(S240)에서는 상기 제1 공개키가 추출되면, 상기 제1 공개키를 상기 제1 사용자 단말로 전송함과 동시에, 상기 문서 파일을 상기 제1 공개키로 암호화하도록 지시하는 암호화 명령을 상기 제1 사용자 단말에 전송한다.In step S240, when the first public key is extracted, the first public key is transmitted to the first user terminal and, at the same time, an encryption command instructing to encrypt the document file with the first public key is transmitted to the first transmitted to the user terminal.

단계(S250)에서는 상기 제1 사용자 단말에서 상기 문서 파일에 대한 암호화가 완료되면, 상기 제1 사용자 단말로부터 상기 문서 파일에 대한 암호화가 완료되었음을 지시하는 암호화 완료 메시지를 수신한다.In step S250, when the encryption of the document file is completed in the first user terminal, an encryption completion message indicating that the encryption of the document file is completed is received from the first user terminal.

이때, 본 발명의 일실시예에 따르면, 상기 키 쌍 저장부에는 상기 n개의 키 쌍들 각각에 대해, 상기 n개의 키 쌍들 각각에 대응하는 0 이상 n-1 이하의 사전 설정된 서로 다른 정수 값이 추가로 대응되어 저장되어 있을 수 있다.At this time, according to an embodiment of the present invention, for each of the n key pairs, preset different integer values of 0 or more and n-1 or less corresponding to each of the n key pairs are added to the key pair storage unit may be stored in correspondence with .

이때, 단계(S230)에서는 상기 제1 사용자 단말로부터 상기 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 제1 정수 값으로 변환하고, 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 제1 연산 값을 산출하며, 상기 키 쌍 저장부로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 상기 제1 공개키를 추출할 수 있다.At this time, in step S230, when the first device-specific identification number is received from the first user terminal, the first device-specific identification number is converted into a first integer value that is an integer of a decimal number, and the first integer value is A first operation value is calculated by performing a modulo operation in which n is a divisor of n as a dividend, and after selecting the first key pair corresponding to the first operation value from the key pair storage unit, in the first key pair The first public key may be extracted.

이때, 본 발명의 일실시예에 따르면, 상기 문서 보안 서비스 서버의 동작 방법은 상기 제1 사용자 단말로부터 상기 암호화 완료 메시지가 수신된 이후, 상기 제1 사용자 단말에서 암호화된 상기 문서 파일이 실행됨에 따라 상기 제1 사용자 단말로부터 암호화된 상기 문서 파일에 대한 복호화 요청 신호가 수신되면, 상기 제1 사용자 단말로 상기 제1 사용자 단말에 대한 기기 고유 식별번호의 전송을 요청하는 단계, 상기 제1 사용자 단말로부터 상기 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 상기 제1 정수 값으로 변환하고, 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출하며, 상기 키 쌍 저장부로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 제1 개인키를 추출하는 단계, 상기 제1 개인키가 추출되면, 상기 제1 개인키를 상기 제1 사용자 단말로 전송함과 동시에, 암호화된 상기 문서 파일을 상기 제1 개인키로 복호화하도록 지시하는 복호화 명령을 상기 제1 사용자 단말에 전송하는 단계 및 상기 제1 사용자 단말에서 암호화된 상기 문서 파일에 대한 복호화가 완료되면, 상기 제1 사용자 단말로부터 암호화된 상기 문서 파일에 대한 복호화가 완료되었음을 지시하는 복호화 완료 메시지를 수신하는 단계를 더 포함할 수 있다.At this time, according to an embodiment of the present invention, in the method of operating the document security service server, after the encryption completion message is received from the first user terminal, the encrypted document file is executed in the first user terminal. When a decryption request signal for the encrypted document file is received from the first user terminal, requesting transmission of a device-specific identification number for the first user terminal to the first user terminal, from the first user terminal When the first device-specific identification number is received, the first device-specific identification number is converted into the first integer value that is an integer of a decimal number, and a modulo operation is performed in which the first integer value is divided by n as a dividend. calculating the first calculated value, selecting the first key pair corresponding to the first calculated value from the key pair storage unit, and then extracting a first private key from the first key pair; When one private key is extracted, the first private key is transmitted to the first user terminal, and a decryption command instructing to decrypt the encrypted document file with the first private key is transmitted to the first user terminal and when the decryption of the document file encrypted by the first user terminal is completed, receiving a decryption completion message indicating that the decryption of the encrypted document file is completed from the first user terminal can

이때, 본 발명의 일실시예에 따르면, 상기 문서 보안 서비스 서버의 동작 방법은 상기 제1 사용자 단말로부터 암호화된 상기 문서 파일을 제2 사용자 단말로 전달할 것을 요청하는 전달 요청 신호가 수신되면, 상기 제1 사용자 단말로 암호화된 상기 문서 파일과 상기 제1 사용자 단말에 대한 기기 고유 식별번호의 전송을 요청하는 단계, 상기 제1 사용자 단말로부터 암호화된 상기 문서 파일과 상기 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 상기 제1 정수 값으로 변환하고, 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출하며, 상기 키 쌍 저장부로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 상기 제1 개인키를 추출하여 암호화된 상기 문서 파일을 상기 제1 개인키로 복호화하는 단계, 상기 제2 사용자 단말과의 통신 접속을 시도하고, 상기 제2 사용자 단말과의 통신 접속이 이루어지면, 상기 제2 사용자 단말로 상기 제2 사용자 단말에 대한 기기 고유 식별번호의 전송을 요청하는 단계, 상기 제2 사용자 단말로부터 제2 기기 고유 식별번호가 수신되면, 상기 제2 기기 고유 식별번호를 10진수의 정수인 제2 정수 값으로 변환하고, 상기 제2 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 제2 연산 값을 산출하며, 상기 키 쌍 저장부로부터 상기 제2 연산 값에 대응되는 제2 키 쌍을 선택한 후 상기 제2 키 쌍에서 제2 공개키를 추출하는 단계 및 상기 제2 공개키가 추출되면, 복호화된 상기 문서 파일을 상기 제2 공개키로 재암호화한 후 재암호화된 상기 문서 파일을 상기 제2 사용자 단말로 전송하는 단계를 더 포함할 수 있다.At this time, according to an embodiment of the present invention, in the method of operating the document security service server, when a transmission request signal requesting to transmit the encrypted document file to the second user terminal is received from the first user terminal, the first 1 requesting transmission of the encrypted document file and the device-specific identification number to the first user terminal to a user terminal, when the encrypted document file and the first device-specific identification number are received from the first user terminal , converting the first device unique identification number into the first integer value that is an integer of a decimal number, and performing a modulo operation in which the first integer value is divided by n as a dividend to calculate the first calculated value, , After selecting the first key pair corresponding to the first operation value from the key pair storage unit, extracting the first private key from the first key pair to decrypt the encrypted document file with the first private key Step, attempting a communication connection with the second user terminal, and when the communication connection with the second user terminal is established, requesting transmission of a device-specific identification number for the second user terminal to the second user terminal step, when a second device-specific identification number is received from the second user terminal, the second device-specific identification number is converted into a second integer value that is an integer of a decimal number, and the second integer value is converted to a dividend by n as a divisor by performing a modulo operation to calculate a second operation value, select a second key pair corresponding to the second operation value from the key pair storage unit, and then extract a second public key from the second key pair and when the second public key is extracted, re-encrypting the decrypted document file with the second public key and then transmitting the re-encrypted document file to the second user terminal.

또한, 본 발명의 일실시예에 따르면, 상기 문서 보안 서비스 서버의 동작 방법은 상기 제1 사용자 단말로부터 상기 암호화 완료 메시지가 수신된 이후, 상기 제1 사용자 단말로부터 암호화된 상기 문서 파일에 대한 비밀번호 기반의 보조 복호화가 가능하도록 하기 위한 비밀번호 설정 요청 신호가 수신되면, 상기 제1 사용자 단말로 암호화된 상기 문서 파일의 보조 복호화에 사용될 비밀번호의 전송을 요청하는 단계, 상기 제1 사용자 단말로부터 제1 비밀번호가 수신되면, 상기 제1 사용자 단말로 암호화된 상기 문서 파일의 전송을 요청하는 단계, 상기 제1 사용자 단말로부터 암호화된 상기 문서 파일이 수신되면, 암호화된 상기 문서 파일을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하는 단계, 상기 제1 해시 값과 상기 제1 기기 고유 식별번호 및 상기 제1 비밀번호를 대응시켜 비밀번호 테이블에 기록하는 단계, 상기 제1 해시 값과 상기 제1 기기 고유 식별번호 및 상기 제1 비밀번호가 상기 비밀번호 테이블에 기록 완료된 이후에, 상기 제1 사용자 단말이 아닌 제3 사용자 단말에서 암호화된 상기 문서 파일이 실행됨에 따라 상기 제3 사용자 단말로부터 암호화된 상기 문서 파일에 대한 복호화가 실패하였음을 지시하는 복호화 실패 메시지가 수신되면, 암호화된 상기 문서 파일의 보조 복호화를 수행하기 위한 이벤트를 발생시키는 단계, 상기 이벤트가 발생되면, 상기 제3 사용자 단말로 암호화된 상기 문서 파일과 암호화된 상기 문서 파일의 보조 복호화를 위한 비밀번호의 전송을 요청하는 단계, 상기 제3 사용자 단말로부터 암호화된 상기 문서 파일과 제2 비밀번호가 수신되면, 암호화된 상기 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성하고, 상기 비밀번호 테이블로부터 상기 제1 해시 값에 대응되어 기록되어 있는 상기 제1 비밀번호를 추출하며, 상기 제1 비밀번호가 상기 제2 비밀번호와 동일한지 확인하여 상기 제1 비밀번호가 상기 제2 비밀번호와 동일한 것으로 확인되면, 상기 비밀번호 테이블로부터 상기 제1 해시 값에 대응되어 기록되어 있는 상기 제1 기기 고유 식별번호를 추출하는 단계, 상기 비밀번호 테이블로부터 상기 제1 기기 고유 식별번호가 추출되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 상기 제1 정수 값으로 변환한 후 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출하며, 상기 키 쌍 저장부로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 상기 제1 개인키를 추출하고, 상기 제1 개인키가 추출되면, 상기 제1 개인키를 상기 제3 사용자 단말로 전송함과 동시에, 암호화된 상기 문서 파일을 상기 제1 개인키로 복호화하도록 지시하는 복호화 명령을 상기 제3 사용자 단말에 전송하는 단계 및 상기 제3 사용자 단말에서 암호화된 상기 문서 파일에 대한 복호화가 완료되면, 상기 제3 사용자 단말로부터 암호화된 상기 문서 파일에 대한 복호화가 완료되었음을 지시하는 복호화 완료 메시지를 수신하는 단계를 더 포함할 수 있다.In addition, according to an embodiment of the present invention, the method of operating the document security service server is based on a password for the document file encrypted from the first user terminal after the encryption completion message is received from the first user terminal When a password setting request signal is received to enable auxiliary decryption of when received, requesting transmission of the encrypted document file to the first user terminal; when the encrypted document file is received from the first user terminal, applying the encrypted document file as an input to a preset hash function generating a first hash value, the first hash value and the first device unique identification number and the first password are matched and recorded in a password table, the first hash value and the first device unique identification After the number and the first password are recorded in the password table, the encrypted document file is executed from the third user terminal as the encrypted document file is executed in the third user terminal, not the first user terminal. When a decryption failure message indicating that decryption has failed is received, generating an event for performing auxiliary decryption of the encrypted document file; when the event occurs, the encrypted document file and requesting transmission of a password for auxiliary decryption of the encrypted document file; when the encrypted document file and the second password are received from the third user terminal, applying the encrypted document file as input to the hash function to generate the first hash value, extract the first password recorded corresponding to the first hash value from the password table, check whether the first password is the same as the second password, and The password is the second password and If it is confirmed that they are the same, extracting the first device-specific identification number recorded in correspondence with the first hash value from the password table. When the first device-specific identification number is extracted from the password table, the first After converting the device-specific identification number into the first integer value, which is an integer of a decimal number, a modulo operation is performed by dividing the first integer value by n as a dividend to calculate the first operation value, and the key pair After selecting the first key pair corresponding to the first operation value from a storage unit, the first private key is extracted from the first key pair, and when the first private key is extracted, the first private key is At the same time as transmitting to a third user terminal, transmitting a decryption command instructing to decrypt the encrypted document file with the first private key to the third user terminal and to the document file encrypted by the third user terminal The method may further include receiving a decryption completion message indicating that decryption of the encrypted document file is completed from the third user terminal when the decryption is completed.

이상, 도 2를 참조하여 본 발명의 일실시예에 따른 문서 보안 서비스 서버의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 문서 보안 서비스 서버의 동작 방법은 도 1을 이용하여 설명한 문서 보안 서비스 서버(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.Above, an operation method of the document security service server according to an embodiment of the present invention has been described with reference to FIG. 2 . Here, since the method of operating the document security service server according to an embodiment of the present invention may correspond to the configuration of the operation of the document security service server 110 described with reference to FIG. 1 , a more detailed description thereof will be omitted. do it with

본 발명의 일실시예에 따른 문서 보안 서비스 서버의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.The method of operating a document security service server according to an embodiment of the present invention may be implemented as a computer program stored in a storage medium for execution through combination with a computer.

또한, 본 발명의 일실시예에 따른 문서 보안 서비스 서버의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. In addition, the method of operating a document security service server according to an embodiment of the present invention may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described with specific matters such as specific components and limited embodiments and drawings, but these are provided to help a more general understanding of the present invention, and the present invention is not limited to the above embodiments. , various modifications and variations are possible from these descriptions by those of ordinary skill in the art to which the present invention pertains.

따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the described embodiments, and not only the claims to be described later, but also all those with equivalent or equivalent modifications to the claims will be said to belong to the scope of the spirit of the present invention. .

110: 문서 보안 서비스 서버
111: 키 쌍 저장부 112: 암호화 정보 요청부
113: 공개키 추출부 114: 암호화 정보 전송부
115: 암호화 메시지 수신부 116: 복호화 정보 요청부
117: 개인키 추출부 118: 복호화 정보 전송부
119: 복호화 메시지 수신부 120: 정보 요청부
121: 복호화부 122: 단말 정보 요청부
123: 추가 키 추출부 124: 문서 파일 전달부
125: 제1 비밀번호 요청부 126: 문서 파일 요청부
127: 해시 값 생성부 128: 기록부
129: 이벤트 발생부 130: 제2 비밀번호 요청부
131: 식별번호 추출부 132: 보조 복호화 처리부
133: 보조 복호화 완료 메시지 수신부
101: 제1 사용자 단말
102: 제2 사용자 단말
103: 제3 사용자 단말
101, 102, 103, 104: 복수의 사용자 단말들
110: document security service server
111: key pair storage unit 112: encryption information request unit
113: public key extraction unit 114: encryption information transmission unit
115: encryption message receiving unit 116: decryption information request unit
117: private key extraction unit 118: decryption information transmission unit
119: decoding message receiving unit 120: information requesting unit
121: decryption unit 122: terminal information request unit
123: additional key extraction unit 124: document file delivery unit
125: first password request unit 126: document file request unit
127: hash value generator 128: record
129: event generating unit 130: second password request unit
131: identification number extraction unit 132: auxiliary decoding processing unit
133: auxiliary decryption complete message receiving unit
101: first user terminal
102: second user terminal
103: third user terminal
101, 102, 103, 104: a plurality of user terminals

Claims (12)

공개키와 상기 공개키에 대응되는 개인키로 구성된 서로 다른 n(n은 2이상의 자연수)개의 키 쌍들이 저장되어 있는 키 쌍 저장부;
복수의 사용자 단말들 중 제1 사용자 단말로부터 상기 제1 사용자 단말에서 생성된 문서 파일에 대한 암호화 요청 신호가 수신되면, 상기 제1 사용자 단말로 상기 제1 사용자 단말에 대한 기기 고유 식별번호의 전송을 요청하는 암호화 정보 요청부;
상기 제1 사용자 단말로부터 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 기초로 상기 키 쌍 저장부로부터 상기 n개의 키 쌍들 중 어느 하나인 제1 키 쌍을 구성하는 제1 공개키를 추출하는 공개키 추출부;
상기 제1 공개키가 추출되면, 상기 제1 공개키를 상기 제1 사용자 단말로 전송함과 동시에, 상기 문서 파일을 상기 제1 공개키로 암호화하도록 지시하는 암호화 명령을 상기 제1 사용자 단말에 전송하는 암호화 정보 전송부; 및
상기 제1 사용자 단말에서 상기 문서 파일에 대한 암호화가 완료되면, 상기 제1 사용자 단말로부터 상기 문서 파일에 대한 암호화가 완료되었음을 지시하는 암호화 완료 메시지를 수신하는 암호화 메시지 수신부
를 포함하는 단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버.
a key pair storage unit in which n different (n is a natural number greater than or equal to 2) key pairs composed of a public key and a private key corresponding to the public key are stored;
When an encryption request signal for the document file generated in the first user terminal is received from a first user terminal among a plurality of user terminals, transmission of a device-specific identification number for the first user terminal to the first user terminal is performed. a requesting encryption information request unit;
When a first device-specific identification number is received from the first user terminal, the first device constituting a first key pair that is any one of the n key pairs from the key pair storage unit based on the first device-specific identification number a public key extraction unit for extracting the public key;
When the first public key is extracted, the first public key is transmitted to the first user terminal and, at the same time, an encryption command instructing to encrypt the document file with the first public key is transmitted to the first user terminal Encrypted information transmission unit; and
When encryption of the document file is completed in the first user terminal, an encryption message receiving unit for receiving an encryption completion message indicating that encryption of the document file is completed from the first user terminal
A document security service server that supports encryption of a document file based on terminal information including a.
제1항에 있어서,
상기 키 쌍 저장부에는
상기 n개의 키 쌍들 각각에 대해, 상기 n개의 키 쌍들 각각에 대응하는 0 이상 n-1 이하의 사전 설정된 서로 다른 정수 값이 추가로 대응되어 저장되어 있고,
상기 공개키 추출부는
상기 제1 사용자 단말로부터 상기 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 제1 정수 값으로 변환하고, 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로(modulo) 연산을 수행함으로써, 제1 연산 값을 산출하며, 상기 키 쌍 저장부로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 상기 제1 공개키를 추출하는 단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버.
According to claim 1,
In the key pair storage unit,
For each of the n key pairs, preset different integer values of 0 or more and n-1 or less corresponding to each of the n key pairs are additionally stored in correspondence,
The public key extraction unit
When the first device-specific identification number is received from the first user terminal, the first device-specific identification number is converted into a first integer value that is an integer of a decimal number, and the first integer value is divided by n as a divisor By performing a modulo operation, a first operation value is calculated, and after selecting the first key pair corresponding to the first operation value from the key pair storage unit, the first public in the first key pair A document security service server that supports encryption of document files based on the terminal information from which the key is extracted.
제2항에 있어서,
상기 제1 사용자 단말로부터 상기 암호화 완료 메시지가 수신된 이후, 상기 제1 사용자 단말에서 암호화된 상기 문서 파일이 실행됨에 따라 상기 제1 사용자 단말로부터 암호화된 상기 문서 파일에 대한 복호화 요청 신호가 수신되면, 상기 제1 사용자 단말로 상기 제1 사용자 단말에 대한 기기 고유 식별번호의 전송을 요청하는 복호화 정보 요청부;
상기 제1 사용자 단말로부터 상기 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 상기 제1 정수 값으로 변환하고, 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출하며, 상기 키 쌍 저장부로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 제1 개인키를 추출하는 개인키 추출부;
상기 제1 개인키가 추출되면, 상기 제1 개인키를 상기 제1 사용자 단말로 전송함과 동시에, 암호화된 상기 문서 파일을 상기 제1 개인키로 복호화하도록 지시하는 복호화 명령을 상기 제1 사용자 단말에 전송하는 복호화 정보 전송부; 및
상기 제1 사용자 단말에서 암호화된 상기 문서 파일에 대한 복호화가 완료되면, 상기 제1 사용자 단말로부터 암호화된 상기 문서 파일에 대한 복호화가 완료되었음을 지시하는 복호화 완료 메시지를 수신하는 복호화 메시지 수신부
를 더 포함하는 단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버.
3. The method of claim 2,
After receiving the encryption completion message from the first user terminal, as the encrypted document file is executed in the first user terminal, when a decryption request signal for the encrypted document file is received from the first user terminal, a decryption information request unit for requesting transmission of a device-specific identification number for the first user terminal to the first user terminal;
When the first device-specific identification number is received from the first user terminal, the first device-specific identification number is converted into the first integer value that is an integer of a decimal number, and the first integer value is converted to a dividend by n as a divisor The first operation value is calculated by performing a modulo operation to a private key extraction unit for extracting;
When the first private key is extracted, the first private key is transmitted to the first user terminal and, at the same time, a decryption command instructing to decrypt the encrypted document file with the first private key is sent to the first user terminal a decoding information transmission unit to transmit; and
When the decryption of the document file encrypted by the first user terminal is completed, the decryption message receiving unit receives a decryption completion message indicating that the decryption of the encrypted document file is completed from the first user terminal
A document security service server that supports encryption of a document file based on the terminal information further comprising a.
제3항에 있어서,
상기 제1 사용자 단말로부터 암호화된 상기 문서 파일을 제2 사용자 단말로 전달할 것을 요청하는 전달 요청 신호가 수신되면, 상기 제1 사용자 단말로 암호화된 상기 문서 파일과 상기 제1 사용자 단말에 대한 기기 고유 식별번호의 전송을 요청하는 정보 요청부;
상기 제1 사용자 단말로부터 암호화된 상기 문서 파일과 상기 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 상기 제1 정수 값으로 변환하고, 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출하며, 상기 키 쌍 저장부로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 상기 제1 개인키를 추출하여 암호화된 상기 문서 파일을 상기 제1 개인키로 복호화하는 복호화부;
상기 제2 사용자 단말과의 통신 접속을 시도하고, 상기 제2 사용자 단말과의 통신 접속이 이루어지면, 상기 제2 사용자 단말로 상기 제2 사용자 단말에 대한 기기 고유 식별번호의 전송을 요청하는 단말 정보 요청부;
상기 제2 사용자 단말로부터 제2 기기 고유 식별번호가 수신되면, 상기 제2 기기 고유 식별번호를 10진수의 정수인 제2 정수 값으로 변환하고, 상기 제2 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 제2 연산 값을 산출하며, 상기 키 쌍 저장부로부터 상기 제2 연산 값에 대응되는 제2 키 쌍을 선택한 후 상기 제2 키 쌍에서 제2 공개키를 추출하는 추가 키 추출부; 및
상기 제2 공개키가 추출되면, 복호화된 상기 문서 파일을 상기 제2 공개키로 재암호화한 후 재암호화된 상기 문서 파일을 상기 제2 사용자 단말로 전송하는 문서 파일 전달부
를 더 포함하는 단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버.
4. The method of claim 3,
When a transmission request signal requesting delivery of the encrypted document file to the second user terminal is received from the first user terminal, the device-specific identification of the encrypted document file and the first user terminal is received by the first user terminal an information request unit for requesting transmission of a number;
When the encrypted document file and the first device-specific identification number are received from the first user terminal, the first device-specific identification number is converted into the first integer value that is an integer of a decimal number, and the first integer value is The first operation value is calculated by performing a modulo operation of dividing n as a divisor as a divisor, and after selecting the first key pair corresponding to the first operation value from the key pair storage unit, the first key pair a decryption unit for extracting the first private key and decrypting the encrypted document file with the first private key;
When a communication connection with the second user terminal is attempted and a communication connection with the second user terminal is established, terminal information for requesting transmission of a device-specific identification number for the second user terminal to the second user terminal request department;
When a second device-specific identification number is received from the second user terminal, a module for converting the second device-specific identification number into a second integer value that is an integer of a decimal number, and dividing the second integer value as a dividend by n An additional key for calculating a second operation value by performing an operation with extraction unit; and
When the second public key is extracted, the document file delivery unit re-encrypts the decrypted document file with the second public key and transmits the re-encrypted document file to the second user terminal
A document security service server that supports encryption of a document file based on the terminal information further comprising a.
제3항에 있어서,
상기 제1 사용자 단말로부터 상기 암호화 완료 메시지가 수신된 이후, 상기 제1 사용자 단말로부터 암호화된 상기 문서 파일에 대한 비밀번호 기반의 보조 복호화가 가능하도록 하기 위한 비밀번호 설정 요청 신호가 수신되면, 상기 제1 사용자 단말로 암호화된 상기 문서 파일의 보조 복호화에 사용될 비밀번호의 전송을 요청하는 제1 비밀번호 요청부;
상기 제1 사용자 단말로부터 제1 비밀번호가 수신되면, 상기 제1 사용자 단말로 암호화된 상기 문서 파일의 전송을 요청하는 문서 파일 요청부;
상기 제1 사용자 단말로부터 암호화된 상기 문서 파일이 수신되면, 암호화된 상기 문서 파일을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하는 해시 값 생성부;
상기 제1 해시 값과 상기 제1 기기 고유 식별번호 및 상기 제1 비밀번호를 대응시켜 비밀번호 테이블에 기록하는 기록부;
상기 제1 해시 값과 상기 제1 기기 고유 식별번호 및 상기 제1 비밀번호가 상기 비밀번호 테이블에 기록 완료된 이후에, 상기 제1 사용자 단말이 아닌 제3 사용자 단말에서 암호화된 상기 문서 파일이 실행됨에 따라 상기 제3 사용자 단말로부터 암호화된 상기 문서 파일에 대한 복호화가 실패하였음을 지시하는 복호화 실패 메시지가 수신되면, 암호화된 상기 문서 파일의 보조 복호화를 수행하기 위한 이벤트를 발생시키는 이벤트 발생부;
상기 이벤트가 발생되면, 상기 제3 사용자 단말로 암호화된 상기 문서 파일과 암호화된 상기 문서 파일의 보조 복호화를 위한 비밀번호의 전송을 요청하는 제2 비밀번호 요청부;
상기 제3 사용자 단말로부터 암호화된 상기 문서 파일과 제2 비밀번호가 수신되면, 암호화된 상기 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성하고, 상기 비밀번호 테이블로부터 상기 제1 해시 값에 대응되어 기록되어 있는 상기 제1 비밀번호를 추출하며, 상기 제1 비밀번호가 상기 제2 비밀번호와 동일한지 확인하여 상기 제1 비밀번호가 상기 제2 비밀번호와 동일한 것으로 확인되면, 상기 비밀번호 테이블로부터 상기 제1 해시 값에 대응되어 기록되어 있는 상기 제1 기기 고유 식별번호를 추출하는 식별번호 추출부;
상기 비밀번호 테이블로부터 상기 제1 기기 고유 식별번호가 추출되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 상기 제1 정수 값으로 변환한 후 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출하며, 상기 키 쌍 저장부로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 상기 제1 개인키를 추출하고, 상기 제1 개인키가 추출되면, 상기 제1 개인키를 상기 제3 사용자 단말로 전송함과 동시에, 암호화된 상기 문서 파일을 상기 제1 개인키로 복호화하도록 지시하는 복호화 명령을 상기 제3 사용자 단말에 전송하는 보조 복호화 처리부; 및
상기 제3 사용자 단말에서 암호화된 상기 문서 파일에 대한 복호화가 완료되면, 상기 제3 사용자 단말로부터 암호화된 상기 문서 파일에 대한 복호화가 완료되었음을 지시하는 복호화 완료 메시지를 수신하는 보조 복호화 완료 메시지 수신부
를 더 포함하는 단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버.
4. The method of claim 3,
After receiving the encryption completion message from the first user terminal, when a password setting request signal for enabling password-based auxiliary decryption of the encrypted document file is received from the first user terminal, the first user a first password request unit for requesting transmission of a password to be used for auxiliary decryption of the encrypted document file to a terminal;
a document file request unit for requesting transmission of the encrypted document file to the first user terminal when the first password is received from the first user terminal;
a hash value generator for generating a first hash value by applying the encrypted document file as an input to a preset hash function when the encrypted document file is received from the first user terminal;
a recording unit that records the first hash value, the first device unique identification number, and the first password in correspondence with the first password in a password table;
After the first hash value, the first device unique identification number, and the first password are recorded in the password table, as the encrypted document file is executed in a third user terminal other than the first user terminal, the an event generator generating an event for performing auxiliary decryption of the encrypted document file when a decryption failure message indicating that decryption of the encrypted document file has failed is received from a third user terminal;
a second password request unit for requesting transmission of a password for auxiliary decryption of the encrypted document file and the encrypted document file to the third user terminal when the event occurs;
When the encrypted document file and the second password are received from the third user terminal, the encrypted document file is applied as an input to the hash function to generate the first hash value, and the first hash value is obtained from the password table. Extracts the first password recorded corresponding to the value, checks whether the first password is the same as the second password, and when it is confirmed that the first password is the same as the second password, the second password from the password table an identification number extraction unit for extracting the first device-specific identification number recorded in correspondence to one hash value;
When the first device-specific identification number is extracted from the password table, a module for converting the first device-specific identification number into the first integer value that is an integer of a decimal number, and then dividing the first integer value as a dividend by n By performing an operation, the first operation value is calculated, the first key pair corresponding to the first operation value is selected from the key pair storage unit, and the first private key is extracted from the first key pair. and, when the first private key is extracted, the third user transmits the first private key to the third user terminal and at the same time transmits a decryption command instructing to decrypt the encrypted document file with the first private key. Auxiliary decoding processing unit for transmitting to the terminal; and
When the decryption of the encrypted document file in the third user terminal is completed, the auxiliary decryption completion message receiving unit receives a decryption completion message indicating that the decryption of the encrypted document file is completed from the third user terminal
A document security service server that supports encryption of a document file based on the terminal information further comprising a.
공개키와 상기 공개키에 대응되는 개인키로 구성된 서로 다른 n(n은 2이상의 자연수)개의 키 쌍들이 저장되어 있는 키 쌍 저장부를 유지하는 단계;
복수의 사용자 단말들 중 제1 사용자 단말로부터 상기 제1 사용자 단말에서 생성된 문서 파일에 대한 암호화 요청 신호가 수신되면, 상기 제1 사용자 단말로 상기 제1 사용자 단말에 대한 기기 고유 식별번호의 전송을 요청하는 단계;
상기 제1 사용자 단말로부터 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 기초로 상기 키 쌍 저장부로부터 상기 n개의 키 쌍들 중 어느 하나인 제1 키 쌍을 구성하는 제1 공개키를 추출하는 단계;
상기 제1 공개키가 추출되면, 상기 제1 공개키를 상기 제1 사용자 단말로 전송함과 동시에, 상기 문서 파일을 상기 제1 공개키로 암호화하도록 지시하는 암호화 명령을 상기 제1 사용자 단말에 전송하는 단계; 및
상기 제1 사용자 단말에서 상기 문서 파일에 대한 암호화가 완료되면, 상기 제1 사용자 단말로부터 상기 문서 파일에 대한 암호화가 완료되었음을 지시하는 암호화 완료 메시지를 수신하는 단계
를 포함하는 단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버의 동작 방법.
maintaining a key pair storage unit in which n different (n is a natural number greater than or equal to 2) key pairs composed of a public key and a private key corresponding to the public key are stored;
When an encryption request signal for the document file generated in the first user terminal is received from a first user terminal among a plurality of user terminals, transmission of a device-specific identification number for the first user terminal to the first user terminal is performed. requesting;
When a first device-specific identification number is received from the first user terminal, the first device constituting a first key pair that is any one of the n key pairs from the key pair storage unit based on the first device-specific identification number extracting the public key;
When the first public key is extracted, the first public key is transmitted to the first user terminal and, at the same time, an encryption command instructing to encrypt the document file with the first public key is transmitted to the first user terminal step; and
When the encryption of the document file is completed in the first user terminal, receiving an encryption completion message indicating that the encryption of the document file is completed from the first user terminal
A method of operating a document security service server that supports encryption of a document file based on terminal information comprising a.
제6항에 있어서,
상기 키 쌍 저장부에는
상기 n개의 키 쌍들 각각에 대해, 상기 n개의 키 쌍들 각각에 대응하는 0 이상 n-1 이하의 사전 설정된 서로 다른 정수 값이 추가로 대응되어 저장되어 있고,
상기 제1 공개키를 추출하는 단계는
상기 제1 사용자 단말로부터 상기 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 제1 정수 값으로 변환하고, 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로(modulo) 연산을 수행함으로써, 제1 연산 값을 산출하며, 상기 키 쌍 저장부로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 상기 제1 공개키를 추출하는 단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버의 동작 방법.
7. The method of claim 6,
In the key pair storage unit,
For each of the n key pairs, preset different integer values of 0 or more and n-1 or less corresponding to each of the n key pairs are additionally stored in correspondence,
The step of extracting the first public key is
When the first device-specific identification number is received from the first user terminal, the first device-specific identification number is converted into a first integer value that is an integer of a decimal number, and the first integer value is divided by n as a divisor By performing a modulo operation, a first operation value is calculated, and after selecting the first key pair corresponding to the first operation value from the key pair storage unit, the first public in the first key pair A method of operating a document security service server that supports encryption of a document file based on terminal information from which a key is extracted.
제7항에 있어서,
상기 제1 사용자 단말로부터 상기 암호화 완료 메시지가 수신된 이후, 상기 제1 사용자 단말에서 암호화된 상기 문서 파일이 실행됨에 따라 상기 제1 사용자 단말로부터 암호화된 상기 문서 파일에 대한 복호화 요청 신호가 수신되면, 상기 제1 사용자 단말로 상기 제1 사용자 단말에 대한 기기 고유 식별번호의 전송을 요청하는 단계;
상기 제1 사용자 단말로부터 상기 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 상기 제1 정수 값으로 변환하고, 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출하며, 상기 키 쌍 저장부로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 제1 개인키를 추출하는 단계;
상기 제1 개인키가 추출되면, 상기 제1 개인키를 상기 제1 사용자 단말로 전송함과 동시에, 암호화된 상기 문서 파일을 상기 제1 개인키로 복호화하도록 지시하는 복호화 명령을 상기 제1 사용자 단말에 전송하는 단계; 및
상기 제1 사용자 단말에서 암호화된 상기 문서 파일에 대한 복호화가 완료되면, 상기 제1 사용자 단말로부터 암호화된 상기 문서 파일에 대한 복호화가 완료되었음을 지시하는 복호화 완료 메시지를 수신하는 단계
를 더 포함하는 단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버의 동작 방법.
8. The method of claim 7,
After receiving the encryption completion message from the first user terminal, as the encrypted document file is executed in the first user terminal, when a decryption request signal for the encrypted document file is received from the first user terminal, requesting transmission of a device-specific identification number for the first user terminal to the first user terminal;
When the first device-specific identification number is received from the first user terminal, the first device-specific identification number is converted into the first integer value that is an integer of a decimal number, and the first integer value is converted to a dividend by n as a divisor The first operation value is calculated by performing a modulo operation to extracting;
When the first private key is extracted, the first private key is transmitted to the first user terminal and, at the same time, a decryption command instructing to decrypt the encrypted document file with the first private key is sent to the first user terminal transmitting; and
receiving a decryption completion message indicating that decryption of the encrypted document file is completed from the first user terminal when decryption of the encrypted document file is completed in the first user terminal;
An operating method of a document security service server that supports encryption of a document file based on the terminal information further comprising a.
제8항에 있어서,
상기 제1 사용자 단말로부터 암호화된 상기 문서 파일을 제2 사용자 단말로 전달할 것을 요청하는 전달 요청 신호가 수신되면, 상기 제1 사용자 단말로 암호화된 상기 문서 파일과 상기 제1 사용자 단말에 대한 기기 고유 식별번호의 전송을 요청하는 단계;
상기 제1 사용자 단말로부터 암호화된 상기 문서 파일과 상기 제1 기기 고유 식별번호가 수신되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 상기 제1 정수 값으로 변환하고, 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출하며, 상기 키 쌍 저장부로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 상기 제1 개인키를 추출하여 암호화된 상기 문서 파일을 상기 제1 개인키로 복호화하는 단계;
상기 제2 사용자 단말과의 통신 접속을 시도하고, 상기 제2 사용자 단말과의 통신 접속이 이루어지면, 상기 제2 사용자 단말로 상기 제2 사용자 단말에 대한 기기 고유 식별번호의 전송을 요청하는 단계;
상기 제2 사용자 단말로부터 제2 기기 고유 식별번호가 수신되면, 상기 제2 기기 고유 식별번호를 10진수의 정수인 제2 정수 값으로 변환하고, 상기 제2 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 제2 연산 값을 산출하며, 상기 키 쌍 저장부로부터 상기 제2 연산 값에 대응되는 제2 키 쌍을 선택한 후 상기 제2 키 쌍에서 제2 공개키를 추출하는 단계; 및
상기 제2 공개키가 추출되면, 복호화된 상기 문서 파일을 상기 제2 공개키로 재암호화한 후 재암호화된 상기 문서 파일을 상기 제2 사용자 단말로 전송하는 단계
를 더 포함하는 단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버의 동작 방법.
9. The method of claim 8,
When a transmission request signal requesting delivery of the encrypted document file to the second user terminal is received from the first user terminal, the device-specific identification of the encrypted document file and the first user terminal is received by the first user terminal requesting transmission of the number;
When the encrypted document file and the first device-specific identification number are received from the first user terminal, the first device-specific identification number is converted into the first integer value that is an integer of a decimal number, and the first integer value is The first operation value is calculated by performing a modulo operation of dividing n as a divisor as a divisor, and after selecting the first key pair corresponding to the first operation value from the key pair storage unit, the first key pair extracting the first private key and decrypting the encrypted document file with the first private key;
attempting a communication connection with the second user terminal, and when the communication connection with the second user terminal is established, requesting the second user terminal to transmit a device-specific identification number for the second user terminal;
When a second device-specific identification number is received from the second user terminal, a module for converting the second device-specific identification number into a second integer value that is an integer of a decimal number, and dividing the second integer value as a dividend by n calculating a second calculated value by performing an operation with , selecting a second key pair corresponding to the second calculated value from the key pair storage unit, and then extracting a second public key from the second key pair; and
when the second public key is extracted, re-encrypting the decrypted document file with the second public key and transmitting the re-encrypted document file to the second user terminal
An operating method of a document security service server that supports encryption of a document file based on the terminal information further comprising a.
제8항에 있어서,
상기 제1 사용자 단말로부터 상기 암호화 완료 메시지가 수신된 이후, 상기 제1 사용자 단말로부터 암호화된 상기 문서 파일에 대한 비밀번호 기반의 보조 복호화가 가능하도록 하기 위한 비밀번호 설정 요청 신호가 수신되면, 상기 제1 사용자 단말로 암호화된 상기 문서 파일의 보조 복호화에 사용될 비밀번호의 전송을 요청하는 단계;
상기 제1 사용자 단말로부터 제1 비밀번호가 수신되면, 상기 제1 사용자 단말로 암호화된 상기 문서 파일의 전송을 요청하는 단계;
상기 제1 사용자 단말로부터 암호화된 상기 문서 파일이 수신되면, 암호화된 상기 문서 파일을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하는 단계;
상기 제1 해시 값과 상기 제1 기기 고유 식별번호 및 상기 제1 비밀번호를 대응시켜 비밀번호 테이블에 기록하는 단계;
상기 제1 해시 값과 상기 제1 기기 고유 식별번호 및 상기 제1 비밀번호가 상기 비밀번호 테이블에 기록 완료된 이후에, 상기 제1 사용자 단말이 아닌 제3 사용자 단말에서 암호화된 상기 문서 파일이 실행됨에 따라 상기 제3 사용자 단말로부터 암호화된 상기 문서 파일에 대한 복호화가 실패하였음을 지시하는 복호화 실패 메시지가 수신되면, 암호화된 상기 문서 파일의 보조 복호화를 수행하기 위한 이벤트를 발생시키는 단계;
상기 이벤트가 발생되면, 상기 제3 사용자 단말로 암호화된 상기 문서 파일과 암호화된 상기 문서 파일의 보조 복호화를 위한 비밀번호의 전송을 요청하는 단계;
상기 제3 사용자 단말로부터 암호화된 상기 문서 파일과 제2 비밀번호가 수신되면, 암호화된 상기 문서 파일을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성하고, 상기 비밀번호 테이블로부터 상기 제1 해시 값에 대응되어 기록되어 있는 상기 제1 비밀번호를 추출하며, 상기 제1 비밀번호가 상기 제2 비밀번호와 동일한지 확인하여 상기 제1 비밀번호가 상기 제2 비밀번호와 동일한 것으로 확인되면, 상기 비밀번호 테이블로부터 상기 제1 해시 값에 대응되어 기록되어 있는 상기 제1 기기 고유 식별번호를 추출하는 단계;
상기 비밀번호 테이블로부터 상기 제1 기기 고유 식별번호가 추출되면, 상기 제1 기기 고유 식별번호를 10진수의 정수인 상기 제1 정수 값으로 변환한 후 상기 제1 정수 값을 피제수로 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출하며, 상기 키 쌍 저장부로부터 상기 제1 연산 값에 대응되는 상기 제1 키 쌍을 선택한 후 상기 제1 키 쌍에서 상기 제1 개인키를 추출하고, 상기 제1 개인키가 추출되면, 상기 제1 개인키를 상기 제3 사용자 단말로 전송함과 동시에, 암호화된 상기 문서 파일을 상기 제1 개인키로 복호화하도록 지시하는 복호화 명령을 상기 제3 사용자 단말에 전송하는 단계; 및
상기 제3 사용자 단말에서 암호화된 상기 문서 파일에 대한 복호화가 완료되면, 상기 제3 사용자 단말로부터 암호화된 상기 문서 파일에 대한 복호화가 완료되었음을 지시하는 복호화 완료 메시지를 수신하는 단계
를 더 포함하는 단말 정보에 기반하여 문서 파일의 암호화가 수행되도록 지원하는 문서 보안 서비스 서버의 동작 방법.
9. The method of claim 8,
After receiving the encryption completion message from the first user terminal, when a password setting request signal for enabling password-based auxiliary decryption of the encrypted document file is received from the first user terminal, the first user requesting transmission of a password to be used for auxiliary decryption of the encrypted document file to a terminal;
when a first password is received from the first user terminal, requesting transmission of the encrypted document file to the first user terminal;
generating a first hash value by applying the encrypted document file as an input to a preset hash function when the encrypted document file is received from the first user terminal;
recording the first hash value, the first device unique identification number, and the first password in correspondence with the first password in a password table;
After the first hash value, the first device unique identification number, and the first password are recorded in the password table, as the encrypted document file is executed in a third user terminal other than the first user terminal, the generating an event for performing auxiliary decryption of the encrypted document file when a decryption failure message indicating that decryption of the encrypted document file has failed is received from a third user terminal;
when the event occurs, requesting transmission of the encrypted document file and a password for auxiliary decryption of the encrypted document file to the third user terminal;
When the encrypted document file and the second password are received from the third user terminal, the encrypted document file is applied as an input to the hash function to generate the first hash value, and the first hash value is obtained from the password table. Extracts the first password recorded corresponding to the value, checks whether the first password is the same as the second password, and when it is confirmed that the first password is the same as the second password, the second password from the password table extracting the first device unique identification number recorded in correspondence to one hash value;
When the first device-specific identification number is extracted from the password table, a module for converting the first device-specific identification number into the first integer value that is an integer of a decimal number, and then dividing the first integer value as a dividend by n By performing an operation with , the first operation value is calculated, the first key pair corresponding to the first operation value is selected from the key pair storage unit, and the first private key is extracted from the first key pair. and, when the first private key is extracted, the third user transmits the first private key to the third user terminal and at the same time transmits a decryption command instructing to decrypt the encrypted document file with the first private key. transmitting to the terminal; and
When the decryption of the encrypted document file is completed in the third user terminal, receiving a decryption completion message indicating that the decryption of the encrypted document file is completed from the third user terminal
An operating method of a document security service server that supports encryption of a document file based on the terminal information further comprising a.
제6항 내지 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.A computer-readable recording medium recording a computer program for executing the method of any one of claims 6 to 10 through combination with a computer. 제6항 내지 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.A computer program stored in a storage medium for executing the method of any one of claims 6 to 10 through combination with a computer.
KR1020200131767A 2020-10-13 2020-10-13 Document security service server that supports encryption of document files based on terminal information and operating method thereof Active KR102328057B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200131767A KR102328057B1 (en) 2020-10-13 2020-10-13 Document security service server that supports encryption of document files based on terminal information and operating method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200131767A KR102328057B1 (en) 2020-10-13 2020-10-13 Document security service server that supports encryption of document files based on terminal information and operating method thereof

Publications (1)

Publication Number Publication Date
KR102328057B1 true KR102328057B1 (en) 2021-11-17

Family

ID=78702497

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200131767A Active KR102328057B1 (en) 2020-10-13 2020-10-13 Document security service server that supports encryption of document files based on terminal information and operating method thereof

Country Status (1)

Country Link
KR (1) KR102328057B1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116089986A (en) * 2023-04-07 2023-05-09 深圳天谷信息科技有限公司 Electronic document management method, device, equipment and medium capable of configuring security policy
KR20230113902A (en) * 2022-01-24 2023-08-01 주식회사 엔플럭스 Automated external defibrillator emergency delivery service server that provides emergency delivery service for automated external defibrillator and operating method thereof
KR20230115834A (en) * 2022-01-26 2023-08-03 동국대학교 산학협력단 Documentation service server to operate documentation service for providing documented presentation video, and the operating method thereof
KR20230124216A (en) * 2022-02-18 2023-08-25 주식회사 한글과컴퓨터 Spelling correction service providing server that provides spelling correction service for electronic documents and operating method thereof
KR20230124207A (en) * 2022-02-18 2023-08-25 주식회사 한글과컴퓨터 Document sharing service server for managing document sharing service based on cloud, and the operating method thereof
KR20230124271A (en) * 2022-02-18 2023-08-25 주식회사 한글과컴퓨터 Document sharing service server for processing saving and sharing of document files with unauthorized fonts, in the cloud-based document sharing service, and the operating method thereof
KR20240019502A (en) * 2022-08-04 2024-02-14 주식회사 한글과컴퓨터 Document management service server for operating document management service based on cloud, and the operating method thereof
KR102924070B1 (en) * 2023-07-20 2026-02-09 주식회사 한글과컴퓨터 Scoring service providing server that provides the scoring service for a problem and operating method thereof

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150107669A (en) * 2014-03-14 2015-09-23 주식회사 로웸 Method and apparatus for managing secret data and security authentication method and the system
KR20180129475A (en) * 2017-05-26 2018-12-05 삼성에스디에스 주식회사 Method, user terminal and authentication service server for authentication
KR20200050157A (en) * 2018-11-01 2020-05-11 주식회사 한글과컴퓨터 Electronic terminal device capable of processing conditional security settings for a memo entered in a spreadsheet and operating method thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150107669A (en) * 2014-03-14 2015-09-23 주식회사 로웸 Method and apparatus for managing secret data and security authentication method and the system
KR20180129475A (en) * 2017-05-26 2018-12-05 삼성에스디에스 주식회사 Method, user terminal and authentication service server for authentication
KR20200050157A (en) * 2018-11-01 2020-05-11 주식회사 한글과컴퓨터 Electronic terminal device capable of processing conditional security settings for a memo entered in a spreadsheet and operating method thereof

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102758465B1 (en) * 2022-01-24 2025-01-22 주식회사 엔플럭스 Automated external defibrillator emergency delivery service server that provides emergency delivery service for automated external defibrillator and operating method thereof
KR20230113902A (en) * 2022-01-24 2023-08-01 주식회사 엔플럭스 Automated external defibrillator emergency delivery service server that provides emergency delivery service for automated external defibrillator and operating method thereof
KR20230115834A (en) * 2022-01-26 2023-08-03 동국대학교 산학협력단 Documentation service server to operate documentation service for providing documented presentation video, and the operating method thereof
KR102876749B1 (en) * 2022-01-26 2025-10-28 주식회사 파일투프린트 Documentation service server to operate documentation service for providing documented presentation video, and the operating method thereof
KR102694767B1 (en) 2022-02-18 2024-08-13 주식회사 한글과컴퓨터 Document sharing service server for processing saving and sharing of document files with unauthorized fonts, in the cloud-based document sharing service, and the operating method thereof
KR20230124271A (en) * 2022-02-18 2023-08-25 주식회사 한글과컴퓨터 Document sharing service server for processing saving and sharing of document files with unauthorized fonts, in the cloud-based document sharing service, and the operating method thereof
KR102602189B1 (en) 2022-02-18 2023-11-14 주식회사 한글과컴퓨터 Document sharing service server for managing document sharing service based on cloud, and the operating method thereof
KR102706270B1 (en) * 2022-02-18 2024-09-12 주식회사 한글과컴퓨터 Spelling correction service providing server that provides spelling correction service for electronic documents and operating method thereof
KR20230124207A (en) * 2022-02-18 2023-08-25 주식회사 한글과컴퓨터 Document sharing service server for managing document sharing service based on cloud, and the operating method thereof
KR20230124216A (en) * 2022-02-18 2023-08-25 주식회사 한글과컴퓨터 Spelling correction service providing server that provides spelling correction service for electronic documents and operating method thereof
KR20240019502A (en) * 2022-08-04 2024-02-14 주식회사 한글과컴퓨터 Document management service server for operating document management service based on cloud, and the operating method thereof
KR102706280B1 (en) * 2022-08-04 2024-09-12 주식회사 한글과컴퓨터 Document management service server for operating document management service based on cloud, and the operating method thereof
CN116089986B (en) * 2023-04-07 2023-08-25 深圳天谷信息科技有限公司 Electronic document management method, device, equipment and medium capable of configuring security policy
CN116089986A (en) * 2023-04-07 2023-05-09 深圳天谷信息科技有限公司 Electronic document management method, device, equipment and medium capable of configuring security policy
KR102924070B1 (en) * 2023-07-20 2026-02-09 주식회사 한글과컴퓨터 Scoring service providing server that provides the scoring service for a problem and operating method thereof

Similar Documents

Publication Publication Date Title
KR102328057B1 (en) Document security service server that supports encryption of document files based on terminal information and operating method thereof
US12271493B2 (en) Controlling access to application data
US9832016B2 (en) Methods, systems and computer program product for providing verification code recovery and remote authentication
US10659454B2 (en) Service authorization using auxiliary device
US8325921B2 (en) Portable memory and a method for encrypting the same
KR101103403B1 (en) Control Method of Data Management System with Enhanced Security
CN108197485A (en) terminal data encryption method and system, terminal data decryption method and system
CN104573551A (en) File processing method and mobile terminal
CN105005731A (en) A data encryption and decryption method and mobile terminal
CN103370718B (en) Data protection method, device and system using distributed security keys
US20240089095A1 (en) File encrypting method and device
KR20130134932A (en) Method for producing an encrypted file and decrypting the encrypted file, computer readable recording medium a program for implementing the methods
KR102500764B1 (en) Electronic document sharing server that supports sharing settings for electronic documents based on member identification information and operating method thereof
US20220311601A1 (en) Method for pushing key, method for operating file, storage medium, and computer device
JP4684714B2 (en) File management system and program
KR102442674B1 (en) An access management server for managing access to a private cloud server and a method for operating the same
CN117193836A (en) Upgrading method, upgrading device, electronic equipment and computer storage medium
CN112632586A (en) BIOS hard disk password retrieving method, device, equipment and readable storage medium
CN116723203B (en) Data backup method, data recovery method and electronic equipment
CN119475403B (en) A method and device for secure reading and writing of data in Hongmeng system equipment
WO2024166302A1 (en) File sharing system, file sharing method, information processing device, information processing method, and computer-readable recording medium
KR20250031065A (en) Meeting minutes document management service providing apparatus, and the operating method thereof
HK40010619A (en) Methods, systems and computer program product for providing encryption on a plurality of devices
HK40010619B (en) Methods, systems and computer program product for providing encryption on a plurality of devices
CN115801439A (en) Secure network access system and method for database

Legal Events

Date Code Title Description
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

U11 Full renewal or maintenance fee paid

Free format text: ST27 STATUS EVENT CODE: A-4-4-U10-U11-OTH-PR1001 (AS PROVIDED BY THE NATIONAL OFFICE)

Year of fee payment: 5