KR20170020457A - 콘텐츠 포맷 변환 검증 - Google Patents

콘텐츠 포맷 변환 검증 Download PDF

Info

Publication number
KR20170020457A
KR20170020457A KR1020177001283A KR20177001283A KR20170020457A KR 20170020457 A KR20170020457 A KR 20170020457A KR 1020177001283 A KR1020177001283 A KR 1020177001283A KR 20177001283 A KR20177001283 A KR 20177001283A KR 20170020457 A KR20170020457 A KR 20170020457A
Authority
KR
South Korea
Prior art keywords
checksum
content file
computer system
file
format
Prior art date
Application number
KR1020177001283A
Other languages
English (en)
Other versions
KR101944637B1 (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 소니 주식회사
Publication of KR20170020457A publication Critical patent/KR20170020457A/ko
Application granted granted Critical
Publication of KR101944637B1 publication Critical patent/KR101944637B1/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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • H04L65/602
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C5/00Ciphering apparatus or methods not provided for in the preceding groups, e.g. involving the concealment or deformation of graphic data such as designs, written or printed messages
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H04L67/2823
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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
    • 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/608Watermarking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/2895Intermediate processing functionally located close to the data provider application, e.g. reverse proxies

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Television Signal Processing For Recording (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Storage Device Security (AREA)

Abstract

콘텐츠 변환 검증은: 제1 컴퓨터 시스템에서, 원본 콘텐츠 파일을 타겟 포맷으로 변환하고, 타겟 포맷의 변환된 콘텐츠 파일을 생성하는 단계; 변환된 콘텐츠 파일에 대한 체크섬을 생성하는 단계; 및 원본 콘텐츠 파일 및 체크섬을 제2 컴퓨터 시스템에 전송하는 단계를 포함한다. 키워드는 콘텐츠 검증 및 체크섬을 포함한다.

Description

콘텐츠 포맷 변환 검증{CONTENT FORMAT CONVERSION VERIFICATION}
본 개시내용은 콘텐츠 포맷 변환 검증에 관한 것으로서, 더 구체적으로는 체크섬-기반의 콘텐츠 포맷 변환 검증에 관한 것이다.
시청각(AV) 콘텐츠의 품질이 향상되고, AV 콘텐츠의 파일 크기가 더 커짐에 따라, 이미 배포된 AV 콘텐츠 데이터의 이차적 사용은 콘텐츠 소비를 확장시키는 옵션들 중 하나가 된다. 재생 시스템에 따라, 지원되는 AV 콘텐츠 파일 포맷들은 상이하다. 원본 배포 파일 내의 비디오 및 오디오 데이터의 동일한 품질을 재사용하기 위해, 파일 포맷 변환 프로세스가 이용될 수 있다.
본 개시내용은 콘텐츠 변환 검증을 제공한다.
한 구현에서, 콘텐츠 변환 검증을 위한 방법이 개시된다. 이 방법은: 제1 컴퓨터 시스템에서, 원본 콘텐츠 파일을 타겟 포맷으로 변환하고, 타겟 포맷의 변환된 콘텐츠 파일을 생성하는 단계; 변환된 콘텐츠 파일에 대한 체크섬을 생성하는 단계; 및 원본 콘텐츠 파일 및 체크섬을 제2 컴퓨터 시스템에 전송하는 단계를 포함한다.
다른 구현에서, 콘텐츠 변환 검증을 위한 방법이 개시된다. 이 방법은: 제1 컴퓨터 시스템에서, 제2 컴퓨터 시스템으로부터 원본 콘텐츠 파일 및 체크섬을 수신하는 단계; 제1 컴퓨터 시스템에서, 원본 콘텐츠 파일을 타겟 포맷으로 변환하고, 타겟 포맷의 변환된 콘텐츠 파일을 생성하는 단계; 제1 컴퓨터 시스템에서, 변환된 콘텐츠 파일에 대한 새로운 체크섬을 생성하는 단계; 및 제1 컴퓨터 시스템에서, 수신된 체크섬과 새로운 체크섬을 비교하는 단계를 포함한다.
다른 구현에서, 콘텐츠 변환 검증을 위한 장치가 개시된다. 이 장치는: 제1 컴퓨터 시스템에서, 제2 컴퓨터 시스템으로부터 원본 콘텐츠 파일 및 체크섬을 수신하기 위한 수단; 제1 컴퓨터 시스템에서, 원본 콘텐츠 파일을 타겟 포맷으로 변환하고, 타겟 포맷의 변환된 콘텐츠 파일을 생성하기 위한 수단; 제1 컴퓨터 시스템에서, 변환된 콘텐츠 파일에 대한 새로운 체크섬을 생성하기 위한 수단; 및 제1 컴퓨터 시스템에서, 수신된 체크섬과 새로운 체크섬을 비교하기 위한 수단을 포함한다.
다른 구현에서, 콘텐츠 변환을 검증하는 컴퓨터 프로그램을 저장하는 비일시적 컴퓨터 판독가능한 매체가 개시된다. 이 컴퓨터 프로그램은 실행가능한 명령어들을 포함하고, 이 명령어들은 컴퓨터로 하여금: 제1 컴퓨터 시스템에서, 제2 컴퓨터 시스템으로부터 원본 콘텐츠 파일 및 체크섬을 수신하고; 제1 컴퓨터 시스템에서, 원본 콘텐츠 파일을 타겟 포맷으로 변환하고, 타겟 포맷의 변환된 콘텐츠 파일을 생성하며; 제1 컴퓨터 시스템에서, 변환된 콘텐츠 파일에 대한 새로운 체크섬을 생성하고; 제1 컴퓨터 시스템에서, 수신된 체크섬과 새로운 체크섬을 비교하게 한다.
또 다른 구현에서, 장치가 개시된다. 이 장치는: 프로세서; 및 프로세서에 접속되고, 콘텐츠 변환을 검증하는 컴퓨터 프로그램을 저장하는 메모리를 포함하고, 이 컴퓨터 프로그램은, 프로세서에 의해 실행가능한 명령어들을 포함하며, 이 명령어들은, 장치로 하여금, 컴퓨터 시스템으로부터 원본 콘텐츠 파일 및 체크섬을 수신하고; 원본 콘텐츠 파일을 타겟 포맷으로 변환하고, 타겟 포맷의 변환된 콘텐츠 파일을 생성하며; 변환된 콘텐츠 파일에 대한 새로운 체크섬을 생성하고; 수신된 체크섬과 새로운 체크섬을 비교하게 한다.
본 개시내용의 다른 피쳐들 및 이점들은, 예에 의해 본 개시내용의 양태를 예시하는 본 설명으로부터 명백해질 것이다.
본 개시내용의 상세사항은, 그 구조 및 동작 양쪽 모두에 관하여, 유사한 참조 번호는 유사한 부분을 가리키는 첨부된 도면들의 연구를 통해 부분적으로 이해될 수 있을 것이다.
도 1은 본 개시내용의 한 구현에 따른 콘텐츠 변환 검증을 위한 프로세스의 논리적 구조 및 파일 시스템 계층 구조를 도시한다;
도 2a는 본 개시내용의 한 실시예에 따른 콘텐츠 변환 검증을 위한 프로세스를 나타내는 흐름도이다;
도 2b는 본 개시내용의 한 실시예에 따른 콘텐츠 검증을 위한 프로세스를 나타내는 흐름도이다;
도 3은 원본 파일이 비디오 및 오디오 ES 계층 암호화를 동반한 "고정-크기 패킷" 포맷을 이용하는 예시이다;
도 4는 원본 파일이 비디오 및 오디오 ES 계층 암호화를 동반한 "고정-크기 패킷" 포맷을 이용하는 사례에 대한 콘텐츠 암호해독 및 재암호화 프로세스 없이 포맷 변환이 어떻게 수행되는지를 도시하는 예시이다;
도 5는 원본 파일(510)이 고정-크기 블록 암호 암호화를 동반한 "고정-크기 패킷" 포맷을 이용하는 예시이다;
도 6은 원본 파일이 고정-크기 블록 암호 암호화를 동반한 "고정-크기 패킷" 포맷을 이용하는 사례에 대한 콘텐츠 암호해독 및 재암호화 프로세스와 함께 포맷 변환이 어떻게 수행되는지를 도시하는 예시이다;
도 7은 한 구현에 따른 프레임 기반의 (멀티플렉싱된 비디오, 오디오 및 다른 데이터 유닛을 갖는) 미디어 포맷의 예시이다;
도 8은 "프레임 기반"으로부터 "고정-크기 패킷"으로 변환하고 이 변환 후에 이용하기 위한 대체 데이터를 제공함으로써 체크섬들을 비교하기 위한 프로세스의 예시이다;
도 9는 "고정-크기 패킷"으로부터 "프레임 기반"으로 변환하고 원본 스트림에 포함된 동일한 비디오 데이터 모두를 재사용함으로써 체크섬들을 비교하기 위한 프로세스의 예시이다;
도 10은 "고정-크기 패킷" 포맷으로부터 "프레임 기반" 포맷으로 변환하고 이 변환 후에 이용하기 위한 대체 데이터를 제공함으로써 체크섬들을 비교하기 위한 프로세스의 예시이다;
도 11은 한 구현에 따른 고정-크기 패킷으로 멀티플렉싱된 비디오, 오디오 및 다른 데이터 유닛을 갖는 미디어 포맷의 예시이다;
도 12는 "고정-크기 패킷"으로부터 "프레임 기반"으로 변환하고 원본 스트림에 포함된 동일한 비디오 데이터 모두를 재사용함으로써 체크섬들을 비교하기 위한 프로세스의 예시이다;
도 13은 "고정-크기 패킷" 포맷으로부터 "프레임 기반" 포맷으로 변환하고 이 변환 후에 이용하기 위한 대체 데이터를 제공함으로써 체크섬들을 비교하기 위한 프로세스의 예시이다;
도 14는 변환 출력 파일 포맷 헤더 파일에서 별개로 준비된 비디오 변형을 포함시키는 프로세스의 예시이다.
전술된 바와 같이, 이미 배포된 AV 콘텐츠 데이터의 2차적 사용은 콘텐츠 소비를 확장하기 위한 옵션들 중 하나가 된다. 원본 배포 파일 내의 비디오 및 오디오 데이터의 동일한 품질을 재사용하기 위해, 파일 포맷 변환 프로세스가 이용될 수 있다. 예를 들어, 비디오 및 오디오를 포함하는 MPEG-TS(Moving Picture Experts Group Transport Stream)는, 비디오 및 오디오 기본 스트림을 트랜스코딩하지 않고, 국제 표준화 기구(ISO; International Organization for Standardization) MPEG-4, 파트 14(MP4) 파일 포맷으로 변환될 수 있다. 또 다른 예에서, MP4 파일 포맷 스트림은 MPEG-TS 스트림으로 변환될 수 있다. MP4 포맷은 비디오 프레임-기반 멀티플렉싱 파일 포맷에 기초한 대표적인 포맷이고, MPEG-TS는 고정-크기 패킷 멀티플렉싱 파일 포맷에 기초한 대표적인 포맷이라는 점에 유의해야 한다.
여기에 개시된 소정의 구현들은 콘텐츠 변환 검증을 위한 기술을 교시한다. 한 구현에서, 콘텐츠 포맷 변환의 결과는 체크섬을 이용하여 검증된다. 한 예에서, 콘텐츠 파일은 (콘텐츠 제공자 서버 등의) 제1 컴퓨터 시스템에서 제1 포맷으로 준비되고 저장된다. 시스템은 타겟 포맷의 파일에 대한 체크섬을 생성한다. 콘텐츠 파일과 체크섬은 함께 배포된다. (최종 사용자 재생기 또는 클라이언트 시스템 등의) 제2 컴퓨터 시스템은 파일 및 체크섬을 수신한 다음, 콘텐츠 파일을 타겟 포맷으로 변환한다. 제2 시스템은 타겟 포맷의 파일에 대한 로컬 체크섬을 생성한다. 그 다음 제2 시스템은 수신된 체크섬과 로컬 체크섬을 비교하여 변환이 성공적이었는지(또는 적어도 수락가능한지)를 검증한다. 추가 구현들은 다음 항목 중 하나 이상을 포함할 수 있지만 이것으로 제한되지 않는다: (1) 재암호화가 있거나 없는 파일 포맷 변환; (2) 콘텐츠 파일에서 포렌식 워터마킹(forensic watermarking)의 지원; (3) 변환 동안의/변환 이후의 체크섬 체킹; 및 (4) "암호해독 및 재암호화 프로세스"를 동반하거나 동반하지 않는, "프레임 기반"으로부터 "고정-패킷 크기"로의 변환 및 "고정 패킷 크기"로부터 "프레임 기반"으로의 변환 등의 변환. "체크섬"이라는 용어에 대한 언급이 본 개시내용 전반에 걸쳐 사용되고 있지만, 이 용어는 (체크섬 함수(예를 들어, UNIX cksum 함수), 해시 함수 및 지문 함수의 결과를 포함한 그러나 이것으로 제한되지 않는) 에러를 검출하고 데이터 무결성을 검증하기 위한 목적을 위한 디지털 데이터의 임의의 블록을 지칭하는데 사용될 수 있다.
추가 구현 예에서, 타겟 포맷으로 변환될 파일은 복수의 세그먼트(또는 청크)로 세그먼트화(또는 청크화)된다. 따라서, 체크섬 생성 및 비교는 변환 프로세스 동안에 수행될 수 있다. 한 구현에서, 체크섬 생성 및 비교는 변환 프로세스 동안 각각의 세그먼트에 대해 수행될 수 있다. 다른 구현 예에서, 체크섬 생성 및 비교는 변환 동안 미리 결정된 개수의 세그먼트들에 대해 수행될 수 있다. 또 다른 구현에서, 체크섬 생성 및 비교는 변환 프로세스의 완료 이후에 수행될 수 있다.
추가 구현에서, 체크섬은 변환 출력 데이터에 대하여 처음부터 복수의 체크섬 체크 지점들까지 생성된다. 따라서, 처음부터 연관된 체크섬 체크 지점까지 변환 출력의 정확성을 검증하면서 변환 프로세스 동안에 체크섬 생성 및 비교가 수행될 수 있다. 한 구현에서, 체크섬 생성은 변환 출력 데이터의 시작부터 현재의 변환 출력 데이터까지 계속 실행되고, 변환 프로세스 동안 시작부터 현재의 출력 데이터까지의 출력 데이터에 대해 비교가 수행될 수 있다.
또 다른 구현에서, 체크섬 생성 및 비교는 동일한 방식으로 (시작부터 현재의 변환 출력 데이터까지) 수행될 수 있고, 체크섬 비교는 변환 프로세스 완료 이후에 수행될 수 있다.
이 설명을 읽은 후에, 다양한 구현 및 응용에서 본 개시내용을 구현하는 방법이 명백해질 것이다. 그러나, 본 개시내용의 다양한 구현들이 본 명세서에 설명되더라도, 이들 구현들은 단지 예시로서 제시된 것이지 제한적인 것은 아니라는 점을 이해해야 한다. 따라서, 다양한 구현들의 본 상세한 설명은 본 개시내용의 범위 또는 폭을 제한하는 것으로 해석되어서는 안된다.
도 1은 본 개시내용의 한 구현에 따른 콘텐츠 변환 검증을 위한 프로세스의 논리적 구조(100) 및 파일 시스템 계층 구조(150)를 도시한다. 논리적 구조(100) 및 파일 시스템 계층 구조(150)는, 각각 비디오 데이터(비디오 클립; 다른 구현에서는 오디오 데이터 등의 상이한 데이터 모음들이 이용될 수 있음)의 모음인 클립들(1, 2A, 2B 및 3)을 포함한다. 논리적 구조(100)에 도시된 바와 같이, 클립들(1 및 3)은 키-1로 암호화되고 클립 2는 키-a 및 키-b로 암호화된다. 키-A로 암호화된 클립 2는 클립 2A로 표시되고, 키-B로 암호화된 클립 2는 클립 2B로 표시된다. 암호화된 클립들은 암호화된 파일로서 순차적으로 배치되고 배포를 위해 준비된다(예를 들어, 광 디스크 또는 온라인 배포 저장소 서버에 저장됨). 파일 시스템 계층 구조(150)에 도시된 바와 같이, 키-a로 암호화된 클립(즉, 클립 2A)과 키-b로 암호화된 클립(즉, 클립 2B)이 서로 옆에 순서대로 배치되어 있다.
한 구현에서, 파일 포맷 변환 구현이 에러 없이 올바른 출력 데이터를 생성했는지를 검증하기 위해, 올바른 파일 포맷 변환 출력 데이터에 대한 체크섬이 콘텐츠 준비 프로세스에서 생성된다. 체크섬 데이터는 원본 콘텐츠 배포와 함께 제공된다. 체크섬의 예로서는, 메시지 요약 5(MD5), 보안 해시 알고리즘 1(SHA-1), 및 SHA-256 등의, 출력 파일의 해시 값 계산 결과가 포함된다.
도 2a는 본 개시내용의 한 실시예에 따른 콘텐츠 변환 검증을 위한 프로세스(200)를 나타내는 흐름도이다. 도 2a의 도시된 실시예에서, 블록 210에서 원본 콘텐츠 파일은 (제1 컴퓨터 시스템에서) 타겟 포맷으로 변환된다. 변환은 타겟 포맷의 변환된 콘텐츠 파일을 생성한다. 블록 220에서, 변환된 콘텐츠 파일에 대한 체크섬이 생성된다. 블록 230에서, 원본 콘텐츠 파일 및 체크섬은 제2 컴퓨터 시스템으로 전송된다.
한 파일 포맷 변환 구현에서, 장치는 컴퓨터 시스템으로서 구성되고, 여기서, 컴퓨터 시스템은 파일 및 체크섬을 수신한다. 파일을 변환한 후, 시스템은 그 자신의 파일 포맷 변환 출력 데이터의 체크섬을 계산한다(변환 프로세스 동안에 또는 그 이후에). 그 다음, 시스템은 계산된 체크섬을 콘텐츠 배포자(예를 들어, 제1 컴퓨터 시스템)에 의해 준비되고 수신된 체크섬과 비교한다. 체크섬이 일치한다면, 수신 시스템에서 생성된 출력 데이터가 올바른 것으로 검증된다. 이러한 방식으로, 적어도 일부 구현에서는, 파일 포맷 변환 출력 파일의 검증이 더욱 용이하고 효율적으로 될 것이다. 추가로, 체크섬 지원형 파일 포맷 변환 출력 데이터 검증은 또한, 콘텐츠가 원본 파일에서 암호화되고 파일 변환 프로세스 동안에 콘텐츠 암호해독 및 재암호화가 발생할 때(변환 출력 데이터의 암호화 키가 미리 결정될 때) 적용가능하다. 체크섬 지원형 파일 포맷 변환 출력 데이터는 또한, 원본 파일 및/또는 파일 포맷 변환 출력 파일이 개별화된(individualized) 비디오 세그먼트(예를 들어, 포렌식 워터마킹)를 포함할 때 적용가능하다. 한 구현에서, 장치는 미디어 재생기이다.
도 2b는 본 개시내용의 한 실시예에 따른 콘텐츠 검증을 위한 프로세스(200)를 나타내는 흐름도이다. 도 2b의 도시된 실시예에서, 블록 250에서, 원본 콘텐츠 파일 및 체크섬이 제2 컴퓨터 시스템으로부터 제1 컴퓨터 시스템에서 수신된다. 블록 260에서, 원본 콘텐츠 파일은 타겟 포맷으로 변환된다. 변환은 타겟 포맷의 변환된 콘텐츠 파일을 생성한다. 블록 270에서, 변환된 콘텐츠 파일에 대한 새로운 체크섬이 생성된다. 블록 280에서, 수신된 체크섬과 새로운 체크섬이 비교된다.
한 구현의 동작 예에서, 콘텐츠 파일은 비디오 데이터를 포함하는 비디오 파일이다. 비디오 데이터는(문자적으로 및/또는 논리적으로) 프레임들로 분할된다. 콘텐츠 파일은 고정된 패킷 크기(예를 들어, MPEG-TS + 4 바이트 헤더 = 192 바이트 패킷)를 가지며 암호화된다(예를 들어, 비디오/오디오 기본 스트림(ES) 계층 암호화). 콘텐츠 파일은, 프레임 기반 파일 포맷(예를 들어, ISO 기반 미디어 파일 포맷, 단일 트랙 파일)을 가지며 암호화된 (예를 들어, 비디오/오디오 ES 계층 암호화, 공통 암호화) 변환 파일로 변환된다. 콘텐츠 제공자는, 원본 콘텐츠 파일을 저장하는 제공자 컴퓨터 시스템을 이용하여, 원본 콘텐츠 파일을 변환된 파일로 변환하고 변환된 파일의 체크섬("제공자 체크섬")을 생성한다. 콘텐츠 제공자는 원본 콘텐츠 파일을 제공자 체크섬과 함께 배포한다.
한 구현에서, 장치는, 원본 콘텐츠 파일 및 제공자 체크섬을 수신하고(예를 들어, 인터페이스 유닛) 파일 및 체크섬을 저장 유닛에 저장하는 클라이언트 시스템으로서 구성된다. 클라이언트 시스템은 원본 콘텐츠 파일을 변환된 파일의 타겟 포맷으로 변환한다(예를 들어, 변환기).
클라이언트 시스템은 콘텐츠 파일을 암호해독하지 않는다. 그 다음, 클라이언트 시스템은 변환된 파일(예를 들면, 체크섬 생성기)을 이용하여 새로운 체크섬을 생성한다. 대안으로서, 클라이언트 시스템은 변환 프로세스 동안에 새로운 체크섬을 생성한다. 클라이언트 시스템은, (원본 파일과 함께 수신된) 제공자 체크섬을 (예를 들어, 체크섬 비교기에 의해) (클라이언트 시스템에 의해 생성된) 새로운 체크섬과 비교한다. 체크섬이 일치하면, 클라이언트 시스템은 변환이 성공적이었다고 확정한다. 한 구현에서, 클라이언트 시스템은 수신된 체크섬과 새로운 체크섬이 일치할 때 검증 플래그를 생성한다. 변환이 성공적이지 않다면, 클라이언트 시스템은 실패를 보고하고 제공자에게 새로운 파일 및/또는 체크섬을 요청할 수 있다. 대안으로서, 클라이언트 시스템이 새로운 체크섬을 제공자 시스템에게 검증을 위해 전송할 수 있다. 한 구현에서, 클라이언트 시스템은 미디어 재생기이다.
도 3 내지 도 14는, "암호해독 및 재암호화 프로세스"를 동반하거나 동반하지 않는, "프레임 기반"으로부터 "고정 패킷 크기"로의 변환 및 "고정 패킷 크기"로부터 "프레임 기반"으로의 변환 등의 다양한 미디어 포맷 및 변환을 나타낸다.
도 3 및 도 4는 재암호화를 동반하지 않는 파일 포맷 변환의 상세사항을 나타낸다.
도 3은, 원본 파일(310)이 비디오 및 오디오 ES 계층 암호화(예를 들어, 공통 암호화)를 동반한 "고정-크기 패킷" 포맷(예를 들어, 192 바이트와 동등한 MPEG-TS + 4바이트 헤더)를 이용하는 예시(300)이다. 도 3에서, (제1 컴퓨터 시스템에 상주하는) 콘텐츠 준비 프로세스는, 비디오 암호화 키(312)를 이용한 비디오 암호화 및 오디오 암호화 키(314)를 이용한 오디오 암호화를 동반하여, 원본 파일(310)을 "프레임 기반" 포맷(예를 들어 ISO 기반 미디어 파일 포맷(ISOBMFF))으로 변환하기 위해 파일 포맷 변환 프로세스를 실행한다. 콘텐츠 준비 프로세스는 또한, 체크섬 계산 프로세스를 실행하여 체크섬(316)을 생성한다. 그 다음, (비디오 및 오디오 암호화를 동반한) 원본 파일(310) 및 체크섬(316)이 제2 컴퓨터 시스템에 전송된다. 한 구현에서, 제1 컴퓨터 시스템은 콘텐츠 제공자 서버이고 제2 컴퓨터 시스템은 클라이언트 디바이스이다.
제2 컴퓨터 시스템은 (비디오 및 오디오 암호화를 동반한) 원본 파일(310) 및 체크섬(316)을 수신한다. 수신된 원본 파일(310)은 재생(318)에 이용될 수 있다. 또한, 제2 컴퓨터 시스템에 상주하는 파일 포맷 변환 프로세스가 실행되어 비디오 및 오디오 ES 계층 암호화를 동반하며 원본 파일(310)을 출력 파일(320)로 변환한다. 제2 컴퓨터 시스템의 파일 포맷 변환 프로세스는 (변환 프로세스 동안 또는 그 이후에) 자신의 파일 포맷 변환 출력 데이터의 체크섬을 계산하고 계산된 체크섬을 제1 컴퓨터 시스템에 의해 준비되고 수신된 체크섬과 비교한다(322). 체크섬이 일치한다면, 제2 컴퓨터 시스템에 의해 생성된 출력 파일(320)은 올바른 것으로 검증된다. 비교 결과 체크섬이 일치하지 않는다면, 클라이언트 시스템은 실패를 보고하고 제공자에게 새로운 파일 및/또는 체크섬을 요청할 수 있다. 대안으로서, 클라이언트 시스템이 새로운 체크섬을 제공자 시스템에게 검증을 위해 전송할 수 있다.
도 4는, 도 3에 도시된 예시(300)와 유사하지만 콘텐츠 재생 키가 어떻게 관리되어야 하는지를 도시하는 추가 예시를 갖는, 재암호화가 동반되지 않는 파일 포맷 변환의 예시(400)이다. 도 4에서, 키는 콘텐츠 제공자 서버(410)와 라이선스 서버(예를 들어, 소매업자)(412) 사이에서 공유된다. 도 4의 다른 요소들은 도 3의 요소들과 유사하다.
도 5 및 도 6은 재암호화를 동반하는 파일 포맷 변환의 상세사항을 나타낸다.
도 5는 원본 파일(510)이 "고정-크기 패킷" 포맷(예를 들어, 192 바이트 패킷과 동일한 MPEG-TS + 4 바이트 헤더)을 이용하는 예시(500)이다. 도 5에서, (제1 컴퓨터 시스템에 상주하는) 콘텐츠 준비 프로세스는 원본 파일(510)을 "프레임 기반" 포맷(예를 들어, ISO 기반 미디어 파일 포맷(ISOBMFF))으로 변환하기 위해 파일 포맷 변환 프로세스를 실행한다. 콘텐츠 준비 프로세스는 또한, 체크섬 계산 프로세스를 실행하여 체크섬(512)을 생성한다. 원본 파일(510)은 블록 키(514)(CBC; cipher block chaining); 블루레이 디스크(Blu-ray disc)용 AACS(Advance Access Content System)의 예)로 암호화된다. 그 다음, 원본 파일(510) 및 체크섬(512)이 제2 컴퓨터 시스템에 전송된다.
제2 컴퓨터 시스템은 원본 파일(510) 및 체크섬(512)을 수신한다. 수신된 원본 파일(510)은 재생(516)에 이용될 수 있다. 또한, 제2 컴퓨터 시스템에 상주하는 파일 포맷 변환 프로세스가 실행된다. 그러나, 이 경우, 비디오 및 오디오 파일은 재암호화되어 암호화된 비디오 및 오디오 파일(520)을 생성한다. 제2 컴퓨터 시스템의 파일 포맷 변환 프로세스는 (변환 프로세스 동안 또는 그 이후에) 자신의 파일 포맷 변환 출력 데이터의 체크섬을 계산하고 계산된 체크섬을 제1 컴퓨터 시스템에 의해 준비되고 수신된 체크섬과 비교한다(522). 체크섬이 일치한다면, 제2 컴퓨터 시스템에 의해 생성된 출력 파일(520)은 올바른 것으로 검증된다. 비교 결과 체크섬이 일치하지 않는다면, 클라이언트 시스템은 실패를 보고하고 제공자에게 새로운 파일 및/또는 체크섬을 요청할 수 있다. 대안으로서, 클라이언트 시스템이 새로운 체크섬을 제공자 시스템에게 검증을 위해 전송할 수 있다.
도 6은, 도 5에 도시된 예시(500)와 유사하지만 콘텐츠 재생 키가 어떻게 관리되어야 하는지를 도시하는 추가 예시를 갖는, 재암호화가 동반되는 파일 포맷 변환의 예시(600)이다. 도 6에서, 변환 프로세스는 재생을 위해 제공된 것과 동일한 키를 이용하거나 서버로부터 키를 수신할 수 있다. 변환 키는 원본 키를 이용하여 생성되거나 독립적으로 생성된다.
도 7은 한 구현에 따른 프레임 기반의 (멀티플렉싱된 비디오, 오디오, 및 다른 데이터 유닛을 갖는) 미디어 포맷의 예시(700)이다. 멀티플렉싱은 비디오/오디오 프레임 기반으로 또는 비디오 GOP(group of pictures) 등의 더 큰 블록(예를 들어, MPEG-4(MP4) 포맷 또는 공통 파일 포맷(CFF))으로 적용된다.
이 구현에서, 개별화는 프레임 기반(또는 더 큰 유닛)으로 적용될 수 있다.
기본 스트림(ES)(710)의 소스 프레임은, 3개의 비디오 데이터 유닛(V1, V2, V3), 2개의 오디오 유닛(712, 716), 및 하나의 다른 데이터 유닛(714)을 포함한다. ES(720) 내의 프레임(스트림 1A)은, 각각 키-a 및 키-b로 암호화된 2개의 V2 프레임(722, 724)(프레임 V2-a, V2-b)을 포함한다. 암호화도 역시 프레임 기반으로 적용되는 사례에서, 암호화는 개별화 세그먼트의 선택에 영향을 미치지 않다. 스트림 1A(720)에서, 재생기는 주어진 키와의 일치에 기초하여 프레임 V2-a 또는 V2-b를 선택할 필요가 있다. 예를 들어, 키-a를 수신한 재생기는 프레임 V2-a를 암호해독하고 재생한다. 스트림(1B)에서, ES(730)의 프레임들은 ES(740)의 프레임들과 중첩된다. 따라서, 스트림(1B)에서, 개별화 세그먼트의 선택은 하나 이상의 암호화 블록의 단위에서 이루어질 수 있다. 재생기는 주어진 키와의 일치에 기초하여 암호화 블록을 선택할 필요가 있을 것이다. 따라서, 이들 블록들은 하나의 파일로 존재하거나 별개의 파일들에 저장되어 연속적으로 재생될 수 있다. 키-a를 수신한 재생기는 V2-a를 포함하는 블록을 암호해독하는 반면, 키-b를 수신한 재생기는 V2-b를 포함하는 블록을 암호해독한다.
도 7과 관련하여, 예시(700)가 프레임 기반 비디오 워터마킹에 기초하고 있지만, 더 긴 길이의 비디오 마킹 또는 오디오 워터마킹 등의 다른 수단이 동일한 세그먼트화 접근법을 통해 적용될 수 있다.
(MP4 헤더 및 다른 컨테이너 포맷 계층 등의) 멀티플렉싱 계층은 예시(700)를 간소화하기 위해 생략되어 있다. 또한, 프레임들 V2-a 및 V2-b에는 상이한 비디오 워터마크가 삽입될 수 있다. 따라서, 정보를 저장하기 위한 페이로드는 복수의 세그먼트들을 전체 콘텐츠 시퀀스에 걸쳐 개별화함으로써 제공될수 있다.
도 8은 "프레임 기반"으로부터 "고정-크기 패킷"으로 변환하고 클라이언트 디바이스에서 체크섬들을 비교하기 위한 프로세스(800)의 예시이다. 변환은 변환 이후의 이용을 위한 대체 데이터를 제공함으로써 수행된다. 변환 사례 810은 스트림 1A로부터 스트림 2A로의 변환인 반면, 사례 820은 스트림 1A로부터 스트림 2B로의 변환이다. 사례 810이든 820이든, 비디오 데이터의 원본의 변형이 폐기되고 별개로 준비된 이미 암호화된 비디오 데이터가 이용된다. 콘텐츠 저자는 원본 포맷 스트림(스트림 1A)과는 별개의 데이터 포맷(스트림 2A 또는 2B)의 V2-c 및 V2-d 부분을 준비하고 데이터의 V2-c 및 V2-d 부분을 별개의 파일로서 미디어 상에 또는 서버로부터 제공한다.
전술된 바와 같이, 사례 810이든 820이든, 변환 프로세스는 원본 비디오 데이터로부터 V2-a 및 V2-b 부분을 버리고(812 참조), V2-c 및 V2-d 데이터를 대체물로서 삽입한다(816 참조). 패킷(814)들은 별개로 준비된 암호화된 비디오 변형(고정-크기 패킷으로 암호화된 비디오 ES)을 구성한다. 블록(822)은 (비디오 변형을 포함한) 별개로 준비된 암호화된 블록들을 구성한다. 데이터 V2-c 또는 V2-d는, V2-a/V2-b와 동일한 비디오 데이터이거나 그렇지 않을 수도 있으며, V2-a/V2-b와 동일한 키로 암호화되거나 그렇지 않을 수도 있다. 데이터 포맷(2A)/(2B)에 대한 재생 라이선스는, 데이터 포맷(1A)에 이용되는 키에 비해 상이한 세트의 키들을 제공할 수 있다. 데이터 포맷(2A)/(2B)에 대해 이미 암호화된 별개의 변형 데이터를 제공함으로써, 변환 프로세스는 V2-a/V2-b의 비디오 데이터를 노출할 필요가 없으며, 특정 재생기에게 주어진 키 세트와 연관된 포렌식 WM 식별자의 고유성을 암호해독된 이미지에서 유지할 수 있다. 한 구현에서, 일단 변환 프로세스가 완료되고 나면, (스트림 2A에 대한) 블록 830 또는 (스트림 2B에 대한) 블록 832에서, 체크섬이 생성되고 콘텐츠 제공자 서버로부터 수신된 체크섬과 비교된다. 다른 구현에서, 체크섬 비교는 변환 프로세스 동안에 수행될 수 있다.
도 9는 "고정-크기 패킷"으로부터 "프레임 기반"으로 변환하고 클라이언트 디바이스에서 체크섬들을 비교하기 위한 프로세스(900)의 예시이다. 변환은 원본 스트림에 포함된 모든 동일한 비디오 데이터를 재사용함으로써 수행된다. 변환 사례 910은 암호화된 비디오 데이터가 보존되는 스트림 2A로부터 스트림 1A로의 변환이다. 또한, 비디오 데이터는 "고정-크기 패킷" 포맷(예를 들어, MPEG-TS)에서 "프레임 기반" 포맷(예를 들어, MP4)으로 재멀티플렉싱된다. 오디오 데이터 및 다른 데이터도 동일한 방식으로 "프레임 기반" 포맷으로 재멀티플렉싱될 것이다. "프레임 기반" 포맷의 변환 출력 파일(포맷 1A')은, 비디오(920), 오디오(922) 및 다른 데이터(924)를 갖는 별개의 트랙 파일들일 수 있다. 일단 변환 프로세스가 완료되고 나면, 체크섬이 생성되고 (포맷 1A에 대한) 블록 930 또는 (포맷 1A'에 대한) 932에서, 콘텐츠 제공자 서버로부터 수신된 체크섬과 비교된다. 다른 구현에서, 체크섬 비교는 변환 프로세스 동안에 수행될 수 있다.
도 10은, "고정-크기 패킷" 포맷(1010)으로부터 "프레임 기반" 포맷(1030)으로 변환하고 클라이언트 디바이스에서 체크섬들을 비교하기 위한 프로세스(1000)의 예시이다. 변환은 변환 이후의 이용을 위한 대체 데이터를 제공함으로써 수행된다. 변환 사례 1020은 비디오 데이터의 원본 변형이 재사용되는 스트림 2A(1010)로부터 스트림 1A(1030)로의 변환이다. 재생의 경우, 비디오 변형들 중 어느 하나(V2-a 또는 V2-b)는 변형들 중 하나에 할당된 하나의 키만을 갖는 특정한 재생기 유닛에 의해 암호해독 가능하다. 콘텐츠 저자는 원본 포맷 스트림(2A)과는 별개의 데이터 포맷 스트림(1A)의 V2-c 및 V2-d 부분을 준비하고 데이터의 V2-c 및 V2-d 부분을 별개의 파일로서 미디어 상에 또는 서버로부터 제공한다. 따라서, 블록(1522)은 (비디오 변형을 포함한) 별개로 준비된 암호화된 블록들을 구성한다.
변환 프로세스(1020)는 원본 비디오 데이터로부터 V2-a(1012) 및 V2-b(1014) 부분을 폐기하고 대체물로서 V2-c 및 V2-d 데이터를 삽입한다. V2-c/V2-d는 V2-a/V2-b와 동일한 비디오 데이터이거나 그렇지 않을 수도 있으며, V2-a/V2-b와 동일한 키로 암호화되거나 그렇지 않을 수도 있다. 데이터 포맷(1A)의 재생 라이선스는 데이터 포맷(2A)에 이용되는 키에 비해 상이한 세트의 키들을 제공할 수 있다. 데이터 포맷(1A)에 대해 이미 암호화된 별개의 변형 데이터를 제공함으로써, 콘텐츠 저자는 상이한 기술들을 이용하여 데이터 포맷(2A) 및 (1A)에 대한 전용의 변형을 준비할 수 있다. 데이터 포맷 (2A) 및 (1A)의 재생은 또한 상이한 세트의 키들에 의해 관리될 수 있고, 잠재적으로 암호해독된 이미지에서 상이한 워터마크 식별자들을 이용할 수 있다. 따라서, 변환 출력 파일은, 포맷(1A')(1040)으로 도시된 비디오, 오디오 및 다른 데이터 유닛들 각각을 갖는 별개의 트랙 파일들일 수 있다. 한 구현에서, 일단 변환 프로세스가 완료되고 나면, 체크섬이 생성되고 (포맷 1A에 대한) 블록 1050 또는 (포맷 1A'에 대한) 1052에서, 콘텐츠 제공자 서버로부터 수신된 체크섬과 비교된다. 다른 구현에서, 체크섬 비교는 변환 프로세스 동안에 수행될 수 있다.
도 11은 한 구현에 따른 고정-크기 패킷으로 멀티플렉싱된 비디오, 오디오 및 다른 데이터 유닛을 갖는 미디어 포맷의 예시(1100)이다. 멀티플렉싱은 고정-크기 패킷(예를 들어, Blu-ray 디스크 포맷의 MPEG-TS 기반 브로드캐스팅)에서 적용된다. 이 구현에서, 개별화는 프레임 기반으로(또는 더 큰 단위) 적용될 수 있지만, 고정-크기 패킷 시퀀스에 대한 고려가 필요하다. 암호화도 역시 프레임 기반으로 적용되는 사례(예를 들어, 스트림 2A)에서, 암호화는 개별화 세그먼트의 선택에 영향을 미치지 않는다. 암호화 유닛이 상이한 타입들의 기본 스트림과 중첩하는 사례(예를 들어, 스트림 2B(1110))에서, 개별화 세그먼트의 선택은 하나 이상의 암호화 블록의 단위에서 이루어질 수 있다.
예시(1100)가 프레임 기반 비디오 워터마킹에 기초하고 있지만, 더 긴 길이의 비디오 마킹 또는 오디오 워터마킹 등의 다른 수단이 동일한 세그먼트화 접근법을 통해 적용될 수 있다. (MPEG-TS 헤더 및 다른 컨테이너 포맷 계층 등의) 멀티플렉싱 계층은 예시(1100)를 간소화하기 위해 생략되어 있다. 또한, 프레임들 V2-a 및 V2-b에는 상이한 비디오 워터마크가 삽입될 수 있다. 정보를 저장하기 위한 페이로드는 복수의 세그먼트들을 전체 콘텐츠 시퀀스에 걸쳐 개별화함으로써 제공될 수 있다. 따라서, 개별화는 타겟 비디오 프레임(도 11의 V2)이 포함되는 암호화 블록(들)에 적용될 수 있다. 개별 세그먼트는 다른 비디오 프레임 데이터 또는 오디오 데이터를 포함할 수 있다. 이들 블록들은 하나의 파일로 존재하거나 별개의 파일들에 저장되어 연속적으로 재생될 수 있다.
도 12는 "고정-크기 패킷"으로부터 "프레임 기반"으로 변환하고 클라이언트 디바이스에서 체크섬들을 비교하기 위한 프로세스(1200)의 예시이다. 변환은 원본 스트림에 포함된 모든 동일한 비디오 데이터를 재사용함으로써 수행된다. 변환 사례 1210은 비디오 데이터의 원본 변형이 재사용되는 스트림 2B로부터 스트림 1A로의 변환이다. 포맷(2B)의 원본 암호화 블록 데이터는 암호해독되고 비디오 데이터는 디멀티플렉싱된다. 또한, 비디오 ES 계층에 암호화가 적용되므로, "프레임 기반" 포맷으로 재멀티플렉싱된다(역시 도 5 참조). "프레임 기반" 포맷의 변환 출력 파일(포맷 1A')은, 비디오(1220), 오디오(1222) 및 다른 데이터(1224)를 갖는 별개의 트랙 파일들일 수 있다. 한 구현에서, 일단 변환 프로세스가 완료되고 나면, 체크섬이 생성되고 (포맷 1A에 대한) 블록 1230 또는 (포맷 1A'에 대한) 1232에서, 콘텐츠 제공자 서버로부터 수신된 체크섬과 비교된다. 다른 구현에서, 체크섬 비교는 변환 프로세스 동안에 수행될 수 있다.
도 13은, "고정-크기 패킷" 포맷(1310)으로부터 "프레임 기반" 포맷(1330)으로 변환하고 클라이언트 디바이스에서 체크섬들을 비교하기 위한 프로세스(1300)의 예시이다. 변환은 변환 이후의 이용을 위한 대체 데이터를 제공함으로써 수행된다. 변환 사례 1320은 비디오 데이터가 재사용되는 스트림 2B(1310)로부터 스트림 1A(1330)로의 변환이다. 재생의 경우, 비디오 변형들 중 어느 하나(V2-a 또는 V2-b)는 변형들 중 하나에 할당된 하나의 키만을 갖는 특정한 재생기 유닛에 의해 암호해독 가능하다. 콘텐츠 저자는 원본 포맷 스트림(2B)과는 별개의 데이터 포맷 스트림(1A)의 V2-c 및 V2-d 부분을 준비하고 데이터의 V2-c 및 V2-d 부분을 별개의 파일로서 미디어 상에 또는 서버로부터 제공한다. 따라서, 블록(1332)은 (비디오 변형을 포함한) 별개로 준비된 암호화된 블록들을 구성한다.
변환 프로세스(1320)는 원본 비디오 데이터로부터 V2-a(1312) 및 V2-b(1314) 부분을 폐기하고 대체물로서 V2-c 및 V2-d 데이터(1332)를 삽입한다. V2-c/V2-d는 V2-a/V2-b와 동일한 비디오 데이터이거나 그렇지 않을 수도 있으며, V2-a/V2-b와 동일한 키로 암호화되거나 그렇지 않을 수도 있다. 데이터 포맷(1A)의 재생 라이선스는 데이터 포맷(2B)에 이용되는 키에 비해 상이한 세트의 키들을 제공할 수 있다. 데이터 포맷(1A)에 대해 이미 암호화된 별개의 변형 데이터를 제공함으로써, 콘텐츠 저자는 상이한 기술들을 이용하여 데이터 포맷(2B) 및 (1A)에 대한 전용의 변형을 준비할 수 있다. 데이터 포맷 (2B) 및 (1A)의 재생은 또한 상이한 세트의 키들에 의해 관리될 수 있고, 잠재적으로 암호해독된 이미지에서 상이한 워터마크 식별자들을 이용할 수 있다.
원본 데이터(2B)에서 비디오의 변형이 없는 부분에 대해, 변환 프로세스(1320)는 포맷(2B)의 원본 암호화 블록 데이터를 암호해독하고 비디오 데이터를 디멀티플렉싱할 필요가 있다. 또한, 비디오 ES 계층에 암호화가 적용되므로, "프레임 기반" 포맷으로 재멀티플렉싱된다. 원본 데이터(2B)에서 비디오의 변형이 없는 부분에 대해, 원본 데이터는 통상적으로 원본(2B) 데이터 크기의 대부분을 차지하므로 원본 데이터를 이용하면 이점이 있다. 따라서, 이러한 방식으로 비디오 데이터를 재사용함으로써, 별개로 준비된 데이터(1332)의 크기를 최소화할 수 있다. 따라서, 변환 출력 파일은, 포맷(1A')(1340)으로 도시된 비디오, 오디오 및 다른 데이터 유닛들 각각을 갖는 별개의 트랙 파일들일 수 있다.
한 구현에서, 일단 변환 프로세스가 완료되고 나면, 체크섬이 생성되고 (포맷 1A에 대한) 블록 1350 또는 (포맷 1A'에 대한) 1352에서, 콘텐츠 제공자 서버로부터 수신된 체크섬과 비교된다. 다른 구현에서, 체크섬 비교는 변환 프로세스 동안에 수행될 수 있다.
도 14는 변환 출력 파일 포맷 헤더 파일에서 별개로 준비된 비디오 변형을 포함시키는 프로세스(1400)의 예시이다. 콘텐츠 저자는 별개로 준비된 암호화된 비디오 변형들(V2-c/V2-d)을 포함하는 "프레임 기반" 파일 포맷 헤더 전용 구조를 준비한다. 변환 프로세스(1420)는 원본(2B) 파일 포맷(1410)으로부터의 데이터를 암호해독, 디멀티플렉싱, 재암호화 및 재멀티플렉싱한다. 변환 프로세스(1420)는 V2-a 또는 V2-b(양쪽 모두는 아님)를 포함하는 블록만을 암호해독할 수 있는 키에 액세스한다. 변환 프로세스(1420)는 V2-a 부분(1412) 이외의 데이터를 재암호화하고 재멀티플렉싱하며, V2-a/V2-b(1412, 1414) 대신에 V2-c 및 V2-d를 이미 별개로 준비된 데이터(1442)로서 이용한다. 별개로 준비된 V2-c/V2-d 데이터 자체의 존재는 원본 비디오 데이터가 폐기될 필요가 있는 곳을 식별하는데 이용될 수 있다. V2-c/V2-d는, (1A)(1430, 1440) 및 (1A')(1450)의 포맷에 따라, 별개로 암호화된 2개의 별개의 비디오 프레임이거나 하나의 비디오 프레임 및 메타 데이터 구조이다.
한 구현에서, 일단 변환 프로세스가 완료되고 나면, 체크섬이 생성되고 (포맷 1A에 대한) 블록 1460 또는 (포맷 1A'에 대한) 1462에서, 콘텐츠 제공자 서버로부터 수신된 체크섬과 비교된다. 다른 구현에서, 체크섬 비교는 변환 프로세스 동안에 수행될 수 있다.
한 구현은 컴퓨터 명령어들을 저장하고 실행하기 위한 하나 이상의 프로그램가능한 프로세서 및 대응하는 컴퓨터 시스템 컴포넌트를 포함한다. 하드웨어, 소프트웨어 및 펌웨어의 조합도 역시 이용될 수 있다. 예를 들어, 제공자 시스템, 배포 및 재생에서, 데이터의 암호화, 콘텐츠 파일의 구축 및 배포, 변환, 및 체크섬 생성은, (메모리, 계산 유닛, 버스 등의) 적절한 컴포넌트들 및 시스템들을 이용하여 하나 이상의 프로세서 상에서 적절한 컴퓨터 명령어들을 실행하는 하나 이상의 컴퓨터 시스템에 의해 수행될 수 있다.
추가적인 변형들 및 구현들도 역시 가능하다. 일부 예들은 영화 또는 텔레비전 프로그램 등의 비디오를 나타내는 콘텐츠 파일 및 데이터를 처리하지만, 오디오, 이미지 데이터, 소프트웨어, 과학 또는 의학 데이터 등의 다른 데이터도 역시 이용될 수 있다. 한 예에서, 환자 의료 기록이 분할, 마킹, 암호화, 변환되고, 여기에 논의된 바와 같이, 체크섬이 생성되고 이용된다. AV 콘텐츠를 검증하는 것과 유사하게, (의료 영상 데이터 등의) 다른 데이터의 변환 정확도를 확인하기 위해 체크섬을 배포하고 비교하는 것은 환자 치료를 개선하고 비용을 줄이는 데 도움이 될 수 있다.
개시된 구현의 상기 설명은 본 기술분야의 통상의 기술자가 본 개시내용을 실시 또는 이용할 수 있게 하기 위해 제공된 것이다. 이들 구현들에 대한 다양한 수정이 본 기술분야의 통상의 기술자에게는 명백할 것이며, 여기서 설명된 일반 원리는 본 개시내용의 사상과 범위를 벗어나지 않고 다른 실시예들에 적용될 수 있다. 따라서, 본 기술들은 전술된 특정한 예로 제한되지 않는다. 따라서, 여기서 제공된 설명 및 도면은 본 개시내용의 현재의 바람직한 실시예를 나타내므로 본 개시내용에 의해 광범위하게 고려되는 주제를 대표하는 것으로 이해되어야 한다. 본 개시내용의 범위는 본 기술분야의 통상의 기술자에게 명백할 수 있는 다른 실시예들을 완전히 포괄하며 본 개시내용의 범위는 그에 따라 첨부된 청구항들에 의해서만 제한된다는 점을 더 이해하여야 한다.

Claims (23)

  1. 콘텐츠 변환 검증을 위한 방법으로서,
    제1 컴퓨터 시스템에서, 원본 콘텐츠 파일을 타겟 포맷으로 변환하고, 상기 타겟 포맷의 변환된 콘텐츠 파일을 생성하는 단계;
    상기 변환된 콘텐츠 파일에 대한 체크섬을 생성하는 단계; 및
    상기 원본 콘텐츠 파일 및 상기 체크섬을 제2 컴퓨터 시스템에 전송하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서, 상기 제1 컴퓨터 시스템은 콘텐츠 제공자 컴퓨터 시스템인, 방법.
  3. 제1항에 있어서, 상기 제2 컴퓨터 시스템은 클라이언트 컴퓨터 시스템인, 방법.
  4. 제1항에 있어서, 상기 원본 콘텐츠 파일은 비디오 데이터 파일인, 방법.
  5. 제1항에 있어서, 상기 원본 콘텐츠 파일은 암호화되는, 방법.
  6. 제5항에 있어서, 상기 원본 콘텐츠 파일은 상기 원본 콘텐츠 파일 또는 상기 변환된 콘텐츠 파일의 재암호화없이 상기 타겟 포맷으로 변환되는, 방법.
  7. 제1항에 있어서, 상기 원본 콘텐츠 파일은 워터마크(watermark)를 포함하는, 방법.
  8. 제7항에 있어서, 상기 변환된 콘텐츠 파일은 상기 워터마크를 포함하는, 방법.
  9. 콘텐츠 변환 검증을 위한 방법으로서,
    제1 컴퓨터 시스템에서, 제2 컴퓨터 시스템으로부터 원본 콘텐츠 파일 및 체크섬을 수신하는 단계;
    상기 제1 컴퓨터 시스템에서, 상기 원본 콘텐츠 파일을 타겟 포맷으로 변환하고, 상기 타겟 포맷의 변환된 콘텐츠 파일을 생성하는 단계;
    상기 제1 컴퓨터 시스템에서, 상기 변환된 콘텐츠 파일에 대한 새로운 체크섬을 생성하는 단계; 및
    상기 제1 컴퓨터 시스템에서, 상기 수신된 체크섬과 상기 새로운 체크섬을 비교하는 단계
    를 포함하는 방법.
  10. 제9항에 있어서, 상기 원본 콘텐츠 파일은 암호화되고, 상기 원본 콘텐츠 파일을 변환하는 단계는 상기 원본 콘텐츠 파일을 암호해독하는 단계를 포함하지 않는, 방법.
  11. 제9항에 있어서, 새로운 체크섬을 생성하는 단계는 상기 원본 콘텐츠 파일을 상기 타겟 포맷으로 변환하는 동안에 수행되는, 방법.
  12. 제9항에 있어서, 상기 수신된 체크섬과 상기 새로운 체크섬의 비교가 일치할 때 검증 플래그(verification flag)를 생성하는 단계를 더 포함하는 방법.
  13. 제9항에 있어서, 상기 수신된 체크섬과 상기 새로운 체크섬이 일치하지 않을 때 새로운 원본 콘텐츠 파일에 대한 요청을 상기 제2 컴퓨터 시스템에 전송하는 단계를 더 포함하는 방법.
  14. 제9항에 있어서,
    상기 수신된 체크섬과 상기 새로운 체크섬이 일치하지 않을 때 상기 새로운 체크섬을 상기 제2 컴퓨터 시스템에 전송하는 단계를 더 포함하는 방법.
  15. 콘텐츠 변환 검증을 위한 장치로서,
    제1 컴퓨터 시스템에서, 제2 컴퓨터 시스템으로부터 원본 콘텐츠 파일 및 체크섬을 수신하기 위한 수단;
    상기 제1 컴퓨터 시스템에서, 상기 원본 콘텐츠 파일을 타겟 포맷으로 변환하고, 상기 타겟 포맷의 변환된 콘텐츠 파일을 생성하기 위한 수단;
    상기 제1 컴퓨터 시스템에서, 상기 변환된 콘텐츠 파일에 대한 새로운 체크섬을 생성하기 위한 수단; 및
    상기 제1 컴퓨터 시스템에서, 상기 수신된 체크섬과 상기 새로운 체크섬을 비교하기 위한 수단
    을 포함하는 장치.
  16. 제15항에 있어서, 상기 원본 콘텐츠 파일은 암호화되고, 상기 원본 콘텐츠 파일을 변환하기 위한 수단은 상기 원본 콘텐츠 파일을 암호해독하기 위한 수단을 포함하지 않는, 장치.
  17. 제15항에 있어서, 새로운 체크섬을 생성하기 위한 수단은 상기 원본 콘텐츠 파일을 상기 타겟 포맷으로 변환하는 동안에 수행되는, 장치.
  18. 제15항에 있어서, 상기 수신된 체크섬과 상기 새로운 체크섬의 비교가 일치할 때 검증 플래그를 생성하기 위한 수단을 더 포함하는 장치.
  19. 제15항에 있어서,
    상기 수신된 체크섬과 상기 새로운 체크섬이 일치하지 않을 때 새로운 원본 콘텐츠 파일에 대한 요청을 상기 제2 컴퓨터 시스템에 전송하기 위한 수단을 더 포함하는 장치.
  20. 제15항에 있어서, 상기 수신된 체크섬과 상기 새로운 체크섬이 일치하지 않을 때 상기 새로운 체크섬을 상기 제2 컴퓨터 시스템에 전송하기 위한 수단을 더 포함하는 장치.
  21. 콘텐츠 변환을 검증하는 컴퓨터 프로그램을 저장하는 비일시적 컴퓨터 판독가능한 매체로서, 상기 컴퓨터 프로그램은 실행가능한 명령어들을 포함하고, 상기 명령어들은 컴퓨터로 하여금:
    제1 컴퓨터 시스템에서, 제2 컴퓨터 시스템으로부터 원본 콘텐츠 파일 및 체크섬을 수신하고;
    상기 제1 컴퓨터 시스템에서, 상기 원본 콘텐츠 파일을 타겟 포맷으로 변환하고, 상기 타겟 포맷의 변환된 콘텐츠 파일을 생성하며;
    상기 제1 컴퓨터 시스템에서, 상기 변환된 콘텐츠 파일에 대한 새로운 체크섬을 생성하고;
    상기 제1 컴퓨터 시스템에서, 상기 수신된 체크섬과 상기 새로운 체크섬을 비교하게 하는, 비일시적 컴퓨터 판독가능한 매체.
  22. 장치로서,
    프로세서; 및
    상기 프로세서에 접속되고, 콘텐츠 변환을 검증하는 컴퓨터 프로그램을 저장하는 메모리
    를 포함하고,
    상기 컴퓨터 프로그램은 상기 프로세서에 의해 실행가능한 명령어들을 포함하고, 상기 명령어들은 상기 장치로 하여금:
    컴퓨터 시스템으로부터 원본 콘텐츠 파일 및 체크섬을 수신하고;
    상기 원본 콘텐츠 파일을 타겟 포맷으로 변환하고, 상기 타겟 포맷의 변환된 콘텐츠 파일을 생성하며;
    상기 변환된 콘텐츠 파일에 대한 새로운 체크섬을 생성하고;
    상기 수신된 체크섬과 상기 새로운 체크섬을 비교하게 하는, 장치.
  23. 제22항에 있어서, 상기 장치는 미디어 재생기인, 장치.
KR1020177001283A 2014-08-01 2015-07-31 콘텐츠 포맷 변환 검증 KR101944637B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201462032372P 2014-08-01 2014-08-01
US62/032,372 2014-08-01
PCT/US2015/043325 WO2016019358A1 (en) 2014-08-01 2015-07-31 Content format conversion verification
US14/815,720 US11024200B2 (en) 2014-08-01 2015-07-31 Content format conversion verification
US14/815,720 2015-07-31

Publications (2)

Publication Number Publication Date
KR20170020457A true KR20170020457A (ko) 2017-02-22
KR101944637B1 KR101944637B1 (ko) 2019-01-31

Family

ID=55181302

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177001283A KR101944637B1 (ko) 2014-08-01 2015-07-31 콘텐츠 포맷 변환 검증

Country Status (7)

Country Link
US (2) US11024200B2 (ko)
EP (1) EP3155546A4 (ko)
JP (1) JP6677726B2 (ko)
KR (1) KR101944637B1 (ko)
CN (1) CN106537402A (ko)
RU (1) RU2667780C2 (ko)
WO (1) WO2016019358A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201601793D0 (en) * 2016-02-01 2016-03-16 Nagravision Sa Embedding watermarking data
WO2018069550A1 (en) * 2016-10-14 2018-04-19 Auro Technologies Recording and playback devices with avoidance of missynchronisation by scrambling a payload with a modified payload checksum
CN107844273B (zh) * 2017-11-01 2021-05-04 深信服科技股份有限公司 一种数据写入方法及装置、验证方法及装置
US11368745B2 (en) * 2018-07-05 2022-06-21 Dolby International Ab Processing media data structures
CN110413345A (zh) * 2019-07-26 2019-11-05 云湾科技(嘉兴)有限公司 程序验证方法、装置、计算设备及计算机存储介质
CN111046637A (zh) * 2019-12-25 2020-04-21 小船出海教育科技(北京)有限公司 一种科学公式正确性检验方法和装置
CN116455997B (zh) * 2023-06-12 2023-08-22 深圳华锐分布式技术股份有限公司 Step行情多路转发方法、装置、设备及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6223272B1 (en) * 1998-07-15 2001-04-24 Siemens Aktiengesellschaft Test vector verification system
KR20050116350A (ko) * 2004-06-07 2005-12-12 (주)잉카엔트웍스 개인 휴대 단말기를 위한 멀티미디어 데이터 편집, 제공장치 및 방법
JP2008146712A (ja) * 2006-12-07 2008-06-26 Hitachi Ltd コンテンツ記録再生装置
JP2009059234A (ja) * 2007-08-31 2009-03-19 I-O Data Device Inc コンテンツ管理方法、そのプログラム、および記録媒体
US20090286560A1 (en) * 2006-01-13 2009-11-19 Michael John Willis System and method for mobile content generation

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5870471A (en) 1996-11-27 1999-02-09 Esco Electronics Corporation Authentication algorithms for video images
JP2000007329A (ja) * 1998-06-29 2000-01-11 Tochigi Prefecture 板状水酸化カルシウムの製造法
US6223271B1 (en) * 1998-07-15 2001-04-24 Compaq Computer Corp. System and method for detecting system memory size using ROM based paging tables
EP1014618A1 (en) 1998-07-30 2000-06-28 Sony Corporation Content processing system
JP2000152199A (ja) 1998-11-13 2000-05-30 Sony Corp 電子透かし情報の重畳方法、電子透かし情報の伝送方法、電子透かし情報の重畳装置、オーサリング装置および映像信号出力装置
US7216232B1 (en) 1999-04-20 2007-05-08 Nec Corporation Method and device for inserting and authenticating a digital signature in digital data
US20010036271A1 (en) * 1999-09-13 2001-11-01 Javed Shoeb M. System and method for securely distributing digital content for short term use
US6460163B1 (en) * 2000-04-05 2002-10-01 International Business Machines Corporation Software and method for digital content vending and transport
US6826315B1 (en) 2000-09-13 2004-11-30 Hewlett-Packard Development Company, L.P. Digital imaging device with image authentication capability
JP4224262B2 (ja) * 2001-07-09 2009-02-12 パナソニック株式会社 デジタル情報保護システム、記録媒体装置、送信装置及び再生装置
JP3818504B2 (ja) * 2002-04-15 2006-09-06 ソニー株式会社 情報処理装置および方法、並びにプログラム
US7536725B2 (en) * 2003-07-28 2009-05-19 Limelight Networks, Inc. Authentication of content download
CN1871589A (zh) * 2003-10-03 2006-11-29 杰出网络公司 多内容下载
FI20031856A0 (fi) * 2003-12-18 2003-12-18 Nokia Corp Menetelmä tietotallenteen eheyden varmistamiseksi
JP4732746B2 (ja) * 2004-01-08 2011-07-27 パナソニック株式会社 コンテンツ配信システム、ライセンス配信方法および端末装置
US7231587B2 (en) * 2004-03-29 2007-06-12 Lsi Corporation Embedded picture PSNR/CRC data in compressed video bitstream
WO2005096119A1 (en) 2004-04-02 2005-10-13 Matsushita Electric Industrial Co., Ltd. Unauthorized contents detection system
US8977859B2 (en) * 2004-05-04 2015-03-10 Elsevier, Inc. Systems and methods for data compression and decompression
US7703073B2 (en) 2004-06-08 2010-04-20 Covia Labs, Inc. Device interoperability format rule set and method for assembling interoperability application package
MX2008003179A (es) * 2005-09-08 2008-03-18 Ericsson Telefon Ab L M Metodo y disposicion para autentificacion de dispositivo ergonomico.
US20090133129A1 (en) * 2006-03-06 2009-05-21 Lg Electronics Inc. Data transferring method
US8266182B2 (en) 2006-06-30 2012-09-11 Harmonic Inc. Transcoding for a distributed file system
US8219817B2 (en) * 2006-07-11 2012-07-10 Dialogic Corporation System and method for authentication of transformed documents
JP4991223B2 (ja) 2006-09-08 2012-08-01 ルネサスエレクトロニクス株式会社 データ処理装置
KR100885722B1 (ko) * 2007-03-02 2009-02-26 주식회사 케이티프리텔 사용자 생성 컨텐츠 보호 시스템 및 그 방법
US20080244686A1 (en) * 2007-03-27 2008-10-02 Witness Systems, Inc. Systems and Methods for Enhancing Security of Files
JP5142599B2 (ja) * 2007-06-15 2013-02-13 キヤノン株式会社 情報処理装置及びその制御方法、コンピュータプログラム
GB2503128B8 (en) * 2008-10-09 2014-03-12 Sonicwall Inc Computer networks
JP2010273025A (ja) 2009-05-20 2010-12-02 Sony Corp 電子機器、コンテンツ転送システム、コンテンツ転送方法及びプログラム
US8645511B2 (en) * 2009-10-13 2014-02-04 Google Inc. Pre-configuration of a cloud-based computer
JP5697139B2 (ja) * 2009-11-25 2015-04-08 Kddi株式会社 2次コンテンツ提供システムおよび方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6223272B1 (en) * 1998-07-15 2001-04-24 Siemens Aktiengesellschaft Test vector verification system
KR20050116350A (ko) * 2004-06-07 2005-12-12 (주)잉카엔트웍스 개인 휴대 단말기를 위한 멀티미디어 데이터 편집, 제공장치 및 방법
US20090286560A1 (en) * 2006-01-13 2009-11-19 Michael John Willis System and method for mobile content generation
JP2008146712A (ja) * 2006-12-07 2008-06-26 Hitachi Ltd コンテンツ記録再生装置
JP2009059234A (ja) * 2007-08-31 2009-03-19 I-O Data Device Inc コンテンツ管理方法、そのプログラム、および記録媒体

Also Published As

Publication number Publication date
US11024200B2 (en) 2021-06-01
US20160036885A1 (en) 2016-02-04
RU2017102698A (ru) 2018-07-27
US11928986B2 (en) 2024-03-12
JP6677726B2 (ja) 2020-04-08
CN106537402A (zh) 2017-03-22
RU2017102698A3 (ko) 2018-07-27
JP2017534127A (ja) 2017-11-16
RU2667780C2 (ru) 2018-09-24
BR112017001468A2 (pt) 2017-12-05
EP3155546A4 (en) 2018-02-28
US20220130283A1 (en) 2022-04-28
EP3155546A1 (en) 2017-04-19
KR101944637B1 (ko) 2019-01-31
WO2016019358A1 (en) 2016-02-04

Similar Documents

Publication Publication Date Title
US11928986B2 (en) Content format conversion verification
US10771248B2 (en) Content individualization
US7461406B2 (en) Access control for digital content
TWI338284B (ko)
US7379549B2 (en) Access control for digital content
CN1287249C (zh) 对数字内容的访问控制装置和方法及再现装置
US7478238B2 (en) Access control for digital video stream data
US20100100742A1 (en) Transport Stream Watermarking
US9794230B2 (en) Method and system for encrypting multimedia streams
KR20170108094A (ko) 다중 스크린 환경을 위한 디지털 시네마 패키지를 병합하기 위한 시스템 및 방법
JP5863254B2 (ja) 変換装置、情報配信装置、通信システム、制御方法及びプログラム
US20050044045A1 (en) Access control for digital content
JP4886831B2 (ja) コンテンツ記録装置、再生装置、編集装置およびその方法
JP2012064135A (ja) 情報処理装置、および情報処理方法、並びにプログラム
JP5350021B2 (ja) ファイル生成装置、ファイル再生装置およびコンピュータプログラム
US20090089589A1 (en) Information processing apparatus for protected data files and information processing method thereof
JP5395866B2 (ja) 記録再生システム、記録装置及び再生装置
BR112017001468B1 (pt) Método e aparelho para verificação de conversão de conteúdo, e, mídia legível por computador não transitória
US20090182997A1 (en) System and method for detecting
KR100728242B1 (ko) 스트리밍 서비스되는 동영상 파일의 보호 시스템 및 그의보호 동영상 생성/재생 장치 및 그 방법
JP4891791B2 (ja) コンテンツ配信サーバおよびコンテンツ配信システム
JP2006345234A (ja) 暗号化装置および暗号化方法、復号装置および復号方法、並びにプログラム
WO2011013196A1 (ja) 情報処理装置
JP2007013427A (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