KR20180043676A - 사용자 단말과 연동된 게이트웨이 서버에서 drm 기능을 제공하는 방법 - Google Patents

사용자 단말과 연동된 게이트웨이 서버에서 drm 기능을 제공하는 방법 Download PDF

Info

Publication number
KR20180043676A
KR20180043676A KR1020160136712A KR20160136712A KR20180043676A KR 20180043676 A KR20180043676 A KR 20180043676A KR 1020160136712 A KR1020160136712 A KR 1020160136712A KR 20160136712 A KR20160136712 A KR 20160136712A KR 20180043676 A KR20180043676 A KR 20180043676A
Authority
KR
South Korea
Prior art keywords
file
drm
server
application
user terminal
Prior art date
Application number
KR1020160136712A
Other languages
English (en)
Other versions
KR101952139B1 (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 KR1020160136712A priority Critical patent/KR101952139B1/ko
Publication of KR20180043676A publication Critical patent/KR20180043676A/ko
Application granted granted Critical
Publication of KR101952139B1 publication Critical patent/KR101952139B1/ko

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/08Network architectures or network communication protocols for network security for authentication of entities
    • 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/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
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/101Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

클라우드 저장소 서버(cloud storage server), DRM 서버, 애플리케이션 서버(web application server) 및 사용자 단말과 연동하는 게이트웨이 서버(gateway server)에서 DRM 기능을 제공하는 방법이 개시된다. DRM 기능을 제공하는 방법은, 사용자 단말의 접속이 확인되면, 사용자 단말의 사용자에 대한 인증을 수행하는 단계, 인증이 승인되면, 클라우드 저장소 서버로부터 파일 리스트를 수신받아 사용자 단말에게 전송하는 단계, 사용자 단말로부터 파일 리스트에 포함된 제1 파일에 대한 열람 요청을 수신하는 단계, 클라우드 저장소 서버로부터 제1 파일을 수신하는 단계, 수신한 제1 파일에 대한 DRM적용 여부에 따라 DRM 서버와 연동하여 DRM적용을 해제하는 단계 및 DRM적용이 해제된 제1 파일을 애플리케이션 서버에 전송하는 단계를 포함한다. 따라서, 후킹이 불가능한 플랫폼에서도 DRM 기능을 제공하거나 받을 수 있다.

Description

사용자 단말과 연동된 게이트웨이 서버에서 DRM 기능을 제공하는 방법{A METHOD FOR PROVIDING DIGITAL RIGHT MANAGEMENT FUNCTION IN GATEWAY SERVER COMMUNICATED WITH USER TERMINAL}
본 발명은 DRM 기능을 제공하는 방법에 관한 것으로, 더욱 상세하게는 클라우드에서의 애플리케이션, 클라우드 저장소, DRM 서버 및 사용자 단말을 상호 중계하여 DRM 기능을 제공하는 방법에 관한 것이다.
최근에는 컴퓨터 기술이 발달함에 따라, 각종 디지털 자료들이 널리 사용되고 있다.
또한, 이러한 디지털 자료들 중에는 보안이 요구되는 기밀 자료나 저작권의 적용을 받는 저작물들이 많고, 따라서 이러한 자료들을 보호하기 위한 다양한 기술이 제안되고 있다.
디지털 권리 관리(Digital rights management, DRM)는 출판자 또는 저작권자가 그들이 배포한 디지털 자료나 하드웨어의 사용을 제어하고 의도한 용도로만 사용하도록 제한하는 모든 기술들을 지칭하는 용어이다. 주로 CD나 DVD 등을 이용하여 오프라인 상에서 유통되던 많은 음악, 영화 등이 온라인 상에서 유통되고 정당한 금액을 지불하지 않는 불법적인 사용을 차단하기 위하여 인증된 사용자가 인증된 기간 동안만 사용 가능하도록 통제함으로써 불법적인 사용을 제한하는데 많이 사용되고 있으나, 보안에 대한 중요성이 높아지고 그에 대한 인식이 확산됨에 따라 기업의 영업 비밀을 포함한 기밀 자료의 유출을 방지하기 위한 목적으로도 최근 많이 사용되고 있다.
한편, 기존의 보안 문서에 대한 권한 제어 등과 같은 DRM 기능을 제공하는 것은 대부분 다양한 후킹(Hooking) 기술을 이용하여 문서의 암호화 및 복호화를 수행함으로써, 이루어지는 경우가 많다.
그러나, 현재의 DRM 기술은 업체간 별도의 프로그램을 사용하고 있어, 동시에 후킹이 이루어짐에 따른 프로세스 충돌(Crash), 작업 시간 지연 등이 발생할 수 있어, 시스템이 불안정해지는 문제점이 있다.
또한, 시스템 또는 플랫폼에서 후킹 기술을 제공하지 않는 경우에는 DRM 기능을 제공하기 위한 별도의 기술이 필요할 수 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 게이트웨이 서버에서 수행되는 DRM 기능 제공 방법을 제공하는데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, DRM 기능을 제공하는 게이트웨이 서버를 제공하는데 있다.
상기 목적을 달성하기 위한 본 발명은, 클라우드 저장소 서버(cloud storage server), DRM 서버, 애플리케이션 서버(web application server) 및 사용자 단말과 연동하는 게이트웨이 서버(gateway server)에서 DRM 기능을 제공하는 방법을 제공한다.
여기서, DRM 기능을 제공하는 방법은, 사용자 단말의 접속이 확인되면, 사용자 단말의 사용자에 대한 인증을 수행하는 단계, 인증이 승인되면, 클라우드 저장소 서버로부터 파일 리스트를 수신받아 사용자 단말에게 전송하는 단계, 사용자 단말로부터 파일 리스트에 포함된 제1 파일에 대한 열람 요청을 수신하는 단계, 클라우드 저장소 서버로부터 제1 파일을 수신하는 단계, 수신한 제1 파일에 대한 DRM적용 여부에 따라 DRM 서버와 연동하여 DRM적용을 해제하는 단계 및 DRM적용이 해제된 제1 파일을 애플리케이션 서버에 전송하는 단계를 포함한다.
여기서, 사용자에 대한 인증을 수행하는 단계는, 클라우드 저장소 서버 및 DRM 서버 중 적어도 하나에 사용자 단말로부터 수신한 사용자 정보를 송신하고, 클라우드 저장소 서버 및 DRM 서버 중 적어도 하나로부터 사용자에 대한 인증의 승인을 수신함으로써 수행될 수 있다.
여기서, 사용자에 대한 인증을 수행하는 단계는, 미리 일방향 암호화되어 저장된 사용자 정보를 기초로 사용자 단말로부터 수신한 사용자 정보에 대해 일방향 암호화를 수행하여, 저장된 사용자 정보와 비교함으로써 수행될 수 있다.
여기서, 애플리케이션 서버에 전송하는 단계는, 전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 전송할 수 있다.
여기서, DRM적용은, 제1 파일에 대하여 대칭 키 방식으로 암호화되고, 암호화된 제1 파일에 제1 파일에 관한 메타데이터를 함께 패키징하여 수행될 수 있다.
여기서, 메타데이터는, 제1 파일에 대한 유효기간, 생성시각, 변경시각 및 복호화 키 중 적어도 하나를 포함할 수 있다.
여기서, 클라우드 저장소 서버로부터 상기 제1 파일을 수신하는 단계 이후에, 사용자 단말이 애플리케이션 서버로 접속하도록 유도하는 단계를 더 포함할 수 있다.
여기서, DRM적용을 해제하는 단계는, 제1 파일의 DRM적용 여부를 확인하는 단계, 제1 파일에 DRM적용이 된 경우, DRM 서버와 연동하여 사용자의 접근 권한을 판단하는 단계 및 접근 권한에 기초하여 제1 파일의 DRM적용을 해제하는 단계를 포함할 수 있다.
여기서, 접근 권한에 기초하여 제1 파일의 DRM적용을 해제하는 단계는, DRM 서버로부터 수신받은 복호화 키를 이용하여 제1 파일에 대한 복호화를 수행하는 단계를 포함할 수 있다.
여기서, DRM 기능을 제공하는 방법은, 사용자가 애플리케이션 서버를 통하여 제1 파일을 수정하면, 수정된 제2 파일을 애플리케이션 서버로부터 수신하는 단계 및 제2 파일을 클라우드 저장소 서버로 전송하는 단계를 더 포함할 수 있다.
여기서, 제2 파일을 애플리케이션 서버로부터 수신하는 단계는, 사용자 단말이 제1 파일에 대한 수정 완료를 애플리케이션 서버에 전송하였을 때 수행될 수 있다.
여기서, 제2 파일을 애플리케이션 서버로부터 수신하는 단계는, 미리 정해진 시간 간격에 따라 주기적으로 수행될 수 있다.
여기서, 클라우드 저장소 서버로 전송하는 단계는, 제2 파일에 대하여, DRM 서버와 연동하여 DRM적용을 수행하고, DRM적용이 이루어진 제2 파일을 클라우드 저장소 서버로 전송할 수 있다.
상기 목적을 달성하기 위한 본 발명의 다른 측면은, 클라우드 저장소 서버(cloud storage server), DRM 서버, 애플리케이션 서버(web application server) 및 사용자 단말과 연동하여 DRM 기능을 제공하는 장치를 제공한다.
여기서, DRM 기능을 제공하는 장치는 적어도 하나의 명령어를 실행하는 프로세서(processor) 및 적어도 하나의 명령어가 저장되는 메모리를 포함할 수 있다.
여기서, 프로세서는, 사용자 단말의 접속이 확인되면, 사용자 단말의 사용자에 대한 인증을 수행하고, 인증이 승인되면, 클라우드 저장소 서버로부터 파일 리스트를 수신받아 사용자 단말에게 전송하고, 사용자 단말로부터 파일 리스트에 포함된 제1 파일에 대한 열람 요청을 수신하고, 클라우드 저장소 서버로부터 제1 파일을 수신하고, 수신한 제1 파일에 대한 DRM적용 여부에 따라 DRM 서버와 연동하여 DRM적용을 해제하고, DRM적용이 해제된 제1 파일을 애플리케이션 서버에 전송할 수 있다.
여기서, 프로세서는, 클라우드 저장소 서버 및 DRM 서버 중 적어도 하나에 사용자 단말로부터 수신한 사용자 정보를 송신하고, 클라우드 저장소 서버 및 DRM 서버 중 적어도 하나로부터 사용자에 대한 인증의 승인을 수신함으로써 사용자에 대한 인증을 수행할 수 있다.
여기서, 프로세서는, 전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 제1 파일을 애플리케이션 서버에 전송할 수 있다.
여기서, 프로세서는, 제1 파일의 DRM적용 여부를 확인하고, 제1 파일에 DRM적용이 된 경우, DRM 서버와 연동하여 사용자의 접근 권한을 판단하고, 접근 권한에 기초하여 제1 파일의 DRM적용을 해제할 수 있다.
여기서, 프로세서는, DRM 서버로부터 수신받은 복호화 키를 이용하여 제1 파일에 대한 복호화를 수행하여 제1 파일에 대한 DRM적용을 해제할 수 있다.
여기서, 프로세서는, 사용자가 애플리케이션 서버를 통하여 제1 파일을 수정하면, 수정된 제2 파일을 애플리케이션 서버로부터 수신하고, 제2 파일을 클라우드 저장소 서버로 전송할 수 있다.
여기서 프로세서는, 사용자 단말이 제1 파일에 대한 수정 완료를 애플리케이션 서버에 전송하였을 때 제2 파일을 애플리케이션 서버로부터 수신할 수 있다.
상기와 같은 본 발명에 따른 DRM 기능을 제공하는 방법 또는 장치를 이용할 경우에는 후킹이 제한된 플랫폼에서도 DRM 파일에 대한 처리가 가능할 수 있다.
또한, DRM적용이 클라우드 환경에서 이루어질 수 있어 클라우드 환경에서의 보안이 향상될 수 있다.
또한, 클라우드 저장소를 이용하여 로컬 저장소의 자원상 제약을 극복할 수 있다.
또한, 완성된 애플리케이션 서버와 연동할 수 있기 때문에 확장성이 높고 안정성이 높은 장점이 있다.
도 1은 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법 및 장치에 대한 구성도이다.
도 2는 본 발명의 일실시예에 따른 게이트웨이 서버에서 DRM 기능을 제공하는 방법에 대한 흐름도이다.
도 3은 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법에 대한 제1 시퀀스도이다.
도 4는 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법에 대한 제2 시퀀스도이다.
도 5는 본 발명의 일실시예에 따른 DRM 기능을 제공하는 장치에 대한 구성도이다.
도 6은 본 발명의 일실시예에 따른 게이트웨이 서버에서 사용자 단말에 제공하는 유저 인터페이스를 설명하기 위한 예시도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법 및 장치에 대한 구성도이다.
도 1을 참조하면, DRM 기능을 제공하는 방법 및 장치는 사용자 단말, 게이트웨이 서버, 클라우드 저장소 서버, DRM 서버 및/또는 애플리케이션 서버를 포함하여 구성될 수 있다.
여기서, DRM 기능이란, 미디어 파일이나 전자 문서 파일 등 각종 컨텐츠를 송수신할 때 송수신단 상호간 인증 처리, 송수신시의 암호화 처리, 컨텐츠의 암호화 처리, 암호화에 사용된 키의 관리, 컨텐츠의 포멧에 대한 규격 설계 및 패키징, 컨텐츠 사용을 위한 권리의 관리 및 해석 등 디지털 컨텐츠의 유통 및 복제 방지를 통해 디지털 컨텐츠의 정당한 권리자를 보호하는 기능들을 의미할 수 있다.
여기서, 사용자 단말은 애플리케이션 서버 또는 게이트웨이 서버와 연동하여 DRM이 적용된 파일을 읽거나, 수정 또는 삭제할 수 있다. 여기서, DRM이 적용된 파일이란 워드 프로세서 파일을 포함한 각종 오피스 파일뿐만 아니라 미디어 파일도 포함할 수 있다. 또한, 사용자 단말의 플랫폼(platform)은 함수 후킹이나 API 후킹 등 각종 후킹 기술이 적용되지 않거나 이를 지원하지 않는 운영체제(operating system, OS)일 수 있다. 예를 들면, 애플의 MAC OS, Linux 등일 수 있다.
사용자 단말의 예를 들면, 통신 가능한 데스크탑 컴퓨터(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) 등일 수 있다.
여기서, 게이트웨이 서버는 클라우드 저장소 서버, DRM 서버 또는 애플리케이션 서버와 사용자 단말을 중계하여 DRM 기능을 제공할 수 있다. 구체적으로 사용자 단말의 접속을 허용하여 사용자 단말이 클라우드 저장소 서버에 저장된 각종 파일을 포함한 데이터를 불러와 상기 서버들에 전송하도록 데이터를 중계할 수 있고, DRM 서버와 연동하여 DRM 을 적용하거나 해제할 수 있으며, 애플리케이션 서버와 연동하여 DRM이 해제된 파일을 서로 송수신할 수 있다. 다만, DRM이 해제된 파일을 서로 송수신할 경우에는 네트워크 보안이 적용된 환경에서 서로 송수신 할 수 있다. 또한, 클라우드 저장소 서버, DRM 서버 또는 애플리케이션 서버 각각에서 제공하거나 미리 설정된 API(application programming interface)를 이용하여 서로 데이터를 송수신할 수 있으며, 이때 각 서버 고유의 식별기호 예를 들면, IP address, MAC address, server ID 등을 함께 송수신할 수 있다.
여기서, 클라우드 저장소 서버는 사용자의 각종 파일을 저장(download)하고, 불러올 수(upload) 있으며, 디렉토리 또는 파일 리스트 탐색 등을 수행하며, 이와 관련된 API(Application programming interface)를 제공할 수 있다.
클라우드 저장소 서버의 예를 들면, 구글 드라이브(google drive), 원 드라이브(onedrive), 드롭 박스(dropbox) 등의 클라우드 서비스(cloud service)일 수 있다.
여기서, 애플리케이션 서버는 게이트웨이 서버를 통하여 클라우드 저장소 서버에 있는 각종 파일을 처리할 수 있다. 예를 들면, 미디어 파일을 재생하거나, 각종 오피스 문서 파일, 그림 파일 등을 열람할 수 있으며 편집, 삭제 등 포함한 변경을 할 수 있다.
더 구체적으로, 애플리케이션 서버는 웹 기반으로 문서나 미디어 파일을 처리하는 각종 서버로서, 구글 오피스(google doc), 네이버 오피스(naver office), 씽크프리(thinkfree), MS 오피스 365 등이 있을 수 있다. 또한, 공용이나 사설 네트워크를 통한 각종 미디어 서버가 포함될 수 있으며, 사용자 단말과 네트워크상에서 직접 또는 간접적으로 연결되어 각종 애플리케이션을 구동시킬 수 있는 장치일 수도 있다.
또한, 본 발명의 다른 실시예로, 애플리케이션 서버는 게이트웨이 서버를 통하지 않고, 직접 DRM 기능을 지원할 수도 있다. 예를 들면, 애플리케이션 서버가 게이트웨이 서버로부터 각종 파일을 수신하고, 수신된 파일에 대하여 직접 DRM 서버와 연동하여 DRM적용을 수행하거나 DRM적용을 해제할 수도 있다. 이때, 게이트웨이 서버는 DRM 기능을 지원하지 않고, 사용자 단말의 접속을 허용하고, 클라우드 저장소 서버로부터 각종 파일을 수신하여 애플리케이션 서버로 전달하는 역할을 할 수 있다.
여기서, DRM 서버는 게이트웨이 서버와 연동하여 DRM이 적용된 파일, 사용자 정보, 그밖의 DRM 관련 데이터를 수신할 수 있고, 수신한 사용자 정보를 이용하여 사용자를 인증하거나, 사용자의 권한을 확인하여 DRM의 해제 여부를 전송할 수 있다.
또한, DRM 서버는 정책 서버 또는 장치를 포함할 수 있는데, 정책 서버는 사용자의 권한뿐만 아니라 DRM이 적용된 파일의 배포 또는 유통에 관한 정보를 저장할 수 있다. 예를 들면, DRM이 적용된 파일의 유효기간을 의미할 수 있고, DRM이 적용된 파일을 재생 또는 열람할 수 있는 기기에 대한 고유식별기호 등을 의미할 수 있다.
또한, DRM 서버는 DRM이 적용된 파일에 대한 DRM적용에 관한 정보를 게이트웨이 서버로 전송할 수 있다. 여기서, DRM적용에 관한 정보는 DRM적용을 수행하거나 해제하기 위한 정보로서 DRM이 적용된 파일에 대한 암호화 키 또는 DRM적용을 해제하기 위한 복호화 키를 의미할 수 있다.
또한, DRM 서버는 암호화 키 또는 복호화 키를 저장 또는 관리하는 키 서버(key server)를 포함할 수 있고, 별도의 키 서버와 연동하여 키를 저장 또는 관리할 수도 있다.
도 2는 본 발명의 일실시예에 따른 게이트웨이 서버에서 DRM 기능을 제공하는 방법에 대한 흐름도이다.
도 2를 참조하면, 본 발명의 일실시예에 따른 클라우드 저장소 서버(cloud storage server), DRM 서버, 애플리케이션 서버(web application server) 및 사용자 단말과 연동하는 게이트웨이 서버(gateway server)에서 DRM 기능을 제공하는 방법은, 사용자 단말의 접속이 확인되면, 사용자 단말의 사용자에 대한 인증을 수행하는 단계(S200), 인증이 승인되면, 클라우드 저장소 서버로부터 파일 리스트를 수신받아 사용자 단말에게 전송하는 단계(S205), 사용자 단말로부터 파일 리스트에 포함된 제1 파일에 대한 열람 요청을 수신하는 단계(S210), 클라우드 저장소 서버로부터 제1 파일을 수신하는 단계(S215), 수신한 제1 파일에 대한 DRM적용 여부에 따라 DRM 서버와 연동하여 DRM적용을 해제하는 단계(S220) 및 DRM적용이 해제된 제1 파일을 애플리케이션 서버에 전송하는 단계(S225)를 포함할 수 있다.
여기서, 게이트웨이 서버는 애플리케이션 서버를 미리 등록하여, 애플리케이션 서버와 연동하여 제1 파일을 처리할 수 있다.
여기서, 사용자에 대한 인증을 수행하는 단계(S200)는, 클라우드 저장소 서버, 애플리케이션 서버 및 DRM 서버 중 적어도 하나에 대한 사용자 인증을 포함할 수 있다. 예를 들면, 클라우드 저장소 서버, 애플리케이션 서버 및 DRM 서버 중 적어도 하나에 사용자 단말로부터 수신한 사용자 정보를 송신하고, 클라우드 저장소 서버 및 DRM 서버 중 적어도 하나로부터 사용자에 대한 인증의 승인을 수신함으로써 수행될 수 있다.
더 구체적으로 설명하면, 게이트웨이 서버는 사용자 단말로부터 사용자 정보 예를 들면 사용자의 ID, 비밀번호 또는 지문, 홍채 등을 포함하는 생체 정보, 사용자 단말의 ID, 사용자 단말의 MAC address 등을 수신할 수 있다. 수신된 사용자 정보를 클라우드 저장소 서버, DRM 서버 또는 애플리케이션 서버에 전송할 수 있고, 상기 각 서버로부터 다시 사용자 인증의 승인을 수신할 수 있다. 여기서, 클라우드 저장소 서버, DRM 서버 또는 애플리케이션 서버는 사용자 정보를 미리 저장하고 있고, 미리 저장된 사용자 정보를 이용하여 인증의 승인 여부를 결정할 수 있다.
여기서, 사용자에 대한 인증을 수행하는 단계(S200)는, 미리 일방향 암호화되어 저장된 사용자 정보를 기초로 사용자 단말로부터 수신한 사용자 정보에 대해 일방향 암호화를 수행하여, 저장된 사용자 정보와 비교함으로써 수행될 수 있다.
여기서, 일방향 암호화는 MD-5, SHA-1, SHA-256 중 적어도 하나를 포함하는 해쉬함수(Hash Function)를 이용하여 수행될 수 있다.
여기서, 클라우드 저장소 서버로부터 제1 파일을 수신하는 단계(S215) 이후에, 사용자 단말이 애플리케이션 서버로 접속하도록 유도하는 단계를 더 포함할 수 있다. 예를 들면, 게이트웨이 서버는 사용자 단말에 애플리케이션 서버에 접속할 수 있는 링크(link)를 전송할 수 있고, 링크에는 게이트웨이 서버의 제1 파일에 접근할 수 있는 주소가 포함되어 있을 수 있다. 링크를 수신한 사용자 단말은 링크에 따라 애플리케이션 서버로 접속할 수 있고, 사용자 단말이 접속되면 애플리케이션 서버는 링크에 포함되어 있는 게이트웨이 서버의 제1 파일에 접근할 수 있는 주소를 통해 게이트웨이 서버에 제1 파일을 요청할 수 있다.
여기서, 애플리케이션 서버에 전송하는 단계(S225)는, 전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 전송할 수 있다.
예를 들면, 통신 연결상에 비밀성이 보장되기 위하여 대칭키 암호화가 이용되거나, 통신 상호간의 인증을 위하여 공개키 암호화가 이용될 수 있고, 통신 연결의 무결성을 보장하기 위하여 MAC(message authentication code)가 이용될 수 있다.
여기서, DRM적용은, 제1 파일에 대하여 대칭 키 방식으로 암호화되고, 암호화된 제1 파일과, 제1 파일에 관한 메타데이터를 함께 패키징하여 수행될 수 있다. 대칭 키 방식의 예를 들면, DES, TDES, AES, SEED, RSA, RC4, IDEA가 있을 수 있다.
여기서, 메타데이터는, 제1 파일에 대한 유효기간, 생성시각, 변경시각 및 복호화 키 중 적어도 하나를 포함할 수 있다.
또 다른 실시예로 DRM 적용은, 제1 파일에 대하여 제1 키를 이용하여 암호화를 수행할 수 있다. 또한, 제1 키에 대하여 제2 키를 이용하여 암호화를 수행하고, 암호화된 제1 키를 암호화된 제1 파일에 대한 메타데이터로 함께 패키징할 수 있다. 여기서, 제2 키는 DRM 서버에 저장될 수 있고, DRM 서버로부터 수신할 수 있다. 여기서 DRM 서버는 제2 키를 일방향 암호화 등의 암호화를 수행하여 저장해 둘 수 있다. 또한, 제1 키 또는 제2 키는 대칭 키 방식일 수 있으나 비대칭 키 방식을 배제하는 것은 아니다.
여기서, DRM적용을 해제하는 단계(S220)는, 제1 파일의 DRM적용 여부를 확인하는 단계, 제1 파일에 DRM적용이 된 경우, DRM 서버와 연동하여 사용자의 접근 권한을 판단하는 단계 및 접근 권한에 기초하여 제1 파일의 DRM적용을 해제하는 단계를 포함할 수 있다.
여기서, 사용자의 접근 권한을 판단하는 단계는, DRM 서버로부터 사용자의 접근 권한에 관한 정보를 수신하고, 수신된 정보를 이용하여 접근 권한을 판단하거나, DRM 서버에 사용자의 권한을 질의하고 DRM 서버에서 접근 권한을 확인하고, 사용자의 권한 유무를 수신할 수도 있다.
예를 들면, 사용자의 접근 권한을 판단하는 단계는, DRM 서버에 사용자 단말의 맥 어드레스(MAC Address), 쿠키, IP 주소(Internet protocol address), 사용자 ID, 비밀번호, 지문이나 홍채를 포함한 생체 정보 중 적어도 하나를 전송하고 전송된 정보를 DRM 서버에서 검증하거나 DRM 서버에서 수신된 정보를 게이트웨이 서버에서 검증함으로써 사용자의 접근 권한을 판단할 수도 있다.
여기서, 접근 권한에 기초하여 제1 파일의 DRM적용을 해제하는 단계는, DRM 서버로부터 수신받은 복호화 키를 이용하여 제1 파일에 대한 복호화를 수행하는 단계를 포함할 수 있다. 여기서, 복호화 키는 앞에서의 제2 키가 대칭 키 방식이었다면 제2 키일 수 있고, 비대칭 키 방식이었다면, 제2 키에 대한 비대칭 키 일 수 있다. 이때 앞에서의 제1 키가 대칭 키라면, 복호화 키를 이용하여, 제1 키를 복호화 하고, 복호화된 제1 키를 이용하여 제1 파일을 복호화 할 수 있다. 여기서, 수신된 복호화 키는 제1 파일에 대한 수정 등의 작업이 완료될 때까지 게이트웨이 서버에 저장될 수도 있다.
여기서, 제1 파일을 애플리케이션 서버에 전송하는 단계(S225) 후에, 애플리케이션 서버는 게이트웨이 서버로부터 DRM적용이 해제된 제1파일을 수신받아 사용자 단말에 제1파일에 대한 편집 기능을 제공할 수 있다. 예를 들면, 제1파일에 대한 열람, 내용 수정, 권한 변경 등을 제공할 수 있다.
여기서, DRM 기능을 제공하는 방법은, 사용자가 애플리케이션 서버를 통하여 제1 파일을 수정하면, 수정된 제2 파일을 애플리케이션 서버로부터 수신하는 단계 및 제2 파일을 클라우드 저장소 서버로 전송하는 단계를 더 포함할 수 있다.
여기서, 제2 파일을 애플리케이션 서버로부터 수신하는 단계는, 게이트웨이 서버가 애플리케이션 서버로부터 제1 파일에 대한 수정 완료 여부를 수신하고 그에 따라 애플리케이션 서버에 제2 파일을 요청함으로써 수신될 수 있다. 구체적으로 예를 들면, 애플리케이션 서버가 사용자 단말로부터 제1 파일의 저장 명령을 수신하거나 제1 파일에 대한 편집을 종료하는 경우 또는 애플리케이션 서버로의 접속을 종료하는 경우, 애플리케이션 서버는 게이트웨이 서버로 수정 완료 여부를 전송할 수 있고, 그에 따라 게이트웨이 서버가 애플리케이션 서버에 제2 파일을 요청함으로써 수신할 수 있다. 다른 예로, 사용자 단말이 직접 게이트웨이 서버에 제1 파일에 대한 수정 완료 여부를 전송하고, 게이트웨이 서버가 애플리케이션 서버로부터 제2 파일을 수신할 수도 있다.
또 다른 실시예로, 게이트웨이 서버가 DRM적용이 해제된 제1 파일을 애플리케이션 서버로 전송하고 나면, 게이트웨이 서버는 애플리케이션 서버로부터의 메시지를 리스닝(listening)하고 있을 수 있다. 이때, 애플리케이션 서버가 사용자 단말로부터 제1 파일의 저장 명령을 수신하거나 제1 파일에 대한 편집을 종료하는 경우 또는 애플리케이션 서버로의 접속을 종료하는 경우, 애플리케이션 서버는 리퀘스트 메시지(request message)에 제2 파일을 첨부하여 게이트웨이 서버에 전송할 수 있고 이에 따라 게이트웨이 서버가 제2 파일을 수신할 수도 있다.
여기서, 제2 파일을 애플리케이션 서버로부터 수신하는 단계는, 미리 정해진 시간 간격에 따라 주기적으로 수행될 수 있다.
여기서, 애플리케이션 서버로부터 제2 파일을 수신하는 주기 또는 시기를 조절하는 것은, DRM적용이 이루어지는 빈도 수가 변경됨으로써 입력 지연등이 초래될 수 있으므로, 사용자의 사용성에 영향을 미칠 수 있다.
여기서, 클라우드 저장소 서버로 전송하는 단계는, 제2 파일에 대하여, DRM 서버와 연동하여 DRM적용을 수행하고, DRM적용이 이루어진 제2 파일을 클라우드 저장소 서버로 전송할 수 있다.
여기서, 클라우드 저장소 서버로 전송하는 단계는, 제2 파일에 대하여 DRM 서버와 연동하여 관리 정책을 확인하는 단계, 관리 정책에 따라, 제2 파일에 대하여 DRM적용을 수행하는 단계 및 DRM적용이 수행된 제2 파일을 클라우드 저장소 서버로 전송하는 단계를 포함할 수 있다.
여기서, 관리 정책은, 제2 파일을 수정한 사용자의 직책, 사용자의 ID, 사용자 단말의 MAC Address, 사용자 단말의 IP주소(Internet Protocol address) 중 적어도 하나를 참조하여, 제2 파일에 대한 DRM적용 여부를 결정할 수 있다.
여기서, 관리 정책은, 제1 파일이 DRM적용 되었는지 여부에 따라, 제2 파일에 대한 DRM적용 여부를 결정할 수 있다.
여기서, 제2 파일에 대한 DRM적용은 앞에서 설명한 것과 같이, 제2 파일에 대하여 제1 키를 이용하여 암호화를 수행할 수 있다. 또한, 제1 키에 대하여 제2 키를 이용하여 암호화를 수행하고, 암호화된 제1 키를 암호화된 제2 파일에 대한 메타데이터로 함께 패키징할 수 있다. 다만, 여기서는 앞에서의 DRM적용을 해제하는 단계(S220)에서 DRM 서버로부터 제2 키를 획득하였을 수 있으므로 별도로 다시 DRM 서버로부터 제2 키를 수신하지 않을 수 있다. 또한, 제1 키는 제1 파일에 함께 패키징되었을 수 있으므로, 제1 파일에서 획득될 수 있다.
도 3은 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법에 대한 제1 시퀀스도이다.
도 3을 참조하면, 먼저 사용자 단말(100)은 게이트웨이 서버(200)에 접속할 수 있다(S301).
게이트웨이 서버(200)는 사용자 단말(100)의 사용자에 대하여 사용자 인증을 수행할 수 있고(S302), 클라우드 저장소 서버(300)로 사용자에 대한 파일 리스트를 요청할 수 있다(S303).
클라우드 저장소 서버(300)는 파일 리스트를 게이트웨이 서버(200)에 전송할 수 있고(S304), 게이트웨이 서버(200)는 수신한 파일 리스트를 다시 사용자 단말(100)로 전송할 수 있다(S305). 여기서, 게이트웨이 서버(200)가 사용자 단말(100)로 파일 리스트를 전송하는 것은 사용자 단말(100)에 파일 리스트에 대한 유저 인터페이스를 제공하는 것을 포함할 수 있다.
사용자 단말(100)은 파일 리스트에 포함된 제1 파일에 대한 열람을 게이트웨이 서버(200)에 요청할 수 있고(S306), 게이트웨이 서버(200)는 제1 파일을 클라우드 저장소 서버(300)에 요청하고(S307) 전송받을 수 있다(S308). 여기서, 게이트웨이 서버(200)는 제1 파일을 수신한 후에, 사용자 단말(100)이 애플리케이션 서버(500)로 접속하도록 유도할 수 있다.
게이트웨이 서버(200)는 제1 파일의 DRM적용 여부를 확인하고(S309), 제1 파일에 DRM적용이 되었다면, DRM 서버(400)에 사용자에 대한 접근 권한 확인을 요청할 수 있다(S310). DRM 서버(400)는 사용자에 대한 접근 권한을 전송할 수 있고(S311), 게이트웨이 서버(200)는 수신한 접근 권한을 기초로 사용자의 접근 권한을 판단할 수 있다(S312). 사용자의 접근 권한이 있는 것으로 판단되면, 제1 파일의 DRM적용을 해제할 수 있다(S313). 또한, 게이트웨이 서버(200)는 DRM적용이 해제된 제1 파일을 애플리케이션 서버(500)에 전송할 수 있고(S314), 애플리케이션 서버(500)는 수신된 제1 파일에 대한 재생, 열람, 편집, 저장, 삭제 등에 관한 사용자 인터페이스를 제공할 수 있다(S315).
도 4는 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법에 대한 제2 시퀀스도이다.
도 4를 참조하면, 애플리케이션 서버(500)로부터 사용자 단말(100)이 제1 파일에 대한 사용자 인터페이스를 제공받은 이후(도 3의 S315)의 과정을 설명할 수 있다.
사용자 단말(100)은 애플리케이션 서버(500)를 통하여 제1 파일을 수정할 수 있고(S400), 그에 따라 애플리케이션 서버(500)는 제1 파일이 수정된 제2 파일을 생성할 수 있다(S401). 또한, 애플리케이션 서버(500)는 제1 파일의 수정에 따라 게이트웨이 서버(200)에 제1 파일에 대한 수정 여부에 관한 정보를 전송할 수 있고, 제1 파일에 대한 수정 여부에 관한 정보를 수신한 게이트웨이 서버(200)가 애플리케이션 서버(500)로 제1 파일이 수정된 제2 파일에 대한 전송을 요청할 수 있다. 애플리케이션 서버(500)는 사용자 단말(100)의 제1 파일 수정완료가 확인되거나 일정 주기에 따라 게이트웨이 서버(200)로 제2 파일을 전송할 수 있고, 또는 게이트웨이 서버(200)로부터 제2 파일에 대한 전송 요청을 받아 게이트웨이 서버(200)로 제2 파일을 전송할 수 있다(S402).
또한, 다른 실시예로, 게이트웨이 서버(200)가 DRM적용이 해제된 제1 파일을 애플리케이션 서버(500)로 전송하고 나면, 게이트웨이 서버(200)는 애플리케이션 서버(500)로부터의 메시지를 리스닝(listening)하고 있을 수 있다. 이때, 애플리케이션 서버(500)가 사용자 단말(100)로부터 제1 파일의 저장 명령을 수신하거나 제1 파일에 대한 편집을 종료하는 경우 또는 애플리케이션 서버(500)로의 접속을 종료하는 경우, 애플리케이션 서버(500)는 리퀘스트 메시지(request message)에 제2 파일을 첨부하여 게이트웨이 서버(200)에 전송할 수 있고 이에 따라 게이트웨이 서버(200)가 제2 파일을 수신할 수도 있다.
게이트웨이 서버(200)는 수신한 제2 파일에 대해 DRM적용 여부를 결정할 수 있다(S403). 구체적으로 수신한 제2 파일에 대하여 DRM 서버(400)와 연동하여 제2 파일에 대한 관리 정책을 참조하여 DRM 적용 여부를 결정할 수 있다.
여기서, 관리 정책은, 제2 파일을 수정한 사용자의 직책, 사용자의 ID, 사용자 단말(100)의 MAC Address, 사용자 단말(100)의 IP주소(Internet Protocol address) 중 적어도 하나를 참조하여, 제2 파일에 대한 DRM적용 여부를 결정할 수 있다. 이때, 관리 정책은, DRM 서버(400)에 포함되거나 연동된 정책 서버에 저장되어 있을 수 있다.
여기서, 관리 정책은, 제1 파일이 DRM적용 되었는지 여부에 따라, 제2 파일에 대한 DRM적용 여부를 결정할 수도 있다. 예를 들면, 제1 파일이 DRM적용 되었던 파일이라면, 제2 파일에 대해서도 DRM적용을 할 수 있고, 제1 파일이 DRM적용이 되지 않았던 파일이라면, 제2 파일에 대해서도 DRM적용을 하지 않을 수 있다.
게이트웨이 서버(200)는 제2 파일에 대하여 DRM적용을 하기로 결정하면, DRM 서버(400)와 연동하여 제2 파일에 DRM적용을 할 수 있다(S404). 게이트웨이 서버(200)는 DRM적용이 된 제2 파일을 클라우드 저장소 서버(300)로 업로드할 수 있다(S405).
도 5는 본 발명의 일실시예에 따른 DRM 기능을 제공하는 장치에 대한 구성도이다.
도 5를 참조하면, 클라우드 저장소 서버(cloud storage server), DRM 서버, 애플리케이션 서버(web application server) 및 사용자 단말과 연동하여 DRM 기능을 제공하는 장치(200)는, 적어도 하나의 명령어를 실행하는 프로세서(processor, 210) 및 적어도 하나의 명령어가 저장되는 메모리(memory, 220)를 포함할 수 있다. 또한, 추가로 별도의 저장 장치(230)를 포함할 수 있고, 클라우드 저장소 서버, DRM 서버, 애플리케이션 서버 또는 사용자 단말과 데이터를 송수신하는 통신부(240)를 포함할 수 있다.
여기서, DRM 기능을 제공하는 장치(200)는 도 1 내지 도 4에 따른 게이트웨이 서버를 의미할 수 있다.
여기서, 프로세서(210)는, 사용자 단말의 접속이 확인되면, 사용자 단말의 사용자에 대한 인증을 수행하고, 인증이 승인되면, 클라우드 저장소 서버로부터 파일 리스트를 수신받아 사용자 단말에게 전송하고, 사용자 단말로부터 파일 리스트에 포함된 제1 파일에 대한 열람 요청을 수신하고, 클라우드 저장소 서버로부터 제1 파일을 수신하고, 수신한 제1 파일에 대한 DRM적용 여부에 따라 DRM 서버와 연동하여 DRM적용을 해제하고, DRM적용이 해제된 제1 파일을 애플리케이션 서버에 전송할 수 있다.
여기서, 프로세서(210)는, 클라우드 저장소 서버 및 DRM 서버 중 적어도 하나에 사용자 단말로부터 수신한 사용자 정보를 송신하고, 클라우드 저장소 서버 및 DRM 서버 중 적어도 하나로부터 사용자에 대한 인증의 승인을 수신함으로써 사용자에 대한 인증을 수행할 수 있다.
여기서, 프로세서(210)는, 전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 제1 파일을 애플리케이션 서버에 전송할 수 있다.
여기서, 프로세서(210)는, 제1 파일의 DRM적용 여부를 확인하고, 제1 파일에 DRM적용이 된 경우, DRM 서버와 연동하여 사용자의 접근 권한을 판단하고, 접근 권한에 기초하여 제1 파일의 DRM적용을 해제할 수 있다.
여기서 프로세서(210)는, DRM 서버로부터 수신받은 복호화 키를 이용하여 제1 파일에 대한 복호화를 수행하여 제1 파일에 대한 DRM적용을 해제할 수 있다.
여기서, 프로세서(210)는, 사용자가 애플리케이션 서버를 통하여 제1 파일을 수정하면, 수정된 제2 파일을 애플리케이션 서버로부터 수신하고, 제2 파일을 클라우드 저장소 서버로 전송할 수 있다.
여기서 프로세서(210)는, 사용자 단말이 제1 파일에 대한 수정 완료를 애플리케이션 서버에 전송하였을 때 제2 파일을 애플리케이션 서버로부터 수신할 수 있다.
도 6은 본 발명의 일실시예에 따른 게이트웨이 서버에서 사용자 단말에 제공하는 유저 인터페이스를 설명하기 위한 예시도이다.
도 6을 참조하면, 게이트웨이 서버는 예를 들면, 웹 기반으로 구현되어 사용자 단말이 웹 상에서 접속할 때 사용자 인증(600)을 요구할 수 있다. 사용자 인증(600)은 예를 들면 ID나 비밀번호를 포함한 사용자 정보를 요구할 수 있다. 여기서의 사용자 인증은 게이트웨이 서버에 대한 사용자 인증일 수도 있고, DRM 서버, 애플리케이션 서버, 클라우드 저장소 서버 중 적어도 하나에 대한 사용자 인증을 포함할 수 있다.
사용자 단말의 사용자 인증이 승인되면, 게이트웨이 서버는 사용자 단말에 클라우드 저장소 서버에 저장된 파일 리스트(610)를 제공할 수 있다. 여기서, 파일 리스트(610)는 클라우드 저장소 서버에 저장된 각종 디렉토리나 파일을 포함할 수 있다. 여기서, 게이트웨이 서버는 파일 리스트(610)를 클라우드 저장소 서버에서 제공된 API를 이용하여 제공할 수 있다. 사용자는 제공된 파일 리스트(610)에서 디렉토리나 파일을 선택함으로써 파일을 열거나, 탐색할 수 있다.
또한, 게이트웨이 서버는 사용자 단말에 게이트웨이 서버와 연동되는 애플리케이션 서버 리스트(620)를 제공할 수 있다. 이때 애플리케이션 서버 리스트에 속한 애플리케이션 서버는 미리 게이트웨이 서버에 등록되었을 수 있고, 미리 정한 API를 이용하여 데이터를 송수신할 수 있다.
사용자 단말은 제공된 애플리케이션 서버 리스트(620)에서 특정 애플리케이션을 선택함으로써 해당되는 애플리케이션 서버로 직접 접속을 할 수도 있고, 또는 파일 리스트(610)에서 파일을 열람하면, 게이트웨이 서버가 애플리케이션 서버 리스트(620)에서 선택된 애플리케이션 서버로 접속을 유도할 수도 있다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능 매체의 예에는 롬(ROM), 램(RAM), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 상술한 방법 또는 장치는 그 구성이나 기능의 전부 또는 일부가 결합되어 구현되거나, 분리되어 구현될 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (20)

  1. 클라우드 저장소 서버(cloud storage server), DRM 서버, 애플리케이션 서버(web application server) 및 사용자 단말과 연동하는 게이트웨이 서버(gateway server)에서 DRM 기능을 제공하는 방법에 있어서,
    사용자 단말의 접속이 확인되면, 상기 사용자 단말의 사용자에 대한 인증을 수행하는 단계;
    상기 인증이 승인되면, 상기 클라우드 저장소 서버로부터 파일 리스트를 수신받아 상기 사용자 단말에게 전송하는 단계;
    상기 사용자 단말로부터 상기 파일 리스트에 포함된 제1 파일에 대한 열람 요청을 수신하는 단계;
    상기 클라우드 저장소 서버로부터 상기 제1 파일을 수신하는 단계;
    수신한 제1 파일에 대한 DRM적용 여부에 따라 상기 DRM 서버와 연동하여 상기 DRM적용을 해제하는 단계; 및
    상기 DRM적용이 해제된 제1 파일을 상기 애플리케이션 서버에 전송하는 단계를 포함하는, DRM 기능을 제공하는 방법.
  2. 청구항 1에 있어서,
    상기 사용자에 대한 인증을 수행하는 단계는,
    상기 클라우드 저장소 서버 및 상기 DRM 서버 중 적어도 하나에 상기 사용자 단말로부터 수신한 사용자 정보를 송신하고, 상기 클라우드 저장소 서버 및 상기 DRM 서버 중 적어도 하나로부터 상기 사용자에 대한 인증의 승인을 수신함으로써 수행되는, DRM 기능을 제공하는 방법.
  3. 청구항 1에 있어서,
    상기 사용자에 대한 인증을 수행하는 단계는,
    미리 일방향 암호화되어 저장된 사용자 정보를 기초로 상기 사용자 단말로부터 수신한 사용자 정보에 대해 일방향 암호화를 수행하여, 저장된 사용자 정보와 비교함으로써 수행되는, DRM 기능을 제공하는 방법.
  4. 청구항 1에 있어서,
    상기 애플리케이션 서버에 전송하는 단계는,
    전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 전송하는, DRM 기능을 제공하는 방법.
  5. 청구항 1에 있어서,
    상기 DRM적용은,
    상기 제1 파일에 대하여 대칭 키 방식으로 암호화되고, 암호화된 제1 파일에 상기 제1 파일에 관한 메타데이터를 함께 패키징하여 수행되는, DRM 기능을 제공하는 방법.
  6. 청구항 5에 있어서,
    상기 메타데이터는,
    상기 제1 파일에 대한 유효기간, 생성시각, 변경시각 및 복호화 키 중 적어도 하나를 포함하는, DRM 기능을 제공하는 방법.
  7. 청구항 1에 있어서,
    상기 클라우드 저장소 서버로부터 상기 제1 파일을 수신하는 단계 이후에,
    상기 사용자 단말이 상기 애플리케이션 서버로 접속하도록 유도하는 단계를 더 포함하는, DRM 기능을 제공하는 방법.
  8. 청구항 1에 있어서,
    상기 DRM적용을 해제하는 단계는,
    상기 제1 파일의 DRM적용 여부를 확인하는 단계;
    상기 제1 파일에 DRM적용이 된 경우, 상기 DRM 서버와 연동하여 상기 사용자의 접근 권한을 판단하는 단계; 및
    상기 접근 권한에 기초하여 상기 제1 파일의 DRM적용을 해제하는 단계를 포함하는, DRM 기능을 제공하는 방법.
  9. 청구항 8에 있어서,
    상기 접근 권한에 기초하여 상기 제1 파일의 DRM적용을 해제하는 단계는,
    상기 DRM 서버로부터 수신받은 복호화 키를 이용하여 상기 제1 파일에 대한 복호화를 수행하는 단계를 포함하는, DRM 기능을 제공하는 방법.
  10. 청구항 1에 있어서,
    상기 DRM 기능을 제공하는 방법은,
    상기 사용자가 상기 애플리케이션 서버를 통하여 상기 제1 파일을 수정하면, 수정된 제2 파일을 상기 애플리케이션 서버로부터 수신하는 단계; 및
    상기 제2 파일을 상기 클라우드 저장소 서버로 전송하는 단계를 더 포함하는, DRM 기능을 제공하는 방법.
  11. 청구항 10에 있어서,
    상기 제2 파일을 상기 애플리케이션 서버로부터 수신하는 단계는,
    상기 사용자 단말이 상기 제1 파일에 대한 수정 완료를 상기 애플리케이션 서버에 전송하였을 때 수행되는, DRM 기능을 제공하는 방법.
  12. 청구항 10에 있어서,
    상기 제2 파일을 상기 애플리케이션 서버로부터 수신하는 단계는,
    미리 정해진 시간 간격에 따라 주기적으로 수행되는, DRM 기능을 제공하는 방법.
  13. 청구항 10에 있어서,
    상기 클라우드 저장소 서버로 전송하는 단계는,
    상기 제2 파일에 대하여, 상기 DRM 서버와 연동하여 상기 DRM적용을 수행하고, 상기 DRM적용이 이루어진 제2 파일을 상기 클라우드 저장소 서버로 전송하는, DRM 기능을 제공하는 방법.
  14. 클라우드 저장소 서버(cloud storage server), DRM 서버, 애플리케이션 서버(web application server) 및 사용자 단말과 연동하여 DRM 기능을 제공하는 장치에 있어서,
    상기 DRM 기능을 제공하는 장치는 적어도 하나의 명령어를 실행하는 프로세서(processor); 및
    상기 적어도 하나의 명령어가 저장되는 메모리(memory)를 포함하고,
    상기 프로세서는,
    사용자 단말의 접속이 확인되면, 상기 사용자 단말의 사용자에 대한 인증을 수행하고, 상기 인증이 승인되면, 상기 클라우드 저장소 서버로부터 파일 리스트를 수신받아 상기 사용자 단말에게 전송하고, 상기 사용자 단말로부터 상기 파일 리스트에 포함된 제1 파일에 대한 열람 요청을 수신하고, 상기 클라우드 저장소 서버로부터 상기 제1 파일을 수신하고, 수신한 제1 파일에 대한 DRM적용 여부에 따라 상기 DRM 서버와 연동하여 상기 DRM적용을 해제하고, 상기 DRM적용이 해제된 제1 파일을 상기 애플리케이션 서버에 전송하는, DRM 기능을 제공하는 장치.
  15. 청구항 14에 있어서,
    상기 프로세서는,
    상기 클라우드 저장소 서버 및 상기 DRM 서버 중 적어도 하나에 상기 사용자 단말로부터 수신한 사용자 정보를 송신하고, 상기 클라우드 저장소 서버 및 상기 DRM 서버 중 적어도 하나로부터 상기 사용자에 대한 인증의 승인을 수신함으로써 상기 사용자에 대한 인증을 수행하는, DRM 기능을 제공하는 장치.
  16. 청구항 14에 있어서,
    상기 프로세서는,
    전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 상기 제1 파일을 상기 애플리케이션 서버에 전송하는, DRM 기능을 제공하는 장치.
  17. 청구항 14에 있어서,
    상기 프로세서는,
    상기 제1 파일의 DRM적용 여부를 확인하고,
    상기 제1 파일에 DRM적용이 된 경우, 상기 DRM 서버와 연동하여 상기 사용자의 접근 권한을 판단하고,
    상기 접근 권한에 기초하여 상기 제1 파일의 DRM적용을 해제하는, DRM 기능을 제공하는 장치.
  18. 청구항 17에 있어서,
    상기 프로세서는,
    상기 DRM 서버로부터 수신받은 복호화 키를 이용하여 상기 제1 파일에 대한 복호화를 수행하여 상기 제1 파일에 대한 DRM적용을 해제하는, DRM 기능을 제공하는 장치.
  19. 청구항 14에 있어서,
    상기 프로세서는,
    상기 사용자가 상기 애플리케이션 서버를 통하여 상기 제1 파일을 수정하면, 수정된 제2 파일을 상기 애플리케이션 서버로부터 수신하고, 상기 제2 파일을 상기 클라우드 저장소 서버로 전송하는, DRM 기능을 제공하는 장치.
  20. 청구항 19에 있어서,
    상기 프로세서는,
    상기 사용자 단말이 상기 제1 파일에 대한 수정 완료를 상기 애플리케이션 서버에 전송하였을 때 상기 제2 파일을 상기 애플리케이션 서버로부터 수신하는, DRM 기능을 제공하는 장치.
KR1020160136712A 2016-10-20 2016-10-20 사용자 단말과 연동된 게이트웨이 서버에서 drm 기능을 제공하는 방법 KR101952139B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160136712A KR101952139B1 (ko) 2016-10-20 2016-10-20 사용자 단말과 연동된 게이트웨이 서버에서 drm 기능을 제공하는 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160136712A KR101952139B1 (ko) 2016-10-20 2016-10-20 사용자 단말과 연동된 게이트웨이 서버에서 drm 기능을 제공하는 방법

Publications (2)

Publication Number Publication Date
KR20180043676A true KR20180043676A (ko) 2018-04-30
KR101952139B1 KR101952139B1 (ko) 2019-02-26

Family

ID=62080883

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160136712A KR101952139B1 (ko) 2016-10-20 2016-10-20 사용자 단말과 연동된 게이트웨이 서버에서 drm 기능을 제공하는 방법

Country Status (1)

Country Link
KR (1) KR101952139B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108921733A (zh) * 2018-06-27 2018-11-30 郑州云海信息技术有限公司 一种基于云存储的物业信息处理系统
WO2022079647A1 (en) * 2020-10-15 2022-04-21 Life Ready Pty Ltd Secure cloud storage and retrieval of client-side encrypted data

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102305691B1 (ko) * 2021-04-22 2021-09-28 주식회사 뮤즐리 실시간 주문형 디지털 컨텐츠의 drm 패키징 방법과 이를 실행하기 위한 컴퓨팅 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080103621A (ko) * 2007-03-13 2008-11-28 주식회사 케이티프리텔 디지털 저작권 관리를 이용한 사용자 제작 컨텐츠 서비스방법
JP2010021615A (ja) * 2008-07-08 2010-01-28 Sony Corp コンテンツ配信システム、コンテンツ受信端末、コンテンツ配信方法、及びストリーミングコンテンツの視聴処理方法
KR20110038909A (ko) * 2009-10-09 2011-04-15 주식회사 쓰리에이치에스 클라우드 컴퓨팅을 이용한 pc방 컨텐츠 제공 시스템 및 그 pc방 컨텐츠 제공 방법
KR20130085472A (ko) * 2011-12-05 2013-07-30 인텔렉추얼디스커버리 주식회사 클라우드 컴퓨팅 서비스에서의 보안 시스템

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080103621A (ko) * 2007-03-13 2008-11-28 주식회사 케이티프리텔 디지털 저작권 관리를 이용한 사용자 제작 컨텐츠 서비스방법
JP2010021615A (ja) * 2008-07-08 2010-01-28 Sony Corp コンテンツ配信システム、コンテンツ受信端末、コンテンツ配信方法、及びストリーミングコンテンツの視聴処理方法
KR20110038909A (ko) * 2009-10-09 2011-04-15 주식회사 쓰리에이치에스 클라우드 컴퓨팅을 이용한 pc방 컨텐츠 제공 시스템 및 그 pc방 컨텐츠 제공 방법
KR20130085472A (ko) * 2011-12-05 2013-07-30 인텔렉추얼디스커버리 주식회사 클라우드 컴퓨팅 서비스에서의 보안 시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108921733A (zh) * 2018-06-27 2018-11-30 郑州云海信息技术有限公司 一种基于云存储的物业信息处理系统
WO2022079647A1 (en) * 2020-10-15 2022-04-21 Life Ready Pty Ltd Secure cloud storage and retrieval of client-side encrypted data

Also Published As

Publication number Publication date
KR101952139B1 (ko) 2019-02-26

Similar Documents

Publication Publication Date Title
KR102219008B1 (ko) 데이터 공유 방법, 클라이언트, 서버, 컴퓨팅 장치 및 저장 매체
US6615349B1 (en) System and method for manipulating a computer file and/or program
US7975312B2 (en) Token passing technique for media playback devices
RU2406116C2 (ru) Миграция цифровой лицензии с первой платформы на вторую платформу
US9461819B2 (en) Information sharing system, computer, project managing server, and information sharing method used in them
EP1686504B1 (en) Flexible licensing architecture in content rights management systems
US20080034421A1 (en) Method For Providing Data To A Personal Portable Device Via Network And A System Thereof
KR101971225B1 (ko) 클라우드 서버의 데이터 전송 보안 시스템 및 그 제공 방법
US20130125196A1 (en) Method and apparatus for combining encryption and steganography in a file control system
US20080097923A1 (en) Method and apparatus for providing digital rights management content and license, and method and apparatus for using digital rights management content
JP2011507414A (ja) データの安全を保護するためのシステムおよび方法
US20120303967A1 (en) Digital rights management system and method for protecting digital content
CN101496327A (zh) 用于流式多媒体内容的权限管理系统
KR101952139B1 (ko) 사용자 단말과 연동된 게이트웨이 서버에서 drm 기능을 제공하는 방법
US20220092193A1 (en) Encrypted file control
KR20180043679A (ko) 게이트웨이 서버와 연동된 클라우드 저장소 서버에서 drm 기능을 제공하는 방법
KR101861015B1 (ko) 클라우드 서비스 기반으로 사용자 단말에서 drm 기능을 제공하는 방법
KR102448531B1 (ko) 전자 문서의 암복호화 시스템
TR2023006911T2 (tr) Şi̇freli̇ dosya kontrolü
Yadav A Novel Approach towards EDRM System Design for Android Devices
JP2009104477A (ja) 配信装置、配信管理装置、端末装置、配信方法、ファイル利用方法、配信プログラムおよびファイル利用プログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant