KR100561496B1 - 안전한 트랜스코딩을 통하여 네트워킹된 정보를 배포하기위한 방법 및 장치 - Google Patents

안전한 트랜스코딩을 통하여 네트워킹된 정보를 배포하기위한 방법 및 장치 Download PDF

Info

Publication number
KR100561496B1
KR100561496B1 KR1020037004117A KR20037004117A KR100561496B1 KR 100561496 B1 KR100561496 B1 KR 100561496B1 KR 1020037004117 A KR1020037004117 A KR 1020037004117A KR 20037004117 A KR20037004117 A KR 20037004117A KR 100561496 B1 KR100561496 B1 KR 100561496B1
Authority
KR
South Korea
Prior art keywords
data
component
transcoding
encrypted
components
Prior art date
Application number
KR1020037004117A
Other languages
English (en)
Other versions
KR20030040481A (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 KR20030040481A publication Critical patent/KR20030040481A/ko
Application granted granted Critical
Publication of KR100561496B1 publication Critical patent/KR100561496B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • 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/10Architectures or entities
    • H04L65/102Gateways
    • H04L65/1023Media gateways
    • H04L65/103Media gateways in the network
    • 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/10Architectures or entities
    • H04L65/102Gateways
    • H04L65/1033Signalling gateways
    • H04L65/104Signalling gateways in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • 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/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • 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/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234309Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
    • 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
    • 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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2351Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving encryption of additional data
    • 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/84Generation or processing of descriptive data, e.g. content descriptors
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Eye Examination Apparatus (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 방법 및 시스템은 프록시와 같은 네트워크 매개자가 양단간 보안 보장에 위반되지 않고 멀티미디어 데이터를 트랜스코딩할 수 있게 한다. 일 실시예에서, 콘텐츠 제공자는 데이터 스트림을 다수의 성분으로 분해하는데, 각 성분은 독립적으로 암호화된다. 바람직한 실시예에서, 매개자 즉 프록시는 성분들을 해독할 필요가 없이, 각 성분과 관련된 암호화되지 않은 보통문 텍스트 메타데이터에 따라 소정의 성분들의 우선 순위를 매기고 탈락시킴으로써 성분들을 트랜스코딩한다. 보통문 텍스트 메타데이터는 바람직하게는 성분들의 서로에 대한 절대적 또는 상대적인 중요도/우선 순위의 의미적 이해를 제공함으로써, 트랜스코딩 프로세스를 더욱 용이하게 한다. 목적지/클라이언트 장치는 후속적으로 트랜스코딩 프록시에 의해 전송된 성분들을 해독하고 이들을 원래의 데이터 콘텐츠의 표현으로 다시 어셈블링한다.
트랜스코딩, 보안, 멀티미디어 콘텐츠, 프록시, 인코딩, 디코딩

Description

안전한 트랜스코딩을 통하여 네트워킹된 정보를 배포하기 위한 방법 및 장치 {METHOD AND APPARATUS FOR NETWORKED INFORMATION DISSEMINATION THROUGH SECURE TRANSCODING}
본 발명의 방법 및 장치는 일반적으로 트랜스코딩 시스템에 관한 것으로서, 보다 구체적으로는 트랜스코딩 프록시가 콘텐츠를 해독하는 것을 예방하는 방식으로 암호화된 멀티미디어 콘텐츠를 안전하게 트랜스코딩하는 시스템에 관한 것이다.
당업자가 알고 있는 바와 같이, 트랜스코딩이란 멀티미디어 콘텐츠(텍스트, 이미지, 오디오, 비디오 등)가 인코딩된 원래의 제1 포맷으로부터 제2 포맷으로 멀티미디어 콘텐츠를 변환하는 기술을 말한다. 트랜스코더란 특정한 과제를 위한 트랜스코딩 기능을 기술적으로 구현한 것이다. 트랜스코딩 기술은 콘텐츠를 원래의 포맷으로 디스플레이하거나 재생하는 것을 거의 지원하지 않거나 전혀 지원하지 않는 클라이언트 장치들에서 콘텐츠가 제공하도록 적응시키는데 필수적이다. 예를 들어, 원래 휴대 전화와 무선 PDA에서 디스플레이되도록 설계되지 않은 웹 페이지가 휴대 전화와 무선 PDA에서 디스플레이/재생되도록 트랜스코딩될 수 있다. 또한, 웹 콘텐츠를 트랜스코딩하는 것은 속도가 느린 인터넷 액세스 링크를 통하여 멀티미디어 콘텐츠를 압축하는 것을 증가시켜 멀티미디어 콘텐츠에 대한 액세스 속 도를 향상시키는데 사용될 수 있다.
트랜스코딩은 콘텐츠 제공자의 웹 서버와 클라이언트 장치의 웹 브라우저와의 사이에 위치한 매개자 즉, 프록시에 의해 종종 수행될 수 있다. 프록시에서 트랜스코딩하는 종래의 방식은 데이터를 트랜스코딩하기 위하여 데이터가 암호화되지 않아야 할 것을 요구한다. 만일 멀티미디어 데이터가 초기에 암호화되었다면, 트랜스코딩 프록시는 데이터를 트랜스코딩하기 전에 먼저 데이터를 해독해야 한다. 그러나, 콘텐츠 제공자와 클라이언트가 아닌 제3자(예를 들어, 프록시)가 해독된 데이터 스트림을 도청할 수 있기 때문에, 멀티미디어 데이터를 해독하는 것은 양단간 보안의 보장에 위반된다.
트랜스코딩을 멀티미디어 콘텐츠에 적용하기 위한 두가지 주요 목적이 있다. 첫 번째 목적은 모뎀 링크와 무선 액세스 링크와 같은 낮은 대역폭의 액세스 링크를 통하여 웹 페이지를 다운로드받을 때 지연을 감소시키는 것이다. 트랜스코딩 기능은 일반적으로 매개자 즉 프록시 내에 존재한다. 트랜스코딩 프록시는 일반적으로 바이트로 된 멀티미디어 콘텐츠의 사이즈를 감소시키는(예를 들어, 이미지는 더 압축되고, 텍스트는 요약되는 등의) 임의의 무손실 또는 손실 압축 기술을 채용하는 트랜스코더이다. 액세스 링크를 통하여 전송되는 바이트 수를 감소시킴으로써, 트랜스코딩 프록시는 콘텐츠를 수신기에게 더 빨리 전달할 수 있고, 이로써 인지되는 응답 시간을 상당히 감소시킬 수 있다. 또한 트랜스코딩은 비디오에 적용되어, 낮은 대역폭 링크를 통해 접속된 클라이언트가 감소된 비디오 스트림을 수신할 수 있도록 비디오 콘텐츠의 비트율을 감소시켰다. 디스틸레이션(distillation), 요약(summarization), 다이내믹 레이트 쉐이핑(dynamic rate shaping), 및 필터링(filtering)이란 용어는, (예를 들어, 낮은 대역폭 링크를 통한 압축을 통하여) 레이턴시를 감소시키는 것이 트랜스코딩의 주요 동기일 때 트랜스코딩과 동의어로 종종 사용된다.
트랜스코딩을 멀티미디어 콘텐츠에 적용하는 두 번째 목적은 클라이언트 장치에 의해 지지되는 디코딩 포맷과 멀티미디어 콘텐츠의 제공자에 의해 채용되는 인코딩 포맷 간의 불일치(mismatch)를 해소하는 것이다. 멀티미디어 콘텐츠가 이 콘텐츠와 불일치되는 클라이언트 장치에서 재생 또는 디스플레이될 수 있도록 하기 위하여, 트랜스코더는 일반적으로 멀티미디어 콘텐츠를 원래 인코딩된 포맷으로부터 클라이언트 장치가 이해할 수 있는 디코딩 포맷으로 변환한다. 코더/디코더(코덱) 부조화는 클라이언트 장치 및/또는 콘텐츠 제공자 측의 하드웨어, 소프트웨어, 환경, 그리고 사람의 행동 제한 때문에 발생할 수 있다. 트랜스코딩 기술의 두가지 전통적인 예가 음성 인식(즉, 음성-텍스트 트랜스코딩) 및 음성 합성(즉, 텍스트-음성 트랜스코딩)인데, 여기서 콘텐츠 제공자와 이 콘텐츠를 이용하는 클라이언트 장치간의 코덱 부조화를 해결하기 위하여 멀티미디어 콘텐츠가 변형된다.
또한, 트랜스코딩은 현재 포켓용 PDA가 웹을 브라우즈할 수 있도록 하기 위하여 웹 페이지(예를 들어, 이미지와 HTML 텍스트)를 변형하는데 사용된다. PDA 클라이언트 장치는 종종 상대적으로 작은 스크린 사이즈, 제한된 디스플레이 농도(display depth), 제한된 메모리, 느린 프로세서, 및 매체 유형의 제한된 지지에 의해 구속된다. 이러한 장치에 대해서는 트랜스코딩 프록시가 적용되어 예를 들어, 컬러 GIF 이미지와 JPEG 이미지를 2 비트 흑백 비트맵으로 변형함으로써 PDA의 소프트웨어 제약을 수용하고, 또한 축소된 썸네일로 변형함으로써 작은 스크린 사이즈라는 PDA의 하드웨어 제약을 수용한다. 트랜스레이션(translation), 콘텐츠 리퍼포징(content repurposing), 매체 변환(media conversion), 클리핑(clipping), 보편적 액세스(universal access), 포맷 변환(format conversion), 및 필터링(filtering)이란 용어는, 트랜스코딩이 클라이언트 이질성(heterogeneity)에 적응하는데 적용될 때 트랜스코딩과 동의어로 종종 사용된다.
매개자인 프록시에 트랜스코딩 기능을 두는 것은 보안 문제를 야기한다. 프록시에서의 트랜스코딩에 대한 종래의 접근 방식은 데이터가 트랜스코딩되기 위하여 암호화되지 않을 것을 요구한다. 만일 멀티미디어 데이터가 처음에 암호화되었다면, 트랜스코딩 프록시는 데이터를 트랜스코딩하기 전에 먼저 해독한다. 데이터를 해독하기 위해서는 데이터를 암호화하는데 사용되는 키를 프록시가 소유해야 한다. 이러한 유형의 프록시를 흔히 안전한 프록시(trusted proxy)라 부른다. 그러나, 이러한 시나리오는 소스 또는 목적지 중 하나가 소스 장치 또는 목적지 장치 중 어느 것과도 특별한 관계가 없는 프록시로 키를 전송해야 하기 때문에, 실질적인 어려움이 있다. 이러한 방식은 콘텐츠 제공자와 클라이언트가 아닌 제3자(프록시)가 해독된 데이터를 잠재적으로 도청할 수 있기 때문에 양단간 보안 보장에 위반된다.
안전한 트랜스코딩 시스템을 제공하려는 종래의 시도는 프록시에 의해 데이터가 안전하게 트랜스코딩되는 것과 관련된 고유한 문제를 언급하고/언급하거나 해 결하지 못했다. 멀티미디어 콘텐츠를 다수의 성분으로 세분화하는 것을 포함하는 종래 기술의 접근 방식은 PIT(Progressive Image Transmission)와 레이어드 비디오 멀티캐스트(layered video multicast)를 포함한다. PIT에서 각 이미지는 지각적으로(perceptually) 가장 중요한 것에서부터 가장 덜 중요한 것까지 일반적으로 배열된 다수의 성분으로 나뉘어진다. 콘텐츠 제공자는 지각적으로 가장 중요한 성분을 먼저 클라이언트 장치로 전송하고, 그 다음에 덜 중요한 성분을 전송한다. (가장 중요한 성분이 먼저 도착하여 디스플레이되므로) PIT가 인지된 이미지 전달의 지연을 감소시키는 것으로 증명되었지만, 트랜스코딩이 콘텐츠 제공자와 클라이언트 장치 간에 실행되지는 않는다.
레이어드 비디오 멀티캐스트에서는 비디오 스트림이 다수의 성분으로 세분화된다. 비디오 세션에 등록하는(subscribe) 수신기는 성분들의 부분 집합에 등록할 것이다. 만일 수신기의 액세스 링크가 대역폭이 낮다면, 수신하는 클라이언트 장치는 비디오 스트림의 가장 기본적인 성분만을 등록할 것이다. 멀티캐스트 라우팅 프로토콜을 지지하는 라우터는 수신기의 등록 요청을 고려하여 원하지 않는 멀티캐스트 성분을 선택적으로 필터링하거나 탈락시킨다. 그러나, 레이어드 비디오 멀티캐스트(또는 일반적으로 레이어드 코딩) 접근 방식은 안전한 선택 필터링/트랜스코딩을 허용하는 반면, 전송되는 정보를 어떻게 보호할지에 대하여서는 언급하지 않는다. 이러한 접근 방식은 탬퍼링(tampering)을 검출하는 수단도 제공하지 못한다.
IBM 쮜리히 연구의 SERVANT 프로젝트는 트랜스코딩될 필요가 있을지 모르는 콘텐츠 필드에 대한 트랜스코더의 보안성 없는 액세스를 여전히 가능하게 하면서, 클라이언트와 서버가 안전한 세션을 설정할 수 있도록 하는 메카니즘을 제안하였다. 서버는 보안에 민감한(security sensitive) 콘텐츠 필드를 선택적으로 암호화할 수 있기 때문에, 트랜스코더를 신뢰할 필요가 없고, 트랜스코더는 콘텐츠의 각 필드가 어떻게 트랜스코딩될 수 있는지 나타내는 콘텐츠의 서명된 요약 문서를 포함할 수 있다. 따라서, 보안에 민감한 콘텐츠는 트랜스코더로부터 보호되고, 클라이언트는 클라이언트 대신에 수행된 트랜스코딩이 서버의 의도에 따라 행해진다는 것을 확인할 수 있다. SERVANT는 콘텐츠를 두가지로 분리한다. 즉, 안전한 것(secure)과 보안성 없는 것(non-secure)으로 분리한다. 그러나, 트랜스코딩 프록시는 여전히 콘텐츠의 안전한 부분을 트랜스코딩할 수 없고, 이에 따라 여기서 제시된 문제를 처리하지 않는다.
종래의 탬퍼링 검출 방식에 관하여, 종래 기술의 탬퍼링 검출 메카니즘은 보이는 워터 마크(watermark) 아니면 보이지 않는 워터 마크를 사용하는 것을 포함한다. 보이는 워터 마크와 보이지 않는 워터 마크 모두 어떤 형태의 패턴, 바 코드, 디지털 서명 등을 데이터에 내장한다. 데이터의 탬퍼링은 워터 마크의 불일치 또는 부재를 통하여 검출될 수 있다. 그러나, 종래 기술에서 제기된 쟁점은 본 발명에 의해 제기된 쟁점과 상이한데, 이는 종래 기술이 모든 데이터가 보통문 텍스트(clear text)(암호화되지 않은) 형태로 존재하는 경우를 포함하기 때문이다.
종래의 방법과 장치는 트랜스코딩 프록시가 트랜스코딩 시스템의 구석 구석에 양단간 보안을 유지하면서 콘텐츠 제공자 또는 유사한 소스로부터 온 데이터를 클라이언트 장치가 사용할 수 있도록 트랜스코딩할 수 있게 하는 문제점에 대한 해결책을 제시하지도 제공하지도 못한다. 따라서, 트랜스코딩 분야에서는 매개자 즉 프록시가 멀티미디어 콘텐츠를 안전하게 트랜스코딩해야 할 필요성이 존재한다.
제1 측면에 의하면, 본 발명은 콘텐츠 제공자로부터 온 데이터를 클라이언트 장치가 사용할 수 있게 안전하게 트랜스코딩하는 방법을 제공하며, 이 방법은 콘텐츠 제공자 측에서 다수의 데이터 성분을 생성하는 단계(이 성분은 데이터를 분해한 것임)와, 상기 데이터 성분 각각을 암호화하는 단계와, 상기 암호화된 데이터 성분들을 상기 콘텐츠 제공자로부터 트랜스코딩 프록시로 전송하는 단계와, 상기 프록시 측에서 상기 암호화된 데이터 성분들을 트랜스코딩하는 단계와, 상기 암호화되고 트랜스코딩된 데이터 성분들을 선택적으로 처리(manipulate)하는 단계와, 상기 트랜스코딩 프록시에 의해 생성된 상기 트랜스코딩되고 처리된 데이터 성분들을 상기 클라이언트 장치로 전송하는 단계를 포함한다.
제2 측면에 의하면, 본 발명은 멀티미디어 데이터를 안전하게 트랜스코딩하는 시스템을 제공하며, 이 시스템은 상기 멀티미디어 데이터로부터 다수의 성분을 생성하고, 상기 다수의 성분 각각을 암호화하는 적어도 하나의 콘텐츠 제공자와, 상기 적어도 하나의 콘텐츠 제공자에 연결되어 작동하고, 상기 콘텐츠 제공자로부터 적어도 하나의 암호화된 성분을 수신하고, 상기 적어도 하나의 암호화된 성분을 선택적으로 처리하는 적어도 하나의 트랜스코딩 프록시와, 상기 적어도 하나의 트랜스코딩 프록시와 연결되어 작동하고, 상기 적어도 하나의 암호화되고 처리된 성 분을 수신하여 해독하고, 상기 적어도 하나의 해독되고 처리된 성분으로부터 상기 멀티미디어 데이터의 트랜스코딩된 버젼을 다시 어셈블링하는 적어도 하나의 클라이언트 장치를 포함한다.
제3 측면에 의하면, 본 발명은 컴퓨터상에서 실행될 때 전술한 방법을 수행하고, 컴퓨터로 판독가능한 저장 매체에 저장된 컴퓨터 프로그램 코드를 포함하는 컴퓨터 프로그램 제품을 제공한다.
본 발명의 장점은 매개자 즉, 프록시에 의해 멀티미디어 콘텐츠를 안전하게 트랜스코딩하는 방법 및 장치를 제공하는 것이다.
본 발명의 다른 장점은 프록시가 데이터를 해독하지 않고도 데이터를 트랜스코딩하는 방법 및 장치를 제공하는 것인데, 이렇게 하지 않으면 양단간 시스템의 보안의 보장을 해칠 것이다.
본 발명의 일 실시예에 의하면, 본 발명은 트랜스코딩 프록시에 의해 제기된 보안상의 문제점에 대한 해결책을 제공하는데, 트랜스코딩 프록시는 바람직하게는 콘텐츠 제공자로 하여금 먼저 데이터(예를 들어, 멀티미디어 콘텐츠)를 세분화하거나 다수의 성분으로 분해하는 것을 포함한다. 각각의 성분은 독립적으로 암호화될 수 있다. 콘텐츠 제공자의 트랜스코딩 프록시 다운스트림은 바람직하게는 암호화된 성분들의 일부를 선택적으로 필터링하거나 탈락시킨다. 선택적인 필터링은 콘텐츠의 압축 기반 트랜스코딩을 달성하고, 이로써 콘텐츠의 성분을 전혀 해독할 필요 없이 느린 액세스 링크를 통한 콘텐츠의 전달 속도를 향상시킨다.
일 실시예에서, 본 발명은 멀티미디어 콘텐츠를 각각 인코딩하고, 안전하게 트랜스코딩하고, 디코딩하는 세개의 분산된 엔티티 또는 기능 단위를 포함한다. 제1 엔티티(예를 들어, 콘텐츠 제공자)는 바람직하게는 종래의 멀티미디어 오브젝트를 취하여 소스 데이터를 다수의 데이터 성분으로 세분화한다. 이 성분 각각은 바람직하게는 메타 헤더로 주석을 덧붙이고, 이 메타 헤더는 성분 식별 필드와 특정 성분의 상대적인 중요도/우선 순위를 포함하지만, 이에 한정된 것은 아니다. 각 성분에 대하여 콘텐츠 제공자는 바람직하게는 보통문 텍스트(clear text)의(암호화되지 않은) 메타데이터 헤더, 메타데이터 헤더의 암호화된 버젼, 암호화된 성분을 포함하는 메시지를 인코딩하거나 어셈블링(assemble)한다. 그 후 각 성분에 대하여, 콘텐츠 제공자는 대응하는 어셈블링된 메시지를 제2의 엔티티인 트랜스코딩 프록시, 또는 매개자로 전송한다.
트랜스코딩 프록시는 각 성분에 대응하는 다수의 메시지를 수신하고, 각 메시지의 메타데이터 헤더를 검사하여 어느 암호화된 성분이 선택적으로 필터링되어야 하는지를 결정한다. 나머지 메시지들은 원래의 멀티미디어 오브젝트의 안전하게 트랜스코딩된 버젼을 포함하고, 그 후 제3자인 클라이언트 장치로 전송된다.
클라이언트 장치는 나머지 메시지를 수신한다. 각 전송된 메시지에 대하여, 클라이언트 장치는 메시지를 해독하고, 메타데이터 헤더의 해독된 버젼과 보통문 텍스트 메타데이터 헤더를 비교하는데, 양자 모두 메시지로부터 추출된 것이다. 만일 두개의 헤더가 소정의 허용가능한 정도 내까지 일치하지 않는다면, 탬퍼링이 일어났을 가능성이 가장 크다. 만일 두개의 헤더가 일치한다면, 클라이언트 장치는 탬퍼링이 없었다고 결론 내리고, 계속해서 메시지의 해독된 성분을 디코딩한다.
바람직하게는, 본 방법은 성분의 암호화 전에 적어도 하나의 데이터 성분을 압축하는 단계를 더 포함한다.
바람직하게는, 본 방법은 클라이언트 장치 측에서 성분의 해독 후에 적어도 하나의 데이터 성분을 압축 해제하는 단계를 더 포함한다.
바람직하게는, 데이터는 멀티미디어 오브젝트이다.
바람직하게는, 멀티미디어 오브젝트는 텍스트 페이지, 이미지, 오디오, 비디오, 관계 데이터(relational date), XML 문서, 및 멀티미디어 오브젝트의 결합인 하이브리드 오브젝트로 구성되는 그룹으로부터 선택된다.
도 1은 데이터의 채널 인코딩 및 디코딩을 위한 종래의 통신 시스템을 나타내는 블록도.
도 2는 채널 인코딩 및 디코딩과 함께 소스 인코딩 및 디코딩을 채용하는 종래의 시스템의 예를 도시하는 블록도.
도 3은 소스 트랜스코딩뿐만 아니라 소스 및 채널 인코딩/디코딩을 채용하는 종래의 시스템을 도시하는 블록도.
도 4는 서버와 클라이언트간에 프록시를 포함하는 네트워킹된 환경에서 데이터를 트랜스코딩하는 종래의 시스템을 도시하는 블록도.
도 5는 웹 서버로부터 GIF 포맷으로 된 이미지가 트랜스코딩 프록시를 통하여 JPEG 포맷으로 변환되어 브라우저 측에 디스플레이되는 예를 도시하는 블록도.
도 6은 웹 서버와 브라우저 사이에 데이터를 안전하게 전송하기 위한 안전한 소켓 층(secure socket layer, SSL)을 채용하는 네트워킹된 환경에서의 통신 시스템의 예를 도시하는 블록도.
도 7은 암호화된 데이터의 양단간 보안을 보장하면서 콘텐츠 제공자와 클라이언트 간에 데이터를 전송하는 종래의 시스템을 도시하는 개념적인 블록도.
도 8은 콘텐츠 제공자와 클라이언트 간에 데이터를 전송하는 종래의 시스템에서 트랜스코딩 프록시에 의해 제시된 보안 문제를 설명하는 개념적인 블록도.
도 9는 본 발명의 일 실시예에 따라 데이터를 인코딩/암호화하는 방법을 도시하는 논리적인 흐름도.
도 10은 도 9에 도시된 본 발명의 시스템을 사용하여 인코딩된/암호화된 데이터를 트랜스코딩하는 방법을 설명하는 논리적인 흐름도.
도 11은 본 발명의 일 실시예에 따라 트랜스코딩된 데이터를 수신할 때 클라이언트 장치 측에서 데이터를 디코딩하는/해독하는 방법을 설명하는 논리적인 흐름도.
도 12는 본 발명의 일 실시예에 따라 형성된, 안전한 트랜스코딩 시스템의 세개의 성분을 설명하는 개념적인 블록도.
도 13은 본 발명의 다른 실시예에 따라, SSL을 채용하고 프록시를 포함하는 네트워킹된 환경에서 데이터를 트랜스코딩하는 시스템을 도시하는 블록도.
도 1은 채널을 통하여 전송된 데이터의 인코딩과 디코딩을 위한 통신 시스템을 도시한다. 당업자들이 알고 있는 바와 같이, 채널 자체는 임의의 공지된 방식, 예를 들어, 하나 이상의 전용 데이터선 또는 셀룰러, 위성, 마이크로파, 또는 기전력(electromotive force, EMF) 네트워크로 구현될 수 있다. 일반적인 통신 프로세스에서 데이터 소스 또는 콘텐츠 제공자에 의해 전송된 데이터는 목적지(예를 들어, 사용자)에 도달하기 전에, 대개 소스 및 채널 인코딩과 디코딩을 거칠 것이다.
도 1을 참조하면, 소스 인코딩(101)과 디코딩(104)은 일반적인 의미로 데이터의 리던던시를 이용하여 소스 데이터의 전체 양을 압축하거나 감소시키는 방법 및 장치를 말한다. 다양한 압축 기술이 당업계에 알려져 있는데, 예를 들어 무손실 기술(예를 들어, 실행 길이 코딩(run-length coding), 후프만 코딩(Huffman coding), 산술 코딩(arithmetic coding), 및 UNIX에서 gzip 커맨드에서 사용되는 LZ 방식), 손실 기술(예를 들어, DCT(Discrete Cosine Transformation) 및 웨이브릿(wavelet)), 또는 양자를 조합한 것(예를 들어, JPEG)을 포함할 수 있다.
데이터가 압축된 이후에, 데이터가 AC-결합된 송신기/수신기를 통하여 전송될 수 있도록 데이터의 DC 성분을 제거하기 위하여, 데이터는 예를 들어, 8B/10B 섬유 채널 및 기가비트 이더넷(Fiber Channel and Gigabit Ethernet)과 같은 채널 인코딩(102)을 필요로 할 수 있다. 채널 코딩은 또한 충분한 데이터 전이(transition)를 보장하므로, 고속의 데이터 합성을 가능하게 한다. 부가된 데이터 및/또는 전이를 제거하기 위하여 대응하는 채널 디코딩(103)이 필요하다.
송신기에 의해 이용된 채널 인코딩 방식이 수신기에 의해 채용된 채널 디코딩 기술과 상이할 때, 도 2에 도시된 바와 같이 채널을 통하여 지나가는 데이터에 대하여 채널 트랜스코딩을 적용하는 것이 가능하다. 이러한 방식을 사용하여, 일 반적으로 채널 트랜스코더(203)가 채널 인코더(202)와 채널 디코더(203) 사이에 삽입되어 있다. 소스 인코더(201)와 디코더(205)는 본질적으로 영향을 받지 않는다.
도 3은 소스 트랜스코딩이 수신기에 의해 사용된 트랜스코딩과 상이할 때의 종래의 시나리오를 설명한다. 도 3을 참조하면, 소스 인코더(301) 측에서 사용된 방법이 소스 디코더(307) 측에서 사용된 방법과 상이할 때, 소스 트랜스코더(304)가 요구된다. 또한, 채널 인코더(302)에 의해 인코딩된 데이터 채널을 디코딩하기 위하여, 소스 트랜스코더(304) 앞에 채널 디코더(307)가 추가되어야 한다. 소스 트랜스코더(304)에 의해 트랜스코딩된 데이터는 후속적으로 채널 인코더(305)에 의해 채널 인코딩될 필요가 있고, 수신기 채널 디코더(306)에 의해 수신기에서 다시 디코딩될 필요가 있다.
예를 들어, TCP/IP 통신 프로토콜을 기반으로 하는 네트워킹 환경(예를 들어, 인터넷)에서 클라이언트와 서버 사이에 프록시 서버 또는 소크(sock) 서버를 도입하는 것이 알려져 있다. 이 방식에서 프록시는 클라이언트를 대신하여 다양한 네트워킹 동작을 수행할 것이다. 도 4는 이러한 프록시 서버를 포함하는 종래의 아키텍쳐를 설명한다. 이제 도 4를 참조하면, 브라우저(409)(예를 들어, Nescape(Nescape Navigator는 Nescape Communication Corporation의 등록 상표임)와 Internet Explorer(Internet Explorer는 Microsoft Corporation의 상표임))와 웹 서버(401)(예를 들어, 아파치 서버 또는 로터스 도미노 서버) 모두 예를 들어, HTTP(HyperText Transport Protocol)과 같은 유동적인(stateless) 통신 프로토콜에 기초하여 동작할 수 있다. HTTP 프로토콜은 고정적인(stateful) TCP 프로토콜을 호출할 것이고, 이것은 차례로 유동적인(stateless) IP(402, 405, 407, 410)를 호출할 것이다. 도 4의 예에서, 그 후 IP 패킷은 단편화되고(fragmented), 매체 액세스 프로토콜(Media Access Protocol, MAC)(403, 404, 408, 411)(예를 들어, 이더넷, 섬유 채널(Fiber Channel), 비동기 전송 모드(Asynchronous Transfer Mode, ATM))에 필요한 추가적인 헤더에 의해 캡슐화될 것이다. 일반적으로 브라우저(409)는 처음에 프록시(406)에 접속되어 있다. 그 후, 프록시(406)는 웹 서버(401)와 접속을 설정할 책임이 있고, 본질적으로 브라우저(409)와 웹 서버(401) 간에 전송된 데이터를 중계(relay)하는 역할을 한다. 당업자들이 알고 있는 바와 같이, 프록시는 방화벽으로 널리 사용되어, 예를 들어, 브라우저로부터 들어오는 접속이 확인될 수 있고, 목표 어드레스가 제어될 수 있다.
도 5는 웹 브라우저(502) 측에 저장될 수 있는 GIF 이미지(501)가 브라우저(513)에 의해 탐색될 때의 시나리오의 예를 설명한다. 이 예에서 프록시(507)는 트랜스코딩을 수행하도록 적응된 트랜스코딩 모듈(508)을 사용하여 GIF 이미지 포맷(501)으로부터 JPEG 포맷(514)으로 트랜스코딩을 수행하거나 변환을 수행할 수 있다. 적어도 한 측면에서는, 소스 이미지의 데이터 볼륨을 감소시키기 위하여, 이것이 바람직할 수 있다. 도 5의 예에서 도시된 것처럼, 브라우저(513), 프록시(507), 및 웹 서버(502)가 모두 서로 TCP/IP(503, 506, 509, 512)와 MAC(504, 505, 510, 511) 프로토콜을 통하여 통신한다는 것을 인식해야 한다.
데이터의 안전한 전송을 위하여 브라우저와 웹 서버는 SSL(Secure Socket Layer)를 통하여 통신할 수 있는데, SSL에서는 보안을 유지하기 위하여, DES와 공개 키와 같은 종래의 암호화 방식을 호출하여 데이터를 암호화한다. 종래의 안전한 통신 토폴로지가 도 6에 도시되어 있다. 도 6을 참조하면, 안전 층(예를 들어, SSL)(607, 602)은 일반적으로 클라이언트 측에서 브라우저(608)와 TCP/IP(606) 사이에 존재하고 서버 측에서 웹 서버(601)와 TCP/IP(603) 사이에 존재한다. 보안은 세션 단위로 필요하다. 당업자들이 알고 있는 바와 같이, 브라우저 측의 SSL(607)은 먼저 웹 서버 측의 SSL(602)과 접속을 설정할 것을 요청한다.
서버 측 SSL(602)은 접속을 허락하고, 브라우저(608)에게 공개 키를 전송한다. 브라우저 측의 SSL(607)은 그 후 서버(601)로부터 수신된 공개 키를 사용하여 세션 키를 암호화하고, 세션 키는 서버로 전송된다. 서버 측의 SSL(602)은 자신의 비밀 키를 사용하여 세션 키를 해독한다. 그 이후부터 브라우저(608)와 서버(601)는 모두 동일한 세션 키를 통하여 통신한다. 브라우저와 서버에 의해 전송된 모든 데이터는 동일한 세션 키에 의해 암호화될 것이다.
SSL 층은 서버와 브라우저 측 모두의 TCP/IP(603, 606), MAC 층(604, 605)에 투명하다. 또한, 프록시와 같은 서비스(예를 들어, 방화벽)가 브라우저와 서버간에 도입될 때, 프록시는 TCP/IP 프로토콜이 사용된다고 가정하여 여전히 IP 주소에 기초하여 요청자(브라우저)와 목적지(서버)를 허가할 것이다(validate). 그러나, 데이터가 모두 암호화되어 있기 때문에, 프록시는 데이터를 조사할 수 없을 것이다. 전형적인 암호화 방법의 예가 도 7에 도시되어 있다. 도 7에 도시된 바와 같이, 콘텐츠 제공자는 (예를 들어, JPEG과 같은 알려진 임의의 소스 코딩 기술을 통 하여) 데이터 압축을 수행하고(702), 데이터, 본 예에서는 이미지를 암호화한다(701). 그 후, 암호화된 데이터(705)는 데이터를 요청하는 클라이언트 장치로 네트워크 통신 채널을 거쳐 전송될 수 있다. 클라이언트 장치가 신뢰성이 있다고(즉, 안전하다고) 가정하면, 클라이언트 장치는 데이터를 해독하고(704) 압축 해제(703)하는, 본질적으로 원래 이미지를 재구성하는 알고리듬을 가지고 있다. 만일 암호화된 데이터가 콘텐츠 제공자와 클라이언트 장치간의 네트워크 중의 임의의 지점에서 관찰된다면, 암호화된 데이터가 해독 알고리듬을 소유하지 않고서는 해독될 수 없기 때문에 관찰자는 도청할 수 없을 것이다. 결과적으로, 관찰자는 스크램블된 데이터(705)만을 보게 될 것이다.
도 7의 예로 든 시스템에서 도시된 바와 같이, 암호화는 일반적으로 송신자(즉, 콘텐츠 제공자) 측에서 압축 후에 일어난다는 것을 인식해야 할 것이다. 종래의 압축(소스 코딩) 알고리듬은 일반적으로 결과로서의 출력 데이터의 사이즈를 줄이면서 데이터의 통계적인 리던던시를 제거하도록 적응되어 있다. 반면에 암호화 알고리듬은 일반적으로 데이터가 랜덤하게 보이도록 하는 방식으로 데이터를 스크램블하지만(즉, 통계적인 리던던시가 제거되지만), 데이터의 사이즈는 원래 입력 데이터와 비교하여 감소되지 않고 심지어는 증가될 수도 있다. 만일 데이터 암호화가 압축 단계보다 선행된다면, 암호화 단계는 압축 단계 동안에 제거할 통계적인 리던던시가 만일 있다 하더라도 거의 없도록 데이터를 스크램블할 것이다. 결과적으로, 데이터 압축은 거의 행해지지 않거나 전혀 행해지지 않을 것이다. 더욱이, 암호화에 의해 도입된 랜덤성이 아주 커서, 압축 알고리듬은 실제로 데이터의 사이 즈를 줄이는 것이 아니라 확대할 수 있다. 이러한 이유로 송신자 측에서 실행 순서는 바람직하게는 압축이 먼저이고, 암호화가 그 다음이다.
도 8에 도시된 바와 같이, 트랜스코딩 프록시는 콘텐츠 제공자와 클라이언트 장치 간의 매개자로서 도입될 수 있다. 프록시는 본질적으로 데이터의 사이즈가 감소되어 응답 시간(즉, 데이터 처리량)을 향상시키거나 아니면, 클라이언트 장치에서 제공되기에 적합한 포맷으로 데이터의 포맷을 변형하도록, 데이터를 트랜스코딩하는 역할을 수행한다. 어느 경우에나, 트랜스코딩 프록시가 시스템에 존재할 때, 트랜스코딩의 표준적인 접근 방식은 트랜스코딩이 적용되기 전에 프록시가 먼저 (콘텐츠 제공자에 의해 압축되고 암호화되었던) 암호화된 데이터 스트림을 해독할 것을 요구한다. 도 8을 참조하면, 트랜스코딩 프록시는 먼저 데이터를 해독하고(804), 데이터를 압축 해제하고(803), 그 후 압축 알고리듬을 적용하여 데이터를 재압축하며(806), 이로써 데이터의 사이즈 및/또는 그 포맷을 변경한다. 프록시는 최종적으로 트랜스코딩된 데이터를 재암호화(805)하여, 이를 네트워크를 통하여 클라이언트 장치로 전송한다. 클라이언트 측에서 데이터는 트랜스코딩 프록시로부터 다시 해독되고(807), 새로운 압축(소스 코딩) 알고리듬을 사용하여 압축 해제된다(808).
도 8에 도시된 바와 같이, 이러한 종래의 트랜스코딩 방식의 중요하면서도 잠재적으로 파괴적인 결과는 일단 데이터가 트랜스코딩 프록시에 의해 해독되면, 이것이 다시 암호화되기 전에 제3자인 관찰자가 암호화되지 않은 데이터를 도청할 수 있다는 것이다. 이러한 상태는 송신자와 수신자만이 스크램블되지 않은 상태의 데이터를 액세스하도록 허용되는, 암호화의 사용에 있어 내재하는 프라이버시의 양단간 보안 보장에 위배된다.
어떤 경우에 트랜스코딩 프록시가 데이터를 해독하기 위하여 송신자와 수신자에 의해 신뢰를 받는 엔티티일 수 있을지라도, 일반적으로 트랜스코딩 프록시는 좀처럼 신뢰를 받지 못한다.
종래 기술의 트랜스코딩 시스템과 방법은 일반적으로 압축이 암호화되지 않은 데이터에만 적용될 수 있다고 가정하였다. 이것은 데이터의 사이즈를 축소하기 위하여, 트랜스코더에 의해 채용된 압축 알고리듬이 일반적으로 데이터의 의미론(semantics) 및/또는 통계학(statistics)을 고도로 이해할 것을 필요로 하기 때문이다. 이렇게 해서 지금까지 데이터가 스크램블/해독되어 있지 않을 때만 이러한 의미적인 이해가 얻어질 수 있다고 가정되었다.
본 발명은 예를 들어, 웹 서버인 하나 이상의 데이터 소스(예를 들어, 멀티미디어 콘텐츠 제공자)와 예를 들어, 웹 브라우저 또는 다른 장치인 하나 이상의 클라이언트 장치간에 위치한 매개자 즉 프록시에 의해 데이터를 안전하게 트랜스코딩하는 방법 및 장치에 관한 것이다. 본 발명에 따르면, 트랜스코딩 동작은 데이터를 먼저 해독할 필요 없이 암호화된 데이터에 대하여 행해진다. 바람직한 실시에에서, 본 발명은 세 개의 분산된 유닛 또는 요소, 즉, 소스 데이터(예를 들어, 멀티미디어 오브젝트)에 대하여 인코딩 동작을 수행하는 제1 유닛(예를 들어, 콘텐츠 제공자), 데이터를 안전하게 트랜스코딩하는 제2 유닛, 및 트랜스코딩 유닛으로부터 수신된 데이터를 디코딩하는 제3 유닛(예를 들어, 클라이언트 장치 또는 브라 우저)을 포함한다. 이러한 각 주요 유닛의 바람직한 실시예를 도시하는 흐름도가 각각 도 9 내지 도 11에 도시되어 있다. 또한, 이러한 토폴로지에 한정되지는 않지만, 도 12는 본 발명에 따라 형성된 전체적인 안전한 트랜스코딩 시스템의 예를 도시한다.
여기서 3개의 별개의 기능적인 블록 또는 유닛을 포함하는 것으로 설명되었지만, 본 발명의 시스템에서 3개의 기능적인 블록은 물리적으로 서로 별개의 장소 또는 멀리 떨어진 장소에 존재할 필요가 없다는 것을 인식해야 할 것이다. 예를 들어, 독립적인 트랜스코딩 프록시가 사용되지 않는다고 가정하고 트랜스코딩 유닛을 물리적으로 콘텐츠 제공자 내에 아니면, 클라이언트 장치 내에 존재하도록 하는 것도 본 발명의 범위 내에 있다.
이제 도 9를 참조하면, 본 발명에 따라 형성된 인코딩 유닛의 일 실시예(데이터 콘텐츠 제공자에 의해 구현될 수 있음)가 기존의 멀티미디어 오브젝트 또는 유사한 데이터(900)를 입력으로서 받아들여, 데이터의 분해(901) 같은 것에 의해 그 데이터로부터 소정 수의 성분들(906)을 생성함으로써 (즉, 성분화(componentization)) 인코딩 절차를 개시한다. 데이터 오브젝트의 성분화의 결과로 K개(이 예에서, K≥1)의 성분을 생성할 수 있다. 데이터 성분들(906)은 중복되거나 리던던시가 있는 데이터를 포함할 수 있다. 예를 들어, 각 데이터 성분은 원래 오브젝트의 복사본을 포함할 수 있다. 마찬가지로, 데이터 성분들(906)은 서로 상호 배타적일 수 있다. 예를 들어, 이미지가 다수의 중복되지 않은 지리적 영역으로 파티션되어, 각 영역이 별개의 성분으로서 표현되고 모든 영역을 합친 것은 원래의 이미지를 완전히 재구성할 수 있다. 성분화 프로세스(901)는 당업자에게 알려진 기술, 예를 들어, 서브 대역 코딩과 웨이블릿 기술과 같은 레이어링 알고리듬 또는 프로그레시브 인코딩 알고리듬을 사용하여 수행될 수 있다.
(도 9에 도시되지는 않았지만) 본 발명의 바람직한 실시예에서, 각 데이터 성분(906)은 후속적으로 압축되거나 코딩된다(도 12에서 도면 부호 1202 참조). 이제부터, "압축"이란 용어는 압축 및/또는 코딩을 의미하는 것으로 사용될 것이다. "코딩"이란 용어는 전통적으로 이해되는 바와 같이, 압축보다는 더 포괄적인 용어이고, 종종 멀티미디어 오브젝트 또는 다른 소스 데이터의 디지털 표현을 생성하는 프로세스로 정의된다. 그러나, 코딩은 압축과 달리 오브젝트의 입력 디지털 표현보다 작은 출력 디지털 표현을 생성할 필요가 없다.
압축이 채용된다고 가정하면, 본 발명에서는 단일 압축 수단이 사용될 수 있다고 유사하게 예상하고 있지만, 특정 데이터 성분에 적용된 압축 알고리듬 또는 기술이 다른 성분에 적용된 압축 알고리듬과 동일할 필요는 없다. 또한, 성분에 적용된 압축 알고리듬은 입력 파라미터로서, 원래의 오브젝트에 대응하는 성분 데이터가 아닌 정보, 예를 들어, 이용된 압축의 정도 및/또는 유형에 영향을 미칠 수 있는 멀티미디어 오브젝트에 관한 다른 정보를 받아들일 수 있다. 도 12는 압축 알고리듬 "C"(1202)가 개개의 데이터 성분을 수신하는 예를 도시한다.
데이터 소스/콘텐츠 제공자는 또한 바람직하게는 데이터 성분(906)에 부가되거나 내장된 메타데이터 정보(903)를 생성한다. 당업자가 알고 있는 바와 같이, 메타데이터는 그것이 부착되어 있는 데이터의 특성을 기술하는데 널리 사용된다; 본질적으로 메타데이터는 "데이터에 관한 데이터"이다. 이러한 메타데이터(903)는 예를 들어, 성분을 식별하는데 사용되는 주석 라벨을 포함할 수 있고/있거나, 특정 성분의 상대적인 또는 절대적인 중요도에 관한 설명을 포함할 수 있다. 성분 또는 전체 오브젝트의 의미적인 내용에 관한 정보, 시퀀스 번호, 탬퍼링 감지에 사용된 성분 데이터의 단 방향 해시, 또는 후속의 트랜스코딩 프로세스에 도움이 될 수 있는 임의의 다른 정보가 메타데이터 정보(903) 내에 포함될 수 있다. 또한, 메타데이터는 콘텐츠 제공자, 트랜스코딩 프록시, 및 클라이언트 장치와 호환되는 임의의 적합한 언어 또는 포맷이 될 수 있다. 예를 들어, 메타데이터는 XML(eXtensible Markup Language) 언어로 씌어질 수 있는데, XML의 MPEG-7은 상이하다(variant). 이제부터, 여기서 설명된 메타데이터 정보는 "메타데이터 헤더"라고 부를 것이다. 그러나, 메타데이터는 실지로 메시지의 어디 곳이나 존재할 수 있고, 메시지 또는 데이터 스트림의 시작 부분에 한정되지 않는다는 것을 이해해야 한다.
계속해서 도 9를 참조하면, 콘텐츠 제공자 또는 데이터 소스는 바람직하게는 성분들과 결합될 메타 정보의 두가지 버전을 생성한다. 즉, 암호화가 수행될 버전(903)과 암호화되지 않은 포맷으로 남아 있을(보통문 텍스트로 남아 있을) 제2 버전(905)이다. 도 9가 메타데이터의 두가지 유형만을 생성하는 경우를 설명하고 있지만, 본 발명은 메타데이터의 각 버전이 암호화를 거치거나 거치지 않을, 다수의 메타데이터 버전이 생성되거나, 메타데이터의 단일 버전만이 생성될 수 있다고 유사하게 예상한다. 메타데이터 헤더의 두 개의 버젼(903, 905)은 바람직하게는 다른 유용한 애플리케이션 중에 탬퍼링을 감지하기 위해 클라이언트 장치에 의해 궁극적으로 사용된다. 메타데이터 헤더의 보통문 텍스트 버전(905)은 암호화를 거치는 메타데이터 헤더(905)와 동일할 필요가 없다. 그러나, 탬퍼링 감지 방식이 클라이언트 장치에 의해 채용된다고 가정하면, 적어도 전송된 메타데이터 정보의 탬퍼링을 감지하기 위하여 클라이언트 장치가 메타데이터 헤더의 두 개의 수신 버전(903, 905)을 비교할 수 있도록, 암호화될 메타데이터 버전(903)은 충분한 정보를 포함해야 한다.
원래 데이터(900)의 각 성분(906)에 대하여 콘텐츠 제공자는 바람직하게는 보통문 텍스트 메타데이터 헤더(905), 메타데이터 헤더의 암호화된 버전(904), 및/또는 하나 이상의 성분으로부터 온 데이터의 암호화된 성분 부분(906)을 결합하는 클라이언트 장치에게 전송하기 위하여 하나 이상의 메시지(907)를 어셈블링한다. 여기서 성분 부분을, 그 자체로 멀티미디어 오브젝트(900)를 나타내는 데이터의 부분 집합인, 특정 성분을 나타내는 데이터의 부분 집합으로 정의한다. 오브젝트(900)의 각 성분(906)은 바람직하게는 하나 이상의 성분 부분을 포함하고, 각 성분 부분은 특정 유형 및/또는 기능의 데이터를 포함하는 것으로 지정될 수 있다. 예를 들어, 성분은 암호화된 데이터 부분과 보통문 텍스트 메타데이터 부분을 포함할 수 있다. 성분 부분은 압축 이전에 압축 프로세스 또는 암호화 프로세스로부터 생성될 수 있다. 어셈블링된 메시지와 관련된 보통문 텍스트 메타데이터 헤더(905)는 동일한 메시지에 포함된 성분 부분을 식별하거나 기술할 필요가 없거나, 이와 달리 관련될 필요가 없는 메타데이터를 포함할 수 있다. 예상되는 시나리오 에서는 메타데이터가 동일한 메시지에 포함된 하나 이상의(반드시 전체일 필요는 없음) 성분 부분을 식별하고/식별하거나 기술한다.
메타데이터 헤더(903)와 압축된 성분 데이터(902)의 조합에 적용된 암호화 알고리듬 또는 프로세스(904)는 성분 및/또는 성분 부분별로 상이할 수 있다. 암호화 알고리듬이 각 성분에 대하여 동일하다 할지라도, 암호화 알고리듬(904)의 입력으로서 사용된 암호화 키는 메타데이터 헤더(903), 다양한 성분, 또는 심지어 메시지(907) 내의 성분 부분 간에 상이할 수 있다. 본질적으로, 본 발명의 바람직한 실시예는 메시지의 각 부분이 메타데이터 헤더 또는 성분 부분이든간에 독립적으로 그리고 명백하게 암호화될 수 있도록 허용한다. 예를 들어, 간단한 경우에 모든 메타데이터 헤더와 모든 성분, 즉, 각 메시지의 모든 성분 부분이 동일한 알고리듬과 동일한 암호화 키를 사용하여 암호화될 수 있다고 예상된다. 당업자들이 알고 있는 바와 같이, 암호학 분야에서 알려진 용어를 쓰자면, 암호화 키는 비대칭 공개 키 아니면 대칭 키일 수 있다.
멀티미디어 오브젝트의 다양한 성분을 나타내는 어셈블링된 메시지(907)는 부가적인 내장 정보와 함께 바람직하게는 통신 채널을 통하여 트랜스코딩 프록시로 전송된다. 전술한 바와 같이, 통신 채널 자체는 예를 들어, 전용 데이터 선 또는 셀룰러, 위성, 또는 마이크로파 네트워크를 포함하는 무선 통신 링크와 같은 임의의 알려진 방식으로 구현될 수 있다. 도 10에 도시된 트랜스코딩 프록시 동작의 바람직한 실시예에서, 트랜스코딩 프록시가 콘텐츠 제공자로부터 멀티미디어 오브젝트의 다양한 성분을 나타내는 어셈블링된 메시지를 수신할 때(101), 트랜스코딩 프로세스가 개시된다. 트랜스코딩 프록시는 바람직하게는 보통문 텍스트 부분이 수신된 메시지에 존재한다고 가정하여, 각 어셈블링된 메시지로부터 보통문 텍스트(즉, 암호화되지 않은) 메타데이터 헤더(1002)를 추출한다. 추출된 메타데이터 헤더에서 제공된 정보를 사용하여, 트랜스코딩 프록시가 수신된 메시지의 어느 암호화된 성분 또는 성분 부분을 필터링할 것인지 결정함으로써, 수신된 성분을 선택적으로 처리한다(1003). 멀티미디어 오브젝트 데이터를 클라이언트 장치가 사용하기 적합한 포맷으로 변형하기 위하여 다른 데이터 처리의 형태가 본원 발명에 의해 유사하게 채용될 수 있다는 것을 인식해야 할 것이다.
트랜스코딩 애플리케이션에 의해 필요할지 모르는 다른 적당한 변형 동작이 본 발명에 의해 유사하게 예상되지만, 본 발명의 설명의 문맥에서 "필터링(filter)"이라는 용어는 소정의 성분 또는 성분의 부분의 탈락 아니면 대체를 의미하는 것으로 사용된다. 바람직하게는 트랜스코딩 프록시가 성분 또는 성분 부분을 필터링할지 말지에 대한 결정을 단일 메시지의 메타데이터 헤더에 의해 제공된 정보 또는 다수 메시지의 메타데이터 헤더에 포함된 정보에 기초하여 결정한다. 프록시는 메타데이터가 이러한 메시지 부분이 데이터 대체를 거쳤는지를 나타내었다고 가정하고, 메타데이터 정보에 의해 식별된 메시지의 부분을 탈락시키거나, 완전한 메시지를 탈락시키거나 메시지의 소정 부분을 다른 데이터로 대체할 수 있다. 메시지의 부분은 여기서 메시지의 하나 이상의 암호화된 성분 부분으로 정의된다. 필터링 프로세스 이후에 남아있는 메시지들은 전체적으로 또는 부분적으로 수정되고, 원래 데이터(예를 들어, 멀티미디어 오브젝트)의 안전하게 트랜스코 딩된 버전을 구성한다. 이러한 트랜스코딩된 메시지의 각각은 후속적으로 통신 채널을 통하여 클라이언트 장치로 전송된다(1004).
본 발명에 따라 트랜스코딩 프록시에 의한 데이터 처리(예를 들어, 선택적으로 필터링하는 것--주석이 달린 암호화된 성분을 탈락시키거나 대체하는 것) 프로세스는, 오브젝트를 나타내는 데이터(즉, 성분)를 전혀 해독해야 할 필요 없이 결과물인 멀티미디어 오브젝트의 사이즈가 매개자에 의해 압축되기 때문에, 안전한 트랜스코딩 목적을 달성한다. 각 메시지에 수반되는 메타데이터 헤더 또는 다른 적당한 균등한 주석 달린 데이터는, 어느 성분을 필터링하고 어느 성분을 클라이언트 장치로 보내느냐에 관하여 정보에 근거한 결정을 하기 위하여, 바람직하게는 트랜스코딩 프록시에 성분의 충분한 의미적 이해를 제공한다.
반면에 트랜스코딩에 관한 종래의 접근 방식은 독립적인 메타데이터 헤더 또는 유사한 주석을 채용하기보다는 의미적인 이해를 제공하는 데이터 그 자체에 의존한다는 것을 상기하는 것이 중요하다. 결과적으로, 그러한 전통적인 트랜스코딩 기술은 데이터를 트랜스코딩하는데 필요한 의미 정보에 대한 액세스를 얻기 위해 데이터가 먼저 해독될 것을 요구한다. 본 발명은 이러한 요구를 회피하고, 매개자에 의해 데이터가 해독되는 것을 요구하지 않고도, 암호화되고 주석이 달린 성분화된 콘텐츠의 선택적인 필터링을 통하여 트랜스코딩하는 것이 안전한 트랜스코딩을 달성할 수 있다는 것을 보여준다는 점에서 장점이 있다. 이러한 방식으로, 본 발명의 시스템에 의해 양단간 보안이 유지된다.
이제 도 11을 참조하면, 본 발명의 바람직한 실시예에 의한 클라이언트 장치 프로세싱에 대한 흐름도가 도시되어 있다. 바람직하게는 클라이언트 장치가 전용 데이터선 또는 무선 통신 링크와 같은 통신 채널에 의해 트랜스코딩 프록시에 접속되어 동작된다는 것을 상기해야 한다. 클라이언트 장치 즉 브라우저 측에서의 디코딩 프로세스는 바람직하게는 트랜스코딩 프록시에 의해 전송된 트랜스코딩된 메시지 성분을 수신하는데서(1101) 시작된다. 수신된 각 메시지에 대하여 클라이언트 장치는 바람직하게는 메시지에 포함된 메타데이터 헤더의 암호화된 부분을 해독하고(1102), 해독된 헤더 버전을 메시지에 포함된 보통문 텍스트 메타데이터 헤더와 비교하거나 확인한다(1103). 두 개의 헤더 버전(즉, 암호화된 것과 보통문 텍스트)이 일치하는지 여부를 결정하는 기준은 바람직하게는 클라이언트 장치 그 자체에 의해 결정되므로, 일치는 정확할 필요가 없다는 것을 이해해야 할 것이다. 또한, 전체의 트랜스코딩 시스템에 의해 요구된 일치 정도는 콘텐츠 제공자에 의해 결정될 수 있다는 것이 마찬가지로 예상된다.
만일 두 개의 메타데이터 버전이 일치하지 않는다면(1106), 클라이언트 장치는 바람직하게는 사용자에게 적당한 방식으로 메타 정보에 탬퍼링이 있었음을 표시한다. 이러한 탬퍼링 표시는 예를 들면, 클라이언트 장치에 의해 디스플레이된 텍스트 메시지 또는 지시 등과 같이 시각적인 것일 수도 있고, 청각적인 것일 수도 있다. 만일 두 개의 메타데이터 헤더가 일치한다면(1107)(즉, 탬퍼링이 감지되지 않았다면), 클라이언트 장치는 바람직하게는 계속해서 메시지의 암호화된 성분 부분을 처리한다. 만일 메타데이터 헤더가 해독된 직후에 클라이언트 장치가 암호화된 성분 데이터를 해독한다면, 메시지의 압축 해제/디코딩만이 이 시점에서 수행될 것이다. 만일 대신 비교 단계(1103)가 데이터를 확인한 다음에, 클라이언트 장치가 암호화된 성분 데이터를 해독한다면, 암호화된 성분 데이터의 해독 및 압축 해제/디코딩 모두가 수행될 것이다.
전체적인 멀티미디어 오브젝트에 걸쳐 크로스 메시지 탬퍼링을 고려하기 위하여, 암호화된 메타데이터 헤더에 내장된 다른 정보가 (메시지 내의 성분 부분을 가지고 탬퍼링을 감지하는) 암호화된 단방향 해시, 시퀀스 번호 또는 타임 스탬프와 같은 탬퍼링 감지 동작을 더 확장하는데 사용될 수 있다는 것을 이해해야 할 것이다. 예를 들어, 암호화된 메타데이터 헤더가 성분 부분의 하나 이상의 암호화된 단방향 해시를 포함하고 있다면, 암호화된 성분 부분을 가지고 탬퍼링하는 것이 클라이언트 장치에 의해 높은 가능성으로 감지될 수 있을 것이다. 또한, 암호화된 메타데이터 헤더가 "이것이 K의 메시지 1임", "이것이 K의 메시지 2임" 등과 같은 시퀀스 번호를 포함한다면, 클라이언트 장치가 클라이언트 장치에 사용된 탬퍼링의 정의에 따라, 탬퍼링을 암시할 수 있는 수신된 데이터의 시퀀스내에서 하나 이상의 손실된 성분을 검출할 수 있을 것이다.
예로서, 도 12는 본 발명에 따라 형성된 안전한 트랜스코딩 시스템의 블록도를 도시한다. 도 12에 도시된 바와 같이, 전체 시스템은 바람직하게 콘텐츠 제공자 또는 유사한 데이터 소스, 트랜스코딩 프록시, 및 트랜스코딩 데이터의 의도된 수신자로서의 클라이언트 장치를 포함한다. 도 12의 구성에서 콘텐츠 제공자로부터 어셈블링된 메시지는 공유 통신 채널을 통하여 트랜스코딩 프록시로 전송된다. 본 실시예에서 하나 이상의 멀티플렉싱/디멀티플렉싱 기능(1208, 1209, 1210, 1219)이 도시되어 있는데, 이러한 기능들은 인코딩 프로세스가 구현되는 하부의 운영 체제에 의해 제공될 수 있다. 본 발명의 다른 실시예에서 각각의 어셈블링된 메시지 또는 성분은 트랜스코딩 프록시에 도달하기 위하여 독립된 경로를 가로지름으로써, 멀티플렉싱과 디멀티플렉싱에 대한 요구가 본질적으로 제거될 수 있다.
안전한 트랜스코딩 시스템의 콘텐츠 제공자 측을 참조하면, 원래의 소스 데이터 오브젝트가 설명의 편의를 위해 두 개의 성분으로 성분화된다(1201). "M"이라고 라벨이 붙은 기능 박스(1206)는 메타데이터 헤더를 생성하는데 사용되고, "H"라고 라벨이 붙은 기능 박스(1207)는 대응하는 보통문 텍스트 메타데이터 헤더를 생성하는데 사용된다. 보통문 텍스트 메타데이터의 생성은 바람직하게는 메타데이터 헤더(1206)를 위해 이미 생성된 정보를 사용할 것이다. 가장 간단한 경우에, 바람직하게는 메타데이터 헤더의 두가지 버전 모두 동일할 것이지만, 발명은 이에 한정되지 않는다. 성분 1에 대하여 암호화될 메타데이터 헤더가 "메타데이터 1"이라고 라벨이 붙는 반면, 성분 1에 대한 메타데이터 헤더의 대응하는 보통문 텍스트 버전은 "메타데이터 1B"라고 라벨이 붙는다. 마찬가지로, 성분 2에 대하여 암호화될 메타데이터 헤더가 "메타데이터 2"라고 라벨이 붙는 반면, 성분 2에 대한 메타데이터 헤더의 대응하는 보통문 텍스트 버전은 "메타데이터 2B"라고 라벨이 붙는다.
메타데이터 헤더 1과 2B는 각각 프로세스(1206)와 프로세스(1207)에 의해 생성되는데, 바람직하게는 성분 1의 데이터로부터만 유도된다. 메타데이터 헤더는 압축(1202)의 결과인 정보의 성분 또는 기존 패킷에 부가된다(1203). 먼저, 메타 데이터 헤더 1이 성분 1의 압축 데이터에 부가되고, 이 모음(collection)은 암호화된다(1204). 둘째, 보통문 텍스트 메타데이터 헤더1B가 메타데이터 헤더와 압축 성분 데이터를 포함하는 암호화된 모음에 부가된다. 제2의 부가 동작(1205)의 결과는 어셈블링된 메시지 1이다. 이 예에서 메시지 1의 모든 부분--보통문 텍스트 메타데이터 헤더, 암호화된 메타데이터 헤더, 및 암호화된 성분 데이터는 바람직하게는 성분 1로부터 오로지 유도되고, 다른 어떤 성분으로부터도 유도되지 않는다. 마찬가지로 다른 메시지가 성분 2에만 기초하여 생성된다. 이러한 예는 성분을 성분 부분으로 더 나누는 일반적인 경우를 설명하는 것도 아니고, 메시지가 다른 성분에서 비롯된 성분 부분을 포함할 수 있다는 것을 보여주는 것도 아니며, 이 모두는 본 발명의 범위 내에 있다는 것을 주의해야 한다. 또한, 메시지의 어셈블리는 도 12에 도시된 것과 같은 두 개의 순차적인 부가 동작에 한정되지 않는다.
이제 도 12의 예시적인 시스템에서의 트랜스코딩 프록시를 참조하면, 트랜스코딩 프록시는 두 개의 성분을 수신하는 것으로 도시되어 있다. 이러한 성분들은 바람직하게는 디멀티플렉싱되고(1209), 이들의 보통문 텍스트 메타데이터 헤더가 추출된다(1213)("메타데이터 1B"와 "메타데이터 2B"). 이 예에서, 트랜스코딩 프록시는 성분 2를 탈락시키고(1211) 나머지 성분 1을 그 목적지, 즉, 클라이언트 장치로 전달함으로써 성분들을 처리한다. 그러나, 일반적으로 K 개의 메시지가 있을 수 있고, 프록시는 이러한 메시지들 중 L(L ≤ K) 개를 탈락시킬 수 있고, 필터링(예를 들어, 메시지 또는 메시지 부분을 대체하는 것) 등을 통하여 나머지 K-L 개의 메시지를 변경할 수 있다. 나머지 메시지는 후속적으로 다시 어셈블링될 수 있다(1212)(예를 들어, 메타데이터 헤더는 다시 그들과 함께 도착한 각 데이터와 결합될 수 있다).
필터링 프로세스 그 자체와 관련하여, 하나의 메시지를 유일하게 하나의 성분에 매핑시키는 효과는 트랜스코딩 프록시 다운스트림이 그 필터링을 각각에 대한 성분의 상대적인 중요도보다는 절대적인 우선 순위 정보에 기반을 두고 결정할 수 있다는 것이다. 다시 말해서, 예를 들어, 메시지 1을 수신하는 트랜스코딩 프록시가 대응하는 메타데이터 헤더 1B를 검사할 것이다. 메타데이터가 다른 성분 정보에 기초하지 않기 때문에, 메타데이터 헤더 1B는 성분 1의 절대적인 중요도만을 포함할 것이다. 예를 들어, 메시지 1은 그 자체로 절대 우선 순위 50을 가지는 것으로 기술될 수 있다. 만일 프록시가 정체되어 있을 때 우선 순위가 10보다 작은 모든 패킷/메시지들을 탈락시키는 정책을 사용한다면, 프록시는 결코 이 메시지를 탈락시키는 결정을 내리지 못할 것이다. 이러한 결정을 내리기 위해서 프록시 측에서는 멀티미디어 오브젝트의 다른 성분들에 대한 더 이상의 정보가 필요하지 않다. 이러한 방식이 상대적으로 간단한 아키텍쳐를 요구하긴 하지만, 여러 가지 이유로 모든 애플리케이션에 잘 맞는 것은 아니다.
따라서, 본 발명의 보안성 있는 트랜스코딩 아키텍쳐는, 트랜스코딩 프록시가 성분들의 서로에 대한 상대적인 중요도/우선 순위를 기초로 특정 성분을 필터링(아니면, 처리/변형)할지 말지 결정하는 경우를 유사하게 지지한다는 것을 유의하는 것이 중요하다. 이 실시예에서, 하나 이상의 메시지로부터의 메타데이터 헤더가 바람직하게는 상대적인 랭킹 또는 우선 순위 정보를 포함하고 있는데, 상대 적인 랭킹 또는 우선 순위 정보는 프록시에서 수집되고, 프록시가 어떤 성분, 어떤 성분 부분, 및/또는 어떤 메시지를 필터링할지 결정할 수 있기 전에 비교되어야 한다. 예를 들어, 성분 1은 절대 우선 순위 대신에 상대적인 중요도만을 포함할 수 있다(예를 들어, 성분 1은 성분 2보다 더 중요하거나 더 높은 우선 순위를 가지고 있다). 이 경우, 프록시는 필터링 결정을 내리기 전에, 소정의 시간 주기를 기다려서 충분한 메타데이터 정보를 수집해야 한다.
도 12의 예시적인 시스템에서 클라이언트 측 프로세싱을 참조하면, 디멀티플렉싱된(1219) 각 성분에 대하여, 클라이언트 장치는 바람직하게는 먼저 보통문 텍스트 메타데이터 헤더(메타데이터 1B)를 추출한다(1218). 이러한 보통문 텍스트 메타데이터는 바람직하게는 나중에 메타데이터 헤더의 해독된 버전(메타데이터 1)과 비교되기 위해(1214) 저장되어 있다. 클라이언트 장치는 보통문 텍스트 메타데이터 헤더를 추출한 이후에, 암호화된 메타데이터 헤더와 암호화된 성분 데이터 모두를 해독한다(1217). 해독된 메타데이터 헤더(메타데이터 1)는 그 후 해독된 성분 데이터로부터 추출되고(1216), 가능한 탬퍼링을 검출하기 위하여 보통문 텍스트 메타데이터 헤더와 비교된다(1214). 탬퍼링이 발견되지 않았다고 가정하면, 클라이언트 장치는 바람직하게는 성분을 압축 해제하여(1215) 사용자에게 제시한다. 탬퍼링이 검출되었다면(즉, 메타데이터의 헤더의 두 버전이 허용 정도까지 일치하지 않는다면), 클라이언트 장치의 성능에 따라, 바람직하게는 탬퍼링 표시가 사용자에게 제시된다. 다른 방법으로서, 클라이언트 장치가 단지 잠재적으로 오류가 생기고 있는 데이터를 무시할 수도 있다.
본 발명의 시스템은 종래의 SSL(Secure Socket Layer) 하부 구조를 사용하여 구현될 수 있는데, SSL 하부 구조의 예가 도 13에 도시되어 있다. 이러한 예시적 구현에서, 송신자 즉 콘텐츠 제공자(1315) 측에서 세션 관리자(1303)가 바람직하게는 다수의 SSL 접속을 생성하고, 이러한 모든 SSL 접속을 동시에 관리한다. 세션 관리자(1303)는 또한 세션 정보가 트랜스코딩 프록시(1316)에 의해 보통문 텍스트로 도청될 수 있도록 하기 위하여 하나 이상의 SSL 접속을 생성할 책임이 있다. 바람직하게는 트랜스코딩 프록시는 트랜스코딩 정책뿐만 아니라 송신자로부터 보통문 텍스트 채널을 통하여 전송된 메타데이터에 기초하여 TCP 접속이 중계(relay)될 것인지 또는 탈락될 것인지(1309) 결정할 책임이 있을 것이다. 수신자 즉 클라이언트 측(브라우저)의 세션 관리자(1312)는 브라우저(1317)가 사용할 수 있도록 수신 채널(1314)들을 하나의 메시지로 어셈블링할 책임이 있다. 이러한 구현에서 세션 관리자간의 접속 id는 각 개별 성분에 대한 메타데이터를 의미한다는 것을 유의해야 한다. 보통문 텍스트 포맷일 필요가 있는 추가적인 메타데이터는 바람직하게는 추가적인 SSL이 아닌 접속에 의해 통신이 이루어진다.
본 발명은 네트워킹된 정보를 분배하는 방법 및 장치를 제공하고, 멀티미디어 오브젝트와 같은 데이터를 매개자 즉 트랜스코딩 프록시에 의해 안전하게 트랜스코딩하는 수단을 가능하게 한다. 소스 데이터는 콘텐츠 제공자 측에서 먼저 다수의 데이터 성분으로 성분화되는데, 다수의 데이터 성분은 원래의 소스 데이터를 나타낸다. 암호화되지 않은 메타데이터 헤더가 메시지로서 프록시에 전송되기 전에 각 성분에 부착된다. 프록시가 암호화되지 않은(보통문 텍스트) 메타데이터, 또는 수신된 메시지들로부터 추출되고 성분의 의미적 이해를 제공하는 다른 데이터에 기초하여 데이터 성분들을 처리하고, 클라이언트 장치에 디스플레이되기에 적합한 소정의 성분만을 전달한다. 본 발명의 시스템에서는 프록시가 소스 데이터를 해독하지 않고도, 콘텐츠 제공자로부터 네트워킹된 정보가, 콘텐츠 제공자에 접속되어 동작하는 프록시에 의해 안전하게 트랜스코딩될 수 있다.
여기서 본 발명의 예시적인 실시예가 도면을 참조하여 설명되었지만, 본 발명은 이러한 실시예들에 한정되지 않고, 다양한 다른 변경 및 수정이 발명의 사상을 벗어나지 않는 범위에서 당업자에 의해 행해질 수 있다.

Claims (24)

  1. 콘텐츠 제공자로부터의 데이터를 클라이언트 장치에 의해 사용되도록 안전하게 트랜스코딩하는 방법에 있어서,
    상기 콘텐츠 제공자 측에서 다수의 데이터 성분을 생성하는 단계로서, 상기 성분들은 상기 데이터를 분해한 것인, 상기 다수의 데이터 성분 생성 단계와,
    상기 데이터 성분 각각을 암호화하는 단계와,
    상기 암호화된 데이터 성분들을 상기 콘텐츠 제공자로부터 트랜스코딩 프록시로 전송하는 단계와,
    상기 프록시 측에서 상기 암호화된 데이터 성분들을 트랜스코딩하는 단계와,
    상기 암호화되고 트랜스코딩된 데이터 성분들을 선택적으로 처리(manipulate)하는 단계와,
    상기 트랜스코딩 프록시에 의해 생성된 상기 트랜스코딩되고 처리된 데이터 성분들을 상기 클라이언트 장치로 전송하는 단계를 포함하는 데이터 트랜스코딩 방법.
  2. 제1항에 있어서, 상기 암호화된 데이터 성분들을 상기 트랜스코딩 프록시로 전송하는 단계는,
    상기 콘텐츠 제공자 측에서 적어도 하나의 메시지를 어셈블링하는 단계로서 상기 메시지는 적어도 하나의 암호화된 성분 부분을 포함하는 것인 상기 어셈블링 단계와,
    상기 적어도 하나의 메시지를 상기 트랜스코딩 프록시로 전송하는 단계를 더 포함하는 데이터 트랜스코딩 방법.
  3. 제2항에 있어서, 상기 트랜스코딩 프록시 측에서 상기 트랜스코딩 프록시에 의해 수신된 상기 적어도 하나의 메시지로부터 상기 적어도 하나의 암호화된 성분 부분을 추출하는 단계를 더 포함하는 데이터 트랜스코딩 방법.
  4. 제1항 또는 제2항에 있어서, 상기 프록시 측에서 상기 트랜스코딩된 데이터 성분들을 선택적으로 처리하는 단계는,
    상기 암호화된 데이터 성분들 중 적어도 하나의 성분을 탈락시킴으로써, 상기 트랜스코딩된 성분들을 필터링하는 단계를 더 포함하는 데이터 트랜스코딩 방법.
  5. 제1항 또는 제2항에 있어서, 상기 프록시 측에서 상기 트랜스코딩된 데이터 성분들을 선택적으로 처리하는 단계는,
    상기 암호화된 데이터 성분들 중 적어도 하나의 성분을 다른(alternative) 데이터로 치환함으로써, 상기 트랜스코딩된 성분들을 필터링하는 단계를 더 포함하는 데이터 트랜스코딩 방법.
  6. 제1항에 있어서, 상기 트랜스코딩되고 처리된 데이터 성분들을 상기 클라이언트 장치로 전송하는 단계는
    상기 트랜스코딩 프록시 측에서 적어도 하나의 처리된 성분 부분을 포함하는 적어도 하나의 메시지를 어셈블링하는 단계와,
    상기 적어도 하나의 메시지를 상기 클라이언트 장치로 전송하는 단계를 더 포함하는 데이터 트랜스코딩 방법.
  7. 제6항에 있어서,
    상기 클라이언트 장치 측에서, 상기 클라이언트 장치에 의해 수신된 상기 적어도 하나의 메시지로부터 상기 적어도 하나의 처리된 성분 부분을 추출하는 단계와,
    상기 적어도 하나의 처리된 성분 부분을 해독하는 단계와,
    상기 적어도 하나의 해독된 성분 부분으로부터 상기 데이터의 트랜스코딩된 표현을 다시 어셈블링하는 단계를 더 포함하는 데이터 트랜스코딩 방법.
  8. 제1항, 제2항, 제6항 중 어느 한 항에 있어서, 상기 데이터 성분들의 적어도 하나의 성분에 메타데이터로 주석을 다는 단계로서, 상기 메타데이터는 상기 데이터 성분들의 의미적인 이해를 제공하는 것인 상기 주석 단계를 더 포함하는 데이터 트랜스코딩 방법.
  9. 제8항에 있어서, 상기 주석 단계는 암호화되지 않은 보통문 텍스트(clear-text) 메타데이터 헤더를 생성하는 단계를 포함하는 데이터 트랜스코딩 방법.
  10. 제9항에 있어서, 상기 보통문 텍스트 메타데이터 헤더는 데이터 성분을 고유하게 식별하는 적어도 하나의 라벨을 포함하는 데이터 트랜스코딩 방법.
  11. 제9항에 있어서, 상기 보통문 텍스트 메타데이터 헤더는 적어도 하나의 데이터 성분과 관련된 우선 순위를 기술하는(describing) 정보를 포함하는 데이터 트랜스코딩 방법.
  12. 제9항에 있어서,
    상기 보통문 텍스트 메타데이터 헤더와 적어도 하나의 암호화된 데이터 성분을 결합하는 적어도 하나의 메시지를 어셈블링하는 단계와,
    상기 적어도 하나의 어셈블링된 메시지를 상기 트랜스코딩 프록시로 전송하는 단계를 더 포함하는 데이터 트랜스코딩 방법.
  13. 제12항에 있어서,
    상기 트랜스코딩 프록시 측에서, 상기 메시지로부터 상기 보통문 텍스트 메타데이터 헤더와 상기 적어도 하나의 암호화된 데이터 성분을 추출하기 위하여, 상기 적어도 하나의 어셈블링된 메시지를 분해(disassembling)하는 단계와,
    상기 적어도 하나의 보통문 텍스트 메타데이터 헤더로부터 얻어진 메타데이터 정보에 따라 상기 적어도 하나의 암호화된 데이터 성분을 선택적으로 처리하는 단계를 더 포함하는 데이터 트랜스코딩 방법.
  14. 제13항에 있어서,
    상기 트랜스코딩 프록시 측에서, 상기 보통문 텍스트 메타데이터 헤더와 상기 적어도 하나의 암호화되고 처리된 데이터 성분을 결합하는 적어도 하나의 트랜스코딩된 메시지를 어셈블링하는 단계와,
    상기 적어도 하나의 트랜스코딩된 메시지를 상기 클라이언트 장치로 전송하는 단계를 더 포함하는 데이터 트랜스코딩 방법.
  15. 제14항에 있어서,
    상기 보통문 텍스트 메타데이터 헤더와 상기 적어도 하나의 암호화되고 처리된 데이터 성분을 추출하기 위하여, 상기 클라이언트 장치에 의해 수신된 상기 적어도 하나의 트랜스코딩된 메시지를 분해(disassembling)하는 단계와,
    상기 적어도 하나의 처리된 데이터 성분을 해독하는 단계와,
    상기 적어도 하나의 처리되고 해독된 데이터 성분으로부터 상기 데이터의 트랜스코딩된 표현을 다시 어셈블링하는 단계를 더 포함하는 데이터 트랜스코딩 방법.
  16. 제9항에 있어서,
    상기 보통문 텍스트 메타데이터 헤더의 제2 버젼을 생성하는 단계와,
    상기 보통문 텍스트 메타데이터 헤더의 상기 제2 버젼을 암호화하는 단계를 더 포함하는 데이터 트랜스코딩 방법.
  17. 제16항에 있어서,
    상기 보통문 텍스트 메타데이터 헤더, 상기 보통문 텍스트 메타데이터 헤더의 상기 암호화된 제2 버젼, 및 적어도 하나의 암호화된 데이터 성분을 포함하는 적어도 하나의 메시지를 어셈블링하는 단계와,
    상기 적어도 하나의 어셈블링된 메시지를 상기 트랜스코딩된 프록시로 전송하는 단계를 더 포함하는 데이터 트랜스코딩 방법.
  18. 제17항에 있어서,
    상기 보통문 텍스트 메타데이터 헤더, 상기 보통문 텍스트 메타데이터 헤더의 상기 암호화된 제2 버젼, 및 적어도 하나의 암호화되고 처리된 데이터 성분을 추출하기 위하여, 상기 클라이언트 장치에 의해 수신된 상기 적어도 하나의 어셈블링된 메시지를 분해하는 단계와,
    상기 보통문 텍스트 메타데이터 헤더의 상기 암호화된 제2 버젼을 해독하는 단계와,
    상기 적어도 하나의 암호화되고 처리된 데이터 성분을 해독하는 단계와,
    상기 적어도 하나의 처리되고 해독된 데이터 성분으로부터 상기 데이터의 트랜스코딩된 표현을 다시 어셈블링하는 단계를 더 포함하는 데이터 트랜스코딩 방법.
  19. 제18항에 있어서, 상기 보통문 텍스트 메타데이터 헤더의 탬퍼링(tampering)을 검출하기 위하여, 상기 클라이언트 장치에 의해 수신된 상기 보통문 텍스트 메타데이터 헤더의 상기 해독된 제2 버젼을 상기 보통문 텍스트 메타데이터 헤더와 비교하는 단계를 더 포함하는 데이터 트랜스코딩 방법.
  20. 제18항에 있어서, 상기 적어도 하나의 해독되고 처리된 데이터 성분의 탬퍼링을 검출하기 위하여, 상기 보통문 텍스트 메타데이터 헤더의 상기 해독된 제2 버젼내에 포함된 정보와 상기 적어도 하나의 해독되고 처리된 데이터 성분을 비교하는 단계를 더 포함하는 데이터 트랜스코딩 방법.
  21. 제1항, 제2항, 제6항 중 어느 한 항에 있어서, 상기 데이터 성분들을 생성하는 단계는, 상기 데이터를 겹치지 않게 분할한 것(partitioning)에 대응하는 상호 배타적인 다수의 성분들로 상기 데이터를 분해(decompose)하는 단계를 포함하는 데이터 트랜스코딩 방법.
  22. 멀티미디어 데이터를 안전하게 트랜스코딩하는 시스템에 있어서,
    상기 멀티미디어 데이터로부터 다수의 성분을 생성하고, 상기 다수의 성분 각각을 암호화하는 적어도 하나의 콘텐츠 제공자와,
    상기 적어도 하나의 콘텐츠 제공자에 연결되어 작동하고, 상기 콘텐츠 제공자로부터 적어도 하나의 암호화된 성분을 수신하고, 상기 적어도 하나의 암호화된 성분을 선택적으로 처리하는 적어도 하나의 트랜스코딩 프록시와,
    상기 적어도 하나의 트랜스코딩 프록시와 연결되어 작동하고, 상기 적어도 하나의 암호화되고 처리된 성분을 수신하여 해독하고, 상기 적어도 하나의 해독되고 처리된 성분으로부터 상기 멀티미디어 데이터의 트랜스코딩된 버젼을 다시 어셈블링하는 적어도 하나의 클라이언트 장치를 포함하는 데이터 트랜스코딩 시스템.
  23. 제22항에 있어서, 상기 트랜스코딩 프록시가 상기 각 성분과 관련된 우선 순위 정보에 따라 상기 적어도 하나의 암호화된 성분을 선택적으로 처리하고, 상기 우선 순위 정보는 다른 성분에 대하여 대응하는 성분의 상대적인 중요도와 대응하는 성분의 절대적인 중요도 중 적어도 하나를 기술하는 데이터 트랜스코딩 시스템.
  24. 컴퓨터 상에서 실행될 때 제1항, 제2항, 제6항 중 어느 한 항에 의한 방법을 수행하는 컴퓨터 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1020037004117A 2000-09-26 2001-09-19 안전한 트랜스코딩을 통하여 네트워킹된 정보를 배포하기위한 방법 및 장치 KR100561496B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/670,295 2000-09-26
US09/670,295 US6963972B1 (en) 2000-09-26 2000-09-26 Method and apparatus for networked information dissemination through secure transcoding
PCT/GB2001/004167 WO2002028006A2 (en) 2000-09-26 2001-09-19 Method and apparatus for networked information dissemination through secure transcoding

Publications (2)

Publication Number Publication Date
KR20030040481A KR20030040481A (ko) 2003-05-22
KR100561496B1 true KR100561496B1 (ko) 2006-03-20

Family

ID=24689825

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020037004117A KR100561496B1 (ko) 2000-09-26 2001-09-19 안전한 트랜스코딩을 통하여 네트워킹된 정보를 배포하기위한 방법 및 장치

Country Status (9)

Country Link
US (1) US6963972B1 (ko)
EP (1) EP1320973B1 (ko)
JP (1) JP2004511037A (ko)
KR (1) KR100561496B1 (ko)
CN (1) CN1204723C (ko)
AT (1) ATE291318T1 (ko)
AU (1) AU2001290059A1 (ko)
DE (1) DE60109467T2 (ko)
WO (1) WO2002028006A2 (ko)

Families Citing this family (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7346695B1 (en) 2002-10-28 2008-03-18 F5 Networks, Inc. System and method for performing application level persistence
AU2001294168A1 (en) * 2000-10-03 2002-04-15 Vidius Inc. Secure distribution of digital content
WO2002033977A1 (en) * 2000-10-17 2002-04-25 Koninklijke Philips Electronics N.V. Binary format for mpeg-7 instances
US9311499B2 (en) * 2000-11-13 2016-04-12 Ron M. Redlich Data security system and with territorial, geographic and triggering event protocol
EP1973294A1 (en) * 2001-01-30 2008-09-24 Electronics and Telecommunications Research Institute Method and apparatus for delivery of metadata synchronized to multimedia contents
US20030028643A1 (en) * 2001-03-13 2003-02-06 Dilithium Networks, Inc. Method and apparatus for transcoding video and speech signals
US7184548B2 (en) * 2001-05-04 2007-02-27 Hewlett-Packard Development Company, L.P. Encoding and decoding methods for secure scalable streaming and related systems
SE520531C2 (sv) * 2001-05-11 2003-07-22 Ericsson Telefon Ab L M Multimediapresentation
US20030046532A1 (en) * 2001-08-31 2003-03-06 Matthew Gast System and method for accelerating cryptographically secured transactions
US7353287B2 (en) * 2001-09-26 2008-04-01 Adobe Systems Incorporated Marked foreign data blocks
US20050091376A1 (en) * 2001-10-12 2005-04-28 Helfman Nadav B. Apparatus and method for optimized and secured reflection of network services to remote locations
KR100431509B1 (ko) * 2001-12-20 2004-05-14 한국전자통신연구원 메소드 내장형 컨텐츠 처리 장치 및 그 방법
WO2003058879A1 (en) 2002-01-08 2003-07-17 Seven Networks, Inc. Secure transport for mobile communication network
US7328345B2 (en) * 2002-01-29 2008-02-05 Widevine Technologies, Inc. Method and system for end to end securing of content for video on demand
US7181010B2 (en) * 2002-05-24 2007-02-20 Scientific-Atlanta, Inc. Apparatus for entitling remote client devices
US7861082B2 (en) * 2002-05-24 2010-12-28 Pinder Howard G Validating client-receivers
US7539391B2 (en) * 2002-06-27 2009-05-26 Nxp B.V. Method and apparatus for trick-mode support of audio/video/data streams with conditional access
WO2004006579A1 (en) * 2002-07-09 2004-01-15 Kaleidescape, Inc. Content and key distribution system for digital content representing media streams
GB0221433D0 (en) * 2002-09-16 2002-10-23 Infinite Data Storage Ltd Direct connection of an optical data storage device and a consumer electronic device
GB2394386A (en) * 2002-10-16 2004-04-21 Nokia Corp Multicast data transfer
US8893174B2 (en) 2002-12-16 2014-11-18 Centurylink Intellectual Property Llc Method and system for providing customized media content
US7500096B2 (en) * 2002-12-31 2009-03-03 Pitney Bowes Inc. System and method for message filtering by a trusted third party
KR100513297B1 (ko) * 2003-01-24 2005-09-09 삼성전자주식회사 인트라넷에서의 멀티미디어 컨텐츠 관리 시스템 및 방법
US7320069B1 (en) * 2003-02-14 2008-01-15 Novell, Inc. Selective encryption of media data
US7653876B2 (en) * 2003-04-07 2010-01-26 Adobe Systems Incorporated Reversible document format
US20050266884A1 (en) * 2003-04-22 2005-12-01 Voice Genesis, Inc. Methods and systems for conducting remote communications
CA2522429A1 (en) * 2003-04-22 2004-11-04 Voice Genesis, Inc. Omnimodal messaging system
US7581094B1 (en) * 2003-07-09 2009-08-25 Hewlett-Packard Development Company, L.P. Cryptographic checksums enabling data manipulation and transcoding
GB0317571D0 (en) * 2003-07-26 2003-08-27 Koninkl Philips Electronics Nv Content identification for broadcast media
DE10350083A1 (de) * 2003-10-27 2005-06-23 Siemens Ag Verfahren zum Übertragen von verschlüsselten Nutzdatenobjekten
US7505590B1 (en) * 2003-11-14 2009-03-17 Hewlett-Packard Development Company, L.P. Method and system for providing transcodability to frame coded streaming media
US7966488B2 (en) * 2004-01-30 2011-06-21 Hewlett-Packard Development Company, L. P. Methods and systems that use information about encrypted data packets to determine an order for sending the data packets
US8737219B2 (en) 2004-01-30 2014-05-27 Hewlett-Packard Development Company, L.P. Methods and systems that use information about data packets to determine an order for sending the data packets
US20050172127A1 (en) * 2004-01-31 2005-08-04 Frank Hartung System and method for transcoding encrypted multimedia messages transmitted between two devices
US20050207569A1 (en) * 2004-03-16 2005-09-22 Exavio, Inc Methods and apparatus for preparing data for encrypted transmission
US7739301B2 (en) * 2004-03-17 2010-06-15 Netapp, Inc. Method and apparatus for improving file system proxy performance and security by distributing information to clients via file handles
US20050213751A1 (en) * 2004-03-26 2005-09-29 Apostolopoulos John J Methods and systems for generating transcodable encrypted content
US20060242406A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Protected computing environment
US7818444B2 (en) 2004-04-30 2010-10-19 Move Networks, Inc. Apparatus, system, and method for multi-bitrate content streaming
US7676590B2 (en) 2004-05-03 2010-03-09 Microsoft Corporation Background transcoding
US8645472B2 (en) * 2004-07-26 2014-02-04 Vringo Infrastructure Inc. System and method for informing a sender of a message of content adaptation and message failure issues
JP4520840B2 (ja) * 2004-12-02 2010-08-11 株式会社日立製作所 暗号化通信の中継方法、ゲートウェイサーバ装置、暗号化通信のプログラムおよび暗号化通信のプログラム記憶媒体
EP1677536A1 (en) * 2004-12-30 2006-07-05 Korea Electronics Technology Institute Method for delivering non-anonymous user metadata using a soap operation in TV-Anytime metadata service
US7669121B2 (en) 2005-01-19 2010-02-23 Microsoft Corporation Transcode matrix
US20060227772A1 (en) * 2005-03-30 2006-10-12 Fujitsu Limited Method and system for packet data communication between networks
US7558463B2 (en) 2005-04-18 2009-07-07 Microsoft Corporation Retention of information about digital-media rights in transformed digital media content
US7738766B2 (en) 2005-04-18 2010-06-15 Microsoft Corporation Sanctioned transcoding of digital-media content
US20060235883A1 (en) * 2005-04-18 2006-10-19 Krebs Mark S Multimedia system for mobile client platforms
US9436804B2 (en) 2005-04-22 2016-09-06 Microsoft Technology Licensing, Llc Establishing a unique session key using a hardware functionality scan
US9363481B2 (en) 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
CN101223489A (zh) * 2005-06-23 2008-07-16 汤姆森特许公司 允许数字版权管理的便携回放设备、方法和系统
US7924913B2 (en) 2005-09-15 2011-04-12 Microsoft Corporation Non-realtime data transcoding of multimedia content
US20070091926A1 (en) * 2005-10-21 2007-04-26 Apostolopoulos John G Method for optimizing portions of data from a plurality of data streams at a transcoding node
US8000344B1 (en) * 2005-12-20 2011-08-16 Extreme Networks, Inc. Methods, systems, and computer program products for transmitting and receiving layer 2 frames associated with different virtual local area networks (VLANs) over a secure layer 2 broadcast transport network
US7954092B2 (en) * 2005-12-24 2011-05-31 International Business Machines Corporation Creating an assured execution environment for at least one computer program executable on a computer system
US9294728B2 (en) 2006-01-10 2016-03-22 Imagine Communications Corp. System and method for routing content
US8176317B2 (en) * 2006-01-19 2012-05-08 Helius, Inc. System and method for multicasting IPSec protected communications
US8208796B2 (en) 2006-04-17 2012-06-26 Prus Bohdan S Systems and methods for prioritizing the storage location of media data
US9277295B2 (en) 2006-06-16 2016-03-01 Cisco Technology, Inc. Securing media content using interchangeable encryption key
US7978720B2 (en) 2006-06-30 2011-07-12 Russ Samuel H Digital media device having media content transfer capability
US9137480B2 (en) 2006-06-30 2015-09-15 Cisco Technology, Inc. Secure escrow and recovery of media device content keys
US8180920B2 (en) * 2006-10-13 2012-05-15 Rgb Networks, Inc. System and method for processing content
FR2907625B1 (fr) * 2006-10-18 2012-12-21 Streamezzo Procede de gestion de memoire dans un terminal client,signal programme d'ordinateur et terminal correspondants
US9106606B1 (en) * 2007-02-05 2015-08-11 F5 Networks, Inc. Method, intermediate device and computer program code for maintaining persistency
KR101402904B1 (ko) * 2007-06-13 2014-06-03 삼성전자주식회사 A/v 프로파일을 관리하는 방법, 장치 및 시스템
US8627509B2 (en) 2007-07-02 2014-01-07 Rgb Networks, Inc. System and method for monitoring content
CN101453321B (zh) * 2007-12-06 2012-02-29 国际商业机器公司 用于内容联合的访问控制的方法和系统
US8868464B2 (en) 2008-02-07 2014-10-21 Google Inc. Preventing unauthorized modification or skipping of viewing of advertisements within content
US8078989B2 (en) * 2008-02-29 2011-12-13 Red Hat, Inc. Internet access GUI for mobile devices
US7483630B1 (en) * 2008-03-08 2009-01-27 International Business Machines Corporation Exchanging asynchronous system information using optical transmission
FR2930662B1 (fr) * 2008-04-23 2010-05-21 Streamezzo Procede de securisation d'une scene evolutive, dispositif, signal et programme d'ordinateur correspondants, procede de mise a jour d'une scene evolutive, dispositif et programme d'ordinateur correspondants
US8566580B2 (en) 2008-07-23 2013-10-22 Finjan, Inc. Splitting an SSL connection between gateways
US8392704B2 (en) 2008-08-11 2013-03-05 International Business Machines Corporation Input/output control and efficiency in an encrypted file system
US9473812B2 (en) 2008-09-10 2016-10-18 Imagine Communications Corp. System and method for delivering content
WO2010031069A2 (en) * 2008-09-15 2010-03-18 Realnetworks, Inc. Secure media path system and method
CN102246533A (zh) * 2008-10-14 2011-11-16 Rgb网络有限公司 用于代码转换后的媒体内容的渐进递送的系统和方法
CN102301679A (zh) 2009-01-20 2011-12-28 Rgb网络有限公司 用于拼接媒体文件的系统和方法
WO2011020088A1 (en) 2009-08-14 2011-02-17 Azuki Systems, Inc. Method and system for unified mobile content protection
US8527748B2 (en) * 2010-10-01 2013-09-03 Schneider Electric USA, Inc. System and method for hosting encrypted monitoring data
US9515904B2 (en) 2011-06-21 2016-12-06 The Nielsen Company (Us), Llc Monitoring streaming media content
US9137210B1 (en) * 2012-02-21 2015-09-15 Amazon Technologies, Inc. Remote browsing session management
CN103384233B (zh) * 2012-05-02 2017-06-20 华为技术有限公司 一种代理转换的方法、装置和系统
US20140019583A1 (en) * 2012-07-13 2014-01-16 Ittiam Systems (P) Ltd. Ingest bandwidth reduction for cloud based media services
US9100040B2 (en) * 2012-08-29 2015-08-04 Sap Se Data conversion based on a provided dictionary
US20150082051A1 (en) * 2013-09-18 2015-03-19 Ankur Aggarwal Method for Formatting and Distributing Electronic Data
US20150324088A1 (en) * 2014-05-09 2015-11-12 Lyve Minds, Inc. Thumbnail image creation
BR112017013224A2 (pt) * 2014-12-19 2018-02-06 Nokia Solutions And Networks Oy ?entrega de pacote coordenado de sessão encriptada?
US10601443B1 (en) 2016-08-24 2020-03-24 Arrowhead Center, Inc. Protocol for lightweight and provable secure communication for constrained devices
CN107092815A (zh) * 2017-03-31 2017-08-25 武汉斗鱼网络科技有限公司 一种保护模块文件的方法及服务器
CN109861944A (zh) * 2017-11-22 2019-06-07 浙江智贝信息科技有限公司 一种分布式信息安全处理及交互方法及其交互系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5504816A (en) * 1994-02-02 1996-04-02 Gi Corporation Method and apparatus for controlling access to digital signals
US6072942A (en) * 1996-09-18 2000-06-06 Secure Computing Corporation System and method of electronic mail filtering using interconnected nodes
US6345303B1 (en) * 1997-03-25 2002-02-05 Intel Corporation Network proxy capable of dynamically selecting a destination device for servicing a client request
US6138158A (en) * 1998-04-30 2000-10-24 Phone.Com, Inc. Method and system for pushing and pulling data using wideband and narrowband transport systems
FI105743B (fi) * 1998-05-27 2000-09-29 Nokia Mobile Phones Ltd Menetelmä multimediaviestien välittämiseksi ja multimediaviestien välitysjärjestelmä
ATE270804T1 (de) * 1998-07-13 2004-07-15 Ibm Verfahren zur übertragung von informationsdaten von einem sender zu einem empfänger über einen transcoder
US6553393B1 (en) * 1999-04-26 2003-04-22 International Business Machines Coporation Method for prefetching external resources to embedded objects in a markup language data stream

Also Published As

Publication number Publication date
WO2002028006A3 (en) 2002-07-18
JP2004511037A (ja) 2004-04-08
WO2002028006A2 (en) 2002-04-04
KR20030040481A (ko) 2003-05-22
CN1204723C (zh) 2005-06-01
CN1466839A (zh) 2004-01-07
ATE291318T1 (de) 2005-04-15
AU2001290059A1 (en) 2002-04-08
DE60109467D1 (de) 2005-04-21
EP1320973B1 (en) 2005-03-16
US6963972B1 (en) 2005-11-08
EP1320973A2 (en) 2003-06-25
DE60109467T2 (de) 2006-04-13

Similar Documents

Publication Publication Date Title
KR100561496B1 (ko) 안전한 트랜스코딩을 통하여 네트워킹된 정보를 배포하기위한 방법 및 장치
EP1417834B1 (en) Encoding and decoding methods for secure scalable streaming and related systems
US7581094B1 (en) Cryptographic checksums enabling data manipulation and transcoding
US6983049B2 (en) Storage devices for secure scalable data streaming
EP1384347B1 (en) Method and system for secure transcoding
US7136485B2 (en) Packetizing devices for scalable data streaming
EP1678586B1 (en) A method and apparatus for ensuring the integrity of data
US7349539B2 (en) Encoding and encrypting devices for secure scalable data streaming
US6990202B2 (en) Packetizing devices for secure scalable data streaming
JP2009535908A (ja) メディアデータの分散記憶
US20030012376A1 (en) Encoding devices for scalable data streaming
US7155010B2 (en) Signal format that facilitates easy scalability of encrypted streams
WO2002041101A2 (en) Method and system for transmitting data with enhanced security that conforms to a network protocol
KR20090083426A (ko) 데이터 처리 방법
Chang et al. Secure Transcoding of Internet Content.

Legal Events

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

Payment date: 20130304

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140217

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150227

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee