Abstract
We present a solution to the problem of content sharing in digital rights management (DRM) systems. Users in DRM systems purchase content from content providers and then wish to distribute it between their own devices or to other users. The goal is to allow the sharing of such content, with the control of the content provider, while ensuring that it complies with the content’s usage rules. We also address in this paper the subject of protecting users’ privacy during the content sharing; to the best of our knowledge no study thus far addressed this topic. While most of the previous studies on content sharing in DRM systems assume the existence of authorized domains, ours does not make that assumption. The solutions that we present here are based on Certified Sharing Requests which are used when devices request from the content provider to share content with other devices. Our solutions enhance the usability of DRM, from both the users’ and content provider’s perspective, by supporting on-the-fly sharing, sharing and re-sharing of controlled content, a pay-per-share business model, and privacy preservation.
Keywords
Introduction
In recent years there has been an explosion in the usage of smartphones and other devices for downloading and viewing digital media. For the providers of such data it creates a huge commercial opportunity as well as a great risk. The risk stems from the difficulty of controlling the dissemination of the provider-owned content and its sharing between users and devices. Digital Rights Management (DRM) is at the core of systems and methods for controlled sharing.
The usage of DRM in the industry is controversial, since it limits the use of legally purchased content, and it does not allow certain scenarios that were previously possible. One of the main controversies with DRM systems is with regard to content sharing. When physical content is purchased it can be shared, copied, and re-sold. In DRM-free systems, digital content can also be freely shared and copied. On the other hand, in DRM systems, the content provider (CP) wants to control such content sharing, and ideally would like to get paid whenever such content is further shared with other users.
The digital media industry finds itself in a situation where forbidding content sharing antagonizes existing customers and pushes them to leave; on the other hand, freely permitting content sharing reduces the value of the content and leads to a decrease in revenue. Introducing the pay-per-share business model brings a win–win situation where customers who otherwise might have not purchased the content can now do so at a reduced cost, while the CP’s revenue increases with a minimum overhead. It should be noted that since the content is being shared, the CP merely needs to provide a permission for this sharing transaction without having the communication overhead of actually transferring the data-heavy content.
Most current solutions for content sharing propose and expand upon the use of an “Authorized Domain” – a group of devices that can freely share content amongst them [5]. However, the Authorized Domain model does not support current business needs. Such models have two main drawbacks: they do not support “on the fly” sharing, namely, sharing between devices that do not belong to the same domain; and they do not offer the means to control which content can be shared between two devices. In addition, the problem of formally defining a domain of devices remains open, since formal logic is limited when it comes to human “intuition”, and many different use cases exist where users feel entitled to join a domain (e.g users with multiple devices, family members residing in different households, roommates who are not related but living in the same household, etc.). For these reasons, the Authorized Domain solution does not address today’s users’ needs. In particular, users are demanding that DRM systems support content sharing between friends, without requiring that their devices belong to the same domain. This functionality cannot be supported by the Authorized Domain model, and requires “on-the-fly” sharing such as that which is supported by our model. With the constant threat of users resenting the DRM system limitations, and deciding to avoid becoming customers of DRM systems altogether, acquiring content through illegal methods which do not generate CP revenue, it is crucial that DRM systems become more flexible, while obviously not compromising on security. Our paper proposes a secure yet flexible system for content sharing to replace the Authorized Domain model.
In this paper we propose solutions for content sharing that do not rely upon authorized domains.
A recent scheme that solves the content sharing problem without assuming authorized domains was proposed by Ma et al. [14]. Their scheme uses a proxy re-encryption method [3] which allows re-encryption of a message without decrypting it first. Although this method is elegant and secure (see its detailed description in the next section), it involves a considerable overhead in terms of storage, and it relies on the complex cryptographic primitive of bilinear pairing. Moreover, the implementation of the pairing in [14] dictates using the El-Gamal public key cryptosystem and prevents using other public key methods like the prevalent RSA cryptosystem. Finally, the solution in [14] does not support re-sharing of purchased content with other users, or a flexible payment scheme.
Another problem is preserving the privacy of devices that request shared content. While there are a number of works on privacy preservation during content purchasing in DRM systems, we are not aware of any solutions that address the problem of privacy preservation during content sharing. We propose here a scheme that protects users’ privacy during the process of content sharing.
Here we address the above problems and present a simpler scheme for controlled sharing in DRM systems. Our scheme is called: the CSR (Certified Sharing Request) Scheme. The specific goals of our work are:
“On the fly sharing” – sharing between devices that were not previously connected in any fashion.
Re-sharing to any preset depth – devices that received the content through sharing can also re-share the content with other devices.
Content-dependent sharing privileges – each content is tagged by its own sharing privileges and limitations. (In contrast to authorized domain solutions where two peer devices in the same domain may share all content between them.)
CP knowledge – the CP must be notified of and permit sharing before it can take place. We present also a solution that respects a relaxed form of this goal, in which the CP controls only the number of sharing requests per device in a given time window; such a relaxed solution is more efficient.
Pay-per-sharing – support for a pay-per-sharing business model where a device can be charged both for purchasing and sharing content. This business model allows the CP to charge a reduced rate for sharing content (say ten percent of the charge of directly purchasing the same content). This both provides the CP with additional revenues while benefiting users who enjoy reduced charges.
Privacy preservation – preserving the anonymity of users who receive shared content.
Security – achieving the aforementioned objectives while ensuring common security and privacy properties. An important contribution of this paper is a detailed security analysis of both the proxy re-encryption scheme [14] and our scheme, which highlights the security advantages which the latter offers.
To summarize, the CSR scheme provides a simple, efficient and flexible mechanism of DRM sharing, with strong security and privacy guarantees. The CSR scheme aims to replace the authorized domain model, since the latter fails to address current user expectations in the mobile era.
The rest of the paper is organized as follows. Section 2 provides the necessary background, an overview of the related work, and a detailed description of the proxy re-encryption scheme. In Section 3 we describe our sharing scheme. The version which we present there is the fully secure version of our scheme, which is designed for the full non-trust scenario, i.e., a scenario in which the CP performs all necessary verifications before approving any sharing or re-sharing. In Section 4 we present a more efficient scheme which is designed for the so-called partial trust scenario; in that scenario, the devices that purchased content directly from the CP are partially trusted and therefore the CP delegates to them some of the verifications that need to take place before sharing content. In Section 5 we expand our schemes to support privacy preservation. In Section 6 we discuss the advantages and disadvantages of both variants of our scheme and compare them to the proxy-rencryption scheme of [14]. We conclude in Section 7 and outline some future work directions.
Part of this work appeared in [9] as a short paper. The preliminary discussion and related work coverage in this manuscript (Sections 1 and 2) is much more comprehensive than their counterpart in [9]. So are the discussion and analysis of the CSR scheme (Section 3). Sections 4 (The CSR scheme in the partial trust scenario) and 5 (Privacy preservation applied to content sharing) are entirely new. Finally, the discussion of our results and comparison to the existing art (Section 6) is much more elaborated than the succinct discussion in [9].
Background and related work
Overview
Digital Rights Management (“DRM”) is a method for controlling the viewing and distribution of digital content. A DRM system consists of a group of different entities:
Content (C) – a purchasable item of digital content, typically a video, audio or text file. The content is distributed in an encrypted format, using a symmetric encryption, and can only be decrypted using the corresponding content key.
Content License (CL) – a record that includes the content key and a set of usage rules. Content licenses are typically encrypted using public key encryption.
Content Provider (CP) – the entity that owns the content items and wishes to control the distribution of the content to its client devices. It is sometimes known as the “Rights Issuer”.
Trusted Computing Base (TCB) – a trusted hardware component within the device which securely stores and processes keys.
Device (will be denoted by A, B,
It is important to note that DRM systems protect against distribution of cryptographic keys. However, an attack could take the form of an illegal distribution of the clear content, either in its digital format or in its analog format. An illegal distribution of the clear digital content is known as “the streaming problem” (see e.g. [15,26]). Various deployments of DRM systems offer different protections of the clear digital content by hardware and software techniques; the level of protection which is applied by the DRM system to the clear digital content depends on the specific DRM system implementation and on the TCB which is used within this system. See [15,26] for further discussion on that issue and suggested solutions for protecting the clear digital content within DRM systems from being illegally distributed.
The decryption and rendering of content in DRM systems is performed within the TCB so that the content keys are not directly available to the device. Once the encrypted digital content is decrypted and rendered by the device into analog format, the device could in theory ignore the content license and distribute the rendered analog content. This is known as the “analog hole” [24]. However, such a breach of the content license policy is considered a lesser threat for the industry because the conversion from analog content back to digital content, in order to distribute it, typically results in a loss of quality. There are various attempts to solve the “analog hole” vulnerability in DRM systems; the interested reader is referred to [24].
Related work
Most literature on the topic of content sharing within DRM systems focuses on the use of the Authorized Domain model [5]. This is the classic DRM solution for content sharing, in which a group of authorized devices are defined as belonging to a joint domain, and devices within the same domain can freely share content between them. A single device in the domain is used as the Domain Controller, giving permission to other devices to join the domain.
Sheppard and Safavi-Naini [23] propose enabling content sharing within DRM systems using the Authorized Domain model. They extend the Authorized Domain model with a context-aware method for defining domains; proposing a Domain Expression Language, where context-aware information is processed by the Domain Controller, and the act of joining the domain by a device is considered an environment role, in similarity to Role Based Access Control (RBAC) systems [21].
In [1] and [2] Abbadi proposes schemes for improving the security of the Authorized Domain model. In [1] he proposes using Location Based Services in order to verify that devices are indeed within a reasonable geographic proximity to the user’s registered address. In [2] he suggests using a central Master Control device which only adds a device to the authorized domain after the device is authenticated using either biometric identification or a password. Both of those studies focus on improving the security of the Authorized Domain model rather than on the users’ experience or the business model.
Sadeghi et al. [19] provide a secure platform on open systems which allows the usage of dynamic licenses. They consider the security issue where dynamic licenses are vulnerable to tampering on open systems. They solve this vulnerability by creating a secure virtual layer which runs below the existing open operating system and prevents both altering the licenses and using out-of-date licences. They present dynamic licenses as a solution to content sharing, and suggest a model which allows content transfer and lending. When a user transfers or shares his content, a new license is created for the receiving device and the current device’s license is disabled or temporarily invalidated.
Lee, Kim and Hong [13] propose a system for content sharing which does not rely on the Authorized Domain model. Their system relies on time-based rights, where the purchasing device is given for any purchased content a certain amount of time for using it, and that time can be split between several devices.
A recent work on DRM and content sharing [14] uses the method of proxy re-encryption [3]. This method is described in detail in the next section and compared in detail to our scheme in Section 6.
Related work on privacy preservation in DRM systems will be discussed in Section 5.1.
Content sharing with proxy re-encryption
Ateniese et al. [3] presented a general purpose method for proxy re-encryption. This method allows users who received a message that was encrypted with their public key to re-encrypt it for other users without decrypting it first. In a nutshell, they describe two types of probabilistic public key encryption functions, which they call first and second level encryptions. If
Ma et al. [14] describe a solution for content sharing in DRM systems which is based on the proxy re-encryption method of [3]. We proceed to describe it briefly.
Purchasing content. When device A requests from the CP to purchase content C, the CP sends to A a message
Sharing content. When device A wishes to share the purchased content C with another device B, it sends a corresponding request to the CP. The CP checks the details of the two devices A and B, and the number of times in which A had already shared that particular content. If that sharing request is approved, the CP computes a re-encryption key,
There are several disadvantages to this solution: (a) Payment for sharing content can only be performed by the device A who is sharing the content; a better business model would be for the device B to pay to the CP for the shared content. (b) This model requires that the CP stores a record for each device and each purchased content, where each record stores the corresponding counter and a pair of cryptographic keys. (c) The method is limited to only one level of sharing; it does not allow device B to re-share the content with another device. (d) The method relies upon the complex and costly bilinear pairing function. (e) The usage of bilinear pairings in [14] is based on El-Gamal public key cryptography and, thus, prevents using other public key cryptosystems, such as RSA. As we shall see, our proposed scheme overcomes those disadvantages.
Certified Sharing Requests (CSR) and the CSR scheme
Here we present our solution for content purchasing, sharing and re-sharing. We describe how a given device
The solution proposed by Ma et al. [14] described the operations of purchasing content and sharing it. Namely, it allows
The CP must be involved in any such sharing or re-sharing operation since it needs to verify that the sharing or re-sharing is consistent with the usage rules for the content C. Hence, the CP can also encrypt the content license for the new device, and consequently, there is no need to resort to re-encryption solutions which rely on complex primitives such as bilinear pairings.
The process of re-encryption can be performed only once per content and device, and thus does not support re-sharing. Since in the solution proposed in [14],
Our solution is based on Certified Sharing Requests (CSRs). The CSRs include: information on the content C, the certificates of the devices that are involved in the sharing and re-sharing operations, and payment information. The CSRs are signed by all involved devices. The mechanism of CSRs is flexible enough to support interoperability between DRM systems; namely, a device in one DRM system can share content with a device that belongs to a different DRM system, under the above assumptions. This will allow CPs to charge devices for “pay per sharing”, regardless of the DRM system to which they belong. For simplicity, no differentiation will henceforth be made between sharing in the same DRM system and sharing between devices in different DRM systems.
Note that sharing and re-sharing will require that the involved devices be online in order to sign the sharing requests. We assume that devices will be online within a reasonable time frame, and in cases where devices are offline, a delay can be tolerated. However, we do not anticipate large delays because of offline devices, due to the proliferation of 3G and 4G networks, where devices remain permanently online.
In this section we focus on the non-trust scenario. Namely, we do not grant the devices which are direct clients of the CP with any trust regarding the right to authorize a sharing request. The CP does not rely on
Purchasing content
Here we describe the process that takes place when a device,
The purchasing protocol is as follows:
When device
The CP verifies the signature of
The CP encrypts the content license
The CP creates a corresponding sharing license
The CP sends to
The CP creates and stores a record of the form
The sharing license
C (the ID of the purchased content);
Note that while we define the above fields for the sharing license, the scheme can be easily extended to include additional restrictions. For instance, attributes that may appear in the device certificate, such as location, can be checked according to criteria which can be added to the sharing license.
In order to support a pay-per-share business model, either device
A certificate of a device is revoked when a device is lost or stolen, or when the CP identifies the device as being hacked. The list of all revoked devices is called a Certificate Revocation List (CRL) [16]. The CP verifies that a device’s certificate is not revoked by checking that it does not appear in the CRL. Using CRLs to identify revoked certificates is a standard practice in DRM systems. However, some DRM systems utilize a so-called Online Certificate Status Protocol (OCSP) [22] instead of CRLs.
Sharing content
When device

Content Sharing in the non-trust scenario. The CP verifications in the scheme are: (a) all signatures are valid? (b) the certificates of
The device
Device
Device
The CP performs the following verifications:
It verifies all three signatures that appear in
It checks that the devices
It checks that the
It retrieves the record
If all verifications were successful, the CP encrypts the content license with
Note that the device
We have described in Section 3.2 the basic sharing scenario. Here we discuss how re-sharing is done; namely, how a device that got a content by sharing or re-sharing can re-share it with another device. Our description of the process will be done by means of induction. Assume that a specific content C was already shared by the following chain of devices,
The re-sharing protocol proceeds as follows:
The device Device The message is sent up the chain of devices, where device The CP performs the following verifications: It verifies all It checks that all devices It checks that the It retrieves the record If all verifications were successful, the CP encrypts the content license with
The CSR scheme in the partial trust scenario
Here we further improve the CSR model by removing from the CP the overhead of authorizing each content sharing transaction. We discuss a scenario in which the CP has a partial trust in the device
The computational and storage overhead of the CP are reduced significantly in the partial trust scenario. First, the CP does no longer need to hold a counter per content per device; it only has to hold a counter per device that limits the number of sharing requests that the device may submit within a set time period. Second, the act of verifying the chain of signatures in the CSR and checking the certificates are valid is transferred from the CP to the sharing device
Purchasing content
Purchasing content is performed as described in Section 3.1. The sharing license which
Sharing content
The process of content sharing in the partial trust scenario is as described below and in Fig. 2. Here, each device wishing to share content must receive from the CP a signed CRL. This CRL will be used by the device to verify the certificates of devices wishing to receive shared content, and it will be updated periodically.

Content Sharing in the CSR partial trust scenario. The
The device
Device
If all checks were successful,
The CP verifies the certificate of
If both checks passed successfully, the CP charges either
Note that replay attacks can be prevented using techniques which are common in protecting other protocols against such attacks, e.g. challenge-response or short life span (see more details in [25]).
Re-sharing is performed as described in Section 3.3, with the following changes to the process that we described in Section 3.3.
Step 1 is modified as follows: Step 6 is modified as follows: Device Step 8 is modified as follows: The CP verifies only the signature of
Privacy preservation applied to content sharing
A topic not often addressed within the field of content sharing is that of privacy preservation. Particularly when sharing content between different users, rather than between two devices belonging to the same user, the user who receives the content may prefer that his identity, and the shared content he wishes to receive, not be disclosed to the CP. Therefore, by “privacy” we mean hereinafter the prevention of the CP from finding out the identity of the device that receives the shared content. The receiving device does not need to remain anonymous vis-a-vis the device that provides the shared content, since the business model of content sharing assumes that sharing takes place between friends and peers. As in this study we discuss sharing and re-sharing of content in DRM systems, we shall focus here on privacy-preservation in sharing and re-sharing, rather than on privacy-preservation in purchasing content.
When discussing privacy in DRM systems there are two privacy-related problems: protecting the identity of the original buyer, and protecting the identity of the device wishing to receive shared content. The problem of protecting the identity of the original buyer has been addressed in other works, which we review in Section 5.1, see [11,12,17,18,20]. In this study we focus on the second problem; namely, we assume that the identity of the original buyer is known to the CP, or that it is protected by one of the methods proposed in the above mentioned studies, and we discuss means to preserve privacy when executing content sharing. We are not aware of any other paper that considers this problem, aside for [8] which is limited to the Authorized Domain model.
In Section 5.2 we describe in greater detail a work on privacy-preservation in DRM systems that is applicable to our CSR scheme. In Section 5.3 we describe privacy-preserving enhancements of our CSR schemes.
Related work on privacy-preservation in DRM systems
Many schemes for privacy-preservation in DRM systems rely on the use of a trusted third party. One such example is the work of Kleiner et al. [12] which describes a method for privacy-preserving DRM that is based on the use of web services. They propose a specific implementation, which uses the Web Services Security (WSS) protocol. Jiang and Yang [11] apply an oblivious transfer protocol for preserving privacy in DRM systems. They consider a multi-party DRM system that consists of a “license center” and a “register server”, in addition to the CP. The register server acts as a trusted third party.
Petrlic and Sekula [18] propose an application of proxy re-encryption for DRM systems, where proxy re-encryption is used to support privacy preservation in a multi-party DRM scheme. The use of proxy re-encryption removes the need for a trusted third party in the DRM system. Their solution provides anonymous authentication by storing in all TCBs an identical set of public and private keys and an identical certificate. They consider a multi-party DRM system, rather than the standard two-party DRM system which we address in this paper. In two-party systems all protocols involve only the CP and a single device; in multi-party systems there are devices, Content Providers (CPs) who sell the content to users, as well as Content Distributors (CDs), who physically supply the content. We note that using a common certificate for all TCBs raises obvious security concerns, one of which is the difficulty in revoking a specific TCB.
Conrado et al. [8] define an anonymous DRM system reliant on the use of anonymous smart cards. A limited form of content copying can be performed by means of transferring the CL. Their solution allows only for transferring content, and it requires the revocation of the original CL, which means that once content is transferred, the original device can no longer view it. A list of these revoked CLs is attached to the device certificate, and the CP verifies that a CL is revoked before permitting the CL transfer. This solution can lead to significant storage and processing overhead for content viewing, since the list of revoked CLs for the device must be checked before viewing can take place. That study also proposes a method for preserving privacy in an authorized domain, by means of a domain manager. There is no support for anonymous content sharing outside the authorized domain.
Perlman et al. [17] describe two families of schemes for privacy preserving DRMs: one that uses anonymous cash and another that uses blind decryption [20]. They describe the advantages and disadvantages of each approach.
Win, Thomas and Emmanuel [27] combine anonymous tokens (similar to Perlman et al.’s [17] anonymous cash scheme) with blind decryption [20]. In the next section we describe their model.
Anonymous token sets for privacy protection in DRM systems
Win, Thomas and Emmanuel [27] propose a method of privacy preservation for DRM systems, which is based on the use of anonymous tokens. These tokens are created by the CP and they are distributed anonymously, after encryption, to devices who wish to purchase content at a later time. These encrypted tokens may be viewed as “blank checks” which cannot be used until they are decrypted by the CP (an operation which has a similar role to a check being signed in order to allow it to be used). The tokens can be used by the device (after their decryption) to receive from the CP content licenses anonymously, as we proceed to describe in detail below.
We note that a distinction is made in [27] between the CP and another party that manages the tokens which is called there the “System Owner”. As noted there, the CP and the System Owner can collaborate, or be the same entity, without causing a breach in privacy. For the sake of simplicity, we shall assume here that the CP and the System Owner are the same entity.
We proceed to outline the protocol suggested in [27].
Preparation of anonymous token sets by the CP
The CP generates anonymous token sets
The CP generates those tokens in the following manner: Let s be a secret known only to the CP, and
The CP then encrypts the token sets as follows:
It generates a symmetric key The CP has an RSA key pair – An anonymous token set package consists of
Purchasing content using the anonymous token sets
A device A that wishes to purchase content, needs first to acquire an anonymous token set package. That transaction takes place anonymously, assuming the device uses an anonymous payment scheme [4,7]. Note that at this stage it is not required to authenticate the device. After acquiring the token set
Since the tokens remain encrypted with
A calculates a random secret blinding factor
A sends to the CP the value y=
The CP verifies the certificate. If valid, it computes
Finally, A computes
Note that this process is done separately from the procedure for acquiring the anonymous token set package, so that the two transactions cannot be linked. Due to the blind decryption, the CP does not learn the value of
The now decrypted token sets can be used by A in order to purchase up to ℓ content items anonymously:
A generates a random symmetric encryption key
A sends anonymously to the CP the content request
After decrypting the request, the CP verifies its own signature as embedded in the token
Finally, A decrypts the content license and then decrypts the content itself.
The above described solution of [27] does not rely on a trusted third party, and it can be used in both two-party and multi-party DRM systems.
Anonymous token sets can be revoked, without breaking the privacy of the device, and there is a secure method for renewing anonymous token sets upon their expiration. If a device requests the renewal of revoked anonymous token sets, the tokens will be identified by the CP as revoked and the request for renewal by the device will be refused. As those features of the solution are less relevant for our subsequent discussion, the interested reader may find the relevant details in [27].
A privacy preserving enhancement of the CSR scheme
We will show here how the mechanism of anonymous token sets [27] can be used in the CSR scheme, in order to enable privacy protection for content sharing.
We concentrate here on performing privacy preserving sharing in the CSR scheme in the non-trust scenario. Performing re-sharing in a privacy pa preserving manner can be carried out similarly. Also the enhancement of the CSR scheme in the partial trust scenario follows the same lines where, as in Section 4.2, it is
As discussed above, we wish to preserve the privacy of the device
When the anonymous token mechanism is applied within the CSR non-trust scheme, the identity of the content C will be known to the CP, but the identity of the requesting device
System setup
A device A wishing to receive shared content will be required first to acquire and decrypt an anonymous token set from the CP, as described in Section 5.2. Recall that in doing so, the device authenticates itself to the CP using its real certificate. Note that this step is performed once. In doing this step, the device acquires a large number of tokens that will be used at later times. Only when all tokens are used, this step is performed once again. Thus, it is not possible for the CP to link the time of the anonymous tokens’ acquisition with the time of use of the tokens.
In order to support sharing requests by A in a private manner, A generates at this stage a random key pair
The purchase of content is performed by
Content sharing
Device
Device
The CP performs the following verifications:
It verifies all three signatures that appear in
It checks that the device
It verifies its own signature as embedded in the anonymous token
It checks that the
It retrieves the record
If all verifications were successful, the CP encrypts the content license with the public key
Note that while the CP cannot perform authentication of the device
This privacy preservation enhancement can be similarly applied to the re-sharing protocol in the CSR scheme (Section 3.3) in order to achieve private re-sharing.
Discussion
Advantages and disadvantages of the CSR scheme
The advantages of the CSR scheme are as follows:
The CSR scheme supports re-sharing, where the depth and number of re-sharings can be set upfront and controlled.
Payment can be made by either the device which originally purchased the content from the CP or from the device which is the recipient in the re-sharing act, what allows a more flexible pay-per-share business model.
Compared to the proxy re-encryption scheme, the CP has to store a smaller database that holds only the counter per device per content, without the need to store a pair of cryptographic keys. In the partial trust scenario the amount of data that needs to be stored by the CP is significantly reduced, since the CP has to store just one counter per device (and not per device per content).
The CSR scheme does not rely upon the complex and costly bilinear pairing function. As a result, it is also not restricted to use El-Gamal public key cryptography (like the proxy re-encryption scheme [14]).
The CSR scheme can support privacy preservation, namely protecting the identity of the device receiving shared content.
It should be noted that the CSR scheme imposes a higher computational overhead on the device’s TCB (Trusted Computing Device) in order to perform signatures. However, those signatures increase the security of the system and also the proxy re-encryption method could benefit from augmenting the transmitted messages by signatures in order to prevent man-in-the-middle attacks (as we discuss in Section 6.2).
The CSR scheme for content sharing offers advantages to both the CP and users, that the standard DRM content purchase protocol does not offer: users benefit from being able to share content between devices at a reduced cost; furthermore, the CSR scheme supports interoperability between DRM systems, where the device receiving shared content does not need to communicate directly with the CP from which the content was originally purchased. The CP benefits from being able to keep track of flexible peer-to-peer sharing, in a secure and authenticated way, without significant CP overhead, and without using an authorized domain (which, as we said before, does not allow on-the-fly sharing).
The CSR model can also be applied in the partial trust scenario, which removes considerable overhead from the CP. By placing a limited amount of trust in the device’s TCB, the CP can remain involved in the sharing transaction, while performing only minimal verifications, and with significantly reduced storage overhead. The advantages of the CSR scheme remain, including interoperable peer-to-peer sharing and privacy.
Security
We separate our security analysis into several aspects.
Encryption. The proxy re-encryption solution [14] uses a first level encryption to encrypt the content license and a second level encryption to encrypt the sharing license. Hence, the content key, which is contained in those licenses, is always encrypted in some variant of El-Gamal encryption, as described in [14]. Also in the CSR scheme, the content key is included in the content license which is always encrypted by the public key of the receiving device. Hence, both solutions offer a comparable level of security for the content keys.
Authentication and non-repudiation. The sharing requests in the CSR scheme are always signed, by the tamper-proof TCB, so that they are authenticated and cannot be repudiated. The proxy re-encryption solution does not use signatures. Hence, such a solution is vulnerable to man-in-the-middle attacks, in which an attacker can send to the CP false requests on behalf of some device to share content, and the CP would not be able to distinguish between them and true requests. As a result, devices may be charged for sharing content requests which they did not issue. Moreover, an attacker can intercept messages sent from the CP to a device and replace them with false messages that would not enable the decryption of content licenses.
CP security. In both schemes the CP is required to store sensitive information like its own private key, all content keys, and in the proxy re-encryption solution also the pair of random keys which are generated whenever a device purchases a content. Hence, in the proxy re-encryption scheme the amount of sensitive information is larger than that in the CSR scheme. Therefore, the demands for secure storage in the proxy re-encryption scheme are much higher and, consequently, so is the risk of a security breach in that case.
Another possible danger to the CP is Denial of Service (DOS) attacks. As explained above, in the absence of certifying signatures in the sharing requests in the proxy re-encryption solution, devices can be easily hacked in order to launch DOS attacks on the CP. Such attacks are prevented in our solution by the usage of signatures. Even if a device is hacked to produce false sharing requests, the CP can detect that all sharing requests from that device are illegal and then revoke that device.
In the CSR scheme, each device
Device security. Both solutions require from each device to have a trusted computing base (TCB). The TCB may be either software or hardware based, e.g. a TCB, or an embedded secure chip. The private key of the device is stored and used only in the TCB. Note that a TCB is required for all implementations of DRM, since otherwise it would be possible to distribute the content key in the clear once the device decrypts the content license.
The TCB of
The conclusion is that the security of both schemes is comparable, but the CSR scheme is advantageous in terms of storing less sensitive information on the CP, in providing authentication and non-repudiation to sharing requests, and reducing the risk of DOS attacks. Also, in the original proxy re-encryption scheme man-in-the-middle attacks are possible, but they can be resolved quite easily by using signatures to certify messages.
Resources
We present here a comparison of the resources required by the two solutions. We compare the number of messages, the number of cryptographic operations, and the size of the data required by each solution, for both purchasing and sharing content.
Comparison of solutions: purchasing content
Comparison of solutions: purchasing content
Comparison of solutions: sharing content
As can be seen in Table 1, the resources required by the solutions in order to purchase content are similar, with the difference that the CSR solution does not require the CP to perform bilinear key generation, and instead requires the CP to perform a private key signature, which can be argued to be a less heavy operation. As for data storage, the data required to be stored in the proxy re-encryption solution is much larger, especially compared to the partial trust solution. (The summations in the last line of Table 1 are over all devices
Regarding the resources required during content sharing, as shown in Table 2, the CSR solution does require two additional messages to be transferred between devices sharing content, however, these are not messages which can cause a bottleneck since they are distributed among the devices. In the CSR solution, the CP and the device transferring the shared content are now required to perform private key signing and verification; that replaces the need of the CP to perform re-encryption key generation. In general, most additional resources are required on the part of the devices and not the CP, and we remove the need for the CP to perform bilinear key generation and storing, which can be seen to be a significant advantage. (Note that in the CSR Privacy Preserving scheme, the system setup stage of anonynmous token acquisition runs once and at an earlier and separate stage from content sharing; in addition, it can be performed on a separate server. Hence, we do not include the resources needed for that stage in the resources that are needed for performing content sharing, as shown in Table 2.)
In order to estimate the overhead for the CP which is required to support content sharing using any variant of the CSR scheme, we note that the CP performs at most five cryptographic operations for each sharing request. We measured the run-times of RSA encryption (which is also equivalent to signature verification) by averaging multiple executions of such operations on a hardware comprised of an Intel i7-4600U processor and 16 GB memory; our tests show that such encryption takes at most 2 milliseconds. Thus, the overhead for processing a single sharing request in any of our schemes is at most 10 milliseconds. (In fact, as we expect the CP to deploy stronger computing machines, we expect the actual overhead to be significantly smaller.) Assuming 100,000 sharing requests per 24 hours, the resulting overload is 1000 seconds (less than 17 minutes) over one day. Even if the actual number of sharing requests per 24 hours is larger, say 1 million, it poses no real problem for the CP since it can allocate several dedicated machines for that purpose and distribute the processing of the sharing requests to those machines. As far as the resources required from the end-point device for supporting any of our CSR schemes, these are negligible, since each device will process only one sharing request at a time. The overhead of the cryptographic operations (which, as discussed above, is in the milliseconds), is a few orders of magnitude smaller than the time needed for the actual content transfer.
In summary, the additional resources are few, and are mostly on the part of the devices and not the CP. Those added resources support enhanced security and added functionality that was not supported by the proxy re-encryption solution. Finally, the storage requirements for the CP are significantly reduced.
We proposed a scheme for content sharing in a DRM system. Content sharing is performed using a Certified Sharing Request (CSR). In contrast to most related work on content sharing in DRM systems, our approach does not rely on the Authorized Domain model. Since the Authorized Domain model does not address current users’ expectations, and along with the inherent difficulty of formally defining a domain does not allow users who are not in the same domain to still share content, DRM systems which only support content sharing under the Authorized Domain assumption are at risk of alienating users. We propose a flexible scheme for content sharing, to replace the Authorized Domain model, and address users’ requirements. The CSR model improves upon the limitations of the Authorized Domain model by supporting “on-the-fly” sharing, controlled content sharing and re-sharing, and a pay-per-share business model. The pay-per-share business model that we support will allow the CP to charge a reduced amount per content share, without having the content transfer overhead, leading to a win–win scenario for both the CP and the users. We proposed versions of our CSR scheme both for the fully secure non-trust scenario and for the partial trust scenario that exhibits improved performance. We also dealt with the problem of privacy preservation and showed how the CSR scheme can be enhanced in order to preserve the privacy of the devices that request shared content.
In the future, we would like to enhance the CSR schemes by expanding the privacy preserving solutions so that they protect also the anonymity of the user sharing the content (
