[go: up one dir, main page]

GB2505657A - Digital watermarking and fingerprinting of source data - Google Patents

Digital watermarking and fingerprinting of source data Download PDF

Info

Publication number
GB2505657A
GB2505657A GB1215854.9A GB201215854A GB2505657A GB 2505657 A GB2505657 A GB 2505657A GB 201215854 A GB201215854 A GB 201215854A GB 2505657 A GB2505657 A GB 2505657A
Authority
GB
United Kingdom
Prior art keywords
data
watermarked
source
content
copies
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
GB1215854.9A
Other versions
GB201215854D0 (en
Inventor
Adrian Roe
Dom Robinson
Steve Strong
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ID3AS Co Ltd
Original Assignee
ID3AS Co Ltd
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 ID3AS Co Ltd filed Critical ID3AS Co Ltd
Priority to GB1215854.9A priority Critical patent/GB2505657A/en
Publication of GB201215854D0 publication Critical patent/GB201215854D0/en
Publication of GB2505657A publication Critical patent/GB2505657A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/005Robust watermarking, e.g. average attack or collusion attack resistant
    • G06T1/0071Robust watermarking, e.g. average attack or collusion attack resistant using multiple or alternating watermarks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • 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/23439Processing 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 for generating different versions
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8358Generation of protective data, e.g. certificates involving watermark
    • 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/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0064Image watermarking for copy protection or copy management, e.g. CGMS, copy only once, one-time copy

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Systems (AREA)

Abstract

A computer-implemented method of generating and transmitting a fingerprinted version of source data M (such as a video data stream) to a consumer device comprises the generation of a version of source data, consisting of portions selected from a plurality of watermarked copies of the source data. The watermarked copies of the source data are associated with an index and the indices are combined to create a key K for a consumer device (5). This enables every distributed copy of the source data to be uniquely identified, which may prevent illegal copying or downloading of the source data. The watermarked copies may be generated in parallel, for example following a request from a consumer device (5) for paid-for content, by applying different watermarks to each copy. New watermarked copes may be generated after a predefined time or frequency of use. Watermarked copies may be stored at a cache of a distribution data network. Claims to a key generation module are also disclosed.

Description

Digital Watermarking and Fingerprinting
Field of the Invention
[0001] This invention relates to a digital content encoding system, and more particularly to an improved technique for efficient and robust watermarking and fingerprinting of digital content.
Background of the Invention
[0002] As an ever greater proportion of video is delivered to end-users over the Internet, filmmakers and distributors responsible for the content are faced with a gradually losing battle to control access to what they produce. Traditionally, access to paid-for content is controlled via Digital Rights Management (DRM) solutions to try to ensure that the content is only available to customers that have paid for it. The ease with which pirated content is available on the Internet is testament to the lack of success of this approach. Indeed, some content producers and distributors are moving away from a DRM approach altogether.
[0003] The fundamental challenge with DRM is that the content has to be accessible to those users that have legitimately paid for it. The more DRM "hoops" that are in place, the less convenient the product is for its legitimate consumers. At the same time, pirates and fraudsters have a number of ways of circumventing DRM and illegally duplicating the legal copies of the content. Ultimately, techniques such as simply videoing a playback of a legal copy of the content (often refelTed to as "cam" or "telesync") cannot be prevented with typica' DRM approaches.
[0004] The market has explored complementary strategies and alternatives to DRM, in particular the use of watermarking the premium material. A watermark is an alteration made to the material before it is distributed or broadcast, that embeds other information into the stream (such as the identity of the purchaser of the content). The watermarking can be either visible or invisible, the former effectively spoiling the content for legitimate customers. Invisible watermarks are also possible, but the encoding and
I
decoding process is highly computationally intensive and thus expensive when required for large numbers of different consumers of the content.
[0005] Known watermarking techniques provide the major advantage that the watermarked content is resistant to camming-like techniques, as a video taken of an appropriately watermarked image will still have the original watermark in the copy, even if "invisible" to the naked eye.
[0006] Watermarking individual frames of video is itself computationally expensive and worse still, even if only a single frame is watermarked, an entire Group of Pictures (GoP) that contains the watermarked frame needs to be re-encoded. For this reason, large scale distribution of watermarked video, where each instance is robustly and individually watermarked at the point of distribution, to the end recipient has so far been impractical.
[0007] Another disadvantage of watermarking content is that by its very nature, traditional watermarking removes the ability to cache content efficiently during distribution. Each watermarked copy is different so no two requests should deliver the same content. Watermarking only sections of the content (e.g. for cache or computational efficiency) immediately makes the pirates' job easier as they need only worry about (or indeed even simply delete) parts of the content.
[0008] What is desired is a technique that addresses the above problems and disadvantages, to deliver robust watermarked content with significantly reduced computational cost and also facilitating high levels of cache efficiency.
Statements of the Invention
[0009] Aspects of the present invention are set out in the accompanying claims.
[0010] According to one aspect of the present invention, a method is provided for uniquely identifying an encoded data stream, comprising generating a version of a data stream consisting of portions from a plurality of watermarked copies of the source data stream.
[0011] Each portion of the generated version can be taken from a respective watermarked copy identified by a key. Each of the plurality of watermarked copies can be associated with an index and the key comprises a combination of the indices. The watermarked copies can be generated by applying different watermarks to the source data stream.
[0012] In another aspect, the present invention provides a method of transmitting a fingerprinted version of a source data stream to a consumer device, the fingerprinted version compnsing a sequence of data portions, each data portion in the fingerprinted version corresponding to a respective data portion of one of a plurality of watermarked copies of the source data stream identified by a key for the consumer device.
[0013] In another aspect. the present invention provides a cache in a content distribution network, the cache comprising means for stonng a plurality of watermarked copies of source data, and means for generating a version of the source data consisting portions from the plurality of watermarked copies of the source data.
[0014] In yet another aspect, an HTTP-based content distribution system is provided, comprising a content distribution network for distributing data segments of requested content data from a content provider system to a consumer device, wherein the data segments are identified in a manifest file, wherein the content provider system is adapted to generate a plurality of watermarked copies of source content data, generate a sequence of data segments for each watermarked copy of source content data, and modify the manifest file to identify a sequence of data segments from the plurality of watermarked copies of the source content data, whereby a unique version of the source content data is received by said requesting consumer device.
[0015] Tn another aspect, the present invention provides a computer-implemented method for deriving a unique identifier of a data file consisting a plura'ity of portions from a plurality of watermarked copies of a source data file, by determining the watermark applied to each of said plurality of portions, and deriving an index for each of said plurality of portions identifying the corresponding watermarked copy of the source data, wherein the plurality of derived indices is a unique identifier of the data file.
[0016] Tn other aspects, there is provided a system and a computer program arranged to cariy out the above method when executed by a programmable device.
Brief Description of the Drawings
[0017] There now follows, by way of example only. a detailed description of embodiments of the present invention, with references to the figures identified below.
[0018] Figure 1 is a block diagram showing the main components of a watermarking and fingerprinting system according to an embodiment of the invention.
[0019] Figure 2 is a schematic illustration of an exemplary video stream consisting a sequence of Groups of Pictures GoP) as is known in the art.
[0020] Figure 3 is a flow diagram illustrating the main processing steps peilormed by the system of Figure 1 according to an embodiment.
[0021] Figure 4 is a schematic illustration of exemplary streamDNA master copies generated by processing steps of Figure 3.
[0022] Figure 5 is a schematic illustration of an example of a fingerprinted stream generated by the processing steps of Figure 3.
[0023] Figure 6 is a block diagram showing the main components of a watermarking and fingerprinting system according to a second embodiment of the invention.
[0024] Figure 7 is a block diagram showing the main components of a watermarking and fingerprinting system according to a third embodiment of the invention.
[0025] Figure 8 is a diagram of an example of a computer system on which one or more of the functions of the embodiment may be implemented.
Detailed Description of Embodiments of the Invention Overview [0026] A specific exemplary embodiment of the invention will now be described for a watermarking and encoding process to efficiently create uniquely identifiable copies of a master video.
[0027] Videos are made up of sequences of still images displayed in rapid succession one after the other to give the illusion of continuous motion. The images themselves are typically represented in a compressed format with the compression (if any) either on a per frame basis (such as in M-JPEG video) or across multiple frames (such as in H.264 video encoding). For encoding techniques using multi-frame compression. each self-contained set of frames that can be decoded in isolation is referred to as a Group of Pictures (GoP). figure 2 is a schematic illustration of an exemplary video of separate images 201-i to 201-7 grouped into a time-ordered sequence of GoPs 203-i to 203-3, which in this case has GoPs 203 consisting of two or three images 201 each.
[0028] It will be appreciated that a GoP can be a single frame, for example in single-frame compression systems, where for uncompressed (raw) video or for per-frame compression, each single frame is considered a GoP. Additionally, a GoP in the sense of the present description can be a collection of mutipe GoPs, for example the segments found in video deliveiy technologies such as 1-IYTP Live Streaming (1-ILS) and MPEG Dynamic Adaptive Streaming over HTTP (MPEG DASH).
[0029] Referring to Figure 1, a content distribution system 1 according to an embodiment includes a distribution server 3 that receives and responds to requests from consumer devices S via a data network 4 for digital content produced, for example, by a content publisher system 7 (notionally illustrated with a dashed box). The data network 4 may be any suitable data communication network or combination of known networks, such as a wireless network, a local-or wide-area network including an intranet or the Internet, using for example the TCP/IP protocol, or a cellular communication network such as GPRS, EDGE or 3G, for example. Such communication protocols are of a type that are known per se in data networks and need not be described further.
[0030] As will be described in greater detail below, the distribution server 3 of the present embodiment generates a fingerprinted version of source digital content 9 for each consumer device 5-1, 5-2 by assembling portions from a plurality of differently watermarked copies ("streamDNA master copies") II based on user (or consumer-device) specific keys 13-1, 13-2 A watermarking module 15 prepares the plurality of watermarked streamDNA master copies I I from source digital content 9. Each one of the streamDNA master copies 11 is generated by applying a different watermark to a respective copy of the source digital content 9. Tn this exemplaiy embodiment, an index or identifier is assigned to each version of the streamDNA master copies 11, for referencing by the keys 13. A database 12 stores the assigned indices or identifiers 16 for each version of the streamDNA master copies 11, together with colTesponding data 18 identifying the watermark that was applied to each associated version. It will be appreciated that as new versions of watermarked streamDNA master copies 11 are generated by the watermarking module 15, the master copy database 12 is updated with a unique index or identifier assigned to the new copy and data identifying the watermark applied. In this way, the master copy database 12 stores a complete record of all versions of watermarked streamDNA master copies 11 that can be used to generate a fingerpnnted version.
[0031] In the illustrated exemplary embodiment, the master copy database 12 forms a part of the content publisher system 7. Alternatively or additionally, the master copy database 12 can be stored in the distribution server 3, and/or in a separate entity (not shown) of the system 1. The streamDNA master copies 11 can be generated in parallel by the watermarking module 15, enabling all of the differently watermarked streamDNA master copies II to be built at substantially the same time.
[0032] In this exemplary embodiment, the preparation stage of watermarking and encoding the streamDNA masters 11 is peitormed by the content publisher system 7, and the watermarked strearnDNA masters 11 are transmitted to the distribution server 3 for storage (via data network 4, for example).
[0033] Alternatively or additionally, the source digital content store 9 and watermarking module 15 may form part of the distribution server 3. As yet another alternative, the watermarking module 15 may form a part of the distribution server 3 and arranged to retrieve source video content data 9 from the remotely-located content publisher system 7. Yet further alternatives are for the content publisher system 7 to directly operate the strearnDNA watermarking and fingerprinting technology themselves, or to appoint one or more technical agents (not illustrated) to do so, whereby the distribution server 3 simply functions to distribute the watermarked and fingerprinted content to respective consumer devices 5. Multiple layers of watermarking may also be applied by one or more of these entities.
[0034] It will be appreciated that the preparation stage can happen faster than real time (i.e. in shorter time than it takes to watch the video that is produced), so the content distribution system I may perform the watermarking process in an "on demand" fashion, for example the first time a digital video is requested for streaming, or even to produce real time watermarked versions of live digital content.
[0035] The original streamDNA master copies 11, once watermarked and encoded, are made available on distribution servers that can distribute GoPs for requested video content, according to a user (or consumer device) specific key 13. In this exemplary embodiment, a content distribution module 17 of the distribution server 3 assembles output streams from the previously constructed streamDNA master copies 11, based on streamDNA keys that specify which GoPs the distribution server 3 should stream to the user. The streamDNA keys i3 are generated for each user or consumer device 5 by a key generation module 19, for example. The keys 13 are stored in a database 14 of the distribution server 3 together with associated data 16 for identifying the entity or entities linked with the respective key 13. For example, the associated data 16 can include one or more of data associated with the video stream, content producer, content rights holder, consumer, consumer device, consumer TV license number, access time and date. etc. [0036] Consequently, a watermarked and fingerprinted stream ("streamDNA stream") is constructed from watermarked GoPs, in a principle similar to how human DNA is made up of the nucleotides adenine, cytosine. guanine and thymine. The content distnbution module 17 selects from these watermarked GoPs, in a process akin to building a strand of DNA, in order to generate unique fingerprinted streams. Every single stream from the distribution server 3 is thereby uniquely fingerprinted. For example in a live television broadcast over the Internet, every TV license, subscnber number, time date andior user logon can be matched against the delivered streams. It will therefore be evident from the fingerprinted data content who owns and who has licensed the rights to the original source digital content. Furthermore, shou'd pirated copies emerge, it is also clear who it was that broke the terms of the license and re-distributed the content.
[0037] Unlike with human DNA. embodiments of the present invention can be implemented with as many or as few stream "nucleotides" as are needed to ensure sufficient variability in the output streams, and can also allow for progeny to derive from as many parents streamDNA master copies as desired. If a user of a streamDNA encoded service shares or provides access to their service credentials (e.g. logon details for an online video provider), then by analyzing the fingerprint present in the stream, it will be evidence that the original, licensed user had categorically breached the copyright terms and conditions by redistributing the file and/or its associated metadata. It will be appreciated that the fingerprint of a received data stream can be analyzed by "decoding" the watermarked portions in the received data stream to derive the respective values of the key 13. For example, the watermarked portions of the fingerprinted version can be correlated with the watermark records 18 in the master copy database 12, to derive the indices or identifiers 16 of user or consumer device specific key 13 that was used by the content distribution module 17 to assemble the fingerprinted version. The derived key 13 can then be correlated with its associated data 16 as stored in the streamDNA Key database 14, for example to identify the specific user or consumer device. Similarly, if the user sends a copy (however generated) of the video stream itself, the watermarking data can be read from each time-sequenced portion, to recover the original streamDNA key 13 and hence the original intended user/consumer.
[0038] The fingerprint embedded within a strearnDNA data stream or tile is highly resistant to tampering. For example, even if sections of the film are deleted (unless only a "trivial" amount of the film remains), then the remaining key is almost certain to still be unique and therefore still able with certainty to identify the data associated with the original key, such as the initial intended recipient or the content producer, etc. Further, if a would-be pirate obtains several streamDNA data streams and builds a hybrid output stream from them, then the evidential techniques well known in human/animal DNA fingerprinting and genealogy allow all of the onginal stream DNA data streams to be identified (up until the point that the number of strearnDNA streams used to create the hybrid is very large). Even sophisticated hybrid attacks can be countered by introducing more streamDNA master copies into the field if the number of delivered streams becomes very high.
Watermarking and Encoding Process [0039] A brief description has been given above of the components forming part of the content distribution system 1 of this embodiment. A more detailed description of the operation of these components in this embodiment will now be given with reference to the flow diagram of Figures 3, for an example computer-implemented watermarking and encoding process to create uniquely identifiable copies of a master video, using the system of figure 1. Reference is also made to Figures 4 and 5, schematically illustrating examples of video sequences generated by the process.
[0040] As shown in Figure 3, the process begins at step 53-1 where the watermarking module 15 obtains the source video data 9 originating from the content rights holder.
At step S3-3, the watermarking module 15 generates a plurality of differently watermarked copies of the source video. This collection of watermarked videos is referred to as the streamDNA master copies II, and is essentially a set of "nucleotides" that will be used to assemble unique fingerprinted streams. Each GoP (or indeed every frame within the GoP) is watermarked using one or more different watermarking techniques from the art. The watermarking data injected into each separate frame or GoP can be different, as can the watermarking algorithm used.
[0041] The watermarking module 15 also encodes the watermarked video data, for example to format andlor compress the video data into distributable data portions or segments (e.g. time-sequenced GoPs of a stream of video data). Typically, videos may have GoP durations of between 0.8 and 4 seconds, so a film of duration 100 minutes contains of the order of 1,250-7,500 GoPs. Such video encoding techniques are of a type that is known per se, and need not be described further.
[0042] Figure 4 is a schematic illustration of exemplary streamDNA master copies II generated by the wateimarking module 15. In this example, a master video Mis made up of ii GoPs [Mi, M2, M3 M,,], and three watermarked copies M', *12 and LW3 of the master video M are generated by the watermarking module 15, where M' is made up of GoPs {H d more generally 19, is the 7 GoP from the i "traditionally" watermarked copy of M. [0043] The generated streamDNA masters copies 11 are then securely stored by the distribution server 3, for the content distribution module 17 to generate and deliver fingerprinted streams directly to the consumer devices 5 according to each consumer's unique key 13 (K). Continuing the notation from the preparation stage described above, a video M consists of n GoPs from which ci streamDNA master copies II have been constructed (M', iii M"). lii this example, a user or consumer device 5 requests access to the video M and the distribution server 3 therefore uses the data 16 to identify the appropriate key (K) and prepares a fingerprinted stream S' unique to that data, for example as schematically illustrated in Figure 5.
[0044] Accordingly, at step S3-5, the distribution server 3 obtains data 16 associated with and uniquely identifying the requesting user or consumer device 5. It will be appreciated that this identifying data 16 can be one or more of many different forms, such as personal details of the user andlor a consumer device S machine identifier. The data 16 may be provided initially by the user to the system 1 in a registration process, and stored for example in the streamDNA key database 14. Alternatively, the user data 16 may be provided in the request for the content. At step S3-7. the key generation module 19 of the distnbution server 3 generates and stores a unique streamDNA key 13 for the consumer device 5, if a matching streamDNA key 13 was not previously present.
In this exemplary embodiment, the key generation module 19 chooses an identifying key for the consumer, a key being composed of successive values from 1 to a chosen for each of the ii available CoPs that make up M. Using K to denote a streamDNA key 19, where for 1 EJi2 then kr E3 L2.. . The values k,, k2, k,, of the key K can be chosen by the key generation module 19 either randomly or according to some selection algorithm. It will be appreciated that the number of available keys (a") rapidly becomes vast, even given a relatively small number of streamDNA masters. For example, if there are two streamDNA master copies 11 for a film with 1000 CoPs, then there are over i03°' available keys.
[0045] Once a key 13 has been generated, the content distribution module 17 constructs at step S3-9 the matching streamDNA stream S by assembling GoPs in order, each GoP being chosen from the strearnDNA master copy 11 that matches the corresponding value k in the key K. Writing Sc for the streamDNA stream with key K gives: çK -44k1 11J1k2 Ank3 Ankn Li 1V11 -2 "",n [0046] Returning to the example illustrated in Figures 4 and 5, the example source video M is made up of four CoPs, from which three streamDNA master copies 11 are built, so a = 3 and ii = 4. As illustrated in Figure 5, the example key K of / 2,3,1,1] is assigned to a stream for the requesting user or consumer device 5. Accordingly, the content distribution module 17 constructs a fingerprinted stream S2AI1, where a first GoP of the fingerprinted stream SK is taken from the second streamDNA master M2 (shown highlighted) corresponding to the first value k1 of the key K, a second GoP of the fingerprinted stream s' is taken from the third streamDNA master copy M3 (shown highlighted) corresponding to the second value k2 of the key K, and third and fourth GoPs of the fingerprinted stream are taken from the first streamDNA master copy M1 (shown highlighted) colTesponding to the third and fourth values k3, k4 of the key K respectively.
OO47j In principle, this stage of constructing fingerprinted streams from the generated keys 13 and streamDNA master copies 11 is comparaNe to assembling unique DNA sequences from the predefined collection of nucleotides. lii this way, the content distribution module 17 constructs a different "fingerprinted" video 5" for each requesting user or consumer device 5, by assembling portions from respective streamDNA master copies 11 as defined by the indices k,, in the user or consumer device specific key 13. This fingerprinting process is computationally very efficient, as the more complex preparation stage of building GoPs of the streamDNA master copies 11 will have been completed prior to the point of distribution, and the GoPs for the fingerprinted video data stream 5" simply need to be assembled in order by the content distribution module 17.
[0048] At step S3-1 1, the constructed fingerprinted stream is transmitted by the content distnbution module 17 of the distribution server 3 to the requesting consumer device 5.
Although steps S3-9 and S3-11 of constructing the fingerprinted stream and then transmitting the fingerprinted stream are illustrated as two sequential steps, it will be appreciated that the content distribution module 17 can be arranged to determine and then transmit each time-sequenced portion of the fingerprinted stream in turn, based on the next index in the user/consumer specific streamDNA key 13 as discussed above, thus avoiding storage of entire copies of each user/consumer specific fingerprinted version at the distribution server 3 itself.
Second Embodiment [0049] A second embodiment will now be described using corresponding reference numerals to those of preceding figures where appropriate for corresponding elements. £
Referring to Figure 6, a content distribution system 201 according to a second embodiment includes a content delivery network (CDN) 21 comprising a plurality of edge caches 23-1, 23-2, 23-3 A content producer 7 (such as a television broadcaster, not shown) makes available streamDNA master copies 11 to the CDN 21 for distribution to consumer devices. where the CDN 21 is adapted to include the streamDNA technology as discussed in the above embodiment in each of the plurality of edge caches 23. It will be appreciated that additional adapted CDNs may be provided in a similar manner to cover an even greater geographical area and further each CDN can be provided with different streamDNA masters so that any security lapses within a CDN can be tied to the particular CDN at fault.
[0050] In this exemplary embodiment, the CDN 21 effectively caches the streamDNA master copies 11 in the edge caches 23 and constructs user or consumer device specific streamDNA streams SA' by assembling the appropriate GoPs together at these edge caches based on user access key requests.
[0051] In this way, each edge cache 23 stores its own locally cached copy of the watermarked streamDNA master copies 11, which need only be generated once by a watermarking module 15 either at the content producer (andlor content nghts holder) system 7 as illustrated, or as a part of the CDN 21. The adapted CDN 21 of the present embodiment is consequently able to efficiently construct and deliver robust fingerprinted and watermarked content to requesting consumer devices 5 from a closest geographical distribution point.
Third Embodiment [0052] A third embodiment will now be described using corresponding reference numerals to those of preceding figures where appropriate for corresponding elements.
Referring to Figure 7. a content distribution system 301 according to a second embodiment includes a HTTP-based content delivery network (CDN) 31 comprising a plurality of HTTP caches 33 (only one cache is illustrated in Figure 7 for clarity), situated geographically between the end user consumer device 5 and content origin, for caching and distributing watermarked content data streams 35 provided by the content publisher system 7.
[0053] There are already well-developed models for distributing video content using standard HTTP requests. for example both HTTP Live Streaming (HLS) and MPEG Dynamic Adaptive Streaming over HTTP (MPEG-DASH) use this paradigm. Both of these protocols use manifest files that contain links to short segments of the video content that the consumer device 5 player software 39 downloads and plays in sequence. These segments (refelTed to as HTTP chunks) are pulled using standard HTTP requests and are therefore cached according to the normal HTTP headers, as well understood in the art.
[0054] The present embodiment is a hybrid of the first and second embodiments descnbed above, where a HYT P chunk generator 43 of the content publisher system 7 is adapted to generate HTTP chunks i5 from the watermarked strearnDNA master copies 11, such that the HTTP caches 33 effectively store cached HTTP chunks 35 of watermarked versions of the alternative streams 11. The content publisher system 7 is also adapted to generate adapted manifest files 41 on a per stream basis from the matching key 13 for the requesting user or consumer device 5, to the adapted manifest files 41 containing references to the appropriate 1-ITTP chunks 15 of the desired video.
The references in the manifest files 41 may be obfuscated to provide another layer of protection against pirates wishing to fraudulently generate references to other segments based on information in the manifest files 41, whereby knowing the name of one segment from one master copy gives no information as to the name of a segment from another master copy. The adapted manifest files 13 can be stored and pulled from the central content publisher system 7 and the linked-to segments of the watermarked streams can be requested one after the other by the content distribution module 17 in the HTTP cache 33. The segment requests may be transmitted back to the content publisher system 7 if need be, for example when the requested segment of a watermarked stream is not available from the HTTP chunk cache 35.
[0055] Tn this way. the watermarked master copies 11 are effectively efficiently cached without modification to the HTTP-based CDN 31, as the HTTP chunks 15 of the watermarked master copies ii will be handled and cached by the HTTP-based CDN 3 i in the usual manner.
Advantages [0056] A number of further advantages will be understood from the above description of the embodiments of the present invention.
[0057] In genetics, Deoxyribonucleic Acid (DNA) is made up of two long polymers of simple units called nucleotides. There are only 4 different nucleotides from which DNA is constructed -adenine, cytosine. guanine and thymine (often referred to by their initials A, C, U & T), but every human Waning identical twins) has unique DNA. In the same way as human DNA is derived from a limited number of nucleotides, embodiments of the present invention enable the generation of digital content each with a globally unique fingerprint constructed from just a few different watermarked copies of the source content.
[0058] Additionally, the private streamDNA masters copies can be securely stored and the unmarked master versions are never delivered to distributors or consumers of the video. The consumers only ever receive fingerprinted streams generated by the watermarking and encoding process of the present invention.
[0059] In the second embodiment described above, edge-caching provides a number of further advantages. There is a high degree of cache efficiency as the system is able to cache only the streamDNA master copies, from which all the fingerprinted strearnDNA streams are derived. Moreover, support for formats such as HLS and MPEG-DASH allows content providers to immediatdy start fingerprinting their content while still using a cache-friendly process, even without the cooperation of the downstream CDNs and ISPs.
Computer Systems [0060] The entities described herein, such as the distribution server 3, may be implemented by computer systems such as computer system 800 as shown in Figure 8.
Embodiments of the present invention may be implemented as programmable code for execution by such computer systems 800. After reading this description, it will become apparent to a person skilled in the art how to implement the invention using other computer systems and/or computer architectures, both physical and virtual.
[0061] Computer system 800 includes one or more processors, such as processor 801.
Processor 801 may be any type of processor, including but not limited to a special purpose or a general-purpose digital signal processor. Processor 801 is connected to a communication infrastructure 803 (for example, a bus or network). Various software implementations are described in terms of this exemplaiy computer system. After reading this descnption, it will become apparent to a person skilled in the art how to implement the invention using other computer systems and/or computer architectures, both physical and virtual.
[0062] Computer system 800 also includes a main memory 805, preferably random access memory (RAM), and may also include a secondary memory 807, for example for storing the watermarked streamDNA master copies 11 and strearnDNA keys 13.
Secondary memory 807 may include, for examp'e, a hard disk drive 809 and/or a removable storage drive 811. representing a floppy disk drive, a magnetic tape drive, an optical disk dnve, etc. Removable storage drive 811 reads from and/or writes to a removable storage unit 813 in a well-known manner. Removable storage unit 813 represents a floppy disk, magnetic tape, optical disk, etc., which is read by and written to by removable storage dnve 811. As will be appreciated, removable storage unit 813 includes a computer usable storage medium having stored therein computer software and/or data.
[0063] In alternative implementations, secondary memory 807 may include other similar means for allowing computer programs or other instructions to be loaded into computer system 800. Such means may include, for example, a removable storage unit 815 and an interface 817. Examples of such means may include a program cartridge and cartridge inteiface (such as that previously found in video game devices), a removable memoiy chip (such as an EPROM, or PROM, or flash memory) and associated socket, and other removable storage units 815 and interfaces 817 which allow software and data to be transferred from removable storage unit 815 to computer system 800.
Alternatively, the program may be executed andlor the data accessed from the removable storage unit 815, using the processor 801 of the computer system 800.
[0064] Computer system 800 may also include a communication interface 819.
Communication interface 819 allows software and data to be transferred between computer system 800 and external devices. Examples of communication interface 819 may include a modem, a network interface (such as an Ethernet card), a communication port, a Personal Computer Memory Card hiternational Association (PCMCIA) slot and card, etc. Software and data transferred via communication interface 819 are in the foim of signals 823, which may be electronic, electromagnetic, optical. or other signals capable of being received by communication interface 819. These signals 823 are provided to communication interface 819 via a communication path 821.
Communication path 821 carries signals 823 and may be implemented using wire or cable, fibre optics, a phone fine, a wirdess link, a cefiular phone link, a radio frequency link, or any other suitable communication channel. For instance, communication path 821 may be implemented using a combination of channels.
[0065] The terms "computer program medium" and "computer usable medium" are used generally to refer to media such as removable storage drive 811, a hard disk installed in hard disk drive 809, and signals 823. These computer program products are means for providing software to computer system 800. However, these terms may also include signals (such as electrical, optical or electromagnetic signals) that embody the computer program disclosed herein.
[0066] Computer programs (also called computer control logic) are stored in main memory 805 and/or secondary memory 807. Computer programs may also be received via communication interface 819. Such computer programs, when executed, enable computer system 800 to implement embodiments of the present invention as discussed herein. Accordingly, such computer programs represent controllers of computer system 800. Where the embodiment is implemented using software, the software may be stored in a computer program product and loaded into computer system 800 using removable storage drive 811, hard disk drive 809, or communication interface 819, to provide
some examples.
[0067] Alternative embodiments may be implemented as control logic in hardware, firmware, or software, on physical or virtual hardware or any combination thereof.
Further Alternatives and Modifications [0068] It will be understood that embodiments of the present invention are described herein by way of example only, and that various changes and modifications may be made without departing from the scope of the invention.
[0069] For example, although the above embodiments are described with reference to video content (which may be data files or data streams), those skilled in the art will appreciate that the techniques can be applied to any digital content constructed from units that can be uniquely identified or watermarked, including but not limited to video, audio, documents and other forms of computer data.
[0070] As another example, although the above embodiments are described with reference to a content publisher system. the watermarking module may instead or in addition be implemented in any content provider system, and/or content rights holder system.
Numbers of "nucleolides" [0071] The streamDNA masters copies do not need to all be complete, as long as there is at least one possible choice of GoP for each point in the video. This allows the number of available "nucleotides" to vary more widely than the technique discussed in the first embodiment above, and enables certain sections of the video to have more variability and others less.
[0072] For example, the trailer for a video or the credits may be seen as not as important to protect (a certain amount of "viral" distnbution may even be seen as beneficial) whereas other sections might have lOOs of differently watermarked GoPs, or even have GoPs watermarked differently for every customer/device/time generated. As the system would only be performing the watermarking to a limited number of (possibly randomly chosen) GoPs, the computational cost of doing so is still small.
[0073] Where limited "on the fly" watermarking is performed. this can start with a GoP from a streamDNA master copy so that the overall master video is never released and the multiple watermarks could for example identify both the distributor of the video and the eventual end receiver.
lime Sensitivin.' [0074] Just as one can vary the number of choices for a specific GoP at different points in the film, one can also vary the GoPs over the course of time. For example, new streamDNA master copies could be released on a timed basis hourly, daily, weekly etc) and the old ones retired. This would ensure that even if a potential pirate had access to many differently fingerprinted streamDNA copies of the original video, their ability to construct "anonymous" copies by combining GoPs from their various different copies is severely limited.
lrequencv Sensi/ivit [0075] As with time sensitivity above, streamDNA master copies (or individual CoPs from those master copies) can be retired and replaced on a usage basis. For example, if a particu'ar GoP had been a'located to 100 separate streams, it could be replaced with a freshly watermarked version.
Multiple Watennarking Algorithms [0076] In the preparation of the streamDNA master copies, it is beneficial for multiple watermarking a'gorithms to be used, either with different algorithms for different CoPs or multiple algorithms on the same GoP. This advantageously ensures that even if one watermarking algorithm is compromised (i.e. pirates find a way to remove the information embedded using that technique) the streamDNA streams are still protected by the GoPs encoded with other still "robust" methods. The loss of one algorithm thereby reduces the complexity of the DNA we generate but still retains massive amounts of identifying information.
Different s/reamDN/t Master Copies per Distributor [0077] It is also possible to prepare different streamDNA master copies for each of the distributions partners (such as a content distribution network). This advantageously means that should one distributor be incorrectly allowing access to streams, it becomes trivial to identify which distributor is at fault.
Opaque Keys [0078] In the embodiments described above, the exemplary keys comprise a sequence of simple indices into the number of available CoPs for a given position within the stream. These key va'ues may be arbitrarily mapped values so that knowing the key for one GoP gives no information as to the other valid keys.
[0079] Alternative embodiments may be envisaged, which nevertheless fall within the scope of the following claims.

Claims (22)

  1. ICLAIMS1. A computer-implemented method for uniquely identifying data, comprising generating a version of source data consisting portions from a plurality of watermarked copies of the source data.
  2. 2. The method of claim 1, wherein each portion of the generated version is taken from a respective watermarked copy identified by a key.
  3. 3. The method of claim 2, wherein each of the plurality of watermarked copies is associated with an index and wherein the key comprises a combination of said indices.
  4. 4. The method of claim 3. wherein the combination of indices is selected randomly or based on a selection algorithm.
  5. 5. The method of claim 4, wherein at least one of the indices in the key is selected from a subset of the plurality of watermarked copies.
  6. 6. The method of any one of the preceding claims, further compnsing generating the plurality of watermarked copies of the source data.
  7. 7. The method of claim 6, wherein the plurality of watermarked copies are generated in parallel.
  8. 8. The method of claim 6 or claim 7. wherein the plurality of watermarked copies are generated by applying different watermarks to respective copies of the source data
  9. 9. The method of any one of the preceding claims, wherein the watermarks are visible or invisible watermarks.
    I
  10. 10. The method of any one of the preceding claims, wherein new watermarked copies are generated after a predefined time or frequency of use.
  11. 11. The method of any one of the preceding claims, further comprising receiving a request for the data from a consumer device,
  12. 12. The method of any one of the preceding claims, further comprising generating the key for the requesting consumer device.
  13. 13. The method of any one of the preceding claims, wherein the source data is digital video data.
  14. 14. The method of claim 13, wherein the source data is a digital video data stream.
  15. 15. The method of claim 13 or 14, wherein the source digital video data comprises a time-ordered sequence of Group of Pictures GoP).
  16. 16. The method of claim 15, wherein the generated version of source data consists of GoPs selected from said plura'ity of watermarked copies of the source digital video data.
  17. 17. The method of claim 16, wherein the version of the source data stream S based on key K comprises: SK =M,M2,M3.M,'h2 where n is the number of GoPs in the stream, K is the generated key (1(1, Ic, k3, .... 1(11), Lvi and is the nth GoP from the k11th wateirnarked copy.
  18. 18. The method of any one of claims 13 to 17, wherein said plurality of watermarked copies of the source digital video data aie stored at a cache of a distribution data network.
  19. 19. The method of any one of claims 13 to 17, wherein segments of the plurality of watermarked copies of the source digital video data are stored at a cache of a distribution data network.
  20. 20. A computer-implemented method of transmitting a fingerprinted version of a source data stream to a consumer device, the fingerprinted version comprising a sequence of data portions, each data portion in the fingerprinted version corresponding to a respective data portion of one of a plurality of watermarked copies of the source data stream identified by a key for the consumer device.
  21. 21. A computer-implemented method for deriving a unique identifier of a data file consisting a plurality of portions from a plurality of watermarked copies of a source data file, compnsing determining the watermark applied to each of said plurality of portions, and deriving an index for each of said plurality of portions identifying the coffesponding watermnarked copy of the source data, wherein the plurality of derived indices is a unique identifier of the data file.
  22. 22. A system comprising means for performing the method of any one of claims 1 to 21.I23. A content distribution modu'e for generating a version of source data consisting portions from a plurality of watermarked copies of the source data.24. A key generation module for generating a key comprising a plurality of key values identifying a sequence of portions of fingerprinted content data selected from a respective one of a plurality of watermarked copies of source data identified by the sequence of key values.25. Video content data comprising a sequence of portions each selected from a respective one of a plurality of watermarked copies of source video data identified by a sequence of key values.26. A cache in a content distribution network, the cache comprising means for storing a plurality of watermarked copies of source data, and means for generating a version of the source data consisting portions from the plurality of watermarked copies of the source data.27. An HTTP-based content distnbution system comprising: a content distribution network for distributing data segments of requested content data from a content provider system to a consumer device, wherein the data segments are identified in a manifest file; and wherein the content provider system is adapted to: generate a plurality of watermarked copies of source content data; generate a sequence of data segments for each watermarked copy of source content data; and modify the manifest file to identify a sequence of data segments from the plurality of watermarked copies of the source content data, whereby a uniqueIversion of the source content data is received by said requesting consumer device.28. A storage medium comprising machine readable instructions stored thereon for causing a computer system to perform a method in accordance with any one of claims 1 to 21.29. A method substantially as hereinbefore described with reference to, or as illustrated in Figure 3 of the accompanying drawings.30. A computer system substantially as hereinbefore described with reference to, or as illustrated in Figure 1. 6 or 7 of the accompanying drawings.
GB1215854.9A 2012-09-05 2012-09-05 Digital watermarking and fingerprinting of source data Withdrawn GB2505657A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB1215854.9A GB2505657A (en) 2012-09-05 2012-09-05 Digital watermarking and fingerprinting of source data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB1215854.9A GB2505657A (en) 2012-09-05 2012-09-05 Digital watermarking and fingerprinting of source data

Publications (2)

Publication Number Publication Date
GB201215854D0 GB201215854D0 (en) 2012-10-24
GB2505657A true GB2505657A (en) 2014-03-12

Family

ID=47136982

Family Applications (1)

Application Number Title Priority Date Filing Date
GB1215854.9A Withdrawn GB2505657A (en) 2012-09-05 2012-09-05 Digital watermarking and fingerprinting of source data

Country Status (1)

Country Link
GB (1) GB2505657A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017067845A1 (en) * 2015-10-21 2017-04-27 Nagravision S.A. Adaptive watermarking for streaming data
FR3044140A1 (en) * 2015-11-24 2017-05-26 B<>Com METHOD FOR PROCESSING A SEQUENCE OF DIGITAL IMAGES, TATTOOTING METHOD, DEVICES AND COMPUTER PROGRAMS
EP3179438A1 (en) * 2015-12-07 2017-06-14 Disney Enterprises, Inc. System and method for creating a temporal-based dynamic watermark
WO2018007893A1 (en) * 2016-07-06 2018-01-11 Cisco Technology, Inc. Streaming piracy detection method and system
US20180295172A1 (en) * 2017-04-10 2018-10-11 Box, Inc. Forensic watermarking of shared video content
EP4022501A4 (en) * 2019-08-27 2023-09-27 Synamedia Limited SYSTEMS AND METHODS FOR PROVIDING WATERMARKED CONTENT

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001067667A1 (en) * 2000-03-06 2001-09-13 Entriq Method and system to uniquely associate multicast content with each of multiple recipients
US20070110237A1 (en) * 2005-07-07 2007-05-17 Verance Corporation Watermarking in an encrypted domain
US20090326961A1 (en) * 2008-06-24 2009-12-31 Verance Corporation Efficient and secure forensic marking in compressed domain
EP2341708A1 (en) * 2010-01-05 2011-07-06 Irdeto Access B.V. Broadcasting variants of digital signals in a conditional access system
EP2429189A1 (en) * 2010-09-09 2012-03-14 Irdeto B.V. Method and system for providing content to a recipient device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001067667A1 (en) * 2000-03-06 2001-09-13 Entriq Method and system to uniquely associate multicast content with each of multiple recipients
US20070110237A1 (en) * 2005-07-07 2007-05-17 Verance Corporation Watermarking in an encrypted domain
US20090326961A1 (en) * 2008-06-24 2009-12-31 Verance Corporation Efficient and secure forensic marking in compressed domain
EP2341708A1 (en) * 2010-01-05 2011-07-06 Irdeto Access B.V. Broadcasting variants of digital signals in a conditional access system
EP2429189A1 (en) * 2010-09-09 2012-03-14 Irdeto B.V. Method and system for providing content to a recipient device

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017067845A1 (en) * 2015-10-21 2017-04-27 Nagravision S.A. Adaptive watermarking for streaming data
FR3044140A1 (en) * 2015-11-24 2017-05-26 B<>Com METHOD FOR PROCESSING A SEQUENCE OF DIGITAL IMAGES, TATTOOTING METHOD, DEVICES AND COMPUTER PROGRAMS
WO2017089689A1 (en) * 2015-11-24 2017-06-01 B<>Com Method of processing a sequence of digital images, method of watermarking, devices and computer programmes associated therewith
US11172093B2 (en) 2015-12-07 2021-11-09 Disney Enterprises, Inc. System and method for creating a temporal-based dynamic watermark
EP3179438A1 (en) * 2015-12-07 2017-06-14 Disney Enterprises, Inc. System and method for creating a temporal-based dynamic watermark
KR20170067152A (en) * 2015-12-07 2017-06-15 디즈니엔터프라이지즈,인크. System and method for creating a temporal-based dynamic watermark
KR102433684B1 (en) 2015-12-07 2022-08-19 디즈니엔터프라이지즈,인크. System and method for creating a temporal-based dynamic watermark
WO2018007893A1 (en) * 2016-07-06 2018-01-11 Cisco Technology, Inc. Streaming piracy detection method and system
US10136194B2 (en) 2016-07-06 2018-11-20 Cisco Technology, Inc. Streaming piracy detection method and system
US10575068B2 (en) * 2016-07-06 2020-02-25 Synamedia Limited Streaming piracy detection method and system
US20180295172A1 (en) * 2017-04-10 2018-10-11 Box, Inc. Forensic watermarking of shared video content
US10887362B2 (en) * 2017-04-10 2021-01-05 Box, Inc. Forensic watermarking of shared video content
EP4022501A4 (en) * 2019-08-27 2023-09-27 Synamedia Limited SYSTEMS AND METHODS FOR PROVIDING WATERMARKED CONTENT

Also Published As

Publication number Publication date
GB201215854D0 (en) 2012-10-24

Similar Documents

Publication Publication Date Title
US8650128B2 (en) Rights management system and methods
US7120250B2 (en) Content distribution for multiple digital rights management
US8607354B2 (en) Deriving multiple fingerprints from audio or video content
US20190243948A1 (en) Method and apparatus for delivering encoded content
EP3622426B1 (en) Systems and methods of preparing multiple video streams for assembly with digital watermarking
GB2505657A (en) Digital watermarking and fingerprinting of source data
CN101022550A (en) Flow media digital watermark information embedding method
CN101223599B (en) Reproducing apparatus, recording apparatus, data processing method, data recording method, and integrated circuit
CN100442835C (en) A digital copyright and digital watermark protection method for video programs
Augot et al. Secure delivery of images over open networks
JP2004294474A (en) System, method and program for providing contents
HUE031589T2 (en) Security method for preventing the unauthorized use of multimedia contents
CN101751527A (en) Copyright protection method of multimedia file in reproduction and spreading process
US20120210128A1 (en) Information processing apparatus, information processing method and program
FR3044442A1 (en) METHOD FOR IDENTIFYING SECURITY PROCESSORS
Peinado et al. Digital rights management for digital cinema
JP2007520098A (en) Damaged digital content generation and restoration apparatus and method
KR100635128B1 (en) A device for generating an encrypted video file and an encrypted video restoring device in an IOS base media file format, and a method for restoring the same
KR20050096533A (en) System for providing high definition multimedia contents and preventing an infringing copies
EP4007961B1 (en) Method and apparatus for feedback-based piracy detection
CN101442670A (en) Client end proxy system of digital copyright management system
Lee et al. DRM SYSTEM WITH FINGERPRINT IN VIDEO STREAMING SERVICE
Wu et al. Design WDRM in digital TV
Schmucker Possibilities, Limitations, and the Future of Audiovisual Content Protection
Jang et al. A Study on the Permutation and Recombination Method Digital Contents for DRM in Smart Home Environment

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)