KR20180043690A - 클라우드 서비스 기반으로 사용자 단말에서 drm 기능을 제공하는 방법 - Google Patents

클라우드 서비스 기반으로 사용자 단말에서 drm 기능을 제공하는 방법 Download PDF

Info

Publication number
KR20180043690A
KR20180043690A KR1020160136743A KR20160136743A KR20180043690A KR 20180043690 A KR20180043690 A KR 20180043690A KR 1020160136743 A KR1020160136743 A KR 1020160136743A KR 20160136743 A KR20160136743 A KR 20160136743A KR 20180043690 A KR20180043690 A KR 20180043690A
Authority
KR
South Korea
Prior art keywords
drm
file
application
server
user
Prior art date
Application number
KR1020160136743A
Other languages
English (en)
Other versions
KR101861015B1 (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 KR1020160136743A priority Critical patent/KR101861015B1/ko
Publication of KR20180043690A publication Critical patent/KR20180043690A/ko
Application granted granted Critical
Publication of KR101861015B1 publication Critical patent/KR101861015B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Automation & Control Theory (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

애플리케이션 서버(web application server) 및 DRM 서버(digital rights management server)와 연동하여 사용자 단말에서 DRM 기능을 제공하는 방법이 개시된다. DRM 기능을 제공하는 방법은 사용자로부터 상기 사용자 단말의 로컬 저장소(local storage)에 저장된 제1 파일(file)에 대한 열람 입력을 받는 단계, 상기 제1 파일의 DRM적용 여부에 따라 상기 DRM 서버와 연동하여 상기 제1 파일의 DRM적용을 해제하는 단계, 상기 DRM적용이 해제된 제1 파일을 상기 애플리케이션 서버에 전송하는 단계를 포함한다. 따라서, 후킹이 제한된 플랫폼 환경에서도 DRM 기능을 제공할 수 있다.

Description

클라우드 서비스 기반으로 사용자 단말에서 DRM 기능을 제공하는 방법{A METHOD FOR PROVIDING DIGITAL RIGHT MANAGEMENT FUNCTION IN USER TERMINAL BASED ON CLOUD SERVICE}
본 발명은 클라우드 기반으로 DRM 기능을 제공하는 방법에 관한 것으로, 더욱 상세하게는 사용자 단말에서 클라우드 서비스와 연동하여 DRM 기능을 제공하는 방법에 관한 것이다.
디지털 권리 관리(Digital rights management, DRM) 기술은 암호화 기술을 이용하여 허가되지 않은 사용자로부터 디지털 컨텐츠를 안전하게 보호함으로써 해당 컨텐츠에 대하여 권리를 가진 당사자를 보호하고, 이익을 제공하는 기술이다.
DRM 기술은 디지털 컨텐츠의 유통에 안전성, 유통성, 재상용성을 지원하는데, DRM 의 범위를 엄격하게 구분하기는 어려우나, 보호대상 컨텐츠나 목적 등에 따라 커머스 DRM(Commerce DRM, C-DRM)과 엔터프라이즈 DRM(Enterprise DRM, E-DRM)으로 구분할 수 있다.
그중 C-DRM은 디지털 컨텐츠의 상업적 가치를 보호하기 위한 것으로, 다양한 디지털 기기에서 사용되며, 주로 컨텐츠의 원활한 유통 및 판매를 보호함으로써 공정한 사용을 촉진하는 것에 그 목적이 있다.
반면, Enterprise DRM(E-DRM)은 기업 내부의 문서 자원에 대한 보호하기 위한 것으로, 인가된 사용자의 접근을 허용하고 인가되지 않은 사용자를 통제하여 사용자의 권한에 따른 정보의 활용을 보장하는 것에 그 목적이 있다.
이때, 기존의 E-DRM은 사용자 PC에 설치된 소프트웨어를 이용하여 DRM기능을 제공하는 방법을 이용하고 있는데, 사용자 PC의 자원상 한계, 소프트웨어의 불안정성, 운영체제 또는 플랫폼에 따른 제약에 따른 비호환성과 같은 문제점이 야기되고 있다.
구체적으로, 기존의 E-DRM은 애플리케이션 후킹기술을 적용하여 DRM 기능을 제공하는 것이 일반적인데, 서로 다른 프로그램이 동시에 후킹함에 따른 프로세스 충돌이 발생할 수 있고, 애플리케이션마다 수정이 필요하여 관리와 운영이 까다롭다. 또한, 같은 애플리케이션이라도 지원 버전에 따라 사용이 원활하지 않을 수 있고, 특정 운영체제에서는 후킹기술을 적용하기 어려운 경우도 있으며 단순한 운영체제의 업데이트시에도 사용에 문제가 발생할 수 있다.
한편, 클라우드 환경이 점차 확산됨에 따라 클라우드 저장소(cloud storage), 클라우드 환경의 웹 문서 편집을 비롯한 다양한 기능의 애플리케이션(web application, web app)이 개발되고 있다. 애플리케이션은 인터넷을 통해 웹 브라우저에서 이용할 수 있는 응용 소프트웨어를 의미하는데, 별도의 설치가 필요없고, 웹 브라우저만 이용이 가능하다면 어느 사용자 환경에서든 이용이 가능하다는 장점이 있어, 이러한 애플리케이션을 이용하는 사용자도 빠른 속도로 증가하고 있는 추세에 있다.
그러나, 기존의 애플리케이션은 DRM 기능을 별도로 지원하지 않고 있어 DRM이 적용된 파일을 열람하거나 재생하기 어려운 문제가 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 사용자 단말에서 DRM 기능을 제공하는 방법을 제공하는데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, DRM 기능을 제공하는 장치를 제공하는데 있다.
상기 목적을 달성하기 위한 본 발명은, 애플리케이션 서버(web application server) 및 DRM 서버(digital rights management server)와 연동하여 사용자 단말에서 DRM 기능을 제공하는 방법을 제공한다.
여기서, DRM 기능을 제공하는 방법은, 사용자로부터 사용자 단말의 로컬 저장소(local storage)에 저장된 제1 파일(file)에 대한 열람 입력을 받는 단계, 제1 파일의 DRM적용 여부에 따라 DRM 서버와 연동하여 제1 파일의 DRM적용을 해제하는 단계, DRM적용이 해제된 제1 파일을 애플리케이션 서버에 전송하는 단계 및 애플리케이션 서버와 연동하여 제1 파일에 대한 애플리케이션 서버의 사용자 인터페이스를 호출하는 단계를 포함한다.
여기서, 제1 파일을 애플리케이션 서버에 전송하는 단계는, 전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 전송할 수 있다.
여기서, 제1 파일의 DRM적용을 해제하는 단계는, 제1 파일의 DRM적용 여부를 확인하는 단계, 제1 파일에 DRM적용이 된 경우, DRM 서버와 연동하여 사용자의 접근 권한을 판단하는 단계 및 접근 권한에 기초하여 제1 파일의 DRM적용을 해제하는 단계를 포함할 수 있다.
여기서, 사용자의 접근 권한을 판단하는 단계는, 사용자 단말의 맥 어드레스(MAC Address), 쿠키, IP 주소(Internet protocol address), 사용자 ID, 비밀번호, 지문이나 홍채를 포함한 생체 정보 중 적어도 하나를 검증함으로써 수행될 수 있다.
여기서, 제1 파일의 DRM적용을 해제하는 단계 이후에, DRM적용이 해제된 제1 파일을 로컬 저장소의 특정 영역 또는 사용자 단말과 연동된 별도의 데이터베이스에 저장하는 단계를 더 포함할 수 있다.
여기서, 특정 영역 또는 별도의 데이터베이스는, 사용자 단말에서 구동되는 런처 애플리케이션(launcher application)에 의해서만 접근이 허용될 수 있다.
여기서, 애플리케이션 서버의 사용자 인터페이스를 호출하는 단계는, 런처 애플리케이션을 통하여 애플리케이션 서버에 접속하는 단계 및 애플리케이션 서버로부터 제1 파일에 대한 사용자 인터페이스를 수신하는 단계를 포함할 수 있다.
여기서, DRM 기능을 제공하는 방법은, 사용자가 사용자 인터페이스를 이용하여 제1 파일을 수정함에 따라, 애플리케이션 서버로부터 제1 파일이 수정된 제2 파일을 수신하는 단계 및 제2 파일을 로컬 저장소에 저장하는 단계를 더 포함할 수 있다.
여기서, 로컬 저장소에 저장하는 단계는, 제2 파일에 대하여 DRM 서버와 연동하여 관리 정책을 확인하는 단계, 관리 정책에 따라, 제2 파일에 대하여 DRM적용을 수행하는 단계 및 DRM적용이 수행된 제2 파일을 로컬 저장소에 저장하는 단계를 포함할 수 있다.
여기서, 관리 정책은, 제2 파일을 수정한 사용자의 직책, 사용자의 ID, 사용자 단말의 MAC Address, 사용자 단말의 IP주소(Internet Protocol address) 중 적어도 하나를 참조하여, 제2 파일에 대한 DRM적용 여부를 결정할 수 있다.
여기서, 관리 정책은, 제1 파일이 DRM적용 되었는지 여부에 따라, 제2 파일에 대한 DRM적용 여부를 결정할 수 있다.
상기 다른 목적을 달성하기 위한 본 발명의 다른 측면은 애플리케이션 서버(web application server) 및 DRM 서버(digital rights management server)와 연동하여 DRM 기능을 제공하는 장치를 제공한다.
여기서, DRM 기능을 제공하는 장치는 적어도 하나의 명령어를 실행하는 프로세서 및 적어도 하나의 파일을 저장하는 로컬 저장소(local storage)를 포함한다.
여기서 프로세서는, 전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 제1 파일을 애플리케이션 서버에 전송할 수 있다.
여기서, 프로세서는, 제1 파일의 DRM적용 여부를 확인하고, 제1 파일에 DRM적용이 된 경우, DRM 서버와 연동하여 사용자의 접근 권한을 판단하고, 접근 권한에 기초하여 제1 파일의 DRM적용을 해제할 수 있다.
여기서, 프로세서는, DRM 기능을 제공하는 장치의 맥 어드레스(MAC Address), 쿠키, IP 주소(Internet protocol address), 사용자 ID, 비밀번호, 지문이나 홍채를 포함한 생체 정보 중 적어도 하나를 검증함으로써 사용자의 접근 권한을 판단할 수 있다.
여기서, 프로세서는, DRM적용이 해제된 제1 파일을 로컬 저장소의 특정 영역 또는 DRM 기능을 제공하는 장치와 연동된 별도의 데이터베이스에 저장할 수 있다.
여기서, 특정 영역 또는 별도의 데이터베이스는, DRM 기능을 제공하는 장치에서 구동되는 런처 애플리케이션(launcher application)에 의해서만 접근이 허용될 수 있다.
여기서, 프로세서는, 사용자가 애플리케이션 서버와 연동하여 제1 파일을 수정함에 따라, 애플리케이션 서버로부터 제1 파일이 수정된 제2 파일을 수신하고, 제2 파일을 로컬 저장소에 저장할 수 있다.
여기서, 프로세서는, 제2 파일에 대하여 DRM 서버와 연동하여 관리 정책을 확인하고, 관리 정책에 따라, 제2 파일에 대하여 DRM적용을 수행하고, DRM적용이 수행된 제2 파일을 로컬 저장소에 저장할 수 있다.
여기서, 관리 정책은, 제2 파일을 수정한 사용자의 직책, 사용자의 ID, DRM 기능을 제공하는 장치의 MAC Address, IP주소(Internet Protocol address) 중 적어도 하나를 참조하여, 제2 파일에 대한 DRM적용 여부를 결정할 수 있다.
여기서, 관리 정책은, 제1 파일이 DRM적용 되었는지 여부에 따라, 제2 파일에 대한 DRM적용 여부를 결정할 수 있다.
상기와 같은 본 발명에 따른 DRM 기능을 제공하는 방법 또는 장치를 이용할 경우에는 후킹이 제한된 플랫폼에서도 DRM 파일에 대한 처리가 가능할 수 있다.
또한, DRM적용이 클라우드 환경에서 이루어질 수 있어 클라우드 환경에서의 보안이 향상될 수 있다.
또한, 완성된 애플리케이션 서버와 연동할 수 있기 때문에 확장성이 높고 안정성이 높은 장점이 있다.
도 1은 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법 및 장치에 대한 구성도이다.
도 2는 본 발명의 일실시예에 따른 사용자 단말에서 DRM 기능을 제공하는 방법에 대한 흐름도이다.
도 3은 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법에 대한 제1 시퀀스도이다.
도 4는 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법에 대한 제2 시퀀스도이다.
도 5는 본 발명의 일실시예에 따른 DRM 기능을 제공하는 장치에 대한 구성도이다.
도 6은 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법 또는 장치에 대한 다른 구성도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법 및 장치에 대한 구성도이다.
도 1을 참조하면, DRM 기능을 제공하는 방법 및 장치는 사용자 단말, DRM 서버 및/또는 애플리케이션 서버를 포함하여 구성될 수 있다.
여기서, DRM 기능이란, 미디어 파일이나 전자 문서 파일 등 각종 컨텐츠를 송수신할 때 송수신단 상호간 인증 처리, 송수신시의 암호화 처리, 컨텐츠의 암호화 처리, 암호화에 사용된 키의 관리, 컨텐츠의 포멧에 대한 규격 설계 및 패키징, 컨텐츠 사용을 위한 권리의 관리 및 해석 등 디지털 컨텐츠의 유통 및 복제 방지를 통해 디지털 컨텐츠의 정당한 권리자를 보호하는 기능들을 의미할 수 있다.
여기서, 사용자 단말은 애플리케이션 서버 또는 DRM 서버와 연동하여 DRM이 적용된 파일을 읽거나, 수정 또는 삭제할 수 있다. 여기서, DRM이 적용된 파일이란 워드 프로세서 파일을 포함한 각종 오피스 파일뿐만 아니라 미디어 파일도 포함할 수 있다. 또한, 사용자 단말의 플랫폼(platform)은 함수 후킹이나 API 후킹 등 각종 후킹 기술이 적용되지 않거나 이를 지원하지 않는 운영체제(operating system, OS)일 수 있다. 예를 들면, 애플의 MAC OS, Linux 등일 수 있다. 또한, 사용자 단말은 미리 사용자 단말에 설치되어 구동된 런처 애플리케이션에 의하여 애플리케이션 서버 또는 DRM 서버와 연동할 수 있다.
사용자 단말의 예를 들면, 통신 가능한 데스크탑 컴퓨터(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) 등일 수 있다.
여기서, 애플리케이션 서버는 사용자 단말에 저장된 각종 파일을 처리할 수 있다. 예를 들면, 미디어 파일을 재생하거나, 각종 오피스 문서 파일, 그림 파일 등을 열람할 수 있으며 편집, 삭제 등 포함한 변경을 할 수 있다.
더 구체적으로, 애플리케이션 서버는 웹 기반으로 문서나 미디어 파일을 처리하는 각종 서버로서, 구글 오피스(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이 적용된 파일에 대한 암호화 키 또는 DRM적용을 해제하기 위한 복호화 키를 의미할 수 있다.
또한, DRM 서버는 암호화 키 또는 복호화 키를 저장 또는 관리하는 키 서버(key server)를 포함할 수 있고, 별도의 키 서버와 연동하여 키를 관리 또는 저장할 수 있다.
도 2는 본 발명의 일실시예에 따른 사용자 단말에서 DRM 기능을 제공하는 방법에 대한 흐름도이다.
도 2를 참조하면, 애플리케이션 서버(web application server) 및 DRM 서버(digital rights management server)와 연동하여 사용자 단말에서 DRM 기능을 제공하는 방법은, 사용자로부터 사용자 단말의 로컬 저장소(local storage)에 저장된 제1 파일(file)에 대한 열람 입력을 받는 단계(S200), 제1 파일의 DRM적용 여부에 따라 DRM 서버와 연동하여 제1 파일의 DRM적용을 해제하는 단계(S205) 및 DRM적용이 해제된 제1 파일을 애플리케이션 서버에 전송하는 단계(S210)를 포함할 수 있다.
여기서, 제1 파일(file)에 대한 열람 입력을 받는 단계(S200) 이후에 상기 사용자 단말의 사용자에 대하여, DRM 서버에 관한 사용자 인증을 수행하는 단계를 더 포함할 수 있다.
더 구체적으로 설명하면, 사용자 단말의 사용자로부터 사용자 정보 예를 들면 사용자의 ID, 비밀번호 또는 지문, 홍채 등을 포함하는 생체 정보, 사용자 단말의 ID, 사용자 단말의 MAC address 등을 입력받을 수 있다. 입력된 사용자 정보를 DRM 서버에 전송할 수 있고, 상기 DRM 서버로부터 다시 사용자 인증의 승인을 수신할 수 있다. 여기서, DRM 서버는 사용자 정보를 미리 저장하고 있고, 미리 저장된 사용자 정보를 이용하여 인증의 승인 여부를 결정할 수 있다.
또 다른 실시예로, 미리 일방향 암호화되어 저장된 사용자 정보를 기초로 사용자에 의해 입력된 사용자 정보에 대해 일방향 암호화를 수행하여, 저장된 사용자 정보와 비교함으로써 수행될 수도 있다.
여기서, 일방향 암호화는 MD-5, SHA-5, SHA-256 중 적어도 하나를 포함하는 해쉬함수(Hash Function)을 이용하여 수행될 수 있다.
여기서, 제1 파일(file)에 대한 열람 입력을 받는 단계(S200) 이후에, 애플리케이션 서버로 접속하는 단계를 더 포함할 수 있다. 예를 들면, 애플리케이션 서버에 접속할 수 있는 링크(link)를 생성할 수 있고, 링크에는 사용자 단말의 제1 파일에 접근할 수 있는 주소가 포함되어 있을 수 있다.
생성된 링크에 따라 애플리케이션 서버로 접속할 수 있고, 사용자 단말이 접속되면 애플리케이션 서버는 링크에 포함되어 있는 사용자 단말의 제1 파일에 접근할 수 있는 주소를 통해 사용자 단말에 제1 파일을 요청할 수 있다. 여기서, 링크에 따른 애플리케이션 서버로의 접속은 사용자 단말에서 구동된 런처 애플리케이션에 의해 수행될 수 있는데, 런처 애플리케이션이 링크를 생성하고, 런처 애플리케이션 내에 부가된 웹 접속 기능을 이용하여 링크를 실행함으로써 접속할 수도 있고, 런처 애플리케이션이 링크를 생성한 뒤 별도의 웹 브라우저를 실행시켜 웹 브라우저에 의해 링크를 실행함으로써 접속이 수행될 수도 있다.
여기서, 로컬 저장소는 사용자 단말에 포함된 HDD(hard disk drive), SSD(solid state drive)를 의미할 수 있고, 사용자 단말과 유선 또는 무선으로 연결되어 사용자 단말과 데이터를 송수신하는 별도의 저장소일 수도 있다.
여기서, 제1 파일을 애플리케이션 서버에 전송하는 단계(S210)는, 전송 계층 보안(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 키는 대칭 키 방식일 수 있으나 비대칭 키 방식을 배제하는 것은 아니다.
여기서, 제1 파일의 DRM적용을 해제하는 단계(S205)는, 제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 파일의 DRM적용을 해제하는 단계(S205) 이후에, DRM적용이 해제된 제1 파일을 로컬 저장소의 특정 영역 또는 사용자 단말과 연동된 별도의 데이터베이스에 저장하는 단계를 더 포함할 수 있다.
여기서, 특정 영역 또는 별도의 데이터베이스는, 사용자 단말에서 구동되는 런처 애플리케이션(launcher application)에 의해서만 접근이 허용될 수 있다. 예를 들면, 런처 애플리케이션에 의해서 생성되거나 암호화 또는 권한 설정을 통해 관리되는 로컬 저장소의 주소 영역이거나 별도의 데이터베이스일 수 있다.
여기서, DRM적용이 해제된 제1 파일을 애플리케이션 서버에 전송하는 단계(S210) 이후에, 애플리케이션 서버로부터 제1 파일에 대한 사용자 인터페이스를 제공받을 수 있다. 예를 들면, 사용자 단말에서 구동되는 런처 애플리케이션 내에 웹 접속 기능을 이용하여 런처 애플리케이션 상에서 애플리케이션 서버의 사용자 인터페이스를 제공받을 수 있고, 런처 애플리케이션에 의해 별도로 구동된 웹 브라우저(web browser)를 통해 사용자 인터페이스를 제공받을 수도 있다.
여기서, DRM 기능을 제공하는 방법은, 사용자가 애플리케이션 서버와 연동하여 제1 파일을 수정함에 따라, 애플리케이션 서버로부터 제1 파일이 수정된 제2 파일을 수신하는 단계 및 제2 파일을 로컬 저장소에 저장하는 단계를 더 포함할 수 있다.
여기서, 제2 파일을 애플리케이션 서버로부터 수신하는 단계는, 사용자 단말이 애플리케이션 서버로부터 제1 파일에 대한 수정 완료 여부를 수신하고 그에 따라 애플리케이션 서버에 제2 파일을 요청함으로써 수신될 수 있다. 구체적으로 예를 들면, 애플리케이션 서버가 사용자 단말로부터 제1 파일의 저장 명령을 수신하거나 제1 파일에 대한 편집을 종료하는 경우 또는 애플리케이션 서버로의 접속을 종료하는 경우, 애플리케이션 서버는 사용자 단말에 수정 완료 여부를 전송할 수 있고, 그에 따라 사용자 단말이 애플리케이션 서버에 제2 파일을 요청함으로써 수신할 수 있다.
또 다른 실시예로, 사용자 단말이 DRM적용이 해제된 제1 파일을 애플리케이션 서버로 전송하고 나면, 사용자 단말은 애플리케이션 서버로부터의 메시지를 리스닝(listening)하고 있을 수 있다. 이때, 애플리케이션 서버가 사용자 단말로부터 제1 파일의 저장 명령을 수신하거나 제1 파일에 대한 편집을 종료하는 경우 또는 애플리케이션 서버로의 접속을 종료하는 경우, 애플리케이션 서버는 리퀘스트 메시지(request message)에 제2 파일을 첨부하여 사용자 단말에 전송할 수 있고 이에 따라 사용자 단말이 제2 파일을 수신할 수도 있다.
여기서, 제2 파일을 애플리케이션 서버로부터 수신하는 단계는, 미리 정해진 시간 간격에 따라 주기적으로 수행될 수도 있다.
여기서, 로컬 저장소에 저장하는 단계는, 제2 파일에 대하여 DRM 서버와 연동하여 관리 정책을 확인하는 단계, 관리 정책에 따라, 제2 파일에 대하여 DRM적용을 수행하는 단계 및 DRM적용이 수행된 제2 파일을 로컬 저장소에 저장하는 단계를 포함할 수 있다. 여기서, 관리 정책은, DRM 서버에 포함되거나 연동되는 정책 서버에 저장되어 있을 수 있다.
여기서, 관리 정책은, 제2 파일을 수정한 사용자의 직책, 사용자의 ID, 사용자 단말의 MAC Address, 사용자 단말의 IP주소(Internet Protocol address) 중 적어도 하나를 참조하여, 제2 파일에 대한 DRM적용 여부를 결정할 수 있다.
여기서, 관리 정책은, 제1 파일이 DRM적용 되었는지 여부에 따라, 제2 파일에 대한 DRM적용 여부를 결정할 수 있다. 예를 들면, 제1 파일이 DRM적용 되었던 파일이라면, 제2 파일에 대해서도 DRM적용을 할 수 있고, 제1 파일이 DRM적용이 되지 않았던 파일이라면, 제2 파일에 대해서도 DRM적용을 하지 않을 수 있다.
여기서, 제2 파일에 대한 DRM적용은 앞에서 설명한 것과 같이, 제2 파일에 대하여 제1 키를 이용하여 암호화를 수행할 수 있다. 또한, 제1 키에 대하여 제2 키를 이용하여 암호화를 수행하고, 암호화된 제1 키를 암호화된 제2 파일에 대한 메타데이터로 함께 패키징할 수 있다. 다만, 여기서는 앞에서의 DRM적용을 해제하는 단계(S305)에서 DRM 서버로부터 제2 키를 획득하였을 수 있으므로 별도로 다시 DRM 서버로부터 제2 키를 수신하지 않을 수 있다. 또한, 제1 키는 제1 파일에 함께 패키징되었을 수 있으므로, 제1 파일에서 획득될 수 있다.
도 3은 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법에 대한 제1 시퀀스도이다.
도 3을 참조하면, 먼저 사용자 단말(100)의 사용자는 로컬 저장소에 저장된 제1 파일의 열람을 입력할 수 있다(S300). 그에 따라 사용자 단말(100)은 제1 파일의 DRM 적용 여부를 확인하고(S301), DRM적용이 된 경우, DRM 서버(400)로 접근 권한 확인을 요청할 수 있다(S302). DRM 서버(400)는 접근 권한을 사용자 단말(100)로 전송할 수 있다(S303). 사용자 단말(100)은 사용자의 접근 권한을 판단하고(S304), 사용자에게 접근 권한이 있는 것으로 확인되면 제1 파일의 DRM 적용을 해제할 수 있다(S305).
사용자 단말(100)은 DRM적용이 해제된 제1 파일을 애플리케이션 서버(500)에 전송(S306)하고, 애플리케이션 서버(500)는 사용자 단말(100)에 제1 파일에 대한 열람, 편집, 삭제, 저장 등의 사용자 인터페이스를 제공할 수 있다(S307).
도 4는 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법에 대한 제2 시퀀스도이다.
도 4를 참조하면, 사용자 인터페이스가 제공(도 3, S307)된 이후의 과정을 설명할 수 있다.
먼저 사용자 단말(100)의 사용자가 애플리케이션 서버(500)를 통하여 제1 파일을 수정하면(S400), 애플리케이션 서버(500)는 제1 파일이 수정된 제2 파일을 생성할 수 있다(S401).
애플리케이션 서버(500)는 생성된 제2 파일을 사용자 단말(100)에 전송할 수 있다(S402).
사용자 단말(100)은 DRM 서버(400)에 제2 파일에 대한 관리 정책을 요청할 수 있고(S403), 그에 따라 DRM 서버(400)는 관리 정책을 사용자 단말(100)에 전송할 수 있다(S404).
사용자 단말(100)은 관리 정책을 기초로 제2 파일에 대한 DRM적용 여부를 결정할 수 있다(S405). DRM적용하는 것으로 결정된 경우, 사용자 단말(100)은 제2 파일에 DRM적용을 수행할 수 있고(S406), DRM적용이 된 제2 파일을 로컬 저장소에 저장할 수 있다(S407).
도 5는 본 발명의 일실시예에 따른 DRM 기능을 제공하는 장치에 대한 구성도이다.
도 5를 참조하면, 애플리케이션 서버(web application server) 및 DRM 서버(digital rights management server)와 연동하여 DRM 기능을 제공하는 장치(100)는, 적어도 하나의 명령어를 실행하는 프로세서(processor, 110) 및 적어도 하나의 파일을 저장하는 로컬 저장소(local storage, 130)를 포함할 수 있다.
또한, 적어도 하나의 명령어를 저장하는 메모리(memory, 120)를 포함할 수 있고, 애플리케이션 서버 또는 DRM 서버와 데이터를 송수신하는 통신부(communication module, 140)를 포함할 수 있다.
또한 여기서 DRM 기능을 제공하는 장치(100)는 도 1 내지 도 4에서 설명한 사용자 단말일 수 있다.
여기서 프로세서(110)는, 전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 제1 파일을 애플리케이션 서버에 전송할 수 있다.
여기서, 프로세서(110)는, 제1 파일의 DRM적용 여부를 확인하고, 제1 파일에 DRM적용이 된 경우, DRM 서버와 연동하여 사용자의 접근 권한을 판단하고, 접근 권한에 기초하여 제1 파일의 DRM적용을 해제할 수 있다.
여기서, 프로세서(110)는, DRM 기능을 제공하는 장치(100)의 맥 어드레스(MAC Address), 쿠키, IP 주소(Internet protocol address), 사용자 ID, 비밀번호, 지문이나 홍채를 포함한 생체 정보 중 적어도 하나를 검증함으로써 사용자의 접근 권한을 판단할 수 있다.
여기서, 프로세서(110)는, DRM적용이 해제된 제1 파일을 로컬 저장소의 특정 영역 또는 DRM 기능을 제공하는 장치(100)와 연동된 별도의 데이터베이스에 저장할 수 있다.
여기서, 특정 영역 또는 별도의 데이터베이스는, DRM 기능을 제공하는 장치(100)에서 구동되는 런처 애플리케이션(launcher application)에 의해서만 접근이 허용될 수 있다.
여기서, 프로세서(110)는, 사용자가 애플리케이션 서버와 연동하여 제1 파일을 수정함에 따라, 애플리케이션 서버로부터 제1 파일이 수정된 제2 파일을 수신하고, 제2 파일을 로컬 저장소에 저장할 수 있다.
여기서, 프로세서(110)는, 제2 파일에 대하여 DRM 서버와 연동하여 관리 정책을 확인하고, 관리 정책에 따라, 제2 파일에 대하여 DRM적용을 수행하고, DRM적용이 수행된 제2 파일을 로컬 저장소에 저장할 수 있다.
여기서, 관리 정책은, 제2 파일을 수정한 사용자의 직책, 사용자의 ID, DRM 기능을 제공하는 장치(100)의 MAC Address, IP주소(Internet Protocol address) 중 적어도 하나를 참조하여, 제2 파일에 대한 DRM적용 여부를 결정할 수 있다.
여기서, 관리 정책은, 제1 파일이 DRM적용 되었는지 여부에 따라, 제2 파일에 대한 DRM적용 여부를 결정할 수 있다.
도 6은 본 발명의 일실시예에 따른 DRM 기능을 제공하는 방법 또는 장치에 대한 다른 구성도이다.
도 6을 참조하면, 도 1 내지 도 5에서 설명한 사용자 단말 또는 DRM 기능을 제공하는 장치는 별도의 게이트웨이 서버를 추가로 포함하여 구성될 수 있다.
여기서, 게이트웨이 서버는 사용자 단말과 DRM 서버 및 애플리케이션 서버를 중계하는 역할을 하는 일종의 중계 서버로서, 도 1 내지 도 5에서 설명한 사용자 단말의 기능 일부를 분리하여 가질 수 있다.
구체적으로 설명하면, 사용자 단말이 사용자로부터 사용자 단말의 로컬 저장소(local storage)에 저장된 제1 파일(file)에 대한 열람 입력을 받으면, 사용자 단말은 제1 파일을 게이트웨이 서버에 전송할 수 있다. 제1 파일을 수신한 후에 게이트웨이 서버는 사용자 단말에 애플리케이션 서버로의 접속을 유도할 수 있다. 예를 들면, 게이트웨이 서버는 사용자 단말에 애플리케이션 서버에 접속할 수 있는 링크(link)를 전송할 수 있고, 링크에는 게이트웨이 서버의 제1 파일에 접근할 수 있는 주소가 포함되어 있을 수 있다. 링크를 수신한 사용자 단말은 링크에 따라 애플리케이션 서버로 접속할 수 있고, 링크에 따라 사용자 단말이 접속되면 애플리케이션 서버는 링크에 포함되어 있는 게이트웨이 서버의 제1 파일에 접근할 수 있는 주소를 통해 게이트웨이 서버에 제1 파일을 요청할 수 있다.
한편, 제1 파일을 수신한 후에 게이트웨이 서버는 수신한 제1 파일의 DRM적용 여부에 따라 DRM 서버와 연동하여 제1 파일의 DRM적용을 해제할 수 있고, DRM적용이 해제된 제1 파일을 애플리케이션 서버에 전송할 수 있다. 애플리케이션 서버가 DRM적용이 해제된 제1 파일을 수신하면, 사용자 단말에 제1 파일에 대한 애플리케이션 서버의 사용자 인터페이스를 제공할 수 있다.
또한, 사용자가 사용자 인터페이스를 이용하여 제1 파일을 수정함에 따라, 게이트웨이 서버는 애플리케이션 서버로부터 제1 파일이 수정된 제2 파일을 수신할 수 있다.
예를 들면, 사용자가 사용자 인터페이스를 이용하여 제1 파일을 수정하면, 애플리케이션 서버는 제1 파일에 대한 수정 완료 여부를 게이트웨이 서버에 전송하고, 게이트웨이 서버가 애플리케이션 서버에 제2 파일을 요청함으로써 수신될 수 있다. 구체적으로 예를 들면, 애플리케이션 서버가 사용자 단말로부터 제1 파일의 저장 명령을 수신하거나 제1 파일에 대한 편집을 종료하는 경우 또는 애플리케이션 서버로의 접속을 종료하는 경우, 애플리케이션 서버는 게이트웨이 서버로 수정 완료 여부를 전송할 수 있고, 그에 따라 게이트웨이 서버가 애플리케이션 서버에 제2 파일을 요청함으로써 수신할 수 있다. 다른 예로, 사용자 단말이 직접 게이트웨이 서버에 제1 파일에 대한 수정 완료 여부를 전송하고, 게이트웨이 서버가 애플리케이션 서버로부터 제2 파일을 수신할 수도 있다.
또 다른 실시예로, 게이트웨이 서버가 DRM적용이 해제된 제1 파일을 애플리케이션 서버로 전송하고 나면, 게이트웨이 서버는 애플리케이션 서버로부터의 메시지를 리스닝(listening)하고 있을 수 있다. 이때, 애플리케이션 서버가 사용자 단말로부터 제1 파일의 저장 명령을 수신하거나 제1 파일에 대한 편집을 종료하는 경우 또는 애플리케이션 서버로의 접속을 종료하는 경우, 애플리케이션 서버는 리퀘스트 메시지(request message)에 제2 파일을 첨부하여 게이트웨이 서버에 전송할 수 있고 이에 따라 게이트웨이 서버가 제2 파일을 수신할 수도 있다.
게이트웨이 서버는 수신된 제2 파일을 저장할 수 있고, 사용자 단말에 제2 파일의 수신 여부 또는 제1 파일의 수정 여부를 송신할 수 있다. 사용자 단말은 제1 파일의 수정 여부 또는 제2 파일의 수신 여부를 수신한 경우, 게이트웨이 서버에 제2 파일을 요청할 수 있다. 게이트웨이 서버는 사용자 단말로부터 제2 파일에 대한 파일 전송 요청을 받으면, DRM 서버와 연동하여 관리 정책을 확인하고, 관리 정책에 따라, 제2 파일에 대하여 DRM적용을 수행하고, DRM적용이 수행된 제2 파일을 사용자 단말에 전송할 수 있다. 사용자 단말은 DRM적용이 수행된 제2 파일을 게이트웨이 서버로부터 수신하면, 로컬 저장소에 저장할 수 있다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능 매체의 예에는 롬(ROM), 램(RAM), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 상술한 방법 또는 장치는 그 구성이나 기능의 전부 또는 일부가 결합되어 구현되거나, 분리되어 구현될 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (20)

  1. 애플리케이션 서버(web application server) 및 DRM 서버(digital rights management server)와 연동하여 사용자 단말에서 DRM 기능을 제공하는 방법에 있어서,
    사용자로부터 상기 사용자 단말의 로컬 저장소(local storage)에 저장된 제1 파일(file)에 대한 열람 입력을 받는 단계;
    상기 제1 파일의 DRM적용 여부에 따라 상기 DRM 서버와 연동하여 상기 제1 파일의 DRM적용을 해제하는 단계; 및
    상기 DRM적용이 해제된 제1 파일을 상기 애플리케이션 서버에 전송하는 단계를 포함하는, DRM 기능을 제공하는 방법.
  2. 청구항 1에 있어서,
    상기 제1 파일을 상기 애플리케이션 서버에 전송하는 단계는,
    전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 전송하는, DRM 기능을 제공하는 방법.
  3. 청구항 1에 있어서,
    상기 제1 파일의 DRM적용을 해제하는 단계는,
    상기 제1 파일의 상기 DRM적용 여부를 확인하는 단계;
    상기 제1 파일에 상기 DRM적용이 된 경우, 상기 DRM 서버와 연동하여 상기 사용자의 접근 권한을 판단하는 단계; 및
    상기 접근 권한에 기초하여 상기 제1 파일의 상기 DRM적용을 해제하는 단계를 포함하는, DRM 기능을 제공하는 방법.
  4. 청구항 3에 있어서,
    상기 사용자의 접근 권한을 판단하는 단계는,
    상기 사용자 단말의 맥 어드레스(MAC Address), 쿠키, IP 주소(Internet protocol address), 사용자 ID, 비밀번호, 지문이나 홍채를 포함한 생체 정보 중 적어도 하나를 검증함으로써 수행되는, DRM 기능을 제공하는 방법.
  5. 청구항 1에 있어서,
    상기 제1 파일의 DRM적용을 해제하는 단계 이후에,
    상기 DRM적용이 해제된 제1 파일을 상기 로컬 저장소의 특정 영역 또는 상기 사용자 단말과 연동된 별도의 데이터베이스에 저장하는 단계를 더 포함하는, DRM 기능을 제공하는 방법.
  6. 청구항 5에 있어서,
    상기 특정 영역 또는 상기 별도의 데이터베이스는,
    상기 사용자 단말에서 구동되는 런처 애플리케이션(launcher application)에 의해서만 접근이 허용되는, DRM 기능을 제공하는 방법.
  7. 청구항 1에 있어서,
    상기 DRM 기능을 제공하는 방법은,
    상기 사용자가 상기 애플리케이션 서버와 연동하여 상기 제1 파일을 수정함에 따라, 상기 애플리케이션 서버로부터 상기 제1 파일이 수정된 제2 파일을 수신하는 단계; 및
    상기 제2 파일을 상기 로컬 저장소에 저장하는 단계를 더 포함하는, DRM 기능을 제공하는 방법.
  8. 청구항 7에 있어서,
    상기 로컬 저장소에 저장하는 단계는,
    상기 제2 파일에 대하여 상기 DRM 서버와 연동하여 관리 정책을 확인하는 단계;
    상기 관리 정책에 따라, 상기 제2 파일에 대하여 상기 DRM적용을 수행하는 단계; 및
    상기 DRM적용이 수행된 제2 파일을 상기 로컬 저장소에 저장하는 단계를 포함하는, DRM 기능을 제공하는 방법.
  9. 청구항 8에 있어서,
    상기 관리 정책은,
    상기 제2 파일을 수정한 상기 사용자의 직책, 상기 사용자의 ID, 상기 사용자 단말의 MAC Address, IP주소(Internet Protocol address) 중 적어도 하나를 참조하여, 상기 제2 파일에 대한 DRM적용 여부를 결정하는, DRM 기능을 제공하는 방법.
  10. 청구항 8에 있어서,
    상기 관리 정책은,
    상기 제1 파일이 DRM적용 되었는지 여부에 따라, 상기 제2 파일에 대한 DRM적용 여부를 결정하는, DRM 기능을 제공하는 방법.
  11. 애플리케이션 서버(web application server) 및 DRM 서버(digital rights management server)와 연동하여 DRM 기능을 제공하는 장치에 있어서,
    상기 DRM 기능을 제공하는 장치는 적어도 하나의 명령어를 실행하는 프로세서; 및
    적어도 하나의 파일을 저장하는 로컬 저장소(local storage)를 포함하고,
    상기 프로세서는,
    사용자로부터 상기 로컬 저장소에 저장된 제1 파일(file)에 대한 열람 입력을 받고, 상기 제1 파일의 DRM적용 여부에 따라 상기 DRM 서버와 연동하여 상기 제1 파일의 DRM적용을 해제하고, 상기 DRM적용이 해제된 제1 파일을 상기 애플리케이션 서버에 전송하는, DRM 기능을 제공하는 장치.
  12. 청구항 11에 있어서,
    상기 프로세서는,
    전송 계층 보안(Transport Layer Security, TLS) 및 보안 소켓 레이어(Secure Sockets Layer, SSL) 중 적어도 하나의 보안 규약에 따라 상기 제1 파일을 상기 애플리케이션 서버에 전송하는, DRM 기능을 제공하는 장치.
  13. 청구항 11에 있어서,
    상기 프로세서는,
    상기 제1 파일의 상기 DRM적용 여부를 확인하고, 상기 제1 파일에 상기 DRM적용이 된 경우, 상기 DRM 서버와 연동하여 상기 사용자의 접근 권한을 판단하고, 상기 접근 권한에 기초하여 상기 제1 파일의 상기 DRM적용을 해제하는, DRM 기능을 제공하는 장치.
  14. 청구항 13에 있어서,
    상기 프로세서는,
    상기 DRM 기능을 제공하는 장치의 맥 어드레스(MAC Address), 쿠키, IP 주소(Internet protocol address), 사용자 ID, 비밀번호, 지문이나 홍채를 포함한 생체 정보 중 적어도 하나를 검증함으로써 상기 사용자의 접근 권한을 판단하는, DRM 기능을 제공하는 장치.
  15. 청구항 11에 있어서,
    상기 프로세서는,
    상기 DRM적용이 해제된 제1 파일을 상기 로컬 저장소의 특정 영역 또는 상기 DRM 기능을 제공하는 장치와 연동된 별도의 데이터베이스에 저장하는, DRM 기능을 제공하는 장치.
  16. 청구항 15에 있어서,
    상기 특정 영역 또는 상기 별도의 데이터베이스는,
    상기 DRM 기능을 제공하는 장치에서 구동되는 런처 애플리케이션(launcher application)에 의해서만 접근이 허용되는, DRM 기능을 제공하는 장치.
  17. 청구항 11에 있어서,
    상기 프로세서는,
    상기 사용자가 상기 애플리케이션 서버와 연동하여 상기 제1 파일을 수정함에 따라, 상기 애플리케이션 서버로부터 상기 제1 파일이 수정된 제2 파일을 수신하고, 상기 제2 파일을 상기 로컬 저장소에 저장하는, DRM 기능을 제공하는 장치.
  18. 청구항 17에 있어서,
    상기 프로세서는,
    상기 제2 파일에 대하여 상기 DRM 서버와 연동하여 관리 정책을 확인하고, 상기 관리 정책에 따라, 상기 제2 파일에 대하여 상기 DRM적용을 수행하고, 상기 DRM적용이 수행된 제2 파일을 상기 로컬 저장소에 저장하는, DRM 기능을 제공하는 장치.
  19. 청구항 18에 있어서,
    상기 관리 정책은,
    상기 제2 파일을 수정한 상기 사용자의 직책, 상기 사용자의 ID, 상기 DRM 기능을 제공하는 장치의 MAC Address, IP주소(Internet Protocol address) 중 적어도 하나를 참조하여, 상기 제2 파일에 대한 DRM적용 여부를 결정하는, DRM 기능을 제공하는 장치.
  20. 청구항 18에 있어서,
    상기 관리 정책은,
    상기 제1 파일이 DRM적용 되었는지 여부에 따라, 상기 제2 파일에 대한 DRM적용 여부를 결정하는, DRM 기능을 제공하는 장치.
KR1020160136743A 2016-10-20 2016-10-20 클라우드 서비스 기반으로 사용자 단말에서 drm 기능을 제공하는 방법 KR101861015B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160136743A KR101861015B1 (ko) 2016-10-20 2016-10-20 클라우드 서비스 기반으로 사용자 단말에서 drm 기능을 제공하는 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160136743A KR101861015B1 (ko) 2016-10-20 2016-10-20 클라우드 서비스 기반으로 사용자 단말에서 drm 기능을 제공하는 방법

Publications (2)

Publication Number Publication Date
KR20180043690A true KR20180043690A (ko) 2018-04-30
KR101861015B1 KR101861015B1 (ko) 2018-05-31

Family

ID=62080988

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160136743A KR101861015B1 (ko) 2016-10-20 2016-10-20 클라우드 서비스 기반으로 사용자 단말에서 drm 기능을 제공하는 방법

Country Status (1)

Country Link
KR (1) KR101861015B1 (ko)

Also Published As

Publication number Publication date
KR101861015B1 (ko) 2018-05-31

Similar Documents

Publication Publication Date Title
JP6961818B2 (ja) データ共有方法、クライアント、サーバ、コンピューティングデバイス、及び記憶媒体
KR100770421B1 (ko) 컴퓨터 파일 및/또는 프로그램 처리 시스템 및 방법
JP4912406B2 (ja) 第1プラットフォームから第2プラットフォームへのディジタルライセンスの移送
US9424439B2 (en) Secure data synchronization
US11290446B2 (en) Access to data stored in a cloud
KR100564731B1 (ko) 네트워크를 통하여 개인 휴대 단말기로 데이터를 전송하는방법 및 그 시스템
KR101971225B1 (ko) 클라우드 서버의 데이터 전송 보안 시스템 및 그 제공 방법
KR20120050742A (ko) 커널 네이티브 에이피아이의 후킹 처리를 통한 디지털 저작권 관리 장치 및 방법
US20150205973A1 (en) Method and apparatus for providing data sharing
US11063922B2 (en) Virtual content repository
KR101952139B1 (ko) 사용자 단말과 연동된 게이트웨이 서버에서 drm 기능을 제공하는 방법
JP5678150B2 (ja) ユーザ端末、鍵管理システム、及びプログラム
US7694154B2 (en) Method and apparatus for securely executing a background process
US20220092193A1 (en) Encrypted file control
KR101861015B1 (ko) 클라우드 서비스 기반으로 사용자 단말에서 drm 기능을 제공하는 방법
US20130219510A1 (en) Drm/cas service device and method using security context
KR20180043679A (ko) 게이트웨이 서버와 연동된 클라우드 저장소 서버에서 drm 기능을 제공하는 방법
KR20070114124A (ko) 디지털 권한 파일의 보호를 위한 방법
KR101269095B1 (ko) 휴대 단말기를 이용한 이동식 저장 장치 및 그 구현 방법
TR2023006911T2 (tr) Şi̇freli̇ dosya kontrolü
KR20170100235A (ko) 공인 인증서 보안 시스템 및 그 방법
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
E701 Decision to grant or registration of patent right
GRNT Written decision to grant