KR102137686B1 - 컨텐츠 무결성 제어 방법 및 그 전자 장치 - Google Patents

컨텐츠 무결성 제어 방법 및 그 전자 장치 Download PDF

Info

Publication number
KR102137686B1
KR102137686B1 KR1020130097154A KR20130097154A KR102137686B1 KR 102137686 B1 KR102137686 B1 KR 102137686B1 KR 1020130097154 A KR1020130097154 A KR 1020130097154A KR 20130097154 A KR20130097154 A KR 20130097154A KR 102137686 B1 KR102137686 B1 KR 102137686B1
Authority
KR
South Korea
Prior art keywords
watermark image
content
unique information
electronic device
watermark
Prior art date
Application number
KR1020130097154A
Other languages
English (en)
Other versions
KR20150019813A (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 KR1020130097154A priority Critical patent/KR102137686B1/ko
Priority to US14/461,244 priority patent/US9729815B2/en
Publication of KR20150019813A publication Critical patent/KR20150019813A/ko
Application granted granted Critical
Publication of KR102137686B1 publication Critical patent/KR102137686B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/913Television signal processing therefor for scrambling ; for copy protection
    • 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
    • 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]
    • G06F21/16Program or content traceability, e.g. by watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0028Adaptive watermarking, e.g. Human Visual System [HVS]-based watermarking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4318Generation of visual interfaces for content selection or interaction; Content or additional data rendering by altering the content in the rendering process, e.g. blanking, blurring or masking an image region
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44236Monitoring of piracy processes or activities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8352Generation of protective data, e.g. certificates involving content or source identification data, e.g. Unique Material Identifier [UMID]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8358Generation of protective data, e.g. certificates involving watermark
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0081Image watermarking whereby both original and watermarked images are required at decoder, e.g. destination-based, non-blind, non-oblivious
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/913Television signal processing therefor for scrambling ; for copy protection
    • H04N2005/91307Television signal processing therefor for scrambling ; for copy protection by adding a copy protection signal to the video signal
    • H04N2005/91335Television signal processing therefor for scrambling ; for copy protection by adding a copy protection signal to the video signal the copy protection signal being a watermark

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Virology (AREA)
  • Computer Hardware Design (AREA)
  • Technology Law (AREA)
  • Bioethics (AREA)
  • Telephone Function (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 개시의 다양한 실시 예는 컨텐츠 무결성을 제어하기 위한 방법 및 장치에 관한 것이다. 이때, 전자 장치의 동작 방법은, 컨텐츠의 고유 정보를 워터마크 이미지에 포함하는 동작; 상기 워터마크 이미지를 상기 컨텐츠에 삽입하는 동작을 포함할 수 있다.

Description

컨텐츠 무결성 제어 방법 및 그 전자 장치{METHOD FOR CONTROLLING AN CONTENT INTEGRITY AND AN ELECTRONIC DEVICE}
본 개시는 컨텐츠 무결성을 제어하기 위한 방법 및 장치에 관한 것이다. 특히, 본 개시는 전자 장치에서 컨텐츠의 고유 정보를 포함하는 워터마크를 컨텐츠에 삽입하여 컨텐츠의 훼손 발생 시 워터마크의 표시 형태를 변경하기 위한 기술에 관한 것이다.
정보통신 기술 및 반도체 기술의 발전으로 각종 전자장치들이 다양한 멀티미디어 서비스를 제공하는 멀티미디어 장치로 발전하고 있다. 예를 들어, 휴대용 전자장치는 방송 서비스, 무선 인터넷 서비스, 카메라 서비스 또는 음악 재생 서비스와 같은 다양한 멀티미디어 서비스를 제공할 수 있다.
전자 장치를 통해 제공되는 컨텐츠는 최초 제공자의 의도와 다르게 제3자에 의해 컨텐츠의 내용이 수정되어 공유될 수 있다. 이때, 제3자가 악의적인 의도를 가지고 컨텐츠의 내용을 수정하여 공유할 수도 있다. 이에 따라, 원본 컨텐츠의 훼손 여부를 표시할 수 있는 방법이 필요하다.
이에 따라, 본 개시의 다양한 실시 예에서는 컨텐츠의 고유 정보를 워터마크 이미지에 포함하기 위한 방법 및 장치를 제공하고자 한다.
또한, 본 개시의 다양한 실시 예에서는 컨텐츠의 고유 정보를 암호화하여 워터마크 이미지에 포함하기 위한 방법 및 장치를 제공하고자 한다.
또한, 본 개시의 다양한 실시 예에서는 컨텐츠의 고유 정보를 포함하는 워터마크 이미지를 컨텐츠에 삽입하기 위한 방법 및 장치를 제공하고자 한다.
또한, 본 개시의 다양한 실시 예에서는 컨텐츠에서 워터마크 이미지를 검출하기 위한 방법 및 장치를 제공하고자 한다.
또한, 본 개시의 다양한 실시 예에서는 컨텐츠의 고유 정보와 워터마크 이미지에 포함된 원본 컨텐츠의 고유 정보를 비교하기 위한 방법 및 장치를 제공하고자 한다.
또한, 본 개시의 다양한 실시 예에서는 컨텐츠의 고유 정보와 워터마크 이미지에 포함된 원본 컨텐츠의 고유 정보가 동일하지 않은 경우, 워터마크 이미지의 표시 형태를 변경하기 위한 방법 및 장치를 제공하고자 한다.
또한, 본 개시의 다양한 실시 예에서는 워터마크 이미지의 표시 형태를 변경하는 경우, 워터마크 이미지의 크기를 변경하기 위한 방법 및 장치를 제공하고자 한다.
또한, 본 개시의 다양한 실시 예에서는 워터마크 이미지의 표시 형태를 변경하는 경우, 워터마크 이미지에 기 정의된 텍스트를 포함하여 표시하기 위한 방법 및 장치를 제공하고자 한다.
또한, 본 개시의 다양한 실시 예에서는 워터마크 이미지의 표시 형태를 변경하는 경우, 워터마크 이미지와 다른 이미지를 표시하기 위한 방법 및 장치를 제공하고자 한다.
또한, 본 개시의 다양한 실시 예에서는 워터마크 이미지의 표시 형태를 변경하는 경우, 워터마크 이미지의 표시를 제거하기 위한 방법 및 장치를 제공하고자 한다.
또한, 본 개시의 다양한 실시 예에서는 컨텐츠의 고유 정보와 워터마크 이미지에 포함된 원본 컨텐츠의 고유 정보가 동일하지 않은 경우, 워터마크 이미지의 표시와 별도로 기 정의된 텍스트를 표시하기 위한 방법 및 장치를 제공하고자 한다.
다양한 실시 예에 따르면, 전자 장치에서 컨텐츠 무결성을 제어하기 위한 방법은, 컨텐츠의 고유 정보를 워터마크 이미지에 포함하는 동작; 상기 워터마크 이미지를 상기 컨텐츠에 삽입하는 동작을 포함할 수 있다.
다양한 실시 예에 따르면, 전자 장치는, 적어도 하나의 프로세서; 적어도 하나의 메모리; 및 상기 메모리에 저장되며, 상기 적어도 하나의 프로세서에 의해 실행 가능하도록 구성되는 적어도 하나의 프로그램(program)을 포함하며, 상기 프로세서는, 컨텐츠의 고유 정보를 워터마크 이미지에 포함하고, 상기 워터마크 이미지를 상기 컨텐츠에 삽입할 수 있다.
상술한 바와 같이 전자 장치에서 컨텐츠의 고유 정보를 포함하는 워터마크를 컨텐츠에 삽입하고, 컨텐츠의 훼손 발생 시 워터마크의 표시 형태를 변경함으로써, 전자 장치 사용자는 원본 컨텐츠의 훼손 여부를 확인할 수 있다.
도 1은 다양한 실시 예에 따른 전자 장치에 대한 블록 구성을 도시하고 있다.
도 2는 다양한 실시 예에 따른 하드웨어의 블록 구성을 도시하고 있다.
도 3은 다양한 실시 예에 따른 프로그래밍 모듈의 블록 구성을 도시하고 있다.
도 4는 다양한 실시 예에 따른 전자 장치에서 컨텐츠의 고유 정보를 포함하는 워터마크를 컨텐츠에 삽입하기 위한 흐름도를 도시하고 있다.
도 5 및 도 6은 다양한 실시 예에 따른 전자 장치에서 문서의 고유 정보를 포함하는 워터마크를 문서에 삽입하기 위한 흐름도를 도시하고 있다.
도 7a 내지 도 7 b는 다양한 실시 예에 따른 전자 장치에서 문서의 고유 정보를 포함하는 워터마크를 문서에 삽입하기 위한 화면 구성을 도시하고 있다.
도 8은 다양한 실시 예에 따른 전자 장치에서 컨텐츠의 훼손 발생 시 워터마크의 표시 형태를 변경하기 위한 흐름도를 도시하고 있다.
도 9는 다양한 실시 예에 따른 전자 장치에서 문서의 훼손 발생 시 워터마크의 표시 형태를 변경하기 위한 흐름도를 도시하고 있다.
도 10a 내지 도 10e는 전자 장치에서 문서의 훼손 발생 시 워터마크의 표시 형태를 변경하기 위한 화면 구성을 도시하고 있다.
이하, 첨부된 도면을 참조하여 본 개시(present disclosure)를 설명한다. 본 개시는 특정 실시 예들이 도면에 예시되고 관련된 상세한 설명이 기재되어 있으나, 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있다. 따라서, 본 개시는 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 사상 및 기술 범위에 포함되는 모든 변경 또는 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조부호가 사용되었다.
본 개시에 따른 전자 장치는 스마트 폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 화상 전화기, 전자책 리더기(e-book reader), 데스크탑 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 전자 팔찌, 전자 목걸이, 전자 앱세서리(appcessory), 카메라(camera), 웨어러블 장치(wearable device), 전자 시계(electronic clock), 손목 시계(wrist watch), 스마트 가전(smart white appliance)(예: 냉장고, 에어컨, 청소기, 인공 지능 로봇, TV, DVD(digital video disk) 플레이어, 오디오, 오븐, 전자레인지, 세탁기, 공기 청정기, 전자 액자), 각종 의료기기(예: MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 초음파기), 네비게이션(navigation) 장치, GPS 수신기(global positioning system receiver), EDR(event data recorder), FDR(flight data recorder), 셋톱 박스(set-top box), TV 박스(예: 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 전자 사전(electronic dictionary), 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(electronic equipment for ship)(예: 선박용 항법 장치, 자이로 콤파스), 항공 전자기기(avionics), 보안 기기, 전자 의복, 전자 키, 캠코더(camcorder), 게임 콘솔(game consoles), HMD(head-mounted display), 평판표시장치(flat panel display device), 전자 앨범, 통신 기능을 포함한 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 입력장치(electronic signature receiving device) 또는 프로젝터(projector)를 포함하는 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 본 개시에 따른 전자 장치는 전술한 기기들에 한정되지 않음은 당업자에게 자명하다.
도 1은 다양한 실시 예에 따른 전자 장치에 대한 블록 구성을 도시하고 있다.
도 1을 참조하면, 전자 장치(100)는 버스(110), 프로세서(120), 메모리(130), 사용자 입력 모듈(140), 디스플레이 모듈(150), 또는 통신 모듈(160)을 포함할 수 있다.
버스(110)는 전자 장치(100)에 포함된 구성요소들(예: 버스(110), 프로세서(120), 메모리(130), 사용자 입력 모듈(140), 디스플레이 모듈(150), 또는 통신 모듈(160))을 서로 연결하고, 구성요소들 간의 통신(예: 제어 메시지)을 전달하는 회로일 수 있다.
프로세서(120)는 버스(110)를 통해 전자 장치(100)에 포함된 구성요소들로부터 명령을 수신하여, 수신된 명령을 해독하고, 해독된 명령에 따른 연산이나 데이터 처리를 수행할 수 있다.
메모리(130)는 프로세서(120) 또는 다른 구성요소들(예: 사용자 입력 모듈(140), 디스플레이 모듈(150), 통신 모듈(160))로부터 수신되거나 상기 프로세서(120) 또는 다른 구성요소들에 의해 생성된 명령 또는 데이터를 저장할 수 있다. 예를 들어, 메모리(130)는 적어도 하나의 이미지를 저장할 수 있다.
또한, 메모리(130)는 커널(131), 미들웨어(132), 어플리케이션 프로그래밍 인터페이스(API: application programming interface)(133) 또는 어플리케이션(134)을 포함하는 적어도 하나의 프로그래밍 모듈을 포함할 수 있다. 이때, 각각의 프로그래밍 모듈들은 소프트웨어, 펌웨어, 하드웨어 또는 이들 중 적어도 둘 이상의 조합으로 구성될 수 있다.
커널(131)은 나머지 다른 프로그래밍 모듈들(예: 미들웨어(132), API(133) 또는 어플리케이션(134))에 구현된 동작 또는 기능을 실행하는 데 사용되는 시스템 리소스들(예: 버스(110), 프로세서(120) 또는 메모리(130))을 제어 또는 관리할 수 있다. 또한, 커널(131)은 미들웨어(132), API(133) 또는 어플리케이션(134)에서 전자 장치(100)의 개별 구성요소에 접근하여 제어 또는 관리할 수 있는 인터페이스를 제공할 수 있다.
미들웨어(132)는 API(133) 또는 어플리케이션(134)이 커널(131)과 통신하여 데이터를 주고받을 수 있도록 중개 역할을 수행할 수 있다. 또한, 미들웨어(132)는 적어도 하나의 어플리케이션(134)으로부터 수신된 작업 요청들에 전자 장치(100)의 시스템 리소스(예: 버스(110), 프로세서(120) 또는 메모리(130))를 사용할 수 있는 우선 순위를 배정하는 방법을 이용하여 작업 요청에 대한 로드 밸런싱(load balancing)을 수행할 수 있다.
API(133)는 어플리케이션(134)이 커널(131) 또는 미들웨어(132)에서 제공하는 기능을 제어할 수 있는 인터페이스로, 파일 제어, 창 제어, 화상 처리 또는 문자 제어를 위한 적어도 하나의 인터페이스 또는 함수를 포함할 수 있다.
사용자 입력 모듈(140)은, 사용자로부터 명령 또는 데이터를 입력 받아 버스(110)를 통해 프로세서(120) 또는 메모리(130)에 전달할 수 있다.
디스플레이 모듈(150)은 사용자에게 화상, 영상 또는 데이터를 표시할 수 있다.
통신 모듈(160)은 전자 장치(100)와 다른 전자 장치(102, 104) 간의 통신을 연결할 수 있다. 이때, 통신 모듈(160)은 근거리 통신 프로토콜(예: Wi-Fi(wireless fidelity), BT(Bluetooth), NFC(near field communication) 또는 네트워크 통신(예: Internet, LAN(local area network), WAN(wire area network), telecommunication network, cellular network, satellite network 또는 POTS(plain old telephone service), 162)을 지원할 수 있다.
다른 전자 장치(102, 104) 각각은 전자 장치(100)와 동일한(예: 같은 타입) 장치이거나 또는 다른(예: 다른 타입) 장치일 수 있다.
도 2는 다양한 실시 예에 따른 하드웨어의 블록 구성을 도시하고 있다.
도 2를 참조하면, 하드웨어(200)는 하나 이상의 프로세서(210), SIM(subscriber identification module) 카드(214), 메모리(220), 통신 모듈(230), 센서 모듈(240), 사용자 입력 모듈(250), 디스플레이 모듈(260), 인터페이스(270), 오디오 코덱(280), 카메라 모듈(291), 전력관리 모듈(295), 배터리(296), 인디케이터(297) 또는 모터(298)를 포함할 수 있다. 여기서, 하드웨어(200)는 도 1에 도시된 전자 장치(100)일 수 있다.
프로세서(210)는 하나 이상의 어플리케이션 프로세서(AP: application processor)(211) 또는 하나 이상의 커뮤니케이션 프로세서(CP: communication processor)(213)를 포함할 수 있다. 여기서, 프로세서(210)는 도 1에 도시된 프로세서(120)일 수 있다.
도 2에서는 AP(211) 및 CP(213)가 프로세서(210) 내에 포함된 것으로 도시되었으나, AP(211)와 CP(213)는 서로 다른 IC 패키지들 내에 각각 포함될 수 있다. 또한, AP(211) 및 CP(213)는 하나의 IC 패키지 내에 포함될 수도 있다. 추가적으로, 프로세서(210)는 GPU(graphic processing unit)를 더 포함할 수도 있다.
AP(211)는 운영체제 또는 응용 프로그램을 구동하여 AP(211)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어하고, 멀티미디어 데이터를 포함한 각종 데이터 처리 및 연산을 수행할 수 있다. 여기서, AP(211)는 SoC(system on chip)로 구현될 수 있다.
CP(213)는 하드웨어(200)를 포함하는 전자 장치와 네트워크로 연결된 다른 전자 장치들 간의 통신에서 데이터 링크를 관리하고 통신 프로토콜을 변환하는 기능을 수행할 수 있다. 여기서, CP(213)는 SoC로 구현될 수 있다.
또한, CP(213)는 멀티미디어 제어 기능의 적어도 일부를 수행할 수 있다.
또한, CP(213)는 가입자 식별 모듈(예: SIM 카드(214))을 이용하여 통신 네트워크 내에서 단말의 구별 및 인증을 수행할 수 있다. 이때, CP(213)는 사용자에게 음성 통화, 영상 통화, 문자 메시지 또는 패킷 데이터(packet data)을 포함하는 서비스를 제공할 수 있다.
또한, CP(213)는 통신 모듈(230)의 데이터 송수신을 제어할 수 있다.
도 2에서는, CP(213), 전력관리 모듈(295) 또는 메모리(220)의 구성요소들이 AP(211)와 별개의 구성요소로 도시되어 있으나, AP(211)가 구성요소들의 일부(예: CP(213))를 포함하도록 구현될 수 있다.
AP(211) 또는 CP(213)는 각각에 연결된 비휘발성 메모리 또는 다른 구성요소 중 적어도 하나로부터 수신한 명령 또는 데이터를 휘발성 메모리에 로드(load)하여 처리할 수 있다. 또한, AP(211) 또는 CP(213)는 다른 구성요소 중 적어도 하나로부터 수신하거나 다른 구성요소 중 적어도 하나에 의해 생성된 데이터를 비휘발성 메모리에 저장(store)할 수 있다.
SIM 카드(214)는 가입자 식별 모듈을 구현한 카드일 수 있으며, 전자 장치의 특정 위치에 형성된 슬롯에 삽입될 수 있다. SIM 카드(214)는 고유한 식별 정보(예: ICCID(integrated circuit card identifier)) 또는 가입자 정보(예: IMSI(international mobile subscriber identity))를 포함할 수 있다.
메모리(220)는 내장 메모리(222) 또는 외장 메모리(224)를 포함할 수 있다. 여기서, 메모리(220)는 도 1에 도시된 메모리(130)일 수 있다.
내장 메모리(222)는 휘발성 메모리(예: DRAM(dynamic RAM), SRAM(static RAM), SDRAM(synchronous dynamic RAM)) 또는 비휘발성 메모리(non-volatile Memory)(예: OTPROM(one time programmable ROM), PROM(programmable ROM), EPROM(erasable and programmable ROM), EEPROM(electrically erasable and programmable ROM), mask ROM, flash ROM, NAND flash memory, NOR flash memory) 중 적어도 하나를 포함할 수 있다. 이때, 내장 메모리(222)는 SSD(Solid State Drive)의 형태를 취할 수도 있다.
외장 메모리(224)는 CF(compact flash), SD(secure digital), Micro-SD(micro secure digital), Mini-SD(mini secure digital), xD(extreme digital) 또는 memorystick 중 적어도 하나를 포함할 수 있다.
통신 모듈(230)은 무선 통신 모듈(231) 또는 RF 모듈(234)을 포함할 수 있다. 여기서, 통신 모듈(230)은 도 1에 도시된 통신 모듈(160)일 수 있다.
무선 통신 모듈(231)은 무선 주파수를 이용하여 무선 통신 기능을 제공할 수 있다. 예를 들어, 무선 통신 모듈(231)은 Wi-Fi(233), BT(bluetooth)(235), GPS(237) 또는 NFC(near field communication)(239)를 포함할 수 있다. 다른 예를 들어, 무선 통신 모듈(231)은 하드웨어(200)를 네트워크(예: Internet, LAN(local area network), WAN(wire area network), telecommunication network, cellular network, satellite network 또는 POTS(plain old telephone service))와 연결시키기 위한 네트워크 인터페이스(예: LAN card) 또는 모뎀을 포함할 수 있다.
RF 모듈(234)은 RF 신호 또는 호출된 전자 신호의 송수신을 포함하는 데이터의 송수신을 제어할 수 있다. 예를 들어, RF 모듈(234)은 트랜시버(transceiver), PAM(power amp module), 주파수 필터(frequency filter) 또는 LNA(low noise amplifier)을 포함할 수 있다. 또한, RF 모듈(234)은 무선통신에서 자유공간상의 전자파를 송수신하기 위한 부품(예: 도체 또는 도선)을 더 포함할 수 있다.
센서 모듈(240)은 제스처 센서(240A), 자이로 센서(240B), 기압 센서(240C), 마그네틱 센서(240D), 가속도 센서(240E), 그립 센서(240F), 근접 센서(240G), RGB(red, green, blue) 센서(240H), 생체 센서(240I), 온/습도 센서(240J), 조도 센서(240K) 또는 UV(ultra violet) 센서(240M) 중 적어도 하나를 포함할 수 있다. 또한, 센서 모듈(240)은 물리량을 계측하거나 전자 장치의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 예를 들어, 센서 모듈(240)은 후각 센서(E-nose sensor), EMG 센서(electromyography sensor), EEG 센서(electroencephalogram sensor), ECG 센서(electrocardiogram sensor) 또는 지문 센서를 포함할 수 있다. 또한, 센서 모듈(240)은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어회로를 더 포함할 수 있다.
사용자 입력 모듈(250)은 터치 패널(touch panel)(252), 펜 센서(pen sensor)(254), 키(key)(256) 또는 초음파 입력 장치(258)를 포함할 수 있다. 여기서, 사용자 입력 모듈(250)은 도 1에 도시된 사용자 입력 모듈(140)일수 있다.
터치 패널(252)은 정전식, 감압식, 적외선 방식 또는 초음파 방식 중 적어도 하나의 방식으로 터치 입력을 인식할 수 있다. 여기서, 터치 패널(252)은 컨트롤러를 더 포함할 수도 있다. 정전식의 경우, 직접 터치뿐만 아니라 근접 인식도 가능하다. 상기 터치 패널(252)은 택타일 레이어(tactile layer)를 더 포함할 수도 있다. 이때, 터치 패널(252)은 사용자에게 촉각 반응을 제공할 수 있다.
펜 센서(254)는 사용자의 터치 입력을 받는 것과 동일 또는 유사한 방법 또는 별도의 인식용 쉬트(sheet)를 이용하여 구현될 수 있다.
키(256)는 키패드 또는 터치 키를 포함할 수 있다.
초음파 입력 장치(258)는 초음파 신호를 발생하는 펜을 통해, 전자 장치에서 마이크(288)로 음파를 감지하여 데이터를 확인할 수 있는 장치로서, 무선 인식이 가능하다.
하드웨어(200)는 통신 모듈(230)을 이용하여 이와 연결된 외부 장치(예: 네트워크(102), 컴퓨터 또는 서버(164)로부터 사용자 입력을 수신할 수도 있다.
디스플레이 모듈(260)은 패널(262) 또는 홀로그램(264)을 포함할 수 있다. 여기서, 디스플레이 모듈(260)은 도 1에 도시된 디스플레이 모듈(150)일 수 있다.
패널(262)은 LCD(liquid-crystal display) 또는 AM-OLED(active-matrix organic light-emitting diode)일 수 있다. 또한, 패널(262)은 유연하게(flexible), 투명하게(transparent) 또는 착용할 수 있게(wearable) 구현될 수 있다. 여기서, 패널(262)은 터치 패널(252)과 하나의 모듈로 구성될 수도 있다.
홀로그램(264)은 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다.
추가적으로, 디스플레이 모듈(260)은 패널(262) 또는 홀로그램(264)을 제어하기 위한 제어회로를 더 포함할 수 있다.
인터페이스(270) HDMI(high-definition multimedia interface)(272), USB(universal serial bus)(274), 프로젝터(276), D-sub(D-subminiature)(278) SD(secure Digital)/MMC(multi-media card) 또는 IrDA(infrared data association)를 포함할 수 있다.
오디오 코덱(280)은 음성과 전기신호를 쌍방향으로 변환시킬 수 있다. 예를 들어, 오디오 코덱(280)은 스피커(282), 리시버(284), 이어폰(286) 또는 마이크(288)를 통해 입력 또는 출력되는 음성 정보를 변환시킬 수 있다.
카메라 모듈(291)은 화상 및 동영상을 촬영할 수 있다. 예를 들어, 카메라 모듈(291)은 하나 이상의 이미지 센서(예: 전면 렌즈 또는 후면 렌즈), ISP(image signal processor) 또는 플래쉬 LED(flash LED)를 포함할 수 있다.
전력관리 모듈(295)은 하드웨어(200)의 전력을 관리할 수 있다. 예를 들어, 전력관리 모듈(295)은 PMIC(power management integrated circuit), 충전 IC(charger integrated circuit) 또는 배터리 게이지(battery fuel gauge)를 포함할 수 있다. 여기서, PMIC는 집적회로 또는 SoC 반도체 내에 탑재될 수 있다.
전력관리 모듈(295)의 충전 방식은 유선과 무선으로 구분될 수 있다.
충전 IC는 배터리를 충전시킬 수 있으며, 충전기로부터의 과전압 또는 과전류 유입을 방지할 수 있다. 여기서, 충전 IC는 유선 충전 방식 또는 무선 충전 방식 중 적어도 하나를 위한 충전 IC를 포함할 수 있다. 여기서, 무선 충전 방식은 자기공명 방식, 자기유도 방식 또는 전자기파 방식이 있으며, 무선 충전을 위한 부가적인 회로(예: 코일 루프, 공진 회로, 정류기 회로)가 추가될 수 있다.
배터리 게이지는 배터리(296)의 잔량, 충전 중 전압, 전류 또는 온도를 측정할 수 있다.
배터리(296)는 전기를 생성하여 전원을 공급할 수 있다. 예를 들어, 배터리(296)는 충전식 전지(rechargeable battery)일 수 있다.
인디케이터(297)는 하드웨어(200) 또는 그 일부(예: AP(211))의 특정 상태(예: 부팅 상태, 메시지 상태 또는 충전 상태)를 표시할 수 있다.
모터(298)는 전기적 신호를 기계적 진동으로 변환할 수 있다.
MCU(299)는 센서 모듈(240)을 제어할 수 있다.
추가적으로, 하드웨어(200)는 모바일 TV 지원을 위한 처리 장치(예: GPU)를 더 포함할 수 있다. 예를 들어, 모바일 TV 지원을 위한 처리 장치는 DMB(digital multimedia broadcasting), DVB(digital video broadcasting) 또는 미디어플로우(media flow)의 규격에 따른 미디어 데이터를 처리할 수 있다.
본 개시에 따른 하드웨어의 구성요소들의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 본 개시에 따른 하드웨어는 구성요소 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 또한, 본 개시에 따른 하드웨어의 구성 요소들 중 일부가 결합되어 하나의 개체(entity)로 구성됨으로써, 결합되기 이전의 해당 구성 요소들의 기능을 동일하게 수행할 수 있다.
도 3은 다양한 실시 예에 따른 프로그래밍 모듈의 블록 구성을 도시하고 있다.
도 3을 참조하면, 프로그래밍 모듈(300)은 커널(310), 미들웨어(330), API(application programming interface)(360) 또는 어플리케이션(370)을 포함할 수 있다. 여기서, 프로그래밍 모듈(300)은 도 1에 도시된 전자 장치(100)(예: 메모리(130))에 포함(예: 저장)될 수 있다. 프로그래밍 모듈(300)의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어 또는 이들 중 적어도 둘 이상의 조합으로 구성될 수 있다. 프로그래밍 모듈(300)은 하드웨어(200)에 구현되어 전자 장치(100)에 관련된 자원을 제어하는 운영체제(OS: operation system) 또는 운영체제에서 구동되는 다양한 어플리케이션(370)을 포함할 수 있다. 예를 들어, 운영체제는 안드로이드(Android), iOS, 윈도우즈(Windows), 심비안(Symbian), 타이젠(Tizen) 또는 바다(Bada)를 포함할 수 있다.
커널(310)은 시스템 리소스 매니저(311) 또는 디바이스 드라이버(312)를 포함할 수 있다. 여기서, 커널(310)은 도 1에 도시된 커널(131)일 수 있다.
시스템 리소스 매니저(311)는 시스템 리소스의 제어, 할당 또는 회수를 수행할 수 있다. 예를 들어, 시스템 리소스 매니저(311)는 프로세스관리부(313), 메모리관리부(315) 또는 파일시스템관리부(317)를 포함할 수 있다.
디바이스 드라이버(312)는 디스플레이 드라이버(314), 카메라 드라이버(316), 블루투스 드라이버(318), 공유 메모리 드라이버(320), USB 드라이버(322), 키패드 드라이버(324), Wi-Fi 드라이버(326), 오디오 드라이버(328) 또는 IPC(inter-process communication) 드라이버를 포함할 수 있다.
미들웨어(330)는 어플리케이션(370)이 공통으로 필요로 하는 기능을 제공하기 위해 미리 구현해 놓은 복수의 모듈들을 포함할 수 있다. 여기서, 미들웨어(330)는 도 1에 도시된 미들웨어(132)일 수 있다. 또한, 미들웨어(330)는 어플리케이션(370)이 전자 장치 내부의 제한된 시스템 자원을 효율적으로 사용할 수 있도록 API(360)를 통해 기능을 제공할 수 있다. 예를 들어, 미들웨어(330)는 런타임 라이브러리(335), 어플리케이션 매니저(application manager)(341), 윈도우 매니저(window manager)(342), 멀티미디어 매니저(multimedia manager)(343), 리소스 매니저(resource manager)(344), 파워 매니저(power manager)(345), 데이터베이스 매니저(database manager)(346), 패키지 매니저(347), 연결 매니저(connectivity manager)(348), 통지 매니저(notification manager)(349), 위치 매니저(location manager)(350), 그래픽 매니저(graphic manager)(351) 또는 보안 매니저(security manager)(352) 중 적어도 하나를 포함할 수 있다.
런타임 라이브러리(335)는 어플리케이션(370)이 실행되는 동안에 프로그래밍 언어를 통해 새로운 기능을 추가하기 위해 컴파일러가 사용하는 라이브러리 모듈을 포함할 수 있다. 예를 들어, 런타임 라이브러리(335)는 입출력, 메모리 관리 또는 산술 함수에 대한 기능을 수행할 수 있다.
어플리케이션 매니저(341)는 어플리케이션(370) 중 적어도 하나의 어플리케이션의 생명주기(life cycle)를 관리할 수 있다.
윈도우 매니저(342)는 화면에서 사용하는 GUI 자원을 관리할 수 있다.
멀티미디어 매니저(343)는 다양한 미디어 파일들의 재생에 필요한 포맷을 파악하고, 해당 포맷에 맞는 코덱(codec)을 이용하여 미디어 파일의 인코딩(encoding) 또는 디코딩(decoding)을 수행할 수 있다.
리소스 매니저(344)는 어플리케이션(370) 중 적어도 어느 하나의 어플리케이션의 소스 코드, 메모리 또는 저장 공간의 자원을 관리할 수 있다.
파워 매니저(345)는 바이오스(BIOS: basic input/output system)와 함께 동작하여 배터리(battery) 또는 전원을 관리하고, 동작에 필요한 전력 정보를 제공할 수 있다.
데이터베이스 매니저(346)는 어플리케이션(370) 중 적어도 하나의 어플리케이션에서 사용할 데이터베이스를 생성, 검색 또는 변경할 수 있도록 관리할 수 있다. 예를 들어, 데이터베이스 매니저(346)는 메모리(130)에 저장된 유해 사이트 정보(URL 또는 IP)를 관리할 수 있다.
패키지 매니저(347)는 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 업데이트를 관리할 수 있다.
연결 매니저(348)는 Wi-Fi 또는 블루투스의 무선 연결을 관리할 수 있다.
통지 매니저(349)는 도착 메시지, 약속, 근접성 알림의 사건(event)을 사용자에게 방해되지 않는 방식으로 표시 또는 통지할 수 있다.
위치 매니저(350)는 전자 장치의 위치 정보를 관리할 수 있다.
그래픽 매니저(351)는 사용자에게 제공될 그래픽 효과 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다.
보안 매니저(352)는 시스템 보안 또는 사용자 인증에 필요한 제반 보안 기능을 제공할 수 있다.
추가적으로, 전자 장치(100)가 전화 기능을 구비한 경우, 미들웨어(330)는 전자 장치의 음성 또는 영상 통화 기능을 관리하기 위한 통화 매니저(telephony manager)를 더 포함할 수 있다.
미들웨어(330)는 내부 구성요소 모듈들의 다양한 기능 조합을 통해 새로운 미들웨어 모듈을 생성하여 사용할 수 있다. 미들웨어(330)는 차별화된 기능을 제공하기 위해 운영체제의 종류별로 특화된 모듈을 제공할 수 있다. 또한, 미들웨어(330)는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다. 따라서, 본 개시의 다양한 실시 예에 기재된 구성요소를 일부 생략하거나 다른 구성요소를 더 구비하거나 또는 유사한 기능을 수행하는 다른 명칭을 갖는 구성요소로 대체할 수 있다.
API(360)는 API 프로그래밍 함수들의 집합으로, 운영체제에 따라 다른 구성으로 제공될 수 있다. 여기서, API(360)는 도 1에 도시된 API(133)일 수 있다. 예를 들어, 안드로이드 또는 iOS의 경우, 플랫폼별로 하나의 API 셋(set)을 제공할 수 있으며, 타이젠(Tizen)의 경우, 두 개 이상의 API 셋을 제공할 수 있다.
어플리케이션(370)은 프리로드 어플리케이션(preloaded Application) 또는 제 삼자 어플리케이션(third party application)을 포함할 수 있다. 여기서, 어플리케이션(370)은 도 1에 도시된 어플리케이션(134)일 수 있다.
프로그래밍 모듈(300)의 적어도 컴퓨터로 읽을 수 있는 저장매체(computer-readable storage media)에 저장된 명령어로 구현될 수 있다. 하나 이상의 프로세서(210)에 의해 명령어가 실행될 경우, 하나 이상의 프로세서가 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 읽을 수 있는 저장매체는 도 2에 도시된 메모리(260)일 수 있다. 또한, 프로그래밍 모듈(300)의 일부는 프로세서(210)에 의해 구현(implement)(예: 실행)될 수 있다. 프로그래밍 모듈(300)의 일부는 하나 이상의 기능을 수행하기 위한 모듈, 프로그램, 루틴, 명령어 세트(sets of instructions) 또는 프로세스를 포함할 수 있다.
추가적으로, 본 개시의 다양한 실시 예를 설명하기 위해 전자 장치는 워터마크 생성 모듈, 워터마크 검출 모듈 또는 컨텐츠 분석 모듈을 더 포함할 수 있다. 이때, 워터마크 생성 모듈, 워터마크 검출 모듈 또는 컨텐츠 분석 모듈은 어플리케이션(134, 370) 또는 미들웨어(132, 330)에 존재할 수 있다. 예를 들어, 컨텐츠 제공 중 워터마크 생성 이벤트가 발생한 경우, 워터마크 생성 모듈은 컨텐츠의 고유 정보를 워터마크 이미지에 포함하도록 제어할 수 있다. 다른 예를 들어, 컨텐츠 제공 이벤트가 발생한 경우, 워터마크 검출 모듈은 컨텐츠에 워터마크 이미지가 포함되어 있는지 검출할 수 있다. 컨텐츠에 워터마크 이미지가 포함된 경우, 컨텐츠 분석 모듈은 컨텐츠의 고유 정보와 워터마크 이미지에 포함된 원본 컨텐츠의 고유 정보를 비교하여 컨텐츠의 훼손 여부를 확인할 수 있다.
본 개시에 따른 프로그래밍 모듈(300)의 구성요소들의 명칭은 운영체제의 종류에 따라서 달라질 수 있다. 또한, 본 개시에 따른 프로그래밍 모듈은 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 추가적인 다른 구성요소를 더 포함할 수 있다.
도 4는 다양한 실시 예에 따른 전자 장치에서 컨텐츠의 고유 정보를 포함하는 워터마크를 컨텐츠에 삽입하기 위한 흐름도를 도시하고 있다.
도 4를 참조하면, 401동작에서 전자 장치는 컨텐츠의 고유 정보를 워터마크 이미지에 포함할 수 있다. 여기서, 컨텐츠는 문서, 이미지 또는 동영상 또는 이들의 조합일 수 있다. 예를 들어, 컨텐츠 중 문서를 예를 들면, 전자 장치는 문서의 고유 정보를 워터마크 이미지에 포함할 수 있다. 여기서, 문서의 고유 정보는 문서의 용량, 만든 날짜, 수정한 날짜, 글자의 개수, 자음의 개수, 모음의 개수, 숫자의 개수, 알파벳의 개수, 기호의 개수 또는 이미지 개수 중 적어도 하나 또는 이들의 조합일 수 있다. 이때, 전자 장치는 문서의 고유 정보를 암호화하여 이미지에 포함할 수도 있다.
이후, 403동작에서 전자 장치는 워터마크 이미지를 컨텐츠에 삽입할 수 있다. 예를 들어, 도 7b에 도시된 바와 같이 전자 장치는 메모(701) 어플리케이션의 내용(703)에 문서의 고유 정보를 포함하는 워터마크 이미지(711)를 삽입할 수 있다. 이때, 전자 장치는 메모리에 저장된 적어도 하나의 이미지 중 사용자의 선택에 의해 어느 하나의 이미지를 워터마크 이미지로 결정할 수 있다. 또한, 전자 장치는 카메라를 구동하여 촬영된 이미지를 워터마크 이미지로 결정할 수도 있다. 또한, 전자 장치는 사용자에 의해 입력되는 사인(signature)을 워터마크 이미지로 결정할 수도 있다.
이후, 전자 장치는 본 알고리즘을 종료할 수 있다.
도 5 및 도 6은 다양한 실시 예에 따른 전자 장치에서 문서의 고유 정보를 포함하는 워터마크를 문서에 삽입하기 위한 흐름도를 도시하고 있다.
도 5를 참조하면, 501동작에서 전자 장치는 문서 편집을 수행할 수 있다. 예를 들어, 도 7a를 참조하면 전자 장치는 메모(701) 어플리케이션을 실행하여 내용(703)을 입력할 수 있는 편집 모드(edit mode)를 제공할 수 있다.
이후, 503동작에서 워터마크 생성 이벤트가 발생하는지 확인할 수 있다. 예를 들어, 전자 장치는 사용자의 조작에 의해 도 7a에 도시된 메모(701) 어플리케이션의 내용(703)에 대한 워터마크를 생성할 것인지 확인할 수 있다. 만일, 워터마크 생성 이벤트가 발생하지 않은 경우, 전자 장치는 메모(701) 어플리케이션에서 편집 모드의 제공을 유지하거나 또는 본 알고리즘을 종료할 수 있다.
한편, 워터 마크 생성 이벤트가 발생한 경우, 505동작에서 전자 장치는 문서의 고유 정보를 워터마크 이미지에 포함할 수 있다. 여기서, 문서의 고유 정보는 문서의 용량, 만든 날짜, 수정한 날짜, 글자의 개수, 자음의 개수, 모음의 개수, 숫자의 개수, 알파벳의 개수, 기호의 개수 또는 이미지 개수 중 적어도 하나 또는 이들의 조합일 수 있다. 이때, 전자 장치는 문서의 고유 정보를 암호화하여 이미지에 포함할 수도 있다. 이때, 전자 장치는 워터마크 이미지에 워터마크 태그(Tag)를 포함하여 워터마크를 포함하는 이미지임을 표시할 수 있다.
이후, 507동작에서 전자 장치는 워터마크 이미지를 문서에 삽입할 수 있다. 예를 들어, 도 7b에 도시된 바와 같이 전자 장치는 메모(701) 어플리케이션의 내용(703)에 문서의 고유 정보를 포함하는 워터마크 이미지(711)를 삽입할 수 있다.
이후, 전자 장치는 본 알고리즘을 종료할 수 있다.
도 6을 참조하면, 601동작에서 전자 장치는 문서 편집을 수행할 수 있다. 예를 들어, 도 7a를 참조하면 전자 장치는 메모(701) 어플리케이션을 실행하여 내용(703)을 입력할 수 있는 편집 모드(edit mode)를 제공할 수 있다.
이후, 603동작에서 워터마크 생성 이벤트가 발생하는지 확인할 수 있다. 예를 들어, 전자 장치는 사용자의 조작에 의해 도 7a에 도시된 메모(701) 어플리케이션의 내용(703)에 대한 워터마크를 생성할 것인지 확인할 수 있다. 만일, 워터마크 생성 이벤트가 발생하지 않은 경우, 전자 장치는 메모(701) 어플리케이션에서 편집 모드의 제공을 유지하거나 또는 본 알고리즘을 종료할 수 있다.
한편, 워터 마크 생성 이벤트가 발생한 경우, 605동작에서 전자 장치는 워터마크로 사용될 이미지를 결정할 수 있다. 예를 들어, 전자 장치는 메모리에 저장된 적어도 하나의 이미지 중 사용자의 선택에 의해 어느 하나의 이미지를 워터마크 이미지로 결정할 수 있다. 다른 예를 들어, 전자 장치는 카메라를 구동하여 촬영된 이미지를 워터마크 이미지로 결정할 수도 있다. 또 다른 예를 들어, 전자 장치는 사용자에 의해 입력되는 사인(signature)을 워터마크 이미지로 결정할 수도 있다.
이후, 607동작에서 전자 장치는 문서의 고유 정보를 워터마크 이미지에 포함할 수 있다. 여기서, 문서의 고유 정보는 문서의 용량, 만든 날짜, 수정한 날짜, 글자의 개수, 자음의 개수, 모음의 개수, 숫자의 개수, 알파벳의 개수, 기호의 개수 또는 이미지 개수 중 적어도 하나 또는 이들의 조합일 수 있다. 이때, 전자 장치는 문서의 고유 정보를 암호화하여 이미지에 포함할 수도 있다. 이때, 전자 장치는 워터마크 이미지에 워터마크 태그(Tag)를 포함하여 워터마크를 포함하는 이미지임을 표시할 수 있다.
이후, 609동작에서 전자 장치는 워터마크 이미지를 문서에 삽입할 수 있다. 예를 들어, 컨텐츠 중 문서를 예를 들면, 도 7b에 도시된 바와 같이 전자 장치는 메모(701) 어플리케이션의 내용(703)에 문서의 고유 정보를 포함하는 워터마크 이미지(711)를 삽입할 수 있다.
이후, 전자 장치는 본 알고리즘을 종료할 수 있다.
도 8은 다양한 실시 예에 따른 전자 장치에서 컨텐츠의 훼손 발생 시 워터마크의 표시 형태를 변경하기 위한 흐름도를 도시하고 있다.
도 8을 참조하면 801동작에서 전자 장치는 컨텐츠에서 워터마크 이미지를 검출할 수 있다. 여기서, 컨텐츠는 문서, 이미지 또는 동영상 또는 이들의 조합일 수 있다. 예를 들어, 컨텐츠 중 문서를 예를 들면, 전자 장치는 도 10a 내지 도 10e에 도시된 메모(1003)에 포함된 이미지들 중 워터마크 태그를 포함하는 이미지를 검출할 수 있다.
이후, 803동작에서 전자 장치는 컨텐츠의 훼손 여부를 판단할 수 있다. 예를 들어, 전자 장치는 도 10a 내지 도 10e에 도시된 메모(1003)에 대한 고유 정보와 워터마크 이미지에 포함된 원본 메모의 고유 정보를 비교하여 훼손 여부를 판단할 수 있다. 이때, 원본 메모는 도 7b에 도시된 메모임을 가정하여 설명하도록 한다. 여기서, 문서의 고유 정보는 문서의 용량, 만든 날짜, 수정한 날짜, 글자의 개수, 자음의 개수, 모음의 개수, 숫자의 개수, 알파벳의 개수, 기호의 개수 또는 이미지 개수 중 적어도 하나 또는 이들의 조합일 수 있다.
이후, 805동작에서 전자 장치는 컨텐츠 훼손 시 워터마크 이미지의 표시 형태를 변경할 수 있다. 만일, 도 7b에 도시된 원본 메모(703)의 고유 정보와 도 10a 내지 도 10e에 도시된 메모(1003)의 고유 정보가 다른 경우, 전자 장치는 문서가 훼손된 것으로 인식할 수 있다. 예를 들어, 도 7b에 도시된 원본 메모(703)의 일부분(705)이 도 10a 내지 도 10e에 도시된 메모(1003)의 일부분(1005)으로 변경된 경우, 전자 장치는 원본 메모(703)에 포함된 숫자의 개수가 도 10a 내지 도 10e에 도시된 메모(1003)에 포함된 숫자의 개수가 서로 다르다는 것을 인식할 수 있다. 또한, 메모에 포함된 숫자의 개수가 달라짐에 따라 전자 장치는 메모의 용량이 서로 다르다는 것을 인식할 수도 있다. 이때, 도 10a에 도시된 바와 같이 전자 장치는 도 7b에 도시된 원본 워터 마크(711)의 크기를 변경하여 표시할 수 있다(1007). 또한, 도 10b에 도시된 바와 같이 전자 장치는 도 7b에 도시된 원본 워터 마크(711)에 기 정의된 텍스트를 포함하여 표시할 수도 있다(1011). 또한, 도 10c에 도시된 바와 같이 전자 장치는 도 7b에 도시된 원본 워터 마크(711)와 다른 이미지를 표시할 수도 있다(1021). 또한, 도 10d에 도시된 바와 같이 전자 장치는 도 7b에 도시된 원본 워터 마크(711)를 제거할 수도 있다. 추가적으로, 도 10e에 도시된 바와 같이 전자 장치는 도 7b에 도시된 원본 워터 마크(711)와 별도로 기 정의된 텍스트를 표시할 수도 있다(1033).
이후, 전자 장치는 본 알고리즘을 종료할 수 있다.
도 9를 참조하면 901동작에서 문서 표시 이벤트가 발생하는지 확인할 수 있다. 예를 들어, 전자 장치는 도 10a 내지 도 10e에 도시된 바와 같이 메모(1001) 어플리케이션을 실행하여 메모리에 저장된 어느 하나의 메모에 대한 표시 이벤트가 발생하는지 확인할 수 있다. 만일, 문서 표시 이벤트가 발생하지 않은 경우, 전자 장치는 본 알고리즘을 종료할 수 있다.
한편, 문서 표시 이벤트가 발생한 경우, 전자 장치는 903동작에서 문서에서 워터마크 이미지를 검출할 수 있다. 예를 들어, 전자 장치는 도 10a 내지 도 10e에 도시된 메모 내용(1003)에 포함된 이미지들 중 워터마크 태그를 포함하는 이미지를 검출할 수 있다.
이후, 전자 장치는 905동작에서 워터마크 이미지에 포함된 원본 문서의 고유 정보를 추출할 수 있다. 예를 들어, 전자 장치는 도 10a 내지 도 10e에 도시된 메모 내용(1003)에서 워터마크에 포힘된 원본 문서의 고유 정보를 추출할 수 있다. 여기서, 문서의 고유 정보는 문서의 용량, 만든 날짜, 수정한 날짜, 글자의 개수, 자음의 개수, 모음의 개수, 숫자의 개수, 알파벳의 개수, 기호의 개수 또는 이미지 개수 중 적어도 하나 또는 이들의 조합일 수 있다.
이후, 전자 장치는 907동작에서 문서의 고유 정보와 원본 문서의 고유 정보를 비교할 수 있다. 예를 들어, 전자 장치는 도 10a 내지 도 10e에 도시된 메모(1003)에 대한 고유 정보와 워터마크 이미지에 포함된 원본 메모의 고유 정보를 비교할 수 있다. 이때, 원본 메모는 도 7b에 도시된 메모임을 가정하여 설명하도록 한다.
이후, 전자 장치는 909동작에서 문서 훼손 시 워터마크 이미지의 표시형태를 변경할 수 있다. 만일, 도 7b에 도시된 원본 메모(703)의 고유 정보와 도 10a 내지 도 10e에 도시된 메모(1003)의 고유 정보가 다른 경우, 전자 장치는 문서가 훼손된 것으로 인식할 수 있다. 예를 들어, 도 7b에 도시된 원본 메모(703)의 일부분(705)이 도 10a 내지 도 10e에 도시된 메모(1003)의 일부분(1005)으로 변경된 경우, 전자 장치는 원본 메모(703)에 포함된 숫자의 개수가 도 10a 내지 도 10e에 도시된 메모(1003)에 포함된 숫자의 개수가 서로 다르다는 것을 인식할 수 있다. 또한, 메모에 포함된 숫자의 개수가 달라짐에 따라 전자 장치는 메모의 용량이 서로 다르다는 것을 인식할 수도 있다. 이때, 도 10a에 도시된 바와 같이 전자 장치는 도 7b에 도시된 원본 워터 마크(711)의 크기를 변경하여 표시할 수 있다(1007). 또한, 도 10b에 도시된 바와 같이 전자 장치는 도 7b에 도시된 원본 워터 마크(711)에 기 정의된 텍스트를 포함하여 표시할 수도 있다(1011). 또한, 도 10c에 도시된 바와 같이 전자 장치는 도 7b에 도시된 원본 워터 마크(711)와 다른 이미지를 표시할 수도 있다(1021). 또한, 도 10d에 도시된 바와 같이 전자 장치는 도 7b에 도시된 원본 워터 마크(711)를 제거할 수도 있다. 추가적으로, 도 10e에 도시된 바와 같이 전자 장치는 도 7b에 도시된 원본 워터 마크(711)와 별도로 기 정의된 텍스트를 표시할 수도 있다(1033).
이후, 전자 장치는 본 알고리즘을 종료할 수 있다.
한편 본 개시의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 개시의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능하다. 그러므로 본 개시의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 할 수 있다.

Claims (20)

  1. 전자 장치의 동작 방법에 있어서,
    제1 고유 정보를 포함하는 원본 컨텐츠를 생성하는 동작;
    상기 제1 고유 정보를 포함하는 워터마크 이미지를 생성하는 동작;
    상기 워터마크 이미지를 상기 원본 컨텐츠에 삽입하는 동작;
    상기 원본 컨텐츠로부터 수정된 컨텐츠의 제2 고유 정보와 상기 제1 고유 정보가 상이한 경우, 상기 워터마크 이미지의 형태를 변경하는 동작; 및
    상기 변경된 워터마크 이미지를 상기 수정된 컨텐츠에 표시하는 동작을 포함하는 방법.
  2. 제1항에 있어서,
    상기 원본 컨텐츠 및 상기 수정된 컨텐츠 중 적어도 하나는 문서, 이미지 또는 동영상 또는 이들의 조합을 포함하는 방법.
  3. 제1항에 있어서,
    상기 원본 컨텐츠 및 상기 수정된 컨텐츠 중 적어도 하나가 문서인 경우, 상기 고유 정보는 문서의 용량, 만든 날짜, 수정한 날짜, 글자의 개수, 자음의 개수, 모음의 개수, 숫자의 개수, 알파벳의 개수, 기호의 개수 또는 이미지 개수 또는 이들의 조합을 포함하는 방법.
  4. 제1항에 있어서,
    상기 제1 고유 정보를 포함하는 워터마크 이미지를 생성하는 동작은,
    상기 제1 고유 정보를 암호화하여 암호화된 제1 고유 정보를 포함하는 워터마크 이미지를 생성하는 방법.
  5. 전자 장치의 동작 방법에 있어서,
    컨텐츠에서 워터마크 이미지를 검출하는 동작;
    상기 워터마크 이미지에 포함된 원본 컨텐츠의 제 1 고유 정보를 추출하는 동작;
    상기 컨텐츠의 제2 고유 정보와 상기 제1 고유 정보가 상이한 경우, 상기 워터마크 이미지의 형태를 변경하는 동작; 및
    상기 변경된 워터마크 이미지를 상기 컨텐츠에 표시하는 동작을 포함하는 방법.
  6. 제5항에 있어서,
    상기 워터마크 이미지의 형태를 변경하는 동작은,
    상기 워터마크 이미지의 크기를 변경하는 동작을 포함하는 방법.
  7. 제5항에 있어서,
    상기 워터마크 이미지의 형태를 변경하는 동작은,
    상기 워터마크 이미지에 기 정의된 텍스트를 더 포함하여 변경하는 동작을 포함하는 방법.
  8. 제5항에 있어서,
    상기 워터마크 이미지의 형태를 변경하는 동작은,
    상기 워터마크 이미지를 다른 이미지로 변경하는 동작을 포함하는 방법.
  9. 제5항에 있어서,
    상기 워터마크 이미지의 형태를 변경하는 동작은,
    상기 워터마크 이미지의 표시를 제거하는 동작을 포함하는 방법.
  10. 제5항에 있어서,
    상기 컨텐츠의 제2 고유 정보와 상기 제1 고유 정보가 상이한 경우, 상기 워터마크 이미지의 표시와 별도로 기 정의된 텍스트를 표시하는 동작을 더 포함하는 방법.

  11. 전자 장치에 있어서,
    적어도 하나의 프로세서;
    적어도 하나의 메모리; 및
    상기 메모리에 저장되며, 상기 적어도 하나의 프로세서에 의해 실행 가능하도록 구성되는 적어도 하나의 프로그램(program)을 포함하며,
    상기 프로세서는,
    제1 고유 정보를 포함하는 원본 컨텐츠를 생성하고,
    상기 제1 고유 정보를 포함하는 워터마크 이미지를 생성하며,
    상기 워터마크 이미지를 상기 원본 컨텐츠에 삽입하고,
    상기 원본 컨텐츠로부터 수정된 컨텐츠의 제2 고유 정보와 상기 제1 고유 정보가 상이한 경우, 상기 워터마크 이미지의 형태를 변경하며,
    상기 변경된 워터마크 이미지를 상기 수정된 컨텐츠에 표시하는 장치.
  12. 제11항에 있어서,
    상기 원본 컨텐츠 및 상기 수정된 컨텐츠 중 적어도 하나는 문서, 이미지 또는 동영상 또는 이들의 조합을 포함하는 장치.
  13. 제11항에 있어서,
    상기 원본 컨텐츠 및 상기 수정된 컨텐츠 중 적어도 하나가 문서인 경우, 상기 고유 정보는 문서의 용량, 만든 날짜, 수정한 날짜, 글자의 개수, 자음의 개수, 모음의 개수, 숫자의 개수, 알파벳의 개수, 기호의 개수 또는 이미지 개수 또는 이들의 조합을 포함하는 장치.
  14. 제11항에 있어서,
    상기 프로세서는,
    상기 제1 고유 정보를 암호화하여 암호화된 제1 고유 정보를 포함하는 워터마크 이미지를 생성하는 장치.
  15. 전자 장치에 있어서,
    적어도 하나의 프로세서;
    적어도 하나의 메모리; 및
    상기 메모리에 저장되며, 상기 적어도 하나의 프로세서에 의해 실행 가능하도록 구성되는 적어도 하나의 프로그램(program)을 포함하며,
    상기 프로세서는,
    컨텐츠에서 워터마크 이미지를 검출하고,
    상기 워터마크 이미지에 포함된 원본 컨텐츠의 제 1 고유 정보를 추출하며,
    상기 컨텐츠의 제2 고유 정보와 상기 제1 고유 정보가 상이한 경우, 상기 워터마크 이미지의 형태를 변경하고,
    상기 변경된 워터마크 이미지를 상기 컨텐츠에 표시하는 장치.
  16. 제15항에 있어서,
    상기 프로세서는,
    상기 워터마크 이미지의 형태를 변경하는 경우, 상기 워터마크 이미지의 크기를 변경하는 장치.
  17. 제15항에 있어서,
    상기 프로세서는,
    상기 워터마크 이미지의 형태를 변경하는 경우, 상기 워터마크 이미지에 기 정의된 텍스트를 더 포함하여 변경하는 장치.
  18. 제15항에 있어서,
    상기 프로세서는,
    상기 워터마크 이미지의 형태를 변경하는 경우, 상기 워터마크 이미지를 다른 이미지로 변경하는 장치.
  19. 제15항에 있어서,
    상기 프로세서는,
    상기 워터마크 이미지의 형태를 변경하는 경우, 상기 워터마크 이미지의 표시를 제거하는 장치.
  20. 제15항에 있어서,
    상기 프로세서는,
    상기 컨텐츠의 제2 고유 정보와 상기 제1 고유 정보가 상이한 경우, 상기 워터마크 이미지의 표시와 별도로 기 정의된 텍스트를 표시하는 장치.
KR1020130097154A 2013-08-16 2013-08-16 컨텐츠 무결성 제어 방법 및 그 전자 장치 KR102137686B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020130097154A KR102137686B1 (ko) 2013-08-16 2013-08-16 컨텐츠 무결성 제어 방법 및 그 전자 장치
US14/461,244 US9729815B2 (en) 2013-08-16 2014-08-15 Method and electronic device for controlling content integrity using numerical data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130097154A KR102137686B1 (ko) 2013-08-16 2013-08-16 컨텐츠 무결성 제어 방법 및 그 전자 장치

Publications (2)

Publication Number Publication Date
KR20150019813A KR20150019813A (ko) 2015-02-25
KR102137686B1 true KR102137686B1 (ko) 2020-07-24

Family

ID=52466877

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130097154A KR102137686B1 (ko) 2013-08-16 2013-08-16 컨텐츠 무결성 제어 방법 및 그 전자 장치

Country Status (2)

Country Link
US (1) US9729815B2 (ko)
KR (1) KR102137686B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102137686B1 (ko) * 2013-08-16 2020-07-24 삼성전자주식회사 컨텐츠 무결성 제어 방법 및 그 전자 장치
CN105657576A (zh) * 2015-04-30 2016-06-08 宇龙计算机通信科技(深圳)有限公司 一种水印嵌入方法和装置
CN106325723B (zh) * 2015-06-19 2019-09-20 北京智谷睿拓技术服务有限公司 信息处理方法和设备
CN106658021B (zh) * 2016-11-16 2019-05-14 佛山科学技术学院 一种具有两种水印mpeg视频的嵌入与检测方法
CN106658022B (zh) * 2016-11-16 2019-05-24 佛山科学技术学院 一种基于mpeg视频压缩域的完整性水印嵌入与检测方法
CN112927121B (zh) * 2020-12-09 2022-06-14 广州市玄武无线科技股份有限公司 一种动态展示水印图像的方法及***

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040098593A1 (en) 2002-08-28 2004-05-20 Hirofumi Muratani Digital watermark embedding apparatus and method, and digital watermark analysis apparatus, method and program
US20070064973A1 (en) 2005-09-13 2007-03-22 Canon Kabushiki Kaisha Adaptive mark placement

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6424725B1 (en) * 1996-05-16 2002-07-23 Digimarc Corporation Determining transformations of media signals with embedded code signals
US7253917B2 (en) * 2001-06-11 2007-08-07 Canon Kabushiki Kaisha Image processing apparatus and its control method, computer program, and storage medium
US7392394B2 (en) * 2001-12-13 2008-06-24 Digimarc Corporation Digital watermarking with variable orientation and protocols
US7570641B2 (en) * 2005-08-23 2009-08-04 Macrovision Corporation Techniques for watermarking and distributing content
US7986441B2 (en) 2007-04-04 2011-07-26 Wong Technologies L.L.C. Embedding watermark into halftone image with low distortion using parity values for overlapping groups of candidate sites
KR100936124B1 (ko) * 2008-01-16 2010-01-12 주식회사 마크애니 워터마크를 포함하는 멀티미디어 콘텐츠의 실시간 제공방법 및 장치
KR101035867B1 (ko) * 2008-11-19 2011-05-19 주식회사 마크애니 워터마크를 이용한 사용자 단말기에서의 콘텐츠 필터링 방법 및 시스템
KR101223427B1 (ko) * 2010-05-18 2013-01-25 주식회사 마크애니 내부 문서 배포보완 장치 및 방법
KR20130020025A (ko) 2011-08-18 2013-02-27 주식회사 포스트디 콘텐츠 파일에 대한 정책 실행 방법 및 정책 관리 방법
EP2562748A1 (en) 2011-08-23 2013-02-27 Thomson Licensing Method and apparatus for frequency domain watermark processing a multi-channel audio signal in real-time
KR102137686B1 (ko) * 2013-08-16 2020-07-24 삼성전자주식회사 컨텐츠 무결성 제어 방법 및 그 전자 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040098593A1 (en) 2002-08-28 2004-05-20 Hirofumi Muratani Digital watermark embedding apparatus and method, and digital watermark analysis apparatus, method and program
US20070064973A1 (en) 2005-09-13 2007-03-22 Canon Kabushiki Kaisha Adaptive mark placement

Also Published As

Publication number Publication date
US20150049901A1 (en) 2015-02-19
US9729815B2 (en) 2017-08-08
KR20150019813A (ko) 2015-02-25

Similar Documents

Publication Publication Date Title
KR102147088B1 (ko) 전자장치에서 수신된 정보를 사용자에게 제공하기 위한 방법 및 장치
US9602286B2 (en) Electronic device and method for extracting encrypted message
KR102122476B1 (ko) 화면의 회전을 컨트롤할 수 있는 전자 장치 및 방법
EP3160150A1 (en) Electronic device and method for executing function using speech recognition thereof
US10402065B2 (en) Method and apparatus for operating a virtual keyboard
US20150128068A1 (en) Method for operating message application and electronic device implementing the same
KR20150054413A (ko) 시선 데이터에 따라 컨텐츠의 위치를 결정하는 전자 장치 및 방법
KR102137686B1 (ko) 컨텐츠 무결성 제어 방법 및 그 전자 장치
KR102157858B1 (ko) 전력 소모를 줄일 수 있는 전자 장치 및 방법
KR102206053B1 (ko) 입력 도구에 따라 입력 모드를 변경하는 전자 장치 및 방법
US9380463B2 (en) Method for displaying lock screen and electronic device thereof
KR102109883B1 (ko) 컨텐츠 전송 방법 및 전자 장치
KR20150066876A (ko) 사용자 인터페이스 제어 방법 및 그 전자 장치
US20150063778A1 (en) Method for processing an image and electronic device thereof
KR102157338B1 (ko) 복수의 센서 기능을 수행하는 전자 장치 및 방법
KR20150026424A (ko) 디스플레이 제어 방법 및 그 전자 장치
US10237087B2 (en) Method for controlling transmission speed and electronic device thereof
US20150293691A1 (en) Electronic device and method for selecting data on a screen
US20150067098A1 (en) Electronic device and method for updating accessory information
KR102213429B1 (ko) 사운드 제공 방법 및 이를 구현하는 전자 장치
KR102140294B1 (ko) 전자 장치의 광고 방법 및 그 전자 장치
KR102063566B1 (ko) 메시지 운용 방법 및 이를 지원하는 전자 장치
KR102154324B1 (ko) 배터리 충전 중 통화 품질을 향상시키는 전자 장치 및 방법
KR102131943B1 (ko) Url 분석 방법 및 그 전자 장치
KR20150045560A (ko) 업 데이트 된 포스트 정보를 이용하여 컨텐츠를 분류하는 전자 장치 및 방법

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