SECURING DIGITAL CONTENT – STRENGTHS and WEAKNESSES of SOFTWARE and HARDWARE IMPLEMENTATIONS Robin Wilson Nagravision Abstract
Total Page:16
File Type:pdf, Size:1020Kb
SECURING DIGITAL CONTENT – STRENGTHS AND WEAKNESSES OF SOFTWARE AND HARDWARE IMPLEMENTATIONS Robin Wilson Nagravision Abstract HARDWARE VS. SOFTWARE SECURITY Conditional Access (CA) and Digital “Overview” Rights Management (DRM) are implemented in a number of ways in software (SW) and The security system relies on a hardware (HW). Often these schemes are computation, or algorithm, to decode the described as either “HW” or “SW” based protected content. security or rights management systems. Since SW requires HW on which to execute, Most digital CA systems employ a unique and HW has necessarily SW running on it, key that enables a successful computation. the terminology is often thoroughly confusing The locations on the Set-Top Box (STB) for and misleading. Since we are not dealing the decoding program and key are a the with locks and keys or hypothetical systems, subject o the hardware and software security both hardware and software elements must designations. be present, and work together smoothly, in any sophisticated content security system. “Software Only” Security Further confounding the confusion is the frequent use (and abuse) of terms like This and other terms like “Hardware- “replaceable”, “renewable”, “obfuscated” less”, “Downloadable” and even and “tamperproof”. In this session, these “Renewable” are used to describe security terms will be explained in the context of systems where the security solution supplied content security. by a CA or DRM company does not include hardware. Here the product of the company may be limited to only software but the TERMINOLOGY AND TECHNOBABLE inference is sometimes wrongly made that no additional resources are required or costs are Before embarking on comparing various incurred. security implementations and trade-offs, we will first define the terminology used. This Software Needs Hardware Too step will help to overcome the ambiguous definitions and terminologies recently Obvious, but software still requires applied under the guise of marketing new hardware for execution. Conventionally this security concepts. hardware is referred to as the CPU. In a security system, hardware security is a significant concern. “Hardware” Security Hardware can be secure or not. Likewise, security software can either be written As we are not discussing security using without concern for potential reverse tumbler locks or brass keys, it should be of engineering or cleverly concealed attacks no surprise that the hardware referred to here within the hardware/system. Efficient is electronic in nature and it runs software! implementations are often a hybrid mix of In many instances, the decoding algorithm is several SW and HW security techniques. programmed into the “hardware” device. SOFTWARE IN A SECURITY SYSTEM Hardware is free? Bug Free (and we really mean free) A further misrepresentation is sometimes made that a so called “SW only” systems A Bug in any software jeopardizes your have zero hardware cost. While it may be hard-earned customer relationship and true that there is no hardware cost in the STB potentially your corporate reputation. While to be passed on by the CA / DRM company, a bug in a security system can be catastrophic someone, usually the operator, pays. and possibly threaten your business. Even a single bug can quickly give hackers many The assertion that CPU cycles are more clues as to how a system operates incrementally free is also misleading. Any compared with months or even years of CPU on any STB is almost always maxed analyzing a bug free system. This is further out. Indeed prior to launch of a new STB or compounded in a security system where a service it is unusual to find less than 110% of bug can be classified as any unplanned CPU resources are already assigned. There is operation regardless of the stimulus. For this a significant opportunity cost and a real cost reason the security of SW has much more to freeing up cycles for security applications. stringent requirements including the need to Even if the security application takes only do nothing when stimulated by any of an 20% of an existing CPU that can become infinite array of malicious or accidental several dollars in additional cost. stimuli. Try requiring that of you web browser! As the computational power of the STB increases and the sophistication of the CA Beyond the impact on the CA system, any system is enhanced to meet ever-growing unplanned and unexpected operations will threats, there is the risk that legacy STB’s impact the viewer. This is likely to have a will be unable to support the CA system negative effect on the viewing experience. necessary to protect content. Small is Good To Summarize: For the reason above and for speed of • Security software runs on hardware operation, bug free security software is best • Security hardware runs software written in very small kernels by very small • Hardware is always required teams with exhaustive regression testing. • Hardware can be secure or insecure • You pay for security hardware even Throwing tens or hundreds of staff at the in a “SW” only system problem will not help. Neither will bloating the code-base with huge code footprint. It is in this area that a few very experienced a temporary or permanent halt to the security programmers can easily out-perform the huge processes. corporations who’s bug ethics are driven by “good enough to ship” or “let the end HARDWARE IN A SECURITY SYSTEM customers find the bugs”. It is easy to see that a large, complex, system presents many Having bug free security SW is useless if more opportunities for error and bugs. the operating states, registers etc, can easily be monitored. While it is well beyond the Isolation scope of this paper to discuss the security philosophies relating to hiding and keeping It is counter-productive to implement tight secrets, having a transparent hardware highly-secure bug-free security kernel only to platform like a generic CPU, where the have other applications sharing CPU or operation and architecture are well memory resources (planned or unplanned). understood, fatally undermines almost any That strategy will totally undermine security. security scheme. Security will be at the mercy of the application suite du-jour. In-turn the QA HW Obfuscation issues of requiring that all the applications sharing the same code and memory space are Just as with SW, in the context of HW the totally bug free make this flawed structure of silicon or functional blocks are implementation unworkable. Security deliberately made non-obvious or non- software needs to be isolated in a protected intuitive to either human or machine. The environment isolated from a hostile memory term camouflage may also be used. Here the and bugs. Denial of visibility and silicon structure is laid out in an apparently accessibility of the CA process is essential to identical manner for many of the building protecting its secrets. blocks and the critical differences are hidden deep inside an obscure silicon structure. SW Obfuscation HW Tamper-proofing This means that the operation or structure Here the goal is to detect any abnormal of the software is deliberately made non- probing of the silicon or functional block. obvious or non-intuitive to either human or Numerous techniques are employed from machine. Although this term has recently detection layers to radiation detectors to gained some use in referring to automated produce electrical anomalies. transformations applied to pure software products like games, the technique has been One common measure employs fuseable in use for more than a decade in CA or DRM links that can be burned away or destroyed systems. after the CA programming is loaded into memory. This makes reading that code and SW Tamper-proofing analyzing the memory structure far more difficult. Here the goal is to detect any abnormal operation in the SW due do any unwelcome As with SW tamper proofing, when an external stimulus. When detected, the attempted intrusion is detected, the tampering tampering will almost always result in either will almost always result in either a temporary or permanent halt to the security Countermeasures processes. The countermeasures feature within the RENEWABILITY – WHAT DOES IT security system allows for secure and REALLY MEAN? validated updates to the current executing version of the security solution. It also Downloadable assists the service provider in detecting and disabling compromised platforms. The downloadable feature within the security system authenticates or identifies a PERFORMANCE CONSIDERATIONS network element i.e. STB, securely communicates a downloadable solution, and Latency launches the solution into a secured environment. Providing an easy-to-use viewing experience is critical to keeping customers Replaceable happy and giving them no reason to look at other methods of content delivery into the This has two possible meanings: home. Although not often thought as a factor in subscriber retention or churn it is 1). Electronic - The replaceable feature important to ensure that viewers are never within the security system revokes the annoyed by additional channel selection current security solution, restores the secure delays. In the new competitive video environment, and securely enables the environment, channel change delays will downloadable feature for the replacement become a differentiating factor for service security solution. providers. 2). Physical – Here a physical device may be Latency in a CA system can be broadly replaced. Replacement is based on proper categorized as two issues: authentication, binding/paring and secure provisioning. Note: this does not always 1). The first is the time taken between a infer that the removal of the previous device. subscriber’s request to view a channel or Physically replaceable hardware cuts both view a stored file and the proper permission ways. It permits total replacement of a communicated to the security process. This compromised CA system but it also permits could be summarized as “checking the cloning of apparently legitimate hardware viewing rights”.