Building Multimedia Security Applications in the MPEG Reconfigurable Video Coding (RVC) Framework
Total Page:16
File Type:pdf, Size:1020Kb
Building Multimedia Security Applications in the MPEG Reconfigurable Video Coding (RVC) Framework Junaid Jameel Ahmad Ihab Amer Marco Mattavelli Shujun Li Ecole Poly technique Federale University of Konstanz German University in Cairo de Lausanne (EPFL) Germany (GUC), Egypt Switzerland ABSTRACT Keywords Although used by most of system developers, imperative lan RecoTlfigurabk Videu Codin g (RVe), video tool library (VTL) , guages are known for not being able to provide easily recon Crypto Tools Library (CTL), joint multimedia encryption figurable, platform independent and strictly modular appli encoding (JMEE), digital watermarking, MPEG, H.264/ AVC, cations. ISO /IEC has recently developed a new video coding JPEG Rtandard called R.er.onfigurable Video Coding (RVC) , with the objective of providing modular and concurrent spec 1. INTRODUCTION ificatiolls of complex video codecti that COlltititute a bet ter starting point for implementation of applications using In recent years, the security of multimedia applications video compression. Multimedia security applications are has become an important requirement that creators, pro traditionally developed in imperative languages mainly be ducers, distributors and consumers of multimedia products cause the required multimedia codecs were only available cannot ignore anymore. This is because nowadays it is much in specification and implementations based on imperative easier for attackers to make pirate copies, to crack commer languages. Therefore, aside from the technical challenges cial multimedia systems, to attack online multimedia ser inherited from multimedia codecs, multimedia security ap vices, and so forth. So as to ensure the protection of mul plications also face a number of other' challenges which are timedia content, a number of multimedia security schemes only specific to them. Since a number of multimedia codecs (multimedia encryption, watermarking and information hid are already available in the RVC framework, multimedia ing etc.) have been developed and are being used in different security applications can now also be developed using this forms. new development framework. This paper explains why the In order to devise any multimedia security scheme (e.g., RVC ti'amework approacll can be used to efriciently over joint multimedia encryption-encoding, watermarking and in come those technical challenges better than existing imper formation hiding in compressed-domain, etc.), traditionally ative languages. In addition, the paper demonstrates how researchers have been working directly on the codec imple the RVC framework can be used to quickly develop mul mentations mostly available in the form written using im timedia security applications by presenting some examples perative languages such as C/C++, J ava, etc. However, including a joint H.264/ AVC video encryption-encoding sys most imperative languages are not strictly modular and of tem, a joint JPEG image encryption-encoding system and a ten have dependencies on a specific platform I , which results image watermarking system in JPEG compressed-domain. in a number of challenges the developers have to overcome in building reconfigurable and platform-independent mul timedia security systems. Furthermore, many multimedia security techniques may be applied to multiple multimedia Categories and SUbject Descriptors codecs, so benchmarking the security properties of differ 1.4.2 [Image Processing and Computer Vision]: Com ent multimedia security techniques with multiple multime pression (Coding); E.3 [Data]: Data Encryption dia codecs can be a very time and resource consuming task because those multimedia codecs are often implemented in completely difIerent software (SW) architectures and written General Terms usiTl g different imperative languages. Thb fact abo rnaketi a judicial comparison of those multimedia security techniques Design, Languages, Performance, Security rather difficult since the underlying multimedia codecs are not working on the same base. Using imperative programming languages as the main de velopment tool has introduced some technical challenges in the design and implementation of more and more com pI i- lIn the context of MPEG RVC framework, the word "plat form" has a more broader meaning than usual. Basically, it covers the whole environment converting source code to ex ecutables and running the executables, which include the compilers, the operating system, the virtual machine (if any), and the underlying hardware. cated multimedia codecs [24J. The main difficul ties alld PCs, heterogeneous embedded systems, mobile phones, and impediments include the diffi cul ty of reusing modules, the FPGAs [22, 35J. In principle, the RVC framework also sup reconfiguration of existing co decs, and the impossibility of ports hardware/software co-design by converting part of a porting an existin g implementatioll to a completely differ design into software and the other part into hardware [46J. ent platform without major redesign tasks. So as to re T he RVC framework is based on datafl ow programming [27J duce the problem related to those technical challenges, the that allows automatic code analysis to facilitate large-scale ISO/IEC SC29/WG11 committee, better known as MPEG, design-space exploitation stages such as identifying compo has recently standardized a framework called RVC (Recon nents for increasing the explicit parallelism of implemen figurable Video Coding) [32 , 33J . The salient features of the tations running on multi-core and many-core systems, or RVC framework include modularity, reusability, r'econjigum other transformations to optimize efficient partitioning and lion, platforrn independence and code analyzability. While scheduling of implementations [22,25, 40J. the RVC fr amework has been standardized in the context of The RVC standard is composed of two parts: MPEG video coding, it is actually a general framework for all data B Part 4 [321 and MPEG-C Part 4 [33J. MPEG-B Part 4 driven applications. As a result, it has been successfully ap dennes lhe languages and Lhe formalism for specifying co n plied to development of different kinds of multimedia (v ideo, fi gurations of video co dees, and MPEG-C Part 4 defines a audio, image and graphics) codecs [11 13,20,21,26,33, 39J. standard library of algori thms in the form of data fl ow com In addition, it has also been used to develop a Crypto Tools ponents (VTL2) that are composed of a numbe r of func Library (CTL) [19], which provides a set of both multime tional units (FUs) as platform-independent building blocks dia codecs and cryptosystems developed using languages and of MPEG standard compliant video decoders [33). To sup tools standardized by the RVC framework, making it possi port the RVC data.flow fram ework , MPF.G-R Part 4 stall ble to efficiently build reconfigurable multimedia encryption dardizes three languages: a datafl ow programming language applications for different platforms. called RVC-CAL (a subset of the original CAL Language In this paper, we discuss some technical challenges in specifi Cation [27]) for descriiJin g platforrn-illdependent PUs, building and benchmarking multimedia security applications an XML dialect called FNL (FU Network Language) for de and show how these challenges can be addressed by using the scribing connections between FUs, and another XML dialect RVC framework. We showcase a number of multimedia secu called RVC-BSDL for describing the syntax format of video ril;y applicationR t.o highlight the eaRe am) benefit,R of build bitstreams. ing multimedia security applications in the RVC framework. Figure 1 illustrates how a video decoder is represented and The remainder of this paper is organized as follows. After ll ow proprietary or pla.tform-specific illlple1'llelitatiolis arc giving an overview of the RVC fr amework in Sec. 2, Sec generated from an RYC m elec specifi cation. The first. st.ep tion 3 discusses the challenges for bUilding and benchmark of the process is to describe the video decoder in the form of ing multimedia security applications and shows how they an FU network description (FND) by using FNL, where the can be better handled using the RVC framework. Section 4 FUs are components of the VTL. Given the FND, an instan showcases several examples of multimedia security systems tiation process is invoked to select the required FUs from the developed based on the RVC framework. Conclusions and MPEG VTL to produce an abstract decoder model (ADM). future work directions are summarized in Sec. 5. The ADM can then be automatically translated into decoder implementations that can execute on the target platform to 2. RECONFIGURABLE VIDEO CODING decode video data. The transformation process from the ADM to platform dependent implementations is not speci The RVC framework was standardized by the ISO /IEC to fi ed by the standard and is performed by mapping the RVC better respond to the technical challenges of developing spec CAL and FNL code into compilable source code written in ifi cations of complex video coding algorithms structured into a target programming language such as C/C++, J ava, Ver multiple video coding standards [32 , 33J. One main concern ilog/VHDL by an appropriate code synthesis tool. Note that of MPF.G is Il ow to make t il e codec specificatioll modular, so the whole process is fu lly automated if both the VTL and that common building blocks of different standards are iden the FND are available and any of the non-normative SW or tified and video codecs can be specified as different configu HW synthesis tools are used [35, 46J . rations (e.g., different video codin g standards, different pro Although the RVC framework is developed in the context fil es and/or levels, different system requirementR) of a stan of video coding, it is actually a general-purpose framework dard library of components. So as to achieve this goal, the that is particularly well adapted to specify and implement RVe standard defi nes a frarll ewori< til at covers diR'erent nor any data/streaming-driven application such as cryptosys mative and non-normative steps of the whole video codec de terns.