KR20180043679A - A method for providing digital right management function in cloud storage server communicated with gateway server - Google Patents

A method for providing digital right management function in cloud storage server communicated with gateway server Download PDF

Info

Publication number
KR20180043679A
KR20180043679A KR1020160136722A KR20160136722A KR20180043679A KR 20180043679 A KR20180043679 A KR 20180043679A KR 1020160136722 A KR1020160136722 A KR 1020160136722A KR 20160136722 A KR20160136722 A KR 20160136722A KR 20180043679 A KR20180043679 A KR 20180043679A
Authority
KR
South Korea
Prior art keywords
file
drm
server
application
cloud storage
Prior art date
Application number
KR1020160136722A
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 KR1020160136722A priority Critical patent/KR20180043679A/en
Publication of KR20180043679A publication Critical patent/KR20180043679A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/603Digital right managament [DRM]

Abstract

Disclosed is a method for providing a digital right management (DRM) function in a cloud storage server interlocked with a user terminal, a gateway server, a DRM server, and an application server. The method for providing a DRM function comprises the steps of: performing authentication on a user of a user terminal when the access of the user terminal is confirmed; transmitting a file list to the user terminal when the authentication is approved; receiving a request to browse a first file included in the file list from the user terminal; transmitting the first file to the gateway server; receiving, from the gateway server, the first file in which the DRM application is canceled; and transmitting the received first file to the application server. Therefore, it is possible to provide or receive a DRM function even on a platform where hooking is limited.

Description

게이트웨이 서버와 연동된 클라우드 저장소 서버에서 DRM 기능을 제공하는 방법{A METHOD FOR PROVIDING DIGITAL RIGHT MANAGEMENT FUNCTION IN CLOUD STORAGE SERVER COMMUNICATED WITH GATEWAY SERVER}TECHNICAL FIELD [0001] The present invention relates to a method for providing a DRM function in a cloud storage server interworking with a gateway server,

본 발명은 DRM 기능을 제공하는 방법에 관한 것으로, 더욱 상세하게는 클라우드 환경에서의 애플리케이션 서버, DRM 서버, 사용자 단말을 중계하여 클라우드 저장소 서버에서 DRM 기능을 제공하는 방법에 관한 것이다.The present invention relates to a method of providing a DRM function, and more particularly, to a method of providing a DRM function in a cloud storage server by relaying an application server, a DRM server, and a user terminal in a cloud environment.

최근에는 컴퓨터 기술이 발달함에 따라, 각종 디지털 자료들이 널리 사용되고 있다. Recently, with the development of computer technology, various digital materials are widely used.

또한, 이러한 디지털 자료들 중에는 보안이 요구되는 기밀 자료나 저작권의 적용을 받는 저작물들이 많고, 따라서 이러한 자료들을 보호하기 위한 다양한 기술이 제안되고 있다.Also, among these digital materials, there are many confidential materials requiring copyright protection or copyrighted works, and various technologies for protecting these materials have been proposed.

디지털 권리 관리(Digital rights management, DRM)는 출판자 또는 저작권자가 그들이 배포한 디지털 자료나 하드웨어의 사용을 제어하고 의도한 용도로만 사용하도록 제한하는 모든 기술들을 지칭하는 용어이다. 주로 CD나 DVD 등을 이용하여 오프라인 상에서 유통되던 많은 음악, 영화 등이 온라인 상에서 유통되고 정당한 금액을 지불하지 않는 불법적인 사용을 차단하기 위하여 인증된 사용자가 인증된 기간 동안만 사용 가능하도록 통제함으로써 불법적인 사용을 제한하는데 많이 사용되고 있으나, 보안에 대한 중요성이 높아지고 그에 대한 인식이 확산됨에 따라 기업의 영업 비밀을 포함한 기밀 자료의 유출을 방지하기 위한 목적으로도 최근 많이 사용되고 있다.Digital rights management (DRM) is a term that refers to any technology that restricts the use of digital material or hardware that the publisher or copyright holder distributes, and restricts its use to its intended use only. Many of the music and movies that were distributed offline on CD or DVD are distributed online, and in order to prevent unauthorized use that does not pay a fair amount of money, However, as the importance of security has increased and the awareness of the security has increased, it has been widely used for the purpose of preventing leakage of confidential data including business secrets.

한편, 기존의 보안 문서에 대한 권한 제어 등과 같은 DRM 기능을 제공하는 것은 대부분 다양한 후킹(Hooking) 기술을 이용하여 문서의 암호화 및 복호화를 수행함으로써, 이루어지는 경우가 많다. On the other hand, in many cases, DRM functions such as authority control for existing security documents are mostly performed by encrypting and decrypting documents using various hooking techniques.

그러나, 현재의 DRM 기술은 업체간 별도의 프로그램을 사용하고 있어, 동시에 후킹이 이루어짐에 따른 프로세스 충돌(Crash), 작업 시간 지연 등이 발생할 수 있어, 시스템이 불안정해지는 문제점이 있다.However, the current DRM technology uses a separate program among the companies, and at the same time, a process collision (crash) due to hooking and a delay in the operation time may occur, resulting in a problem that the system becomes unstable.

또한, 시스템 또는 플랫폼에서 후킹 기술을 제공하지 않는 경우에는 DRM 기능을 제공하기 위한 별도의 기술이 필요할 수 있다.In addition, if the system or platform does not provide hooking technology, a separate technique for providing the DRM function may be required.

한편, 각종 디지털 자료들이 방대하게 활용됨에 따라 개인의 데이터를 저장할 수 있는 리소스의 한계에 직면하는 문제점이 있고, 이 때문에 클라우드 서비스에 기반한 다양한 클라우드 저장소가 소개되고 있다. 예를 들면, 구글의 구글 드라이브(google drive), 마이크로소프트의 원드라이브(OneDrive) 등이 보급되고 있어, 리소스 한계를 극복하기 위한 방안들이 모색되고 있다.On the other hand, as various digital materials are utilized extensively, there is a problem that the limit of resources for storing personal data is confronted. Therefore, various cloud stores based on cloud services are being introduced. For example, Google's google drive, Microsoft's OneDrive, etc. are being deployed, and plans are being sought to overcome resource limitations.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 클라우드 저장소 서버(gateway server)에서 DRM 기능을 제공하는 방법을 제공하는데 있다.In order to solve the above problems, an object of the present invention is to provide a method for providing a DRM function in a cloud storage server.

상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 게이트웨이 서버(gateway server)에서 DRM 기능을 제공하는 방법을 제공하는데 있다.It is another object of the present invention to provide a method for providing a DRM function in a gateway server.

상기와 같은 문제점을 해결하기 위한 본 발명의 또 다른 목적은, DRM 기능을 제공하는 장치를 제공하는데 있다.Another object of the present invention is to provide an apparatus for providing a DRM function.

상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른, 사용자 단말(user terminal), 게이트웨이 서버(gateway server), DRM 서버 및 애플리케이션 서버(application server)와 연동하는 클라우드 저장소 서버(gateway server)에서 DRM 기능을 제공하는 방법은, 사용자 단말의 접속이 확인되면, 사용자 단말의 사용자에 대한 인증을 수행하는 단계, 인증이 승인되면, 파일 리스트를 사용자 단말에게 전송하는 단계, 사용자 단말로부터 파일 리스트에 포함된 제1 파일에 대한 열람 요청을 수신하는 단계 및 제1 파일을 게이트웨이 서버로 전송하는 단계를 포함한다.According to an aspect of the present invention, there is provided a DRM service method for a DRM service in a cloud gateway server interworking with a user terminal, a gateway server, a DRM server, and an application server, A method for providing a function includes performing authentication for a user of a user terminal when a connection of a user terminal is confirmed, transmitting a file list to the user terminal when authentication is approved, Receiving a browse request for the first file, and transmitting the first file to the gateway server.

여기서, 클라우드 저장소 서버는, 게이트웨이 서버를 미리 등록하여 게이트웨이 서버와 연동하여 제1 파일을 처리할 수 있다.Here, the cloud storage server may register the gateway server in advance and process the first file in cooperation with the gateway server.

여기서, 사용자 단말의 사용자에 대한 인증을 수행하는 단계는, 사용자 단말로부터 사용자 정보를 수신하는 단계, 수신된 사용자 정보에 대하여 일방향 암호화를 수행하고 수행된 결과를 미리 일방향 암호화되어 저장된 사용자 정보와 비교하는 단계를 포함할 수 있다.The step of performing authentication for a user of the user terminal comprises the steps of receiving user information from the user terminal, performing one-way encryption on the received user information, and comparing the result of the one-way encryption with user information stored in one- Step < / RTI >

상기 목적을 달성하기 위한 본 발명의 다른 측면에 따른 클라우드 저장소 서버(cloud storage server), DRM 서버 및 애플리케이션 서버(application server)와 연동하는 게이트웨이 서버(gateway server)에서 DRM 기능을 제공하는 방법은, 사용자의 클라우드 저장소 서버를 통한 제1 파일의 열람 요청에 따라, 클라우드 저장소 서버로부터 제1 파일을 수신하는 단계, 수신한 제1 파일에 대한 DRM적용 여부에 따라 DRM 서버와 연동하여 DRM적용을 해제하는 단계 및 DRM적용이 해제된 제1 파일을 애플리케이션 서버에 전송하는 단계를 포함할 수 있다.According to another aspect of the present invention, there is provided a method for providing a DRM function in a gateway server coupled with a cloud storage server, a DRM server, and an application server, Receiving a first file from the cloud storage server according to a request for browsing a first file through the cloud storage server of the cloud storage server, releasing DRM application in cooperation with the DRM server according to whether the received first file is DRM applied And transmitting the DRM-deactivated first file to the application server.

여기서, 게이트웨이 서버는, 클라우드 저장소 서버에 미리 등록되어, 미리 정의된 API(Application Programming Interface)로 데이터를 송수신할 수 있다.Here, the gateway server is registered in advance in the cloud storage server, and can transmit and receive data using a predefined API (Application Programming Interface).

여기서, DRM 적용은, 제1 파일에 대하여 대칭 키 방식으로 암호화되고, 암호화된 제1 파일에 제1 파일에 관한 메타데이터를 함께 패키징하여 수행될 수 있다.Here, the DRM application can be performed by packaging the first file encrypted with the symmetric key method and the first file encrypted with the metadata related to the first file.

여기서, 애플리케이션 서버에 전송하는 단계는, 전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 전송할 수 있다.Here, the step of transmitting to the application server may be carried out according to at least one security protocol such as Transport Layer Security (TLS) and Secure Sockets Layer (SSL).

여기서, 메타데이터는, 제1 파일에 대한 유효기간, 생성시각, 변경시각 및 복호화 키 중 적어도 하나를 포함할 수 있다.Here, the metadata may include at least one of a valid period, a generation time, a modification time, and a decryption key for the first file.

여기서, DRM적용을 해제하는 단계는, 제1 파일의 DRM적용 여부를 확인하는 단계, 제1 파일에 DRM적용이 된 경우, DRM 서버와 연동하여 사용자의 접근 권한을 판단하는 단계 및 접근 권한에 기초하여 제1 파일의 DRM적용을 해제하는 단계를 포함할 수 있다.Here, the step of canceling the DRM application may include a step of checking whether the first file is DRM applied, a step of determining a user's access right in cooperation with the DRM server when DRM is applied to the first file, And releasing the DRM application of the first file.

여기서, 애플리케이션 서버로부터 제1 파일이 수정된 제2 파일을 수신하는 단계 및 제2 파일을 클라우드 저장소 서버로 전송하는 단계를 더 포함할 수 있다.Here, the method may further include receiving a second file from which the first file is modified from the application server, and transmitting the second file to the cloud storage server.

여기서, 제2 파일을 클라우드 저장소 서버로 전송하는 단계는, 제2 파일에 대하여, DRM 서버와 연동하여 DRM적용을 수행하고, DRM적용이 이루어진 제2 파일을 클라우드 저장소 서버로 전송할 수 있다.Here, in the step of transmitting the second file to the cloud storage server, DRM application may be performed for the second file in cooperation with the DRM server, and the second file may be transmitted to the cloud storage server.

상기 목적을 달성하기 위한 본 발명의 다른 측면에 따른, 사용자 단말(user terminal), 게이트웨이 서버(gateway server), DRM 서버 및 클라우드 저장소 서버(cloud storage server)와 연동하여 DRM 기능을 제공하는 장치는, DRM 기능을 제공하는 장치는 적어도 하나의 명령어를 실행하는 프로세서(processor) 및 적어도 하나의 명령어가 저장되는 메모리를 포함한다.According to another aspect of the present invention, there is provided an apparatus for providing a DRM function in cooperation with a user terminal, a gateway server, a DRM server, and a cloud storage server, An apparatus for providing a DRM function includes a processor for executing at least one instruction and a memory for storing at least one instruction.

여기서, 프로세서는, 사용자의 클라우드 저장소 서버를 통한 제1 파일의 열람 요청에 따라, 클라우드 저장소 서버로부터 제1 파일을 수신하고, 수신한 제1 파일에 대한 DRM적용 여부에 따라 DRM 서버와 연동하여 DRM적용을 해제하고, DRM적용이 해제된 제1 파일을 애플리케이션 서버에 전송할 수 있다.Here, the processor receives the first file from the cloud storage server according to a request for browsing the first file through the cloud storage server of the user, synchronizes with the DRM server according to DRM application of the received first file, And can transmit the first file whose DRM application is released to the application server.

여기서, DRM 기능을 제공하는 장치는, 클라우드 저장소 서버에 미리 등록되어, 미리 정의된 API(Application Programming Interface)로 데이터를 송수신할 수 있다.Here, the device providing the DRM function can be previously registered in the cloud storage server and can transmit and receive data using a predefined API (Application Programming Interface).

여기서, 프로세서는, 제1 파일에 대하여 대칭 키 방식으로 암호화되고, 암호화된 제1 파일에 제1 파일에 관한 메타데이터를 함께 패키징하여 DRM적용을 수행할 수 있다.Here, the processor can encrypt the first file with the symmetric key method, and package the metadata related to the first file together with the encrypted first file to perform the DRM application.

여기서, 메타데이터는, 제1 파일에 대한 유효기간, 생성시각, 변경시각 및 복호화 키 중 적어도 하나를 포함할 수 있다.Here, the metadata may include at least one of a valid period, a generation time, a modification time, and a decryption key for the first file.

여기서, 프로세서는, DRM적용이 해제된 제1 파일을 전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 애플리케이션 서버에 전송할 수 있다.Here, the processor may transmit the DRM-deactivated first file to the application server according to at least one security protocol such as Transport Layer Security (TLS) and Secure Sockets Layer (SSL).

여기서, 프로세서는, 제1 파일의 DRM적용 여부를 확인하고, 제1 파일에 DRM적용이 된 경우, DRM 서버와 연동하여 사용자의 접근 권한을 판단하고, 접근 권한에 기초하여 제1 파일의 DRM적용을 해제할 수 있다.Here, the processor checks whether or not the first file is DRM applied. If DRM is applied to the first file, the processor determines the access right of the user in cooperation with the DRM server. If DRM is applied to the first file, Can be released.

여기서, 프로세서는, 애플리케이션 서버로부터 제1 파일이 수정된 제2 파일을 수신하고, 제2 파일을 클라우드 저장소 서버로 전송할 수 있다.Here, the processor may receive a second file from which the first file has been modified from the application server, and send the second file to the cloud storage server.

여기서, 프로세서는, 제2 파일에 대하여, DRM 서버와 연동하여 DRM적용을 수행하고, DRM적용이 이루어진 제2 파일을 클라우드 저장소 서버로 전송할 수 있다.Here, the processor may perform DRM application in association with the DRM server with respect to the second file, and may transmit the DRM-applied second file to the cloud storage server.

상기와 같은 본 발명에 따른 DRM 기능을 제공하는 방법 또는 장치를 이용할 경우에는 후킹이 제한된 플랫폼에서도 DRM 파일에 대한 처리가 가능할 수 있다.When the method or apparatus for providing the DRM function according to the present invention as described above is used, it is possible to process the DRM file even in a platform with limited hooking.

또한, DRM적용이 클라우드 환경에서 이루어질 수 있어 클라우드 환경에서의 보안이 향상될 수 있다.In addition, since DRM application can be performed in a cloud environment, security in a cloud environment can be improved.

또한, 클라우드 저장소를 이용하여 로컬 저장소의 자원상 제약을 극복할 수 있다.In addition, cloud storage can be used to overcome resource constraints on local storage.

또한, 완성된 애플리케이션 서버와 연동할 수 있기 때문에 확장성이 높고 안정성이 높은 장점이 있다.In addition, it has a high scalability and high stability because it can work with a completed application server.

도 1은 본 발명의 실시예에 따른 DRM 기능을 제공하는 방법 또는 장치에 대한 구성도이다.
도 2는 본 발명의 일실시예에 따른 클라우드 저장소 서버에서 DRM 기능을 제공하는 방법에 대한 흐름도이다.
도 3은 본 발명의 일실시예에 따른, 게이트웨이 서버(gateway server)에서 DRM 기능을 제공하는 방법에 대한 흐름도이다.
도 4는 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법에 대한 제1 시퀀스도이다.
도 5는 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법에 대한 제2 시퀀스도이다.
도 6은 본 발명의 일실시예에 따른 DRM 기능을 제공하는 장치에 대한 구성도이다.
도 7은 본 발명의 일실시예에 따른 클라우드 저장소 서버에서 제공하는 사용자 인터페이스의 예시도이다.
1 is a block diagram of a method or apparatus for providing a DRM function according to an embodiment of the present invention.
2 is a flowchart illustrating a method of providing a DRM function in a cloud storage server according to an exemplary embodiment of the present invention.
3 is a flowchart illustrating a method of providing a DRM function in a gateway server according to an exemplary embodiment of the present invention.
4 is a first sequence diagram of a method for providing a DRM function according to an embodiment of the present invention.
5 is a second sequence diagram of a method for providing a DRM function according to an embodiment of the present invention.
6 is a block diagram of an apparatus for providing a DRM function according to an embodiment of the present invention.
7 is an exemplary view of a user interface provided by a cloud storage server according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 DRM 기능을 제공하는 방법 또는 장치에 대한 구성도이다.1 is a block diagram of a method or apparatus for providing a DRM function according to an embodiment of the present invention.

도 1을 참조하면, DRM 기능을 제공하는 방법 또는 장치는 사용자 단말, 클라우드 서버, 게이트웨이 서버, DRM 서버 및/또는 애플리케이션 서버를 포함하여 구성될 수 있다.Referring to FIG. 1, a method or apparatus for providing a DRM function may include a user terminal, a cloud server, a gateway server, a DRM server, and / or an application server.

여기서, DRM 기능이란, 미디어 파일이나 전자 문서 파일 등 각종 컨텐츠를 송수신할 때 송수신단 상호간 인증 처리, 송수신시의 암호화 처리, 컨텐츠의 암호화 처리, 암호화에 사용된 키의 관리, 컨텐츠의 포멧에 대한 규격 설계 및 패키징, 컨텐츠 사용을 위한 권리의 관리 및 해석 등 디지털 컨텐츠의 유통 및 복제 방지를 통해 디지털 컨텐츠의 정당한 권리자를 보호하는 기능들을 의미할 수 있다.Here, the DRM function is a function of encrypting and decrypting contents when transmitting and receiving various contents such as a media file or an electronic document file, managing the keys used for encryption, Design and packaging, and the management and interpretation of rights to use the content, thereby preventing the distribution and copying of digital contents.

여기서, 사용자 단말은 클라우드 저장소 서버에 접속하여 파일을 열람하고, 애플리케이션 서버 및/또는 게이트웨이 서버와 연동하여 DRM이 적용된 파일을 읽거나, 수정 또는 삭제할 수 있다. 여기서, DRM이 적용된 파일이란 워드 프로세서 파일을 포함한 각종 오피스 파일뿐만 아니라 미디어 파일도 포함할 수 있다. 또한, 사용자 단말의 플랫폼(platform)은 함수 후킹이나 API 후킹 등 각종 후킹 기술이 적용되지 않거나 이를 지원하지 않는 운영체제(operating system, OS)일 수 있다. 예를 들면, 애플의 MAC OS, Linux 등일 수 있다.Here, the user terminal accesses the cloud storage server, browses the file, and can read, modify or delete the DRM-applied file in cooperation with the application server and / or the gateway server. Here, DRM-applied files may include media files as well as various office files including word processor files. Also, the platform of the user terminal may be an operating system (OS) that does not support or supports various hooking techniques such as function hooking and API hooking. For example, Apple's MAC OS, Linux, and so on.

사용자 단말의 예를 들면, 통신 가능한 데스크탑 컴퓨터(desktop computer), 랩탑 컴퓨터(laptop computer), 노트북(notebook), 스마트폰(smart phone), 태블릿 PC(tablet PC), 모바일폰(mobile phone), 스마트 워치(smart watch), 스마트 글래스(smart glass), e-book 리더기, PMP(portable multimedia player), 휴대용 게임기, 네비게이션(navigation) 장치, 디지털 카메라(digital camera), DMB(digital multimedia broadcasting) 재생기, 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), PDA(Personal Digital Assistant) 등일 수 있다.Examples of the user terminal include a portable computer such as a desktop computer, a laptop computer, a notebook, a smart phone, a tablet PC, a mobile phone, a smart phone, Such as a smart watch, a smart glass, an e-book reader, a portable multimedia player (PMP), a portable game machine, a navigation device, a digital camera, a digital multimedia broadcasting (DMB) A digital audio recorder, a digital audio player, a digital video recorder, a digital video player, a PDA (Personal Digital Assistant), and the like.

여기서, 게이트웨이 서버는 클라우드 저장소 서버와 DRM 서버를 중계하여 클라우드 저장소 서버에 DRM 기능을 제공할 수 있다. 또한, 애플리케이션 서버와 DRM 서버를 중계할 수도 있다. 구체적으로 클라우드 저장소 서버에 저장된 데이터를 송수신할 수 있고, 클라우드 저장소 서버로부터 수신된 파일에 대하여 DRM 서버와 연동하여 DRM적용을 수행하거나 해제할 수 있다. 또한, 애플리케이션 서버로부터 파일을 수신하여 DRM적용을 수행하거나, DRM적용을 해제하고 처리된 파일을 클라우드 저장소 서버로 전송할 수 있다. 다만, DRM이 해제된 파일을 송수신할 경우에는 네트워크 보안이 적용된 환경에서 서로 송수신 할 수 있다. 또한, 클라우드 저장소 서버, DRM 서버 또는 애플리케이션 서버 각각에서 제공하거나 미리 설정된 API(application programming interface)를 이용하여 서로 데이터를 송수신할 수 있으며, 이때 각 서버 고유의 식별기호 예를 들면, IP address, MAC address, server ID 등을 함께 송수신할 수 있다.Here, the gateway server can provide the DRM function to the cloud storage server by relaying the cloud storage server and the DRM server. It is also possible to relay the application server and the DRM server. Specifically, data stored in the cloud storage server can be transmitted and received, and a DRM application can be performed or released with respect to a file received from the cloud storage server in cooperation with the DRM server. In addition, DRM application may be performed by receiving a file from the application server, or DRM application may be canceled and the processed file may be transmitted to the cloud storage server. However, when sending and receiving DRM-released files, they can transmit and receive in environments where network security is applied. In addition, data can be exchanged with each other using an application programming interface (API) provided by a cloud storage server, a DRM server, or an application server, respectively. At this time, a unique identifier such as an IP address, a MAC address , server ID, and so on.

여기서, 클라우드 저장소 서버는 사용자의 각종 파일을 저장(download)하고, 불러올 수(upload) 있으며, 디렉토리 또는 파일 리스트 탐색 등을 수행하고, 저장된 각종 파일을 외부로 전송할 수 있으며, 외부로의 전송과 관련된 API(Application programming interface)를 제공할 수 있다. 특히, 클라우드 저장소 서버는 게이트웨이 서버를 미리 등록하여, 클라우드 저장소 서버에 저장된 각종 파일을 게이트웨이 서버와 연동하여 처리하거나 애플리케이션 서버로의 송수신을 할 수 있다.Here, the cloud storage server can download various files of a user, upload it, search a directory or a file list, transmit various stored files to the outside, An application programming interface (API) can be provided. In particular, the cloud storage server registers the gateway server in advance, processes various files stored in the cloud storage server in association with the gateway server, and transmits / receives the file to / from the application server.

클라우드 저장소 서버의 예를 들면, 구글 드라이브(google drive), 원 드라이브(onedrive), 드롭 박스(dropbox) 등의 클라우드 서비스(cloud service)일 수 있으며, 사설 네트워크(private network)상에 존재하는 저장소일 수도 있는데 예를 들면, 쉐어포인트(sharepoint) 등이 있을 수 있다. 여기서, 애플리케이션 서버는 게이트웨이 서버와 연동하여 클라우드 저장소 서버에 저장된 각종 파일을 처리할 수 있다. 예를 들면, 클라우드 저장소에 저장된 파일을 게이트웨이 서버를 통하여 전달받아 미디어 파일을 재생하거나, 각종 오피스 문서 파일, 그림 파일 등을 열람할 수 있으며 편집, 삭제 등 포함한 변경을 할 수 있다. Examples of cloud storage servers are cloud services such as google drive, onedrive, and dropbox, and may be stored on a private network. It can also be, for example, sharepoint. Here, the application server can process various files stored in the cloud storage server in cooperation with the gateway server. For example, a file stored in a cloud storage can be received via a gateway server to play media files, various office document files, picture files, etc., and can make changes including editing, deletion, and the like.

더 구체적으로, 애플리케이션 서버는 웹 기반으로 문서나 미디어 파일을 처리하는 각종 서버로서, 구글 오피스(google doc), 네이버 오피스(naver office), 씽크프리(thinkfree), MS 오피스 365 등이 있을 수 있다. 또한, 공용이나 사설 네트워크를 통한 각종 미디어 서버가 포함될 수 있으며, 사용자 단말과 네트워크상에서 직접 또는 간접적으로 연결되어 각종 애플리케이션을 구동시킬 수 있는 장치일 수도 있다. More specifically, the application server may be a web-based server for processing documents or media files, such as google doc, naver office, thinkfree, MS office 365, and the like. In addition, various media servers through a public or private network may be included, or may be a device capable of directly or indirectly connecting with a user terminal on a network to drive various applications.

또한, 본 발명의 다른 실시예로, 애플리케이션 서버는 게이트웨이 서버를 포함하여 구성될 수도 있는데, 예를 들면 애플리케이션 서버가 클라우드 저장소 서버에 등록되어 각종 파일을 송수신하고, 송수신된 파일에 대하여 DRM 서버와 연동하여 DRM적용을 수행하거나 DRM적용을 해제할 수도 있다.In another embodiment of the present invention, the application server may include a gateway server. For example, an application server may register with a cloud storage server to transmit / receive various files, and may interwork with a DRM server The DRM application may be performed or the DRM application may be canceled.

여기서, DRM 서버는 게이트웨이 서버와 연동하여 DRM이 적용된 파일, 사용자 정보, 그밖의 접근 권한이나 관리 정책을 포함하는 DRM 관련 데이터를 수신할 수 있고, 수신한 사용자 정보를 이용하여 사용자를 인증하거나, 사용자의 권한을 확인하여 DRM의 해제 여부를 전송할 수 있다.Here, the DRM server may receive DRM-related data including DRM-applied files, user information, other access rights or management policies in cooperation with the gateway server, authenticate the user using the received user information, And can transmit whether DRM is released or not.

또한, DRM 서버는 정책 서버 또는 장치를 포함할 수 있는데, 정책 서버는 사용자의 권한뿐만 아니라 DRM이 적용된 파일의 배포 또는 유통에 관한 정보를 저장할 수 있는데, 예를 들면, DRM이 적용된 파일의 유효기간을 의미할 수 있고, DRM이 적용된 파일을 재생 또는 열람할 수 있는 기기에 대한 고유식별기호 등을 의미할 수 있다.In addition, the DRM server may include a policy server or a device. The policy server may store not only the rights of the user but also information about the distribution or distribution of DRM-applied files. For example, , And may mean a unique identifier for a device capable of playing or browsing a DRM-applied file.

또한, DRM 서버는 DRM이 적용된 파일에 대한 DRM 적용에 관한 정보를 게이트웨이 서버로 전송할 수 있다. 여기서, DRM 적용에 관한 정보는 DRM적용을 수행하거나 해제하기 위한 정보로서 DRM이 적용된 파일에 대한 암호화 키 또는 DRM 적용을 해제하기 위한 복호화 키를 의미할 수 있다.In addition, the DRM server may transmit information on the DRM application to the DRM-applied file to the gateway server. Here, the information on the application of DRM may be an encryption key for a DRM applied file or a decryption key for canceling DRM application, as information for performing or releasing DRM application.

또한, DRM 서버는 상기의 암호화 키 또는 복호화 키를 저장 또는 관리하는 키 서버(key server)를 포함할 수 있고, 별도의 키 서버와 연동하여 키를 저장 또는 관리할 수 있다.Also, the DRM server may include a key server for storing or managing the encryption key or the decryption key, and may store or manage the key in cooperation with a separate key server.

도 2는 본 발명의 일실시예에 따른 클라우드 저장소 서버에서 DRM 기능을 제공하는 방법에 대한 흐름도이다.2 is a flowchart illustrating a method of providing a DRM function in a cloud storage server according to an exemplary embodiment of the present invention.

도 2를 참조하면, 사용자 단말(user terminal), 게이트웨이 서버(gateway server), DRM 서버 및 애플리케이션 서버(application server)와 연동하는 클라우드 저장소 서버(gateway server)에서 DRM 기능을 제공하는 방법은, 사용자 단말의 접속이 확인되면, 사용자 단말의 사용자에 대한 인증을 수행하는 단계(S200), 인증이 승인되면, 파일 리스트를 사용자 단말에게 전송하는 단계(S205), 사용자 단말로부터 파일 리스트에 포함된 제1 파일에 대한 열람 요청을 수신하는 단계(S210) 및 제1 파일을 게이트웨이 서버로 전송하는 단계(S215를 포함할 수 있다.Referring to FIG. 2, a method of providing a DRM function in a cloud server (gateway server) interworking with a user terminal, a gateway server, a DRM server, and an application server includes the steps of: (S200). When the authentication is approved, the authentication server transmits the file list to the user terminal (S205). The user terminal transmits the first file (S210), and transmitting the first file to the gateway server (S215).

여기서, 클라우드 저장소 서버는, 게이트웨이 서버를 미리 등록하고 게이트웨이 서버와 연동하여 파일을 처리할 수 있다.Here, the cloud storage server can register the gateway server in advance and process the file in cooperation with the gateway server.

여기서, 사용자 단말의 사용자에 대한 인증을 수행하는 단계(S200)는, 사용자 단말로부터 사용자 정보를 수신하는 단계 및 수신된 사용자 정보에 대하여 일방향 암호화를 수행하고 그 결과를 미리 일방향 암호화되어 저장된 사용자 정보와 비교하는 단계를 포함할 수 있다. 여기서, 사용자에 대한 인증은 클라우드 저장소에 관한 인증을 의미할 수 있다.Here, the step S200 of performing authentication for the user of the user terminal may include receiving the user information from the user terminal, performing one-way encryption on the received user information, and outputting the result in a one- And comparing them. Here, authentication for the user may mean authentication for the cloud storage.

여기서, 사용자 정보는 예를 들면 사용자의 ID, 비밀번호 또는 지문, 홍채 등을 포함하는 생체 정보, 사용자 단말의 ID, 사용자 단말의 MAC address 등을 의미할 수 있다. 여기서, 일방향 암호화는 MD-5, SHA-1, SHA-256 중 적어도 하나를 포함하는 해쉬함수(Hash Function)일 수 있다.Here, the user information may be, for example, a user ID, a password, biometric information including a fingerprint or iris, an ID of the user terminal, a MAC address of the user terminal, or the like. Here, the one-way encryption may be a hash function including at least one of MD-5, SHA-1, and SHA-256.

도 3은 본 발명의 일실시예에 따른, 게이트웨이 서버(gateway server)에서 DRM 기능을 제공하는 방법에 대한 흐름도이다.3 is a flowchart illustrating a method of providing a DRM function in a gateway server according to an exemplary embodiment of the present invention.

도 3을 참조하면, 클라우드 저장소 서버(cloud storage server), DRM 서버 및 애플리케이션 서버(web application server)와 연동하는 DRM 기능을 제공하는 방법은, 사용자의 클라우드 저장소 서버를 통한 제1 파일의 열람 요청에 따라, 클라우드 저장소 서버로부터 제1 파일을 수신하는 단계(S300), 수신한 제1 파일에 대한 DRM적용 여부에 따라 DRM 서버와 연동하여 DRM적용을 해제하는 단계(S305) 및 DRM적용이 해제된 제1 파일을 애플리케이션 서버에 전송하는 단계(S310)를 포함할 수 있다.Referring to FIG. 3, a method of providing a DRM function in cooperation with a cloud storage server, a DRM server, and a web application server includes the steps of: requesting browsing of a first file through a user's cloud storage server; (S300) of receiving the first file from the cloud storage server, releasing the DRM application in cooperation with the DRM server according to whether the received first file is DRM applied (S305), and releasing the DRM application 1 file to the application server (S310).

여기서, 게이트웨이 서버는, 클라우드 저장소 서버에 미리 등록되어, 클라우드 저장소 서버에서 제공된 API(Application Programming Interface)로 데이터를 송수신할 수 있다.Here, the gateway server is registered in advance in the cloud storage server, and can transmit and receive data using an API (Application Programming Interface) provided in the cloud storage server.

여기서, 클라우드 저장소 서버로부터 제1 파일을 수신하는 단계(S300) 이후에, DRM 서버, 애플리케이션 서버 중 적어도 하나에 대한 사용자 인증을 수행하는 단계를 더 포함할 수 있다. 여기서 사용자 인증은 앞에서 설명한 클라우드 저장소에서의 사용자 인증과 동일한 사용자 정보를 클라우드 저장소에서 수신하여 수행될 수 있다. 이때, 수신된 사용자 정보를 DRM 서버로부터 수신된 사용자 정보와 비교함으로써 수행될 수도 있고, DRM 서버에 클라우드 저장소로부터 수신된 사용자 정보를 전송하고 DRM 서버로부터 인증 여부를 수신함으로써 수행될 수도 있다. 여기서, 제1 파일을 수신하는 단계(S300) 이후라는 의미는 제1 파일을 수신하는 단계(S300) 바로 다음 단계로 한정해석되는 것이 아니며, 그 이후의 어느 단계에서든 이루어질 수 있는 것으로 해석되어야 한다.Here, after the step S300 of receiving the first file from the cloud storage server, performing the user authentication on at least one of the DRM server and the application server may be performed. Here, user authentication can be performed by receiving user information in the cloud storage, which is the same as the user authentication in the cloud storage described above. At this time, it may be performed by comparing the received user information with the user information received from the DRM server, transmitting the user information received from the cloud storage to the DRM server, and receiving the authentication information from the DRM server. Here, the meaning after the step S300 of receiving the first file is not limited to the step immediately following the step S300 of receiving the first file, and it should be construed that the step can be performed at any stage thereafter.

여기서, 클라우드 저장소 서버로부터 제1 파일을 수신하는 단계(S300) 이후에, 사용자 단말이 애플리케이션 서버로 접속하도록 유도하는 단계를 더 포함할 수 있다. 예를 들면, 게이트웨이 서버는 사용자 단말에 애플리케이션 서버에 접속할 수 있는 링크(link)를 전송할 수 있고, 링크에는 게이트웨이 서버의 제1 파일에 접근할 수 있는 주소가 포함되어 있을 수 있다. 링크를 수신한 사용자 단말은 링크에 따라 애플리케이션 서버로 접속할 수 있고, 사용자 단말이 접속되면 애플리케이션 서버는 링크에 포함되어 있는 게이트웨이 서버의 제1 파일에 접근할 수 있는 주소를 통해 게이트웨이 서버에 제1 파일을 요청할 수 있다. 여기서, 제1 파일을 수신하는 단계(S300) 이후라는 의미는 제1 파일을 수신하는 단계(S300) 바로 다음 단계로 한정해석되는 것이 아니며, 그 이후의 어느 단계에서든 이루어질 수 있는 것으로 해석되어야 한다.Here, after the step S300 of receiving the first file from the cloud storage server, it may further include a step of inducing the user terminal to connect to the application server. For example, the gateway server may send a link to the user terminal to connect to the application server, and the link may include an address capable of accessing the first file of the gateway server. The user terminal that receives the link can access the application server according to the link. When the user terminal is connected, the application server accesses the gateway server through the address accessible to the first file of the gateway server included in the link, . Here, the meaning after the step S300 of receiving the first file is not limited to the step immediately following the step S300 of receiving the first file, and it should be construed that the step can be performed at any stage thereafter.

여기서, 애플리케이션 서버에 전송하는 단계(S310)는, 전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 전송할 수 있다.Here, the step of transmitting to the application server (S310) may be carried out according to at least one security protocol such as Transport Layer Security (TLS) and Secure Sockets Layer (SSL).

예를 들면, 통신 연결상에 비밀성이 보장되기 위하여 대칭키 암호화가 이용되거나, 통신 상호간의 인증을 위하여 공개키 암호화가 이용될 수 있고, 통신 연결의 무결성을 보장하기 위하여 MAC(message authentication code)가 이용될 수 있다.For example, symmetric key encryption may be used to ensure confidentiality on a communication connection, public key encryption may be used to authenticate each other, and a message authentication code (MAC) Can be used.

여기서, DRM 적용은, 제1 파일에 대하여 대칭 키 방식으로 암호화되고, 암호화된 제1 파일에 제1 파일에 관한 메타데이터를 함께 패키징하여 수행될 수 있다. 대칭 키 방식의 예를 들면, DES, TDES, AES, SEED, RSA, RC4, IDEA가 있을 수 있다. Here, the DRM application can be performed by packaging the first file encrypted with the symmetric key method and the first file encrypted with the metadata related to the first file. Examples of symmetric key schemes are DES, TDES, AES, SEED, RSA, RC4, IDEA.

여기서, 메타데이터는, 제1 파일에 대한 유효기간, 생성시각, 변경시각 및 복호화 키 중 적어도 하나를 포함할 수 있다.Here, the metadata may include at least one of a valid period, a generation time, a modification time, and a decryption key for the first file.

또 다른 실시예로 DRM 적용은, 제1 파일에 대하여 제1 키를 이용하여 암호화를 수행할 수 있다. 또한, 제1 키에 대하여 제2 키를 이용하여 암호화를 수행하고, 암호화된 제1 키를 암호화된 제1 파일에 대한 메타데이터로 함께 패키징할 수 있다. 여기서, 제2 키는 DRM 서버에 저장될 수 있고, DRM 서버로부터 수신할 수 있다. 여기서 DRM 서버는 제2 키를 일방향 암호화 등의 암호화를 수행하여 저장해 둘 수 있다. 또한, 제1 키 또는 제2 키는 대칭 키 방식일 수 있으나 비대칭 키 방식을 배제하는 것은 아니다.In another embodiment, DRM application may perform encryption using a first key for a first file. Also, encryption may be performed using the second key for the first key, and the encrypted first key may be packaged together with the metadata for the encrypted first file. Here, the second key may be stored in the DRM server and received from the DRM server. Here, the DRM server can store the second key by performing encryption such as one-way encryption. Also, the first key or the second key may be a symmetric key scheme, but not an asymmetric key scheme.

여기서, DRM적용을 해제하는 단계(S305)는, 제1 파일의 DRM적용 여부를 확인하는 단계, 제1 파일에 DRM적용이 된 경우, DRM 서버와 연동하여 사용자의 접근 권한을 판단하는 단계 및 접근 권한에 기초하여 제1 파일의 DRM적용을 해제하는 단계를 포함할 수 있다.Here, the step of canceling DRM application (S305) may include checking whether DRM is applied to the first file, determining DRM application to the first file, determining the access right of the user in cooperation with the DRM server, And releasing DRM application of the first file based on the authority.

여기서, 사용자의 접근 권한을 판단하는 단계는, DRM 서버로부터 사용자의 접근 권한에 관한 정보를 수신하고, 수신된 정보를 이용하여 접근 권한을 판단하거나, DRM 서버에 사용자의 권한을 질의하고 DRM 서버에서 접근 권한을 확인하고, 사용자의 권한 유무를 수신할 수도 있다.The step of determining the access right of the user may include receiving information on the access right of the user from the DRM server, determining the access right using the received information, inquiring the rights of the user to the DRM server, It can check the access authority and receive the permission of the user.

예를 들면, 사용자의 접근 권한을 판단하는 단계는, DRM 서버에 사용자 단말의 맥 어드레스(MAC Address), 쿠키, IP 주소(Internet protocol address), 사용자 ID, 비밀번호, 지문이나 홍채를 포함한 생체 정보 중 적어도 하나를 전송하고 전송된 정보를 DRM 서버에서 검증하거나 DRM 서버에서 수신된 정보를 게이트웨이 서버에서 검증함으로써 사용자의 접근 권한을 판단할 수도 있다.For example, the step of determining the access right of the user may include determining a MAC address, a cookie, an IP address (Internet Protocol address), a user ID, a password, biometric information including a fingerprint or an iris The access right of the user may be determined by transmitting at least one and verifying the transmitted information with the DRM server or verifying the information received from the DRM server with the gateway server.

여기서, 접근 권한에 기초하여 제1 파일의 DRM 적용을 해제하는 단계는, DRM 서버로부터 수신받은 복호화 키를 이용하여 제1 파일에 대한 복호화를 수행하는 단계를 포함할 수 있다. 여기서, 복호화 키는 앞에서의 제2 키가 대칭 키 방식이었다면 제2 키일 수 있고, 비대칭 키 방식이었다면, 제2 키에 대한 비대칭 키 일 수 있다. 이때 앞에서의 제1 키가 대칭 키라면, 복호화 키를 이용하여, 제1 키를 복호화 하고, 복호화된 제1 키를 이용하여 제1 파일을 복호화 할 수 있다. 여기서, 수신된 복호화 키는 제1 파일에 대한 수정 등의 작업이 완료될 때까지 게이트웨이 서버에 저장될 수도 있다.The releasing the DRM application of the first file based on the access right may include decrypting the first file using the decryption key received from the DRM server. Here, the decryption key may be a second key if the second key is a symmetric key scheme, and may be an asymmetric key for the second key if it is an asymmetric key scheme. At this time, if the first key is a symmetric key, the first key can be decrypted using the decryption key, and the first file can be decrypted using the decrypted first key. Here, the received decryption key may be stored in the gateway server until the operation of modifying the first file is completed.

여기서, DRM 기능을 제공하는 방법은, 애플리케이션 서버로부터 제1 파일이 수정된 제2 파일을 수신하는 단계 및 제2 파일을 클라우드 저장소 서버로 전송하는 단계를 더 포함할 수 있다.Here, the method for providing the DRM function may further include receiving a second file from which the first file is modified from the application server, and transmitting the second file to the cloud storage server.

여기서, 제2 파일을 애플리케이션 서버로부터 수신하는 단계는, 게이트웨이 서버가 애플리케이션 서버로부터 제1 파일에 대한 수정 완료 여부를 수신하고 그에 따라 애플리케이션 서버에 제2 파일을 요청함으로써 수신될 수 있다. 구체적으로 예를 들면, 애플리케이션 서버가 사용자 단말로부터 제1 파일의 저장 명령을 수신하거나 제1 파일에 대한 편집을 종료하는 경우 또는 애플리케이션 서버로의 접속을 종료하는 경우, 애플리케이션 서버는 게이트웨이 서버로 수정 완료 여부를 전송할 수 있고, 그에 따라 게이트웨이 서버가 애플리케이션 서버에 제2 파일을 요청함으로써 수신할 수 있다. 다른 예로, 사용자 단말이 직접 게이트웨이 서버에 제1 파일에 대한 수정 완료 여부를 전송하고, 게이트웨이 서버가 애플리케이션 서버로부터 제2 파일을 수신할 수도 있다.Here, the step of receiving the second file from the application server can be received by the gateway server receiving from the application server whether the modification of the first file has been completed and requesting the second file to the application server accordingly. Specifically, for example, when the application server receives the instruction to store the first file from the user terminal, terminates editing of the first file, or terminates the connection to the application server, And thus the gateway server can receive it by requesting a second file to the application server. As another example, the user terminal may directly transmit the modification to the first file to the gateway server, and the gateway server may receive the second file from the application server.

또 다른 실시예로, 게이트웨이 서버가 DRM적용이 해제된 제1 파일을 애플리케이션 서버로 전송하고 나면, 게이트웨이 서버는 애플리케이션 서버로부터의 메시지를 리스닝(listening)하고 있을 수 있다. 이때, 애플리케이션 서버가 사용자 단말로부터 제1 파일의 저장 명령을 수신하거나 제1 파일에 대한 편집을 종료하는 경우 또는 애플리케이션 서버로의 접속을 종료하는 경우, 애플리케이션 서버는 리퀘스트 메시지(request message)에 제2 파일을 첨부하여 게이트웨이 서버에 전송할 수 있고 이에 따라 게이트웨이 서버가 제2 파일을 수신할 수도 있다.In another embodiment, the gateway server may be listening to a message from the application server after the gateway server sends the DRM-deactivated first file to the application server. At this time, when the application server receives the save command of the first file from the user terminal or finishes editing the first file or ends the connection to the application server, the application server adds the second A file can be attached and transmitted to the gateway server, and accordingly, the gateway server can receive the second file.

여기서, 제2 파일을 애플리케이션 서버로부터 수신하는 단계는, 미리 정해진 시간 간격에 따라 주기적으로 수행될 수 있다.Here, the step of receiving the second file from the application server may be performed periodically according to a predetermined time interval.

여기서, 제2 파일을 클라우드 저장소 서버로 전송하는 단계는, 제2 파일에 대하여, DRM 서버와 연동하여 DRM적용을 수행하고, DRM적용이 이루어진 제2 파일을 클라우드 저장소 서버로 전송할 수 있다.Here, in the step of transmitting the second file to the cloud storage server, DRM application may be performed for the second file in cooperation with the DRM server, and the second file may be transmitted to the cloud storage server.

여기서, 제2 파일을 클라우드 저장소 서버로 전송하는 단계는, 제2 파일에 대하여 DRM 서버와 연동하여 관리 정책을 확인하는 단계, 관리 정책에 따라, 제2 파일에 대하여 DRM적용을 수행하는 단계 및 DRM적용이 수행된 제2 파일을 클라우드 저장소 서버로 전송하는 단계를 포함할 수 있다. 여기서, 관리 정책은 DRM 서버에 포함되거나 연동된 정책 서버에 저장되어 있을 수 있다.Here, the step of transmitting the second file to the cloud storage server may include: checking the management policy in cooperation with the DRM server with respect to the second file; performing DRM application on the second file according to the management policy; And transmitting the second file to which the application is performed to the cloud storage server. Here, the management policy may be stored in the policy server included in the DRM server or linked to the DRM server.

여기서, 관리 정책은, 제2 파일을 수정한 사용자의 직책, 사용자의 ID, 사용자 단말의 MAC Address, 사용자 단말의 IP주소(Internet Protocol address) 중 적어도 하나를 참조하여, 제2 파일에 대한 DRM적용 여부를 결정할 수 있다.Here, the management policy refers to at least one of the job title of the user who modified the second file, the ID of the user, the MAC address of the user terminal, and the IP address of the user terminal (Internet Protocol address) Can be determined.

여기서, 관리 정책은, 제1 파일이 DRM적용 되었는지 여부에 따라, 제2 파일에 대한 DRM적용 여부를 결정할 수 있다. 예를 들면, 제1 파일이 DRM적용 되었던 파일이라면, 제2 파일에 대해서도 DRM적용을 할 수 있고, 제1 파일이 DRM적용이 되지 않았던 파일이라면, 제2 파일에 대해서도 DRM적용을 하지 않을 수 있다.Here, the management policy may determine whether DRM is applied to the second file, depending on whether the first file is DRM-applied or not. For example, if the first file is a DRM-applied file, DRM may be applied to the second file. If the first file is a DRM-unapplied file, DRM may not be applied to the second file .

여기서, 제2 파일에 대한 DRM적용은 앞에서 설명한 것과 같이, 제2 파일에 대하여 제1 키를 이용하여 암호화를 수행할 수 있다. 또한, 제1 키에 대하여 제2 키를 이용하여 암호화를 수행하고, 암호화된 제1 키를 암호화된 제2 파일에 대한 메타데이터로 함께 패키징할 수 있다. 다만, 여기서는 앞에서의 DRM적용을 해제하는 단계(S305)에서 DRM 서버로부터 제2 키를 획득하였을 수 있으므로 별도로 다시 DRM 서버로부터 제2 키를 수신하지 않을 수 있다. 또한, 제1 키는 제1 파일에 함께 패키징되었을 수 있으므로, 제1 파일에서 획득될 수 있다.Here, as described above, the application of the DRM to the second file can perform encryption using the first key for the second file. Further, encryption may be performed using the second key for the first key, and the encrypted first key may be packaged together with the metadata for the encrypted second file. However, since the second key may be obtained from the DRM server in the step S305 of canceling the DRM application, the DRM server may not receive the second key from the DRM server. Also, the first key may be packaged together in the first file and thus may be obtained in the first file.

도 4는 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법에 대한 제1 시퀀스도이다.4 is a first sequence diagram of a method for providing a DRM function according to an embodiment of the present invention.

도 4를 참조하면, 사용자 단말(100)은 클라우드 저장소 서버(300)에 접속할 수 있다(S400).Referring to FIG. 4, the user terminal 100 may access the cloud storage server 300 (S400).

클라우드 저장소 서버(300)는 사용자 단말(100)의 사용자에 대하여 사용자 인증을 수행할 수 있고(S401), 인증된 사용자 단말(100)에 파일 리스트를 전송할 수 있다(S402). 여기서, 클라우드 저장소 서버(300)가 사용자 단말(100)로 파일 리스트를 전송하는 것은 사용자 단말(100)에 파일 리스트에 대한 유저 인터페이스를 제공하는 것을 포함할 수 있다.The cloud storage server 300 can perform user authentication for the user of the user terminal 100 (S401) and send the file list to the authenticated user terminal 100 (S402). Here, the cloud storage server 300 transmits the file list to the user terminal 100 may include providing the user terminal 100 with a user interface for the file list.

사용자 단말(100)은 파일 리스트에 포함된 제1 파일에 대한 열람을 클라우드 저장소 서버(300)에 요청할 수 있고(S403), 클라우드 저장소 서버(300)는 제1 파일을 게이트웨이 서버(200)에 전송할 수 있다(S404).The user terminal 100 can request the cloud storage server 300 to browse the first file included in the file list at step S403 and the cloud storage server 300 transmits the first file to the gateway server 200 (S404).

클라우드 저장소 서버(300)가 제1 파일을 게이트웨이 서버(200)에 전송(S404)함에 따라 게이트웨이 서버(200)가 제1 파일을 수신하면, 게이트웨이 서버(200)는 사용자 단말(100)이 애플리케이션 서버(500)로 접속하도록 유도(S405)할 수 있다. 예를 들면, 게이트웨이 서버(200)는 사용자 단말(100)에 애플리케이션 서버(500)에 접속할 수 있는 링크(link)를 전송할 수 있고, 링크에는 게이트웨이 서버(200)의 파일에 접근할 수 있는 주소가 포함되어 있을 수 있다. 링크를 수신한 사용자 단말(100)은 링크에 따라 애플리케이션 서버(500)로 접속(S406)이 이루어질 수 있고, 애플리케이션 서버(500)는 링크에 포함되어 있는 게이트웨이 서버(200)의 파일에 접근할 수 있는 주소를 통해 게이트웨이 서버(200)에 파일을 요청할 수 있다. 여기서, 게이트웨이 서버(200)가 사용자 단말(100)에 애플리케이션 서버(500)로의 접속을 유도하는 단계는 게이트웨이 서버(200)가 제1 파일을 클라우드 저장소 서버(300)로부터 수신(S404)한 이후의 어느 단계에서든 이루어질 수 있으나 반드시 그에 한정되는 것은 아니며, 통상의 기술자가 각 단계 중에서 선택하여 구현할 수 있는 것으로 해석되어야 한다.When the gateway server 200 receives the first file as the cloud storage server 300 transmits the first file to the gateway server 200 in step S404, the gateway server 200 determines that the user terminal 100 is the application server, (Step S405). For example, the gateway server 200 may send a link to the user terminal 100 to access the application server 500, and the link may include an address accessible to the file of the gateway server 200 May be included. The user terminal 100 receiving the link can be connected to the application server 500 according to the link S406 and the application server 500 can access the file of the gateway server 200 included in the link And can request a file to the gateway server 200 through the address. Here, the step of causing the gateway server 200 to connect to the application server 500 to the user terminal 100 is the same as the step after the gateway server 200 receives the first file from the cloud storage server 300 (S404) It is to be understood that the present invention is not limited thereto, and any ordinary person skilled in the art can select and implement the invention at each step.

게이트웨이 서버(200)는 제1 파일의 DRM 적용 여부를 확인하고(S407), 제1 파일에 DRM적용이 되었다면, DRM 서버(400)에 사용자에 대한 접근 권한 확인을 요청할 수 있다(S408). DRM 서버(400)는 사용자에 대한 접근 권한을 전송할 수 있고(S409), 게이트웨이 서버(200)는 수신한 접근 권한을 기초로 사용자의 접근 권한을 판단할 수 있다(S410). 게이트웨이 서버(200)는 사용자의 접근 권한이 있는 것으로 판단되면, 제1 파일의 DRM 적용을 해제할 수 있다(S411). 또한, 게이트웨이 서버(200)는 DRM 적용이 해제된 제1 파일을 애플리케이션 서버(500)에 전송할 수 있다(S412). DRM 적용이 해제된 제1 파일을 애플리케이션 서버(500)가 수신하면, 사용자 단말(100)에 DRM 적용이 해제된 제1 파일에 대한 편집, 열람, 저장 또는 삭제 등의 기능을 제공할 수 있다(S413).The gateway server 200 checks whether the first file is DRM applied (S407). If DRM is applied to the first file, the gateway server 200 can request the DRM server 400 to confirm the access right of the user (S408). The DRM server 400 can transmit the access right to the user at step S409 and the gateway server 200 can determine the access right of the user based on the received access right at step S410. If the gateway server 200 determines that the user has access right, the DRM application of the first file can be released (S411). In addition, the gateway server 200 may transmit the first file for which DRM application is canceled to the application server 500 (S412). When the application server 500 receives the first file for which the DRM application is canceled, the user terminal 100 may provide functions such as editing, browsing, storing, or deleting the first file for which DRM application is canceled S413).

도 5는 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법에 대한 제2 시퀀스도이다.5 is a second sequence diagram of a method for providing a DRM function according to an embodiment of the present invention.

도 5를 참조하면, 애플리케이션 서버(500)로부터 사용자 단말(100)이 제1 파일에 대한 각종 기능을 제공받은(도 4의 S413) 이후의 과정을 설명할 수 있다.Referring to FIG. 5, the following description will be given of a process in which the user terminal 100 receives various functions for the first file from the application server 500 (S413 in FIG. 4).

먼저, 사용자 단말(100)은 애플리케이션 서버(500)를 통하여 제1 파일을 수정할 수 있고(S500), 그에 따라 애플리케이션 서버(500)는 제1 파일이 수정된 제2 파일을 생성할 수 있다(S501). 그후 애플리케이션 서버(500)는 게이트웨이 서버(200)나 사용자 단말(100)의 요청에 의하거나 또는 스스로 게이트웨이 서버(200)에 제2 파일을 전송할 수 있다(S502).First, the user terminal 100 can modify the first file through the application server 500 (S500), and the application server 500 can thereby generate the second file in which the first file is modified (S501 ). Thereafter, the application server 500 may transmit the second file to the gateway server 200 by request of the gateway server 200 or the user terminal 100 (S502).

예를 들면, 게이트웨이 서버(200)가 DRM적용이 해제된 제1 파일을 애플리케이션 서버(500)로 전송하고 나면, 게이트웨이 서버(200)는 애플리케이션 서버(500)로부터의 메시지를 리스닝(listening)하고 있을 수 있다. 이때, 애플리케이션 서버(500)가 사용자 단말(100)로부터 제1 파일의 저장 명령을 수신하거나 제1 파일에 대한 편집을 종료하는 경우 또는 애플리케이션 서버(500)로의 접속을 종료하는 경우, 애플리케이션 서버(500)는 리퀘스트 메시지(request message)에 제2 파일을 첨부하여 게이트웨이 서버(200)에 전송할 수 있고 이에 따라 게이트웨이 서버(200)가 제2 파일을 수신할 수도 있다.For example, after the gateway server 200 transmits the first file for which DRM application is canceled to the application server 500, the gateway server 200 may listen to a message from the application server 500 . At this time, when the application server 500 receives a command to store the first file from the user terminal 100, terminates editing of the first file, or terminates the connection to the application server 500, the application server 500 May attach a second file to a request message and transmit the request message to the gateway server 200 and the gateway server 200 may receive the second file.

게이트웨이 서버(200)는 수신한 제2 파일에 대해 DRM 적용 여부를 결정할 수 있다(S503). 구체적으로 수신한 제2 파일에 대하여 DRM 서버(400)와 연동하여 제2 파일에 대한 정책을 참조하여 결정할 수 있다.The gateway server 200 may determine whether to apply the DRM to the received second file (S503). Specifically, the second file received can be determined by referring to the policy for the second file in cooperation with the DRM server 400. [

게이트웨이 서버(200)는 제2 파일에 대하여 DRM 적용을 하기로 결정하면, DRM 서버(400)와 연동하여 제2 파일에 DRM적용을 할 수 있다(S504). 게이트웨이 서버(200)는 DRM적용이 된 제2 파일을 클라우드 저장소 서버(300)로 업로드할 수 있다(S505).If the gateway server 200 determines to apply the DRM to the second file, the gateway server 200 can apply DRM to the second file in cooperation with the DRM server 400 (S504). The gateway server 200 may upload the DRM-applied second file to the cloud storage server 300 (S505).

도 6은 본 발명의 일실시예에 따른 DRM 기능을 제공하는 장치에 대한 구성도이다.6 is a block diagram of an apparatus for providing a DRM function according to an embodiment of the present invention.

도 6을 참조하면, 사용자 단말(user terminal), 클라우드 저장소 서버(cloud storage server), DRM 서버 및 애플리케이션 서버(application server)와 연동하여 DRM 기능을 제공하는 장치(200)는, 적어도 하나의 명령어를 실행하는 프로세서(Processor, 210) 및 적어도 하나의 명령어가 저장되는 메모리(Memory, 220)를 포함할 수 있다. 또한, 사용자의 파일, 디렉토리 등을 저장하는 저장장치(230)를 포함할 수 있고, 사용자 단말, 게이트웨이 서버, DRM 서버 또는 애플리케이션 서버와 데이터를 송수신하는 통신부(240)를 포함할 수 있다.Referring to FIG. 6, a device 200 providing a DRM function in cooperation with a user terminal, a cloud storage server, a DRM server, and an application server includes at least one command A processor 210 for executing a program, and a memory 220 for storing at least one instruction. In addition, it may include a storage device 230 that stores a user's file, a directory, and the like, and may include a communication unit 240 that transmits and receives data to and from a user terminal, a gateway server, a DRM server, or an application server.

여기서, DRM 기능을 제공하는 장치(200)는 도 1 내지 5에서 설명한 게이트웨이 서버일 수 있다.Here, the device 200 providing the DRM function may be the gateway server described in FIGS.

여기서, 프로세서(210)는, 사용자의 클라우드 저장소 서버를 통한 제1 파일의 열람 요청에 따라, 클라우드 저장소 서버로부터 제1 파일을 수신하고, 수신한 제1 파일에 대한 DRM적용 여부에 따라 상기 DRM 서버와 연동하여 상기 DRM적용을 해제하고, 상기 DRM적용이 해제된 제1 파일을 상기 애플리케이션 서버에 전송할 수 있다.Here, the processor 210 receives the first file from the cloud storage server in response to a request for browsing the first file through the cloud storage server of the user, and controls the DRM server 210 according to whether the DRM is applied to the received first file. The DRM application can be released, and the DRM application-canceled first file can be transmitted to the application server.

여기서 DRM 기능을 제공하는 장치(200)는, 클라우드 저장소 서버에 미리 등록되어, 미리 정의된 API(Application Programming Interface)로 데이터를 송수신할 수 있다.Here, the device 200 providing the DRM function can be previously registered in the cloud storage server and can transmit and receive data using a predefined application programming interface (API).

여기서 프로세서(210)는, 제1 파일에 대하여 대칭 키 방식으로 암호화되고, 암호화된 제1 파일에 제1 파일에 관한 메타데이터를 함께 패키징하여 DRM적용을 수행할 수 있다.Here, the processor 210 may encode the first file with a symmetric key method and package the metadata related to the first file together with the encrypted first file to perform DRM application.

여기서, 메타데이터는, 제1 파일에 대한 유효기간, 생성시각, 변경시각 및 복호화 키 중 적어도 하나를 포함할 수 있다.Here, the metadata may include at least one of a valid period, a generation time, a modification time, and a decryption key for the first file.

여기서 프로세서(210)는, DRM적용이 해제된 제1 파일을 전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 애플리케이션 서버에 전송할 수 있다.Here, the processor 210 can transmit the DRM-deactivated first file to the application server according to at least one security protocol such as Transport Layer Security (TLS) and Secure Sockets Layer (SSL) have.

여기서 프로세서(210)는, 제1 파일의 DRM적용 여부를 확인하고, 제1 파일에 DRM적용이 된 경우, DRM 서버와 연동하여 사용자의 접근 권한을 판단하고, 접근 권한에 기초하여 제1 파일의 DRM적용을 해제할 수 있다.Here, the processor 210 checks whether or not the first file is DRM applied. If DRM is applied to the first file, the processor 210 determines the access right of the user in cooperation with the DRM server, DRM application can be released.

여기서 프로세서(210)는, 애플리케이션 서버로부터 제1 파일이 수정된 제2 파일을 수신하고, 제2 파일을 클라우드 저장소 서버로 전송할 수 있다.Here, the processor 210 may receive a second file from which the first file is modified from the application server, and may transmit the second file to the cloud storage server.

여기서 프로세서(210)는, 제2 파일에 대하여, DRM 서버와 연동하여 DRM적용을 수행하고, DRM적용이 이루어진 제2 파일을 클라우드 저장소 서버로 전송할 수 있다.Here, the processor 210 may apply DRM to the second file in cooperation with the DRM server, and may transmit the DRM-applied second file to the cloud storage server.

도 7은 본 발명의 일실시예에 따른 클라우드 저장소 서버에서 제공하는 사용자 인터페이스의 예시도이다.7 is an exemplary view of a user interface provided by a cloud storage server according to an embodiment of the present invention.

도 7을 참조하면, 클라우드 저장소 서버가 게이트웨이 서버와 연동될 수 있음을 설명할 수 있다.Referring to FIG. 7, it can be explained that the cloud storage server can be interworked with the gateway server.

구체적으로, 클라우드 저장소 서버에 접속한 사용자는 파일리스트에 대하여 열람 또는 열기 명령을 선택할 수 있고, 이때 특정 애플리케이션을 선택하여 열 수 있다.Specifically, a user connected to the cloud storage server can select a browse or open command for the file list, and can select and open a specific application at this time.

여기서, 목록으로 제공되는 애플리케이션은 미리 클라우드 저장소 서버에 등록된 게이트웨이 서버일 수 있다.Here, the application provided in the list may be a gateway server registered in advance in the cloud storage server.

여기서, 사용자가 특정 애플리케이션으로 게이트웨이 서버를 선택하여 파일을 열람하면, 게이트웨이 서버가 사용자 단말에게 애플리케이션 서버로 접속을 유도할 수 있고, 그에 따라 사용자 단말은 열람한 파일에 대한 편집, 수정, 저장, 삭제 등 파일의 처리에 관한 사용자 인터페이스를 애플리케이션 서버로부터 제공받을 수 있다.Here, when the user selects a gateway server and browses the file with a specific application, the gateway server can guide the user terminal to connect to the application server. Accordingly, the user terminal can edit, modify, store, delete A user interface regarding the processing of the file can be provided from the application server.

본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.The methods according to the present invention can be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the computer readable medium may be those specially designed and constructed for the present invention or may be available to those skilled in the computer software.

컴퓨터 판독 가능 매체의 예에는 롬(ROM), 램(RAM), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of computer-readable media include hardware devices that are specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions may include machine language code such as those produced by a compiler, as well as high-level language code that may be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate with at least one software module to perform the operations of the present invention, and vice versa.

또한, 상술한 방법 또는 장치는 그 구성이나 기능의 전부 또는 일부가 결합되어 구현되거나, 분리되어 구현될 수 있다.Also, the above-described method or apparatus may be implemented by combining all or a part of the configuration or function, or may be implemented separately.

Claims (19)

사용자 단말(user terminal), 게이트웨이 서버(gateway server), DRM 서버 및 애플리케이션 서버(application server)와 연동하는 클라우드 저장소 서버(gateway server)에서 DRM 기능을 제공하는 방법에 있어서,
사용자 단말의 접속이 확인되면, 상기 사용자 단말의 사용자에 대한 인증을 수행하는 단계;
상기 인증이 승인되면, 파일 리스트를 상기 사용자 단말에게 전송하는 단계;
상기 사용자 단말로부터 상기 파일 리스트에 포함된 제1 파일에 대한 열람 요청을 수신하는 단계; 및
상기 제1 파일을 게이트웨이 서버로 전송하는 단계를 포함하는, DRM 기능을 제공하는 방법.
1. A method for providing a DRM function in a cloud gateway server interworking with a user terminal, a gateway server, a DRM server, and an application server,
Performing authentication for the user of the user terminal when the connection of the user terminal is confirmed;
Transmitting the file list to the user terminal when the authentication is approved;
Receiving a request to browse the first file included in the file list from the user terminal; And
And sending the first file to a gateway server.
청구항 1에 있어서,
상기 클라우드 저장소 서버는,
상기 게이트웨이 서버를 미리 등록하여 상기 게이트웨이 서버와 연동하여 상기 제1 파일을 처리하는, DRM 기능을 제공하는 방법.
The method according to claim 1,
The cloud storage server includes:
And registering the gateway server in advance and processing the first file in cooperation with the gateway server.
청구항 1에 있어서,
상기 사용자 단말의 사용자에 대한 인증을 수행하는 단계는,
사용자 단말로부터 사용자 정보를 수신하는 단계; 수신된 사용자 정보에 대하여 일방향 암호화를 수행하고 수행된 결과를 미리 일방향 암호화되어 저장된 사용자 정보와 비교하는 단계를 포함하는, DRM 기능을 제공하는 방법.
The method according to claim 1,
The step of authenticating the user of the user terminal comprises:
Receiving user information from a user terminal; Performing one-way encryption on the received user information, and comparing the result of the one-way encryption with stored user information in one-way encryption in advance.
클라우드 저장소 서버(cloud storage server), DRM 서버 및 애플리케이션 서버(application server)와 연동하는 게이트웨이 서버(gateway server)에서 DRM 기능을 제공하는 방법에 있어서,
사용자의 상기 클라우드 저장소 서버를 통한 제1 파일의 열람 요청에 따라, 상기 클라우드 저장소 서버로부터 상기 제1 파일을 수신하는 단계;
수신한 제1 파일에 대한 DRM적용 여부에 따라 상기 DRM 서버와 연동하여 상기 DRM적용을 해제하는 단계; 및
상기 DRM적용이 해제된 제1 파일을 상기 애플리케이션 서버에 전송하는 단계를 포함하는, DRM 기능을 제공하는 방법.
A method for providing a DRM function in a gateway server interworking with a cloud storage server, a DRM server, and an application server,
Receiving the first file from the cloud storage server according to a user's request to view the first file through the cloud storage server;
Releasing the DRM application in cooperation with the DRM server according to whether the DRM is applied to the received first file; And
And transmitting the DRM-deactivated first file to the application server.
청구항 4에 있어서,
상기 게이트웨이 서버는,
상기 클라우드 저장소 서버에 미리 등록되어, 미리 정의된 API(Application Programming Interface)로 데이터를 송수신하는, DRM 기능을 제공하는 방법.
The method of claim 4,
The gateway server comprises:
And registering in advance in the cloud storage server, and transmitting and receiving data using a predefined application programming interface (API).
청구항 4에 있어서,
상기 애플리케이션 서버에 전송하는 단계는,
전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 전송하는, DRM 기능을 제공하는 방법.
The method of claim 4,
Wherein the transmitting to the application server comprises:
According to at least one of a Transport Layer Security (TLS) and a Secure Sockets Layer (SSL) security protocol.
청구항 4에 있어서,
상기 DRM 적용은,
상기 제1 파일에 대하여 대칭 키 방식으로 암호화되고, 암호화된 제1 파일에 제1 파일에 관한 메타데이터를 함께 패키징하여 수행되는, DRM 기능을 제공하는 방법.
The method of claim 4,
In the DRM application,
And encrypting the first file with a symmetric key scheme and packaging the first file with the metadata associated with the first file.
청구항 7에 있어서,
상기 메타데이터는,
상기 제1 파일에 대한 유효기간, 생성시각, 변경시각 및 복호화 키 중 적어도 하나를 포함하는, DRM 기능을 제공하는 방법.
The method of claim 7,
The metadata includes:
A generation time, a modification time, and a decryption key for the first file.
청구항 4에 있어서,
상기 DRM적용을 해제하는 단계는,
상기 제1 파일의 DRM적용 여부를 확인하는 단계;
상기 제1 파일에 DRM적용이 된 경우, 상기 DRM 서버와 연동하여 상기 사용자의 접근 권한을 판단하는 단계; 및
상기 접근 권한에 기초하여 상기 제1 파일의 DRM적용을 해제하는 단계를 포함하는, DRM 기능을 제공하는 방법.
The method of claim 4,
Wherein the step of releasing the DRM application comprises:
Checking whether DRM is applied to the first file;
If DRM is applied to the first file, determining access authority of the user in cooperation with the DRM server; And
And releasing DRM application of the first file based on the access right.
청구항 4에 있어서,
상기 애플리케이션 서버로부터 상기 제1 파일이 수정된 제2 파일을 수신하는 단계; 및
상기 제2 파일을 상기 클라우드 저장소 서버로 전송하는 단계를 더 포함하는, DRM 기능을 제공하는 방법.
The method of claim 4,
Receiving a second file from which the first file is modified from the application server; And
And sending the second file to the cloud storage server.
청구항 10에 있어서,
상기 제2 파일을 상기 클라우드 저장소 서버로 전송하는 단계는,
상기 제2 파일에 대하여, 상기 DRM 서버와 연동하여 상기 DRM적용을 수행하고, 상기 DRM적용이 이루어진 제2 파일을 상기 클라우드 저장소 서버로 전송하는, DRM 기능을 제공하는 방법.
The method of claim 10,
Wherein the transmitting the second file to the cloud storage server comprises:
Wherein the DRM application is performed in cooperation with the DRM server with respect to the second file, and the second file subjected to the DRM application is transmitted to the cloud storage server.
사용자 단말(user terminal), 게이트웨이 서버(gateway server), DRM 서버 및 클라우드 저장소 서버(cloud storage server)와 연동하여 DRM 기능을 제공하는 장치에 있어서,
상기 DRM 기능을 제공하는 장치는 적어도 하나의 명령어를 실행하는 프로세서(processor); 및
상기 적어도 하나의 명령어가 저장되는 메모리(memory)를 포함하고,
상기 프로세서는,
사용자의 상기 클라우드 저장소 서버를 통한 제1 파일의 열람 요청에 따라, 상기 클라우드 저장소 서버로부터 상기 제1 파일을 수신하고, 수신한 제1 파일에 대한 DRM적용 여부에 따라 상기 DRM 서버와 연동하여 상기 DRM적용을 해제하고, 상기 DRM적용이 해제된 제1 파일을 상기 애플리케이션 서버에 전송하는, DRM 기능을 제공하는 장치.
1. An apparatus for providing a DRM function in cooperation with a user terminal, a gateway server, a DRM server, and a cloud storage server,
The apparatus for providing the DRM function includes: a processor for executing at least one command; And
And a memory in which the at least one instruction is stored,
The processor comprising:
Receiving the first file from the cloud storage server in response to a user's request to browse the first file through the cloud storage server, and synchronizing with the DRM server according to DRM application of the received first file, And sends the DRM application-canceled first file to the application server.
청구항 12에 있어서,
상기 DRM 기능을 제공하는 장치는,
상기 클라우드 저장소 서버에 미리 등록되어, 미리 정의된 API(Application Programming Interface)로 데이터를 송수신하는, DRM 기능을 제공하는 장치.
The method of claim 12,
The apparatus for providing the DRM function includes:
And a DRM function that is registered in advance in the cloud storage server and transmits / receives data using a predefined API (Application Programming Interface).
청구항 12에 있어서,
상기 프로세서는,
상기 제1 파일에 대하여 대칭 키 방식으로 암호화되고, 암호화된 제1 파일에 제1 파일에 관한 메타데이터를 함께 패키징하여 상기 DRM적용을 수행하는, DRM 기능을 제공하는 장치.
The method of claim 12,
The processor comprising:
And the DRM application is performed by packaging the first file with the first file encrypted with the symmetric key method and the encrypted first file together with the metadata of the first file.
청구항 14에 있어서,
상기 메타데이터는,
상기 제1 파일에 대한 유효기간, 생성시각, 변경시각 및 복호화 키 중 적어도 하나를 포함하는, DRM 기능을 제공하는 장치.
15. The method of claim 14,
The metadata includes:
A generation time, a modification time, and a decryption key for the first file.
청구항 12에 있어서,
상기 프로세서는,
상기 DRM적용이 해제된 제1 파일을 전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 상기 애플리케이션 서버에 전송하는, DRM 기능을 제공하는 장치.
The method of claim 12,
The processor comprising:
And a DRM function for transmitting the DRM-disabled first file to the application server according to at least one security protocol such as Transport Layer Security (TLS) and Secure Sockets Layer (SSL) .
청구항 12에 있어서,
상기 프로세서는,
상기 제1 파일의 DRM적용 여부를 확인하고, 상기 제1 파일에 DRM적용이 된 경우, 상기 DRM 서버와 연동하여 상기 사용자의 접근 권한을 판단하고, 상기 접근 권한에 기초하여 상기 제1 파일의 DRM적용을 해제하는, DRM 기능을 제공하는 장치.
The method of claim 12,
The processor comprising:
Determining whether the DRM application of the first file is applied to the DRM server, determining whether the DRM application of the first file is applied to the DRM server in cooperation with the DRM server, Device that provides DRM functionality.
청구항 12에 있어서,
상기 프로세서는,
상기 애플리케이션 서버로부터 상기 제1 파일이 수정된 제2 파일을 수신하고, 상기 제2 파일을 상기 클라우드 저장소 서버로 전송하는, DRM 기능을 제공하는 장치.
The method of claim 12,
The processor comprising:
Receives the second file from which the first file is modified from the application server, and transmits the second file to the cloud storage server.
청구항 18에 있어서,
상기 프로세서는,
상기 제2 파일에 대하여, 상기 DRM 서버와 연동하여 상기 DRM적용을 수행하고, 상기 DRM적용이 이루어진 제2 파일을 상기 클라우드 저장소 서버로 전송하는, DRM 기능을 제공하는 장치.
19. The method of claim 18,
The processor comprising:
And performs DRM application for the second file in cooperation with the DRM server, and transmits the DRM-applied second file to the cloud storage server.
KR1020160136722A 2016-10-20 2016-10-20 A method for providing digital right management function in cloud storage server communicated with gateway server KR20180043679A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160136722A KR20180043679A (en) 2016-10-20 2016-10-20 A method for providing digital right management function in cloud storage server communicated with gateway server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160136722A KR20180043679A (en) 2016-10-20 2016-10-20 A method for providing digital right management function in cloud storage server communicated with gateway server

Publications (1)

Publication Number Publication Date
KR20180043679A true KR20180043679A (en) 2018-04-30

Family

ID=62080952

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160136722A KR20180043679A (en) 2016-10-20 2016-10-20 A method for providing digital right management function in cloud storage server communicated with gateway server

Country Status (1)

Country Link
KR (1) KR20180043679A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020141823A1 (en) * 2018-12-31 2020-07-09 재단법인 경주스마트미디어센터 Drm content packaging device, drm content packaging system comprising same, and drm content packaging method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080103621A (en) * 2007-03-13 2008-11-28 주식회사 케이티프리텔 Method for user created content service using digital rights management
JP2010021615A (en) * 2008-07-08 2010-01-28 Sony Corp Content distribution system, content receiving terminal, content distribution method, and processing method performed when viewing streaming contents
US20100250704A1 (en) * 2009-03-26 2010-09-30 Verizon Patent And Licensing Inc. Peer-to-peer content distribution with digital rights management
KR20110038909A (en) * 2009-10-09 2011-04-15 주식회사 쓰리에이치에스 System for providing pc room contents using cloud computing and method thereof
KR20130085472A (en) * 2011-12-05 2013-07-30 인텔렉추얼디스커버리 주식회사 Security system for cloud computing service

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080103621A (en) * 2007-03-13 2008-11-28 주식회사 케이티프리텔 Method for user created content service using digital rights management
JP2010021615A (en) * 2008-07-08 2010-01-28 Sony Corp Content distribution system, content receiving terminal, content distribution method, and processing method performed when viewing streaming contents
US20100250704A1 (en) * 2009-03-26 2010-09-30 Verizon Patent And Licensing Inc. Peer-to-peer content distribution with digital rights management
KR20110038909A (en) * 2009-10-09 2011-04-15 주식회사 쓰리에이치에스 System for providing pc room contents using cloud computing and method thereof
KR20130085472A (en) * 2011-12-05 2013-07-30 인텔렉추얼디스커버리 주식회사 Security system for cloud computing service

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020141823A1 (en) * 2018-12-31 2020-07-09 재단법인 경주스마트미디어센터 Drm content packaging device, drm content packaging system comprising same, and drm content packaging method

Similar Documents

Publication Publication Date Title
US9461819B2 (en) Information sharing system, computer, project managing server, and information sharing method used in them
CA2709944C (en) System and method for securing data
US6615349B1 (en) System and method for manipulating a computer file and/or program
US11290446B2 (en) Access to data stored in a cloud
US20070198419A1 (en) Method of transferring digital rights
US20120303967A1 (en) Digital rights management system and method for protecting digital content
US10095848B2 (en) System, method and apparatus for securely distributing content
KR20220039779A (en) Enhanced security encryption and decryption system
CA2891610C (en) Agent for providing security cloud service and security token device for security cloud service
KR101952139B1 (en) A method for providing digital right management function in gateway server communicated with user terminal
US9455961B2 (en) System, method and apparatus for securely distributing content
KR20180043679A (en) A method for providing digital right management function in cloud storage server communicated with gateway server
US9537842B2 (en) Secondary communications channel facilitating document security
KR102448531B1 (en) Decryption system of the electronic document
KR101945687B1 (en) Electronic document managing system using hybrid cloud and method for thereof
KR101861015B1 (en) A method for providing digital right management function in user terminal based on cloud service
US20220092193A1 (en) Encrypted file control
EP3557469B1 (en) System, method and computer program for secure data exchange
KR101644070B1 (en) Email service method and system for mobile
Yadav A Novel Approach towards EDRM System Design for Android Devices
NZ618683B2 (en) Access control to data stored in a cloud

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application