KR20100018564A - 디지털 비디오 콘텐츠를 선택적으로 암호화 및 디코딩하는 방법 및 그 인코더 및 디코더 - Google Patents

디지털 비디오 콘텐츠를 선택적으로 암호화 및 디코딩하는 방법 및 그 인코더 및 디코더 Download PDF

Info

Publication number
KR20100018564A
KR20100018564A KR1020097026095A KR20097026095A KR20100018564A KR 20100018564 A KR20100018564 A KR 20100018564A KR 1020097026095 A KR1020097026095 A KR 1020097026095A KR 20097026095 A KR20097026095 A KR 20097026095A KR 20100018564 A KR20100018564 A KR 20100018564A
Authority
KR
South Korea
Prior art keywords
packet
video content
digital video
sof
packets
Prior art date
Application number
KR1020097026095A
Other languages
English (en)
Other versions
KR101341268B1 (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 KR20100018564A publication Critical patent/KR20100018564A/ko
Application granted granted Critical
Publication of KR101341268B1 publication Critical patent/KR101341268B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/08Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
    • H04N21/23476Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption by partially encrypting, e.g. encrypting the ending portion of a movie
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23611Insertion of stuffing data into a multiplex stream, e.g. to obtain a constant bitrate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • 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/4402Processing 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 reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440281Processing 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 reformatting operations of video signals for household redistribution, storage or real-time display by altering the temporal resolution, e.g. by frame skipping
    • 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/4405Processing 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 video stream decryption
    • H04N21/44055Processing 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 video stream decryption by partially decrypting, e.g. decrypting a video stream that has been partially encrypted
    • 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/4408Processing 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 video stream encryption, e.g. re-encrypting a decrypted video stream for redistribution in a home network
    • 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/44213Monitoring of end-user related data
    • H04N21/44222Analytics of user selections, e.g. selection of programs or purchase activity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

본 발명에 따른 임의의 실시예는 디지털 비디오 콘텐츠를 포함하는 복수의 패킷을 수신하는 단계, 프레임의 시작(SOF) 헤더를 포함하는 패킷을 식별하는 단계, SOF 헤더를 포함하는 패킷에 패딩을 삽입하여 SOF 헤더를 포함하는 패킷의 콘텐츠를 그 이전 또는 그 이후의 패킷으로 이동시켜 패딩된 SOF 헤더를 포함하는 패킷을 생성하는 단계, 선택 기준에 따라 SOF 헤더를 포함하는 패킷을 제외하고 암호화를 위한 임의의 패킷을 선택하는 단계, 선택된 패킷을 암호화하는 단계 및 SOF 헤더를 포함하는 패킷을 비암호화된 상태로 유지하여 선택적으로 암호화된 디지털 비디오 콘텐츠를 형성하는 단계를 포함하는 디지털 비디오 콘텐츠를 선택적으로 암호화하는 방법을 포함한다. 이에 대응하는 디코딩 방법과 인코딩 및 디코딩 장치가 또한 상술된다. 다른 실시예들이 이 요약에 상술된 형태로부터 벗어날 수 있으므로 이 요약은 한정하려는 의도는 아니다.
디지털 비디오 콘텐츠, SOF 헤더, 패딩, 선택적 암호화

Description

디지털 비디오 콘텐츠를 선택적으로 암호화 및 디코딩하는 방법 및 그 인코더 및 디코더{SELECTIVE ENCRYPTION TO ENABLE TRICK PLAY WITH ENHANCED SECURITY}
<관련 출원>
이 출원은 본 원에서 원용하는 2006년 12월 19일자로 발명자 Candelore 및 그 외 발명자에게 허여된 미국 특허 7,151,833호와 관련되며, 이 특허에 개시된 모든 문서는 본 원에서 참조 및 원용된다.
<저작권 및 상표 공지>
이 특허 문서의 일부 개시물은 저작권 보호를 받는 자료를 포함한다. 저작권 소유자는 특허 문서 또는 특허 개시물이 특허상표청의 특허 파일 또는 기록들에 나타나 있으므로 그 팩시밀리 재현에는 이의를 제기하지 않지만, 그 이외의 경우에는 어떠한 것에 대해서도 모든 저작권을 소유한다.
MPEG(동화상 전문가 그룹) 디지털 비디오와 같은 디지털 비디오가 다양한 트릭 플레이(trick play) 모드로 재생될 경우, 전체적으로 I 프레임, P 프레임 또는 B 프레임에의 접근이 요구된다. I 프레임, P 프레임 또는 B 프레임은 영상을 직접적으로 나타내는데 사용될 수 있는 정보를 포함하며, 영상들은 앞선 및/또는 다음 의 I 프레임과 P 프레임 정보를 참조하고 수정함으로써 B 프레임을 사용하여 생성된다. 예시로서, 재생이 2배 속도 또는 4배 속도로 실행될 때, 임의의 프레임을 건너뛰면서 비디오 프레임의 제시(presentation) 속도를 빠르게 하기 위해서 재생 알고리즘은 I 프레임에서 I 프레임으로 또는 P 프레임에서 P 프레임으로 건너뛴다. 1배 속도 보다 느리게 실행될 때는 B 프레임이 필요하다.
불행히도, 콘텐츠가 전형적인 암호화 기술을 사용하여 암호화되었을 경우, I 프레임, P 프레임 및/또는 B 프레임을 찾기 위한 목적으로 콘텐츠가 복호화되어야만 하기 때문에 트릭 플레이는 어렵거나 불가능하다. 따라서, 이것은 전달 시스템을 통해 전달되는 암호화와 동일한 암호화를 사용하여 컨텐츠를 기록하는 것을 불가능하게 만든다. 비암호화된 콘텐츠의 경우, 이러한 프레임들은 프레임 시작부(SOF)로부터의 오프셋을 계산함으로써 접근된다. 발명자 Candelore 및 그 외의 발명자에게 허여된 미국 특허 7,151,833호에서는, 이러한 문제의 해결책으로서 선택적 암호화가 사용된다. 이 특허에 개시된 임의의 실시예에서는, 임의의 패킷이 선택 기준에 따라 암호화를 위해 선택되는 - 선택된 패킷들은 프레임 시작(SOF) 헤더를 포함하는 패킷을 제외함 - 디지털 비디오 콘텐츠를 선택적으로 암호화하고 디코딩하는 방법이 제공된다. 선택된 패킷들은 SOF 헤더를 포함하는 패킷은 비암호화 상태로 유지시킨 채 암호화되어 선택적으로 암호화된 디지털 비디오 콘텐츠를 형성한다. 선택적으로 암호화된 디지털 비디오 콘텐츠를 저장 매체에 기록함에 있어서, SOF 헤더로부터의 I 프레임과 P 프레임 중 적어도 하나에 대한 오프셋을 계산하고, 계산된 오프셋은 오프셋 테이블로서 저장된다. 그 후, 선택적으로 암호화 된 디지털 비디오 콘텐츠의 트릭 플레이가 동작되도록 오프셋 테이블에 접근할 수 있다. 이러한 방식으로, 트릭 플레이가 적절하게 이루어질 수 있다.
본 발명의 목적 및 장점과 함께 구성 및 동작 방법을 설명하는 임의의 실시예는 첨부된 도면과 연결된 상세한 설명을 참고하면 가장 잘 이해할 수 있을 것이다.
도 1은 본 발명의 임의의 실시예에 따른 선택적 암호화 프로세스와 디코딩 프로세스를 도시하는 흐름도.
도 2는 본 발명의 임의의 실시예에 따른 선택적 암호화와 디코딩 프로세스의 일 실시예를 도시하는 도면.
도 3은 본 발명의 임의의 실시예에 따른 선택적 암호화와 디코딩 프로세스의 또 다른 실시예를 도시하는 도면.
도 4는 본 발명의 임의의 실시예에 따른 암호화 프로세서나 디코더를 나타낼 수 있는 프로그래밍된 프로세서를 도시하는 도면.
본 발명은 여러 다른 형태의 실시예가 있을 여지가 있지만, 본 원에서는 특정 실시예에 대해서만 도시 및 상술될 것이되, 그러한 실시예들의 기재가 본 발명 원리의 예로서 고려되어야 하며 본 발명을 도시 및 기재된 특정 실시예들에만 한정시키려는 의도는 아닌 것으로 이해해야 한다. 이하 설명에서, 도면을 바라보는 다각적인 견해를 고려하여 동일하거나 유사하거나 상응하는 부분들을 설명하는데 동일한 참조 부호를 사용한다.
본 원에서 사용되는 "하나" 라는 용어는 한 개 또는 두 개 이상을 말한다. 본 원에서 사용되는 "복수" 라는 용어는 두 개 또는 세 개 이상을 말한다. 본 원에서 사용되는 "포괄하는" 및/또는 "가지는" 이라는 용어는 포함하고 있음을 말한다(즉, 개방어). 본 원에서 사용되는 "결합되는" 이라는 용어는 반드시 직접적으로 연결되지 않거나 반드시 기계적으로 연결되지 않더라도 연결되어 있음을 의미한다. 본 원에서 사용되는 "프로그램" 이나 "컴퓨터 프로그램" 혹은 그와 유사한 용어는 컴퓨터 시스템에서 실행하기 위해 설계된 명령의 연속을 의미한다. "프로그램" 이나 "컴퓨터 프로그램" 은 서브루틴과, 함수와, 처리 절차와, 객체 매소드와, 객체 구현과, 실행 가능한 응용소프트웨어와, 애플릿과, 서블릿과, 소스 코드와, 목적 코드와, 공유 라이브러리 / 동적 로드 라이브러리 및/또는 이외의 컴퓨터 시스템에서 실행되기 위해 설계된 명령의 연속을 포괄할 수 있다.
본 명세서 전반에 걸친 "일 실시예" 또는 "임의의 실시예" 또는 "실시예" 또는 그 유사한 용어에 대한 참조는 실시예와 연관되어 상술된 특정 형태나, 구조나, 특성이 적어도 본 발명의 일 실시예에 포괄되어 있음을 의미한다. 따라서, 본 명세서 여러 곳에서 그러한 문구의 등장 시, 필연적으로 모두 동일한 실시예가 참조 되는 것이 아니다. 또한, 특정한 형태나, 구조나, 특성이 제한 없이 하나 이상의 실시예에서 어떠한 적절한 방식을 통해서든 결합될 수 있다.
본 원에서 사용되는 "또는" 이라는 용어는 임의 하나 또는 임의 조합 모두를 의미하거나 포괄하는 것으로 해석된다. 따라서, "A,B 또는 C"는 "이하 열거된 것 중 임의의 것: A; B; C; A와 B; B와 C; A와 C; A와 B와 C;"를 의미한다. 상기 정의에 대한 예외는 구성 요소나, 기능이나, 단계나, 수행의 조합이 어떤 점에서 본래부터 상호 배타적일 때만 발생한다.
본 원에서 사용되는 "프로그램" 이라는 용어는 또한 제2의 문맥적 의미로 사용될 수도 있다(이상의 정의는 제1의 문맥적 정의임). 제2의 문맥적 의미에서, 이 용어는 "텔레비전 프로그램" 이라는 의미로 사용된다. 이 문맥에서, "프로그램"이라는 용어는 콘텐츠가 영화거나, 스포츠 경기이거나, 연속 물의 한 단편이거나, 뉴스 등이든 상관없이, 하나의 텔레비전 프로그램으로서 전자 프로그램 안내(EPG)를 통해 해석되고 보도될 것인 음성 영상 콘텐츠의 임의 일관된 연속을 의미한다. 이 용어는 전자 프로그램 안내를 통해 프로그램으로서 보도되지는 않을 수도 있는 광고 영역과 프로그램 비슷한 다른 콘텐츠를 포함하는 것으로 해석될 수도 있다.
"스크램블" 과 "암호화" 및 그것들의 어미가 변화된 용어는 본 원에서 동일한 의미로 사용된다. 본 원에서 사용되는 "비디오" 라는 용어는 비디오 신호뿐만 아니라 연관된 오디오 및 데이터를 포함하기 위해 실제 시각적 정보뿐만 아니라 대화형 의미에서의 시각적 정보(예를 들어, "비디오 테이프 레코더")를 포함한다. 본 발명은 전체적으로 "이중 선택적 암호화" 실시예를 사용하나, 당업자는 본 발명을 벗어나지 않는 다중의 부분적 암호화를 실현하도록 본 발명이 이용될 수 있음을 알 수 있을 것이다. "부분적 암호화" 와 "선택적 암호화" 라는 용어는 본 원에서 동일하게 사용된다.
본 원에서 사용되는 "레거시" 라는 용어는 현행 케이블과 위성 시스템을 위해 사용되는 현행 기술을 참조한다. 본 원에 개시된 실시예들은 텔레비전 셋탑박스(STB)에 의해 디코딩되나, 별도의 상자로 홀로 하우징되어있든 기록 및/또는 재생 장치 또는 수신제한(CA) 암호화 모듈과 함께이든 텔레비전 세트 자체와 함께이든, 텔레비전 모든 타입의 수신기 내에 곧 포함될 것임이 예상된다. 본 문서는 전체적으로 "단일 부분적 암호화" 실시예를 사용하나, 당업자는 본 발명을 벗어나지 않는 이중의 혹은 다중의 부분적 암호화를 실현하도록 본 발명이 이용될 수 있음을 알 수 있을 것이다.
상기 공유된 특허 및 그에 포함된 관련 특허 출원은 부분적 암호화 또는 선택적 암호화로서 전체적으로 본원에 참조된 방법의 다양한 양태와 관련지어 발명을 상술한다. 더 구체적으로, 디지털 콘텐츠의 특정 선택에 의해 선택된 부분은 두 개(혹은 그 이상)의 암호화 기술을 사용하여 암호화되는 반면 콘텐츠의 다른 부분은 비암호화 상태로 남겨지는 시스템이 기술된다. 암호화될 부분을 적절하게 선택함으로써, 전체 콘텐츠를 선택하여 암호화할 필요없이 콘텐츠가 다중 복호화 시스템 하에서 사용되도록 유효하게 암호화된다. 몇몇의 실시예에서, 다중 암호화 시스템을 사용하여 콘텐츠를 유효하게 암호화하기 위해서는 적은 퍼센트의 데이터 오버헤드만이 필요하다. 이것은 케이블 또는 위성 시스템이 단일 시스템에서 여러 제조업자로부터 만들어진 셋탑 박스 또는 수신 제한(CA) 수신기의 기타 구현물을 이용할 수 있게 해주어, 따라서 케이블이나 위성 사업자가 경쟁적으로 셋탑 박스의 공급자를 물색해야하는 것으로부터 자유롭게 해주는 결과를 가져온다.
본 발명은 암호화된 디지털 비디오 콘텐츠의 트릭 플레이를 동작시키는 문제에 대해 유사한 선택적 암호화 기술을 적용한다. 상기 특허 출원에 상술된 부분적 암호화 프로세스는 임의 적절한 암호화 방법을 이용한다. 그러나, 이러한 암호화 기술은 상기 특허 출원에 상술된 기술을 사용함으로써 전체 데이터 스트림을 암호화하기 보다는 데이터 스트림에 선택적으로 적용된다. 일반적으로, 한정하려는 의도는 아니되, 전체 프로그램이 이중(dual) 암호화를 거칠 필요가 없도록 하기 위해서 선택적 암호화 프로세스는 암호화할 정보의 지능적 선택을 이용한다. 암호화할 데이터를 적절히 선택함으로써, 시스템을 해킹하여 돈을 지불하지 않고 불법적으로 상업용 콘텐츠를 복원하길 원하는 사용자에게 프로그램 자료(program material)를 계속적으로 스크램블링 및 은폐시킬 수 있다. 오디오 및 비디오 데이터를 나타내는데 사용되는 MPEG(또는 유사한 포맷) 데이터는 프레임마다 중복되는 정보에 크게 의존하여 그와 같이 행한다. 색도 및 휘도 데이터를 나타내는 "고정(anchor)" 데이터로서 임의의 데이터가 전송될 수 있다. 블록(block)의 움직임을 표시하는 모션 벡터(motion vector)를 보냄으로써 이러한 데이터는 대개 간단히 스크린 곳곳에 이동되어 그 이후의 프레임들을 생성한다. 색도 및 휘도 데이터의 변경은 또한 절대적인 고정 데이터를 기록하기 보다는 변경된 것대로 인코딩된다. 따라서, 예를 들어, 이러한 고정 데이터 암호화 또는 다른 키(key) 데이터가 효과적으로 비디오가 보여지지 않도록 만들 수 있다.
본 발명에 따른 임의의 실시예에서, 암호화되기 위해 선택된 비디오 데이터는 이하 나열된 것들의 임의 개별적 하나 또는 조합일 수 있다(상기 출원에 더 자세히 상술됨): 비디오 프레임의 활동(active) 영역에 나타나는 비디오 슬라이스 헤더; 비디오 프레임의 활동 영역을 나타내는 데이터; 비디오 프레임 내 별(star) 패턴의 데이터; 장면 전환을 나타내는 데이터; I 프레임 패킷; I 프레임을 뒤따르는 제1 P 프레임 내 모션 벡터를 포함하는 패킷; 인트라_슬라이스_플래그 표시자를 가지는 패킷 세트; 인트라_슬라이스 표시자를 가지는 패킷 세트; 인트라_코디드_매크로블록(intra_coded_macroblock)을 포함하는 패킷; 인트라_코디드_매크로블록을 포함하는 슬라이스를 위한 패킷; 비디오 슬라이스 헤더를 뒤따르는 제1 매크로블록에서부터의 데이터; 비디오 슬라이스 헤더; 고정 데이터 및 순차적으로 리프레시되는 비디오 데이터를 위한 P 프레임 데이터를 포함하는 패킷; 비디오 프레임 상에 수직 또는 수평의 모트(moat) 패턴으로 배열된 데이터;및 비디오 및/또는 오디오를 이용하기 어렵도록 만드는 임의 여타의 선택된 데이터. 여러 이러한 기술 및 다른 기술은 상기 특허 출원에 개시되어 있고, SOF 헤더를 포함하는 패킷이 암호화되어 있지 않는 한 이 중(또는 다른 기술) 어느 것이라도 본 발명에서 콘텐츠의 일부만을 암호화하는데 이용될 수 있고, 이는 후술될 것이다.
현재로서는, 개인-비디오-레코더(PVR)를 지원하는 셋탑 박스에 콘텐츠를 전달할 때의 문제점은 트릭 플레이의 동작을 위해 콘텐츠가 우선 디스크램블링되어야만 하는 것에 있다. 콘텐츠가 밤에 캐루셀(carrousel)로부터 "기회주의적으로" 다운로드 되면, 콘텐츠를 디스크램블링(및 국지적으로 재스크램블링)하는 것은 보안 문제점을 야기할 수 있다. 콘텐츠를 국지적으로 재스크램블링하기 위해 사용되는 키(keys)는 수신 제한(CA) 요소로부터의 키만큼 안전하지 않을 것이다. 하드 드라이브 상의 콘텐츠는 적당한 열람료 지불없이 접근될 수도 있다. 이상적으로, "기회주의적으로" 또는 이론적으로 셋탑 박스의 국지 드라이브에 전달된 콘텐츠는 하드 드라이브 상에 CA 스클램블된 상태로 남게될 것이다.
본 발명의 임의의 실시예에 따르면, 선택적 암호화는 콘텐츠의 선택적 부분을 암호화하기 위해 이용되나, SOF 헤더를 포함하는 패킷을 평문(clear) 상태(비암호화된 상태)로 남겨둔다. SOF 헤더가 비암호화된 상태로 남겨짐으로써, 트릭 플레이 회로와 알고리즘은 적절하게 동작될 수 있다. 구체적으로, 트릭 플레이 회로와 알고리즘이 찾고 있는 것은, 프레임이 I,B 또는 P인지 표시하는 SOF 헤더의 화상_코딩_타입 식별자(picture_coding_type identifier) 및 화상 프레임 시작 코드이다. 계류중인 출원에 상술된 선택적 암호화 체계 중 임의 것 또는 임의 여타의 적당한 선택적 암호화 콘텐츠 선택 기준에 따라 콘텐츠의 나머지 부분은 전체적으로 또는 선택적으로 암호화될 수 있다.
미국 특허 7,151,833호에서는, 스트림을 수신(및 추후 상영)하는 장치에 의해 트릭 플레이 색인 파일이 생성될 수 있도록 SOF를 포함하는 패킷을 평문 상태로 남겨두는 접근법에 의해 트릭 플레이를 해결한다. 그러나 불행히도, 효과적으로 트릭 플레이를 제공하지만, SOF를 포함하는 패킷 중의 민감한(sensitive) 정보는 도용 및 비허가된 사용에 취약하다. SOF를 가지는 패킷은 또한 전형적으로 I SOF 보다 앞서 전달되는 팩(pack) 헤더 또는 시퀀스 헤더를 포함할 수 있다. 일례로서, 이러한 민감한 정보는 적절하게 콘텐츠의 압축을 푸는데 필요한 동적 정보를 포함할 수 있다:1)양자화 테이블 및 2)화상 코딩 정보. 그것은 1)저작권 공지 및 2)임베디드 복사 제어 정보(CCI)와 같은 식별(identification) 및 사용 제어 정보 또한 포함한다. SOF 패킷은 또한 실제 콘텐츠, 예를 들어 프레임의 처음 몇몇의 슬라이스를 또한 포함할 수도 있다. 이러한 정보가 평문 상태로 남겨짐으로써, 해커는 PassageTM 의 선택적인 다중 암호화를 이하 논의되거나 다른 형태의 암호화로서 역설계할 수도 있다. 또한, 콘텐츠의 식별이 손상될 수 있을뿐만 아니라, 콘텐츠가 복사나 배포되는데 규제 없이 항상 "복사 프리(copy free)" 하도록 조작될 수도 있다.
본 발명에 따른 실시예는 SOF 패킷 패딩 내의 보통은 평문 상태인 민감한 정보 또는 화상 시작 코드와 식별자를 또 다른 패킷에 대해 배치(효과적으로 이동)함으로써, 특허 7,151,833 호의 발명보다 개선되었다. 임의 경우에, 민감한 정보를 가지는 패킷은 암호화된다.
전형적으로 SOF 패킷 중에 있는 민감한 정보는 보호(복제 및 암호화) 과정을 거치도록 선택될 수 있기 때문에, 이러한 접근법은 또한 상기 특허의 관련 문서(여기서, 중요한(critical) 정보는 복제 및 암호화되고 나머지 다른 데이터는 평문 상태로 남겨짐)에 상술된 PassageTM의 선택적 암호화와 함께 사용될 수 있다. 즉, 예를 들어, 중요한 데이터를 가지는 I 프레임 화상 헤더의 패킷을 평문 상태로 남겨두어 트릭 플레이를 허용하는 대신에, 그것의 페이로드가 암호화를 위한 "중요한 패킷"으로 선택될 수 있는 이후의 패킷(예를 들어, 바로 다음 패킷)으로 시프트된다. 이와 같은 방식으로 하여, 민감한 정보는 암호화를 위해 선택되고 적절하게 트릭 플레이를 실행하는 능력이 유지된다. 또 다른 시나리오에서는, 화상_코딩_타입 식별 필드를 가지는 화상 헤더 보다 앞서는 팩 헤더나 시퀀스 헤더가 있을 수 있다. 팩 헤더나 시퀀스 헤더는 민감한 정보를 포함할 수도 있다. 이 시나리오에서는, 팩 헤더나 시퀀스 헤더는 보호 과정을 거칠 수 있고, 평문 상태로 남겨지는 다른 패킷으로 이동되며, 화상_코딩_타입 식별자 필드를 가지는 화상 헤더이다. 따라서, 본 발명의 임의의 실시예에 따르면, 프레임이 I,P 또는 B 프레임인지 식별될 수 있도록 민감한 데이터는 SOF 패킷(화상 프레임 시작 코드와 식별자를 가짐)으로부터 분리되나, 민감한 데이터는 암호화된 다른 패킷에 배치된다. 따라서, 민감한 데이터는 평문은 아니지만, 트릭 플레이 색인 파일의 생성을 보장할 수 있도록 프레임의 아이덴티티(identity)는 평문으로 남겨진다. 그러나, 민감한 정보는 암호화된다.
도 1은 본 발명의 임의의 실시예에 따른, 단계(104)에서 시작하는 프로세스(100)를 도시한다. 패킷 선택 기준은 패킷을 암호화할 것인지 판정하는 단계(108)에서 확립된다. 이러한 선택 기준은, 예를 들어, 상기 선택적 암호화 선택 기준(SOF 헤더 패킷을 제외한 모든 콘텐츠의 전체적으로 암호화를 포함) 중 임의 것에 따라 확립될 수 있고, 때때로 변경될 수도 있다. 일단 선택 기준이 확립되면, 단계(112)에서 패킷을 수신할 수 있다. 단계(116)에서 패킷이 선택 기준을 충족시키지 못하면 패킷은 단계(120)에서 암호화되지 않고 그 후, 단계(126)로 전달된다. 단계(116)에서 패킷이 선택 기준을 충족시키면 패킷이 SOF 헤더를 포함하는지 여부를 판정하기 위해 패킷을 검사하는 단계(126)로 직접 제어가 진행된다. 헤더를 포함하면, 패킷은 단계(128)에서 암호화되지 않는다. 헤더를 포함하지 않으면, 패킷은 단계(130)에서 암호화된다.
단계(128) 내지 단계(132)로 제어가 진행되는 과정에서, 데이터 스트림 내에서 보호하고자 하는 정보의 위치를 그 다음의 위치로 시프트시키는 방식으로 데이터를 삽입시킴으로써, 단계(132)에서 임의 민감한 정보나 암호화에 의해 보호하고자하는 정보를 패딩시킨다(pad out). 민감한 데이터를 화상 프레임 시작 코드 및 식별자로부터 데이터 스트림 내 또 다른 위치로 제한없이 이동시키는 최종 결과를 얻을 수 있는 임의 방식으로 패딩은 완수될 수 있고, 모든 그러한 방법을 적절하게 본원에서는 패딩이라 한다. 양호한 실시예에서는, 예를 들어, ITU-T 권고 H.222.0(07/95 개정)(또한 ITU-T Rec.H.222.0 (1995E) 또는 ISO/IEC 13818-1 : 1996(E)로서 알려짐)- 이 전체 내용을 본 원에서 원용함 -의 2.4.3 장(章)에서 자세히 상술되고 - "전송 스트림의 구문(syntax) 및 의미(semantics)의 규격" - 표 2-2 와 2-6에 자세히 도시된 것과 같은 적응 필드를 사용함으로써 패딩 기능은 수행될 수 있다. 그러한 실시예에서, 적응 필드 방법은 스터핑 바이트(stuffing byte)를 직접적으로 사용할 수 있거나 "개인 데이터"를 사용하여 가짜(bogus) 데이터를 생성할 수 있다. 이러한 기술을 사용하기 위해서, 적응 필드가 아직 하나도 존재하지 않는다면 필드가 생성된다. 스터핑 바이트가 사용된다면 위에서 참조된 ITU-T H.222.0에 정의된 바와 같이 "1111 1111"의 값을 가진다. 그리고 가짜 데이터가 생성되면, 그것은 임의 값을 가질 수 있다. 스터핑 바이트와 스터핑 프로세스는 2.4.3 장의 표와 대략 페이지 20과 페이지 38(문서의 페이지 매김에 따라 달라짐)에서 논의되어 있다. 필드를 바로 다음의 패킷으로 옮기는 또 다른 가능한 방법은 스트림 구문을 사용하는 것일 수 있다. 스트림 구문의 예시는 비트 및 바이트를 패딩시키는(pad out) 방법으로서 다양한 헤더 구조의 파싱의 일부인 "next_start_code()" 함수를 사용할 수도 있다. 임의 개수의 바이트가, "0000 0000"의 값으로 설정되어 사용될 수 있다. 따라서 적응 필드를 사용하거나 스트림 구조를 사용하는 그러한 바이트는 본 발명의 실시예에 따른 패딩을 완수하는데 사용될 수 있다. 당업자라면 본 발명의 교시를 고려하여 다른 패딩 방법들을 생각해낼 수도 있다.
단계(130 또는 132)로부터 단계(134)로 제어가 진행한다. 단계(134)에서, 마지막 패킷이 아직 등장하지 않았다면, 바로 다음 패킷은 단계(112)에서 수신되고 프로세스는 콘텐츠의 끝부분(마지막 패킷)이 도달될 때까지 반복된다. 마지막 패킷이 단계(134)에서 수신된 경우, 프로세스는 단계(138)에서 멈춘다. 이 문서의 목적을 달성하기 위해, 그러한 패킷으로부터의 정보는 그 다음의 패킷(마지막 패킷일 수 있음)에 패딩되기 때문에 마지막 패킷은 SOF 헤더를 포함하지 않음을 가정한다.
이와 같이, 본 발명의 일 실시예에 따르면, 디지털 비디오 콘텐츠를 선택적으로 암호화하는 방법은; 디지털 비디오 콘텐츠를 포함하는 복수의 패킷을 수신하는 단계; 프레임의 시작부(SOF)를 포함하는 패킷을 식별하는 단계; 민감한 데이터가 SOF 헤더를 가지는 패킷에 속하지 않도록 하기 위해 패딩을 이용하여 SOF 헤더의 위치를 조정하도록 패킷에 패딩을 삽입하는 단계; 선택 기준에 따라 암호화를 위한 임의의 패킷을 선택하는 단계 - 선택된 패킷들은 프레임 시작(SOF) 헤더를 포함하는 패킷을 제외함 -; 선택된 패킷이 암호화되는 단계; 및 선택적으로 암호화된 디지털 비디오 콘텐츠를 형성하기 위해 SOF 헤더를 포함하는 패딩된 패킷을 비암호화된 상태로 유지하는 단계를 포함한다.
이와 같이, 임의의 실시예에서는, 선택적으로 암호화된 디지털 비디오 콘텐츠는 전자 저장 매체 상에 저장되고/또는 수신기로 전송된다. 임의의 실시예에서는, 선택 기준은 SOF 헤더를 포함하는 패킷을 제외한 모든 패킷의 선택을 포함한다. 임의의 실시예에서는, 선택 기준은 SOF 헤더를 포함하는 패킷을 제외한 임의의 패킷의 선택을 포함하며, 임의의 패킷은 SOF 헤더를 포함하는 패킷을 제외한 나머지 모든 패킷의 수보다 적다. 임의의 실시예에서는, 이 방법은 프로그래밍된 프로세서 상에서 실행된다. 임의의 실시예에서는, 패딩된 패킷은 데이터를 그 이후의 패킷으로 진행시키기 위해 적응 필드의 개인적 데이터 필드에 스터핑 바이트나 가짜 데이터를 삽입하고/또는 SOF 헤더를 그 이후의 패킷으로 진행시키기 위해 0의 채움 문자(fill chracter)- 이것은 디코더의 next_start_code 검색 특성에 의해 필터링 될 것임 -를 사용함으로써 패딩된다. 임의의 실시예에서는, 선택 단계는 SOF 헤더를 포함하는 패딩된 패킷 전 또는 후의 패킷을 선택하는 단계를 포함한다. 전자 저장 매체는 프로그래밍된 프로세서에서 수행될 때 이 방법을 실행하는 명령어를 저장할 수 있다.
또 다른 실시예에서는, SOF 헤더를 포함하는 비암호화된 패킷을 가지는 선택적으로 암호화된 디지털 비디오 콘텐츠를 디코딩하는 방법은 선택적으로 암호화된 디지털 비디오 콘텐츠를 수신하는 단계 - SOF 헤더를 포함하는 패킷에 처음에 나타나는 콘텐츠가 암호화되거나 그 이후의 패킷으로 이동되는 SOF 헤더와 함께 암호화된 원래의 패킷으로 유지되는 그 이후의 패킷으로 진행되도록 패딩됨 - ; SOF 헤더로부터의 I 프레임과 P 프레임 중 적어도 하나의 오프셋을 계산하는 단계; 및 계산된 오프셋을 오프셋 테이블로서 저장하는 단계를 포함한다.
임의의 실시예에서는, 이 방법은 선택적으로 암호화된 디지털 비디오 콘텐츠의 트릭 플레이를 가능하게 하기 위해 오프셋 테이블에 접근하는 단계를 더 포함할 수 있다. 임의의 실시예에서는, 선택적으로 암호화된 디지털 비디오 콘텐츠는 전자 저장 매체 상에 저장된다. 임의의 실시예에서는, 선택적으로 암호화된 디지털 비디오 콘텐츠는 콘텐츠 공급자로부터 수신기에 전송된다. 임의의 실시예에서는, 암호화된 디지털 비디오 콘텐츠는 SOF 헤더를 포함하는 패킷을 제외하고 전체적으로 암호화된다. 임의의 실시예에서는, SOF 헤더를 포함하는 패킷 및 임의의 다른 패킷은 비암호화되는 한편, 임의 부가적인 패킷은 암호화된다. 임의의 실시예에서는, 패딩된 패킷은 데이터를 그 이후의 패킷으로 진행시키기 위해 적응 필드의 개인적 데이터 필드에 스터핑 바이트나 가짜 데이터를 삽입함으로써 패딩된다. 임의의 실시예에서는, 선택 단계는 SOF 헤더를 포함하는 패킷 전 또는 후의 패킷을 선택하는 단계를 포함한다. 임의의 실시예에서는, 프로세스는 프로그래밍된 프로세서 상에서 실행될 수 있다. 임의의 실시예에서는, 전자 저장 매체는 프로그래밍된 프로세서에서 수행될 때 이 방법을 실행하는 명령어를 저장한다.
도 2는 평문의(clear) 데이터 스트림(204)이 선택적으로 암호화된 데이터 스트림(208)으로 변환되는 프로세스의 실시예를 도시한다. 평문 스트림(204)은 각각 프로그램 식별자(PID) A를 가지는 패킷들의 시퀀스를 포함한다. 패킷(212 및 214)은 SOF 헤더를 포함하는 반면, 패킷(218,220,222,224 및 226)은 비디오 데이터 스트림의 일부를 형성하는 다른 정보를 포함한다. 이 예시의 암호화 프로세스의 일부로서, SOF 헤더를 포함하는 패킷을 제외한 모든 패킷은 암호화된다. 따라서, 패킷(212 및 214)은 암호화되어 패킷(213 및 215)을 생성하고자 하는 임의 정보를 패딩하여, 그 데이터를 그 이후의 패킷으로 시프트시킴으로써 처리되고, 그 후 패딩된 형태로서 선택적으로 암호화된 스트림(208)에 전달된다. 패킷(218,220,222,224 및 226)은 암호화되어 암호화된 패킷(238,240,242,244 및 246)을 각각이 생성한다. 이 예시에서는, 예시의 용이성을 위해 SOF 헤더 패킷들 사이의 패킷의 수에 있어 1:1 관계가 지속될 것임이 가정되나, SOF 패킷(212 및 214)으로부터의 데이터가 다른 패킷으로 변위되기 때문에 이는 반드시 그렇지는 않다. 그래서, 스트림(238, 240, 242, 244, .., 246)은 실상 참조부호(218, 220, 222, 224, ..., 226)로 표현되는 패킷의 수보다 더 많은 패킷을 포함할 수 있다. 또한, 예를 들어, (적어도)패킷(238)은 패킷(212)으로부터 나온 데이터를 앞쪽에 패딩하도록, 패킷(218)의 콘텐츠는 패킷(238)의 콘텐츠와 1:1로 대응되지 않을 것이다. 그러나 예를 들어, 참조부호(238,240,242,244,..)로서 표현되는 패킷은 패킷(218,220,222,224,..)에 패킷(212)으로부터 온 민감한 정보를 더한 모든 정보를 포함할 것이다. 이와 같이, 이 프로세스는 SOF 헤더를 포함한 각각의 패킷 사이의 패킷의 수를 기껏해야 한 개 패킷만큼 증가시키지만, 특정한 콘텐츠에 따라서는 SOF 헤더를 포함한 패킷 두 개 사이의 패킷의 수를 전혀 증가시키지 않는다.
디코더(예를 들어, 텔레비전, PVR, 텔레비전 셋탑박스(STB) 또는 셋백박스에서)에서, SOF 헤더(213 및 215)(예를 들어)가 비암호화된다는 사실은 참조부호(240)에서 트릭 플레이를 위한 오프셋의 계산을 가능하게 한다. 그 후 이들 오프셋은 국지적 트릭 플레이 오프셋 테이블(254)에 저장되어 적절한 I 및/또는 P 프레임으로의 빠른 접근을 가능하게 하여, 그 결과 트릭 플레이를 생성하고, SOF 헤더 패킷의 민감한 콘텐츠가 앞으로 시프트되기 때문에 그것이 암호화에 의해 보호된 채로 남게된다.
도 3은 평문 데이터 스트림(304)이 선택적으로 암호화된 데이터 스트림(308)으로 변환되는 프로세스의 실시예를 도시한다. 이 예시에서는, 선택적인 암호화 선택 기준은 SOF 헤더를 포함하지 않는 패킷을 오직 부분적으로 암호화하는 것이다. 그러나, 이 선택 기준은 SOF 헤더를 포함하는 패킷을 뒤따르는 패킷은 암호화해야만 한다(이 패킷에 SOF 헤더로부터 온 민감한 정보가 시프트되어지는 것으로 한다 - 다른 실시예에서는, 민감한 정보는 제한 없이 스트림 내 다른 위치로 시프트될 수도 있음). 평문 스트림(304)은 각각 프로그램 식별자(PID) A를 가지는 패킷의 시퀀스를 포함한다. 패킷(312 및 314)은 SOF 헤더를 포함하는 반면, 패킷(318, 320, 322, 324 및 326)이 비디오 스트림의 일부를 형성하는 다른 정보를 포함한다. 이 예시의 암호화 프로세스의 일부로서, SOF 헤더를 제외한 정보를 포함하는 임의의 패킷만 암호화된다. 도시되어 있는 바와 같이, 패킷(312 및 314)은 패딩되어 암호화에 의해 보호될 민감한 정보가 시프트되고(shift out), 그 후 패딩된 패킷은 패킷(313 및 315)으로서 선택적으로 암호화된 스트림(308)에 전달된다. 패킷(318, 322 및 326)은 암호화되어 암호화된 패킷(338,342 및 346)을 각각 생성하고, 여기서 도시된 패킷(338 및 346)은 SOF 헤더를 포함하는 패킷으로부터 시프트된 민감한 정보를 포함하는 패킷이다. 다시, 도 2의 예시에서와 같이, SOF 헤더를 가지는 패킷에서 데이터의 패딩을 책임지기 위해 SOF 헤더를 포함한 각각의 패킷 사이에 하나 정도의 추가된 패킷이 요구될 수 있다.
디코더(예를 들어, 텔레비전, PVR, 텔레비전 셋탑박스(STB) 또는 셋백박스에서)에서, SOF 헤더(213 및 215)(예를 들어)가 비암호화된다는 사실은 참조부호(340)에서 트릭 플레이를 위한 오프셋의 계산을 가능하게 한다. 그 후 이들 오프셋은 국지적 트릭 플레이 오프셋 테이블(354)에 저장되어 적절한 I 및/또는 P 프레임으로의 빠른 접근을 가능하게 하여, 그 결과 트릭플레이를 생성한다.
선택적으로 암호화된 디지털 비디오 콘텐츠가 스트림(208 또는 308)으로서 생성되면, 선택적으로 암호화된 디지털 비디오 콘텐츠는 전자 저장 매체 상에 저장되거나 하나 이상의 수신측에 전송될 수 있다(예를 들어, 케이블 또는 위성 콘텐츠 공급자에 의한 가입자의 셋탑 박스 - 수신기와 디코더로서 기능함 - 로의 다운로딩, 스트리밍 또는 브로드캐스팅).
따라서, 본 발명의 임의의 실시예는 SOF 헤더 패킷을 평문 상태로 유지하지만, 암호화해야할 원하는 임의 민감한 데이터를 그 데이터의 패딩에 의해 삭제한다. 이것은 Broadcom 사가 제조 판매한 모델 번호가 7030인 칩과 같이 상업적으로 이용가능한 디코더 칩이 I,P 및 B 프레임에 대한 바이트 오프셋을 계산할 수 있도록 해준다. 트릭 플레이 동작에 있어서, 이 오프셋에 의해 디코더(예를 들어, 셋탑박스)는 다른 콘텐츠를 디코딩하지 않으면서 예를 들어, 모든 제2 I 프레임 또는 제4 I 프레임을 디스플레이할 수 있다. SOF 헤더는 암호화되지 않기 때문에, 위에서 상술된 바와 같이 콘텐츠의 나머지가 완전히 암호화될 필요가 없다.
이상의 프로세스(인코딩 및 디코딩 모두)는 도 4에 컴퓨터(400)로 도시된 것 같은 서버/인코더로서 동작하는 임의 적절한 프로그래밍된 범용 프로세서 상에서 수행될 수 있다. 컴퓨터(400)는 프로그래밍에 따라 암호화 프로세서나 디코더를 나타낼 수 있다. 컴퓨터(400)는 알려진 방식대로 중앙 프로세서 장치(CPU;410)를 RAM(418) 및 비휘발성 메모리(422)에 연결하는데 사용되는 하나 이상의 연관된 버스(414)를 가지는 하나 이상의 중앙 프로세서 장치(410)를 가진다. MSO 또는 사용자의 사용을 위한 출력을 디스플레이 및/또는 프린트하고 또한 그래픽 사용자 인터페이스(GUI)와 같은 사용자 인터페이스를 제공하기 위해서 디스플레이 및 프린터와 같은 출력장치(426)가 제공될 수 있다. 인코더의 경우에는, 출력장치(426)는 암호화된 또는 선택적으로 암호화된 콘텐츠를 전송하는 송신기를 포함한다. 마찬가지로, 키보드, 마우스 및 미디어 판독기(430)와 같은 입력 장치가 운영자(operator)에 의한 정보의 입력을 위해 제공될 수 있다. 텔레비전 수신기 실시예의 경우에는, 입력장치(430)는 텔레비전 수신기를 포함한다. 인코더의 경우에는, 입력장치는 인코딩되고 암호화되는 콘텐츠의 소스를 포함한다. 컴퓨터(400)는 또한 대량의 정보를 저장하기 위해 내부 및/또는 외부 부착형 디스크 또는 다른 대용량 저장장치(434)(예를 들어, 디스크 및/또는 광학 저장장치를 포함할 수 있으며, 상기 대량의 정보는 운영체제, 암호화 프로세스(암호화 인코더용) 또는 컴퓨터(400)가 디코더(예를 들어, 텔레비전 STB의 일부를 형성함)로서 사용된다면 오프셋 계산과 국지적 오프셋 테이블을 포함하지만, 이것에만 한정되는 것은 아니다. 컴퓨터 시스템(400)은 또한 MSO에 제공되어 있다면 케이블 시스템에 연결하기 위한 인터페이스(438)를 가진다. 단일 컴퓨터로서 도시되었지만, 디지털 콘텐츠 공급자는 본 원에 상술된 기능을 수행하기 위해 다중 링크된 컴퓨터를 이용할 수 있다. 컴퓨터 시스템은 또한 디코딩 처리(processing)를 수행하는 텔레비전 셋탑박스 또는 PVR 등과 같은 텔레비전 수신 장치의 일부로서 구현될 수도 있다. 이러한 장치들의 예시는 잘 알려져 있고 특허 7,151,833호에서 참조된 특허 출원 중 일부에 도시되어 있으므로 본 원에서 명백하게 개시할 필요는 없겠다.
따라서, 임의의 실시예에 따르면, SOF 헤더를 포함하는 비암호화된 패킷을 가지는 선택적으로 암호화된 디지털 비디오 콘텐츠를 디코딩 하기 위한 디코더는 선택적으로 암호화된 디지털 비디오 콘텐츠를 수신하는 수신기를 가진다. 비암호화된 패킷은, SOF 헤더를 포함하는 패킷에 처음에 나타나는 콘텐츠가 진행하거나 암호화된 패킷에 남게되도록 패딩되는 SOF 헤더를 포함한다. 오프셋 계산기는 SOF 헤더로부터의 I 프레임 및 P 프레임 중 적어도 하나에 대한 오프셋을 계산한다. 저장 장치는 계산된 오프셋을 오프셋 테이블로서 저장한다.
임의의 실시예에서는, 선택적으로 암호화된 디지털 비디오 콘텐츠의 트릭 플레이를 동작하기 위해 오프셋 테이블에 접근한다. 임의의 실시예에서는, 선택적으로 암호화된 디지털 비디오 콘텐츠는 전자 저장 매체 상에 저장된다. 임의의 실시예에서는, 선택적으로 암호화된 디지털 비디오 콘텐츠는 콘텐츠 공급자로부터 수신기에 전송된다. 임의의 실시예에서는, 암호화된 디지털 비디오 콘텐츠는 SOF 헤더를 포함하는 패킷을 제외하고 전체적으로 암호화된다. 임의의 실시예에서는, SOF 헤더를 포함하는 패킷 및 임의의 다른 패킷은 비암호화되는 반면, 임의의 추가적인 패킷은 암호화된다. 임의의 실시예에서는, 임의의 다른 패킷은 SOF 헤더를 포함하는 패딩된 패킷을 바로 뒤따르는 패킷을 포함한다. 임의의 실시예에서는, 오프셋 계산기는 프로그래밍된 프로세서에 의해 구현된다. 임의의 실시예에서는, 패딩된 패킷은 적응 필드의 개인적 데이터 필드에 스터핑 바이트를 삽입함으로써 패딩되어 데이터를 그 이후의 또는 다른 패킷으로 진행하게 한다. 패킷은 또한 디코더 IC에 의해 필터링 될 스트림 구문 채움 문자(fill character)를 사용하여 패딩될 수 있다. 임의의 실시예에서는, 오프셋 테이블은 전자 저장 매체에 저장된다.
임의의 실시예에서는. 디지털 비디오 콘텐츠의 선택적인 암호화를 위한 선택적인 암호화 인코더는 디지털 비디오 콘텐츠를 포함하는 복수의 패킷을 수신하는 인코더를 가진다. 프로세서는 SOF 헤더를 포함하는 패킷을 식별한다. SOF 헤더와 관련하여 패킷의 콘텐츠의 위치를 이동하기 위해 프로세서는 또한 SOF 헤더를 포함하는 패킷에 패딩을 삽입한다. 프로세서는 선택 기준에 따라 암호화를 위한 임의의 패킷을 선택하고, 이 선택된 패킷은 SOF 헤더를 포함하는 패딩된 패킷을 제외한다. 암호화기는 SOF 헤더를 포함하는 패킷은 비암호화된 채로 유지하는 반면 선택된 패킷을 암호화하여 선택적으로 암호화된 디지털 비디오 콘텐츠를 형성한다.
임의의 실시예에서는, 전자 저장 매체는 선택적으로 암호화된 디지털 비디오 콘텐츠를 저장한다. 임의의 실시예에서는, 송신기는 선택적으로 암호화된 디지털 비디오 콘텐츠를 수신기로 송신한다. 임의의 실시예에서는, 선택 기준은 SOF 헤더를 포함하는 패킷을 제외한 모든 패킷의 선택을 포함한다. 임의의 실시예에서는, 선택 기준은 SOF 헤더를 포함하는 패킷을 제외한 임의의 패킷의 선택을 포함하며, 여기서 임의의 패킷은 SOF 헤더를 포함하는 패킷을 제외한 나머지 모든 패킷보다 적은 수를 나타낸다. 임의의 실시예에서는, 임의의 다른 패킷은 SOF 헤더를 포함하는 패딩된 패킷 바로 전 또는 후의 패킷을 포함한다. 임의의 실시예에서는, 패딩된 패킷은 스터핑 바이트나 채움(fill) 바이트의 삽입에 의해 패딩되어 데이터가 그 이전 또는 그 이후의 패킷으로 이동하거나 아니면 민감한 데이터를 다른 패킷으로 이전시킨다.
당업자는 프로그래밍된 프로세서(예를 들어, 컴퓨터(400))의 사용에 기초한 실시예의 견지에서 본 발명에 따른 실시예가 상술되었다는 것을 알 수 있을 것이다. 그러나, 본 발명은 상술되고 청구된 발명과 등가물인 특수 목적의 하드웨어 및/또는 전용 프로세서와 같은 등가의 하드웨어 구성요소를 사용하여 구현될 수도 있기 때문에, 본 발명은 그것에만 한정되지 않는다. 마찬가지로, 범용 컴퓨터, 마이크로프로세서 기반 컴퓨터, 마이크로-컨트롤러, 광학 컴퓨터, 아날로그 컴퓨터, 전용 프로세서 및/또는 전용 배선 로직이 본 발명의 대안적인 등가 실시예를 구현하는데 사용될 수 있다. 또한, 본 발명이 재생 메커니즘을 제공하는 범용 개인 컴퓨터의 견지에서 상술되었다 할지라도, 본 발명에서 벗어나지 않는 한 전용 장치 상에서 재생이 실행될 수 있다.
당업자는 디스크 저장장치와; 예를 들어 ROM 장치, RAM 장치, 광학 저장 소자, 자기 저장 소자, 광자기 저장 소자, 플래시 메모리, 코어 메모리 등의 다른 형태의 저장장치 및/또는 다른 등가의 저장 기술을 사용하여, 이상 상술된 실시예를 구현하는데 사용되는 프로그램 단계와 연관된 데이터가 구현될 수 있음을 알 수 있을 것이다. 그러한 대안적 저장 장치는 등가물로 간주될 수 있다.
본 원의 실시예에 상술된 바와 같이, 본 발명은 임의 적절한 전자 저장 매체 상에 저장되거나, 임의 적절한 전자 통신 매체를 통해 전송되지 않으면 임의 컴퓨터 판독 가능 또는 전파 매체에 제공될 수 있는 상기에서 광범위하게 상술된 형태인 프로그래밍 명령어를 실행하는 프로그래밍된 프로세서를 사용하여 구현된다. 그러나, 본 발명에서 벗어나지 않는 한 많은 변경과 많은 적절한 프로그래밍 언어로 이상 상술된 프로세스가 구현될 수 있음을 알 수 있을 것이다. 예를 들어, 본 발명에서 벗어나지 않는 한 수행되는 임의의 동작의 순서는 많은 경우에 변경 가능하고, 추가적인 동작이 덧붙여 질 수 있거나 동작이 삭제될 수 있다. 본 발명에서 벗어나지 않는 한 에러 트래핑이 추가 및/또는 강화될 수 있고, 사용자 인터페이스 및 정보 제시에서 변형이 이루어진다. 이러한 변형은 등가물로서 고려된다.
본 발명의 임의의 양태로 구현된 소프트웨어 코드 및/또는 데이터가, 한정되는 것은 아니되, 이상 상술된 것들과 같은 전자 저장 장치를 포함하는 임의 컴퓨터 판독 가능한 매체, 전송 매체, 저장 매체 또는 전파 매체뿐만 아니라 반송파, 전자 신호, 데이터 구조(예를 들어, 트리, 링크된 목록, 테이블, 패킷, 프레임 등), 광학 신호, 전파된 신호, 브로드캐스트 신호, 전달 매체(예를 들어, 회로 연결, 케이블, 트위스트 페어, 광섬유 케이블, 도파관, 안테나 등) 및 코드 및/또는 데이터를 저장, 반송 또는 전달하는 기타 매체에 제공될 수 있다. 이러한 매체는 소프트웨어 코드 및/또는 데이터를 저장하거나 코드 및/또는 데이터를 한 위치에서부터 또 다른 위치로 전송하는 역할을 할 수 있다. 본 실시예에서는, MPEG 컴플라이언트 패킷, 슬라이스, 테이블 및 기타의 데이터 구조가 사용되지만, 본 발명을 벗어나지 않고 다른 데이터 구조가 마찬가지로 사용될 수 있으므로 이것은 한정되는 것을 의미하지 않는다.
임의의 실시예가 상술되어 있지만, 당업자는 앞선 상술에 비추어 많은 대안, 수정, 치환 및 변경이 있을 수 있음을 명백히 알 수 있다.

Claims (40)

  1. 디지털 비디오 콘텐츠를 선택적으로 암호화하는 방법으로서,
    상기 디지털 비디오 콘텐츠를 포함하는 복수의 패킷을 수신하는 단계,
    프레임의 시작(SOF) 헤더를 포함하는 패킷을 식별하는 단계,
    상기 SOF 헤더를 포함하는 패킷에 패딩(padding)을 삽입하여 상기 SOF 헤더를 포함하는 패킷의 콘텐츠를 다른 패킷으로 이동시키는 단계,
    선택 기준에 따라 상기 SOF 헤더를 포함하는 패킷을 제외하고 암호화를 위한 임의의 패킷을 선택하는 단계,
    상기 선택된 패킷을 암호화하는 단계, 및
    상기 SOF 헤더를 포함하는 패킷을 비암호화된 상태로 유지하여 선택적으로 암호화된 디지털 비디오 콘텐츠를 형성하는 단계
    를 포함하는, 디지털 비디오 콘텐츠를 선택적으로 암호화하는 방법.
  2. 제1항에 있어서,
    상기 선택적으로 암호화된 디지털 비디오 콘텐츠를 전자 저장 매체 상에 저장하는 단계를 더 포함하는, 디지털 비디오 콘텐츠를 선택적으로 암호화하는 방법.
  3. 제1항에 있어서,
    상기 선택적으로 암호화된 디지털 비디오 콘텐츠를 수신기로 전송하는 단계 를 더 포함하는, 디지털 비디오 콘텐츠를 선택적으로 암호화하는 방법.
  4. 제1항에 있어서,
    상기 선택 기준은 상기 SOF 헤더를 포함하는 패킷들을 제외한 모든 패킷의 선택을 포함하는, 디지털 비디오 콘텐츠를 선택적으로 암호화하는 방법.
  5. 제1항에 있어서,
    상기 선택 기준은 상기 SOF 헤더를 포함하는 패킷 이전의 패킷을 포함하는, 디지털 비디오 콘텐츠를 선택적으로 암호화하는 방법.
  6. 제1항에 있어서,
    상기 선택 기준은 상기 SOF 헤더를 포함하는 패킷 이후의 패킷을 포함하는, 디지털 비디오 콘텐츠를 선택적으로 암호화하는 방법.
  7. 제1항에 있어서,
    상기 선택 기준은 상기 SOF 헤더를 포함하는 패킷들을 제외한 임의의 패킷의 선택을 포함하며, 상기 임의의 패킷은 상기 SOF 헤더를 포함하는 패킷들을 제외하고 남은 모든 패킷의 수보다는 적은, 디지털 비디오 콘텐츠를 선택적으로 암호화하는 방법.
  8. 제1항에 있어서,
    프로그래밍된 프로세서 상에서 실행되는, 디지털 비디오 콘텐츠를 선택적으로 암호화하는 방법.
  9. 제1항에 있어서,
    상기 패딩된 패킷은 적응 필드의 개인적 데이터 필드에 스터핑 바이트 또는 가짜 데이터를 삽입함으로써 패딩되어 데이터를 다른 패킷으로 이동시키는, 디지털 비디오 콘텐츠를 선택적으로 암호화하는 방법.
  10. 제1항에 있어서,
    상기 패딩된 패킷은 스트림 구문에 따라 필터링될 채움(fill) 바이트를 사용함으로써 패딩되는, 디지털 비디오 콘텐츠를 선택적으로 암호화하는 방법.
  11. 제1항에 있어서,
    상기 선택 단계는 상기 SOF 헤더를 포함하는 패딩된 패킷을 뒤따르는 패킷을 선택하는 단계를 포함하는, 디지털 비디오 콘텐츠를 선택적으로 암호화하는 방법.
  12. 프로그래밍된 프로세서 상에서 실행될 때, 제1항에 따른 선택적으로 디지털 비디오 콘텐츠를 암호화하는 방법을 수행하는 명령어를 저장하는, 전자 저장 매체.
  13. 선택적으로 암호화된 비디오 콘텐츠를 디코딩하는 방법으로서,
    프레임의 시작부(SOF)를 포함하는 비암호화된 패킷을 가지는 상기 선택적으로 암호화된 디지털 비디오 콘텐츠를 수신하는 단계 - 상기 비암호된 패킷은 상기 SOF 헤더를 포함하는 패킷에 처음에 나타나는 콘텐츠가 암호화된 패킷으로 시프트되도록 패딩됨 -,
    상기 SOF 헤더로부터의 I 프레임 및 P프레임 중 적어도 하나에 대한 오프셋을 계산하는 단계, 및
    상기 계산된 오프셋을 오프셋 테이블로서 저장하는 단계
    을 포함하는, 선택적으로 암호화된 비디오 콘텐츠를 디코딩하는 방법.
  14. 제13항에 있어서,
    상기 선택적으로 암호화된 디지털 비디오 콘텐츠의 트릭 플레이를 동작하기 위해 상기 오프셋 테이블에 접근하는 단계를 더 포함하는, 선택적으로 암호화된 비디오 콘텐츠를 디코딩하는 방법.
  15. 제13항에 있어서,
    상기 선택적으로 암호화된 디지털 비디오 콘텐츠는 전자 저장 매체 상에 저장되는, 선택적으로 암호화된 비디오 콘텐츠를 디코딩하는 방법.
  16. 제13항에 있어서,
    상기 선택적으로 암호화된 디지털 비디오 콘텐츠는 콘텐츠 공급자로부터 수신기로 전송되는, 선택적으로 암호화된 비디오 콘텐츠를 디코딩하는 방법.
  17. 제13항에 있어서,
    상기 암호화된 디지털 비디오 콘텐츠는 상기 SOF 헤더를 포함하는 패킷을 제외하고 전체적으로 암호화되는, 선택적으로 암호화된 비디오 콘텐츠를 디코딩하는 방법.
  18. 제13항에 있어서,
    상기 SOF 헤더를 포함하는 패킷 및 임의의 다른 패킷은 비암호화되는 반면, 임의의 추가적인 패킷은 암호화되는, 선택적으로 암호화된 비디오 콘텐츠를 디코딩하는 방법.
  19. 제13항에 있어서,
    상기 패딩된 패킷은 적응 필드의 개인 데이터 필드에 스터핑 바이트나 가짜 데이터를 삽입함으로써 패딩되어 데이터를 다른 패킷으로 이동시키는, 선택적으로 암호화된 비디오 콘텐츠를 디코딩하는 방법.
  20. 제13항에 있어서,
    상기 선택은 상기 SOF 헤더를 포함하는 패딩된 패킷을 뒤따르는 패킷을 선택 하는 것을 포함하는, 선택적으로 암호화된 비디오 콘텐츠를 디코딩하는 방법.
  21. 제13항에 있어서,
    프로그래밍된 프로세서 상에서 수행되는, 선택적으로 암호화된 비디오 콘텐츠를 디코딩하는 방법.
  22. 프로그래밍된 프로세서 상에서 실행될 때, 제13항에 따른 선택적으로 디지털 비디오 콘텐츠를 디코딩하는 방법을 수행하는 명령어를 저장하는, 전자 저장 매체.
  23. 선택적으로 암호화된 디지털 비디오 콘텐츠를 디코딩하는 디코더로서,
    프레임의 시작(SOF) 헤더를 포함하는 비암호화된 패킷을 가지는 상기 선택적으로 암호화된 디지털 비디오 콘텐츠를 수신하는 수신기 - 상기 비암호된 패킷은 상기 SOF 헤더를 포함하는 패킷에 처음에 나타나는 콘텐츠가 암호화된 다른 패킷으로 시프트되도록 패딩됨 -,
    상기 SOF 헤더로부터의 I 프레임 및 P프레임 중 적어도 하나에 대한 오프셋을 계산하는 오프셋 계산기, 및
    상기 계산된 오프셋을 오프셋 테이블로서 저장하는 수단
    을 포함하는, 선택적으로 암호화된 디지털 비디오 콘텐츠를 디코딩하는 디코더.
  24. 제23항에 있어서,
    상기 선택적으로 암호화된 디지털 비디오 콘텐츠의 트릭 플레이를 동작하기 위해 상기 오프셋 테이블에 접근하는 수단을 더 포함하는, 선택적으로 암호화된 디지털 비디오 콘텐츠를 디코딩하는 디코더.
  25. 제23항에 있어서,
    상기 선택적으로 암호화된 디지털 비디오 콘텐츠는 전자 저장 매체 상에 저장되는, 선택적으로 암호화된 디지털 비디오 콘텐츠를 디코딩하는 디코더.
  26. 제23항에 있어서,
    상기 선택적으로 암호화된 디지털 비디오 콘텐츠는 콘텐츠 공급자로부터 수신기로 전송되는, 선택적으로 암호화된 디지털 비디오 콘텐츠를 디코딩하는 디코더.
  27. 제23항에 있어서,
    상기 암호화된 디지털 비디오 콘텐츠는 상기 SOF 헤더를 포함하는 패킷을 제외하고 전체적으로 암호화되는, 선택적으로 암호화된 디지털 비디오 콘텐츠를 디코딩하는 디코더.
  28. 제23항에 있어서,
    상기 SOF 헤더를 포함하는 패킷 및 임의의 다른 패킷은 비암호화되는 반면, 임의의 추가적인 패킷은 암호화되는, 선택적으로 암호화된 디지털 비디오 콘텐츠를 디코딩하는 디코더.
  29. 제28항에 있어서,
    상기 임의의 다른 패킷은 상기 SOF 헤더를 포함하는 상기 패딩된 패킷을 바로 뒤따르는 패킷을 포함하는, 선택적으로 암호화된 디지털 비디오 콘텐츠를 디코딩하는 디코더.
  30. 제23항에 있어서,
    상기 오프셋 계산기는 프로그래밍된 프로세서에 의해 구현되는, 선택적으로 암호화된 디지털 비디오 콘텐츠를 디코딩하는 디코더.
  31. 제23항에 있어서,
    상기 패딩된 패킷은 적응 필드의 개인 데이터 필드에 스터핑 바이트나 가짜 데이터를 삽입함으로써 패딩되어 데이터를 다른 패킷으로 이동시키는, 선택적으로 암호화된 디지털 비디오 콘텐츠를 디코딩하는 디코더.
  32. 제23항에 있어서,
    상기 패딩된 패킷은 스트림 구문에 따라 필터링될 채움(fill) 바이트의 사용 에 의해 패딩되는, 선택적으로 암호화된 디지털 비디오 콘텐츠를 디코딩하는 디코더.
  33. 제23항에 있어서,
    상기 오프셋 테이블은 전자 저장 매체 상에 저장되는, 선택적으로 암호화된 디지털 비디오 콘텐츠를 디코딩하는 디코더.
  34. 디지털 비디오 콘텐츠의 선택적인 암호화를 위한 선택적인 암호화 인코더로서,
    상기 디지털 비디오 콘텐츠를 포함하는 복수의 패킷을 수신하는 수단,
    프레임의 시작(SOF) 헤더를 포함하는 패킷을 식별하는 수단,
    상기 SOF 헤더를 포함하는 패킷에 패딩을 삽입하여 상기 SOF 헤더를 포함하는 패킷의 콘텐츠를 다른 패킷으로 이동시킴으로써 상기 SOF 헤더를 포함하는 패딩된 패킷을 생성하는 수단,
    상기 SOF 헤더를 포함하는 패딩된 패킷을 제외하고 선택 기준에 따라 암호화를 위한 임의의 패킷을 선택하는 프로그래밍된 프로세서, 및
    상기 SOF 헤더를 포함하는 패딩된 패킷을 비암호화된 상태로 유지시킨 채, 상기 선택된 패킷을 암호화하여 선택적으로 암호화된 디지털 비디오 콘텐츠를 형성하는 암호화기
    를 포함하는, 디지털 비디오 콘텐츠의 선택적인 암호화를 위한 선택적인 암 호화 인코더.
  35. 제34항에 있어서,
    상기 선택적으로 암호화된 디지털 비디오 콘텐츠를 저장하기 위한 전자 저장 매체를 더 포함하는, 디지털 비디오 콘텐츠의 선택적인 암호화를 위한 선택적인 암호화 인코더.
  36. 제34항에 있어서,
    상기 선택적으로 암호화된 디지털 비디오 콘텐츠를 수신기로 전송하기 위한 송신기를 더 포함하는, 디지털 비디오 콘텐츠의 선택적인 암호화를 위한 선택적인 암호화 인코더.
  37. 제34항에 있어서,
    상기 선택 기준은 상기 SOF 헤더를 포함하는 패킷들을 제외한 모든 패킷의 선택을 포함하는, 디지털 비디오 콘텐츠의 선택적인 암호화를 위한 선택적인 암호화 인코더.
  38. 제34항에 있어서,
    상기 선택 기준은 상기 SOF 헤더를 포함하는 패킷들을 제외한 임의의 패킷의 선택을 포함하며, 상기 임의의 패킷은 상기 SOF 헤더를 포함하는 패킷들을 제외하 고 남은 모든 패킷의 수보다는 적은, 디지털 비디오 콘텐츠의 선택적인 암호화를 위한 선택적인 암호화 인코더.
  39. 제34항에 있어서,
    상기 임의의 다른 패킷은 상기 SOF 헤더를 포함하는 패딩된 패킷을 바로 뒤따르는 패킷을 포함하는, 디지털 비디오 콘텐츠의 선택적인 암호화를 위한 선택적인 암호화 인코더.
  40. 제34항에 있어서,
    상기 패딩된 패킷은 적응 필드의 개인적 데이터 필드에 스터핑 바이트 또는 가짜 데이터를 삽입함으로써 패딩되어 데이터를 다른 패킷으로 이동시키는, 디지털 비디오 콘텐츠의 선택적인 암호화를 위한 선택적인 암호화 인코더.
KR1020097026095A 2007-06-15 2008-05-30 디지털 비디오 콘텐츠를 선택적으로 암호화 및 디코딩하는 방법 및 그 인코더 및 디코더 KR101341268B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/818,787 2007-06-15
US11/818,787 US7929698B2 (en) 2007-06-15 2007-06-15 Selective encryption to enable trick play with enhanced security
PCT/US2008/065437 WO2009038830A2 (en) 2007-06-15 2008-05-30 Selective encryption to enable trick play with enhanced security

Publications (2)

Publication Number Publication Date
KR20100018564A true KR20100018564A (ko) 2010-02-17
KR101341268B1 KR101341268B1 (ko) 2013-12-12

Family

ID=40132340

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097026095A KR101341268B1 (ko) 2007-06-15 2008-05-30 디지털 비디오 콘텐츠를 선택적으로 암호화 및 디코딩하는 방법 및 그 인코더 및 디코더

Country Status (8)

Country Link
US (1) US7929698B2 (ko)
EP (1) EP2156666B1 (ko)
JP (1) JP5379129B2 (ko)
KR (1) KR101341268B1 (ko)
CN (1) CN101682731B (ko)
CA (1) CA2689542C (ko)
HK (1) HK1141183A1 (ko)
WO (1) WO2009038830A2 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9042555B2 (en) * 2011-02-10 2015-05-26 Sony Corporation On-demand download of partial encrypted content for partial super distributed content
US8885557B2 (en) * 2011-02-25 2014-11-11 Qualcomm Incorporated Dynamic selection among algorithms for generating fillers for security of data communications
US9906815B2 (en) 2011-11-08 2018-02-27 Texas Instruments Incorporated Delayed duplicate I-picture for video coding
JP5310824B2 (ja) 2011-11-10 2013-10-09 株式会社リコー 伝送管理装置、プログラム、伝送管理システムおよび伝送管理方法
US9066117B2 (en) 2012-02-08 2015-06-23 Vixs Systems, Inc Container agnostic encryption device and methods for use therewith
CN104184645B (zh) 2013-05-27 2018-05-04 华为技术有限公司 一种生成操作请求的方法、设备及系统
WO2016086100A1 (en) 2014-11-25 2016-06-02 Arris Enterprises, Inc. Filler detection during trickplay
CN105828189B (zh) * 2015-01-05 2018-10-23 任子行网络技术股份有限公司 一种多维度检测违规音视频节目的方法
US10366244B2 (en) * 2015-06-09 2019-07-30 International Business Machines Corporation Performing an operation on sensitive data
CN106713940B (zh) * 2015-08-04 2019-12-20 杭州海康威视数字技术股份有限公司 视频流的存储方法、读取方法及装置
JP6215898B2 (ja) * 2015-11-16 2017-10-18 株式会社Pfu 映像処理装置、映像処理システム、および、映像処理方法
US10848802B2 (en) * 2017-09-13 2020-11-24 Cisco Technology, Inc. IP traffic software high precision pacer
CN112839244B (zh) * 2019-11-22 2022-03-25 北京大学 一种基于码流级别的监控视频分级加解密方法及系统

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5650825A (en) * 1995-03-31 1997-07-22 Matsushita Electric Corporation Of America Method and apparatus for sending private data instead of stuffing bits in an MPEG bit stream
US6445738B1 (en) 1996-04-25 2002-09-03 Opentv, Inc. System and method for creating trick play video streams from a compressed normal play video bitstream
US5805700A (en) * 1996-10-15 1998-09-08 Intel Corporation Policy based selective encryption of compressed video data
US20060093045A1 (en) * 1999-06-29 2006-05-04 Roger Anderson Method and apparatus for splicing
EP1275250A1 (en) 2000-05-02 2003-01-15 General Instrument Corporation Method and apparatus for enabling random access to individual pictures in an encrypted video stream
US6453115B1 (en) 2000-08-31 2002-09-17 Keen Personal Media, Inc. Digital video recording system which generates an index data structure for displaying a video stream in trickplay mode
US7386129B2 (en) * 2001-05-30 2008-06-10 Digeo, Inc. System and method for multimedia content simulcast
US7747853B2 (en) * 2001-06-06 2010-06-29 Sony Corporation IP delivery of secure digital content
US7242773B2 (en) 2002-09-09 2007-07-10 Sony Corporation Multiple partial encryption using retuning
ATE406046T1 (de) * 2003-02-10 2008-09-15 Koninkl Philips Electronics Nv Erzeugung verschlüsselter videoinformationen
WO2005036809A1 (en) * 2003-10-09 2005-04-21 Matsushita Electric Industrial Co., Ltd. Communication terminal and method for timing the detection of communication-medium characteristics
US7620180B2 (en) 2003-11-03 2009-11-17 Sony Corporation Preparation of content for multiple conditional access methods in video on demand
JP2007511948A (ja) * 2003-11-18 2007-05-10 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ トリックプレイ信号の再生
CN1561111A (zh) * 2004-02-26 2005-01-05 晶晨半导体(上海)有限公司 在数字视频压缩码流中快速索引播放信息的方法
CA2562137C (en) * 2004-04-07 2012-11-27 Nielsen Media Research, Inc. Data insertion apparatus and methods for use with compressed audio/video data
JP4980913B2 (ja) * 2004-09-23 2012-07-18 トムソン ライセンシング トリック・プレイ用メタデータのビデオ伝送ストリームへの挿入
BRPI0609562A2 (pt) * 2005-04-26 2011-10-18 Koninkl Philips Electronics Nv dispositivo e método para processar um fluxo de dados codificado em um sistema criptográfico, meio legìvel por computador e elemento de programa
US7991997B2 (en) * 2005-06-23 2011-08-02 Panasonic Avionics Corporation System and method for providing searchable data transport stream encryption
US8677504B2 (en) * 2005-07-14 2014-03-18 Qualcomm Incorporated Method and apparatus for encrypting/decrypting multimedia content to allow random access
US8514894B2 (en) 2005-08-02 2013-08-20 Elliptic Technologies Inc. Method for inserting/removal padding from packets

Also Published As

Publication number Publication date
EP2156666B1 (en) 2015-07-22
EP2156666A2 (en) 2010-02-24
JP5379129B2 (ja) 2013-12-25
CA2689542A1 (en) 2009-03-26
CN101682731A (zh) 2010-03-24
JP2010531562A (ja) 2010-09-24
WO2009038830A2 (en) 2009-03-26
US20080310630A1 (en) 2008-12-18
WO2009038830A3 (en) 2009-05-07
EP2156666A4 (en) 2012-09-12
KR101341268B1 (ko) 2013-12-12
HK1141183A1 (en) 2010-10-29
CN101682731B (zh) 2015-04-29
US7929698B2 (en) 2011-04-19
CA2689542C (en) 2015-03-31

Similar Documents

Publication Publication Date Title
KR101341268B1 (ko) 디지털 비디오 콘텐츠를 선택적으로 암호화 및 디코딩하는 방법 및 그 인코더 및 디코더
US7151833B2 (en) Selective encryption to enable trick play
CA2437018C (en) Selective encryption to enable multiple decryption keys
US8818896B2 (en) Selective encryption with coverage encryption
US7590240B2 (en) Conditional access system and method prevention of replay attacks
US6351538B1 (en) Conditional access and copy protection scheme for MPEG encoded video data
CA2408232C (en) Method and apparatus for enabling random access to individual pictures in an encrypted video stream
JP4812117B2 (ja) コンテンツ暗号化装置及びそのプログラム、並びに、コンテンツ復号装置及びそのプログラム
US20080123845A1 (en) Multiple selective encryption with DRM
US7773752B2 (en) Circuits, apparatus, methods and computer program products for providing conditional access and copy protection schemes for digital broadcast data
US20070258586A1 (en) Personal video recorder having dynamic security functions and method thereof
JP2010176691A (ja) 情報ストリームを安全化する方法及びその装置
US20070005506A1 (en) Key sharing for DRM interoperability
US20090225983A1 (en) System and method for improved processing and decoding of an encrypted digital video signal
JP4630073B2 (ja) コンテンツ暗号化装置及びそのプログラム
US6944296B1 (en) Video bit scrambling
JP2008005323A (ja) 暗号化コンテンツ作成装置、その方法およびそのプログラム、ならびに、コンテンツ復号化装置、その方法およびそのプログラム
CA2437025C (en) Selective encryption to enable trick play
JP4883701B2 (ja) コンテンツ復号装置、その方法及びそのプログラム
JP2002034018A (ja) パケット処理装置、パケット処理方法及びその記憶媒体

Legal Events

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

Payment date: 20161124

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20171127

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20181123

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20191127

Year of fee payment: 7