JPEG steganography with particle swarm optimization accelerated by AVX

Vaclav Snasel, Pavel Kromer, Jakub Safarik, Jan Platos
2019 Concurrency and Computation  
Digital steganography aims at hiding secret messages in digital data transmitted over insecure channels. The JPEG format is prevalent in digital communication, and images are often used as cover objects in digital steganography. Optimization methods can improve the properties of images with embedded secret but introduce additional computational complexity to their processing. AVX instructions available in modern CPUs are, in this work, used to accelerate data parallel operations that are part
more » ... image steganography with advanced optimizations. KEYWORDS acceleration, AVX, particle swarm optimization, permutation, steganography INTRODUCTION Steganography is the art of information covering. In contrast to cryptography, which hides information by scrambling and reversible modifications of the secret but leaves the encrypted data visible, steganography seeks ways for concealing the very existence of the secret information. 1 It has a long history that can be traced to the ancient civilizations of Egypt, Greece, and China, among others. 1-3 Herodotus reported how secret messages on wooden tablets were covered by a layer of wax during wartime. In another case, the hidden information was tattooed on skin, later covered by hair, or engraved on female earrings. 2,4 In ancient China, information were sometimes hidden on thin sheets of silk and paper or baked in pastry. 3 Besides technical steganography, its linguistic variants (eg, acrostic) hide the secret into a specific pattern of letters of a cover text. 2, 4 Digital steganography refers to information hiding in digital media. 3 It aims at hiding secret messages in digital data transmitted over digital communication channels. The goal of digital steganography is to conceal both, the secret itself and the mere fact that it was sent. It facilitates covert communication by two major types of methods: data insertion, which adds additional information to the original content, and data substitution, which changes the bytes of the cover data so that it is not extended but unnoticeably modified to hold the secret. 2 Although the primary purpose of steganography is private communication over insecure channels required by, for example, military, dissidents or criminal groups, 2 it has many other applications. 2,3,5 Digital steganography can be used for watermarking (by including hidden information about, eg, the license of data), authentication (hidden information proves the authenticity of data), tracking (hidden information identifies the true owner/author of data), and enhancement of data (including new information that could break the software directly in data), 5 fingerprinting and copy control (hiding unique identifier in each authorized copy of data), 2 and device protection (hidden information identifies authorized client of a device and/or service). 3 Steganography and especially steganalysis, ie, the art of discovering the existence of covert information, 3 introduce additional layers of data processing and increase its overall computational costs. 2,4,6 An efficient implementation of steganographic and steganalytic algorithms is therefore This is an open access article under the terms of the Creative Commons Attribution NonCommercial License, which permits use, distribution and reproduction in any medium, provided the original work is properly cited and is not used for commercial purposes.
doi:10.1002/cpe.5448 fatcat:e45t4gadafgvbcr7oko56pfpne