A 1 Gbps Chaos-Based Stream Cipher Implemented in 0.18 Μm CMOS Technology
Total Page:16
File Type:pdf, Size:1020Kb
electronics Article A 1 Gbps Chaos-Based Stream Cipher Implemented in 0.18 µm CMOS Technology Miguel Garcia-Bosque * , Guillermo Díez-Señorans, Adrián Pérez-Resa, Carlos Sánchez-Azqueta, Concepción Aldea and Santiago Celma Group of Electronic Design, University of Zaragoza, 50009 Zaragoza, Spain; [email protected] (G.D.-S.); [email protected] (A.P.-R.); [email protected] (C.S.-A.); [email protected] (C.A.); [email protected] (S.C.) * Correspondence: [email protected]; Tel.: +34-876-55-3539 Received: 15 May 2019; Accepted: 29 May 2019; Published: 1 June 2019 Abstract: In this work, a novel chaos-based stream cipher based on a skew tent map is proposed and implemented in a 0.18 µm CMOS (Complementary Metal-Oxide-Semiconductor) technology. The proposed ciphering algorithm uses a linear feedback shift register that perturbs the orbits generated by the skew tent map after each iteration. This way, the randomness of the generated sequences is considerably improved. The implemented stream cipher was capable of achieving encryption speeds of 1 Gbps by using an approximate area of 20, 000 2-NAND equivalent gates, with a power ∼ consumption of 24.1 mW. To test the security of the proposed cipher, the generated keystreams were subjected to National Institute of Standards and Technology (NIST) randomness tests, proving that they were undistinguishable from truly random sequences. Finally, other security aspects such as the key sensitivity, key space size, and security against reconstruction attacks were studied, proving that the stream cipher is secure. Keywords: stream cipher; PRNG; cryptography; chaotic map; skew tent map 1. Introduction Despite the large number of encryption algorithms proposed in previous decades, there is still a great interest in the field of cryptography [1,2]. This is mainly for two reasons: first, due to the growth of computer processing power as well as developments in the field of cryptanalysis, many of the previously proposed algorithms are currently considered to be insecure; second, new applications that require specific constraints such as low power consumption can require specific encryption algorithms. Usually, in applications where a high encryption speed is needed, stream ciphers are a suitable option [3]. In these systems, the sender uses an initial seed (key) to generate a pseudo-random sequence called a keystream. The ciphertext is then obtained by combining each bit of the plaintext with its corresponding bit of the keystream (Figure1). To decrypt the message, the receiver must use the exact same key to generate an identical keystream. By applying the inverse combining operation, the original plaintext can be recovered. Usually, an XOR (Exclusive Or) operation is used for the combining operation and the inverse combining operation. The main advantage of stream ciphers against block ciphers is that since they encrypt each bit individually, they do not need to store blocks of data, or add extra bits to complete blocks (padding bits). Therefore, they usually have less-stringent memory requirements and can achieve higher encryption speeds. Electronics 2019, 8, 623; doi:10.3390/electronics8060623 www.mdpi.com/journal/electronics Electronics 2019, 8, x FOR PEER REVIEW 2 of 10 implement. In this context, chaos-based stream ciphers have emerged in the past decade as a suitable Electronics 2019, 8, 623 2 of 10 alternative, capable of achieving a good balance between all these three parameters [5]. Figure 1. Generic scheme of a stream cipher composed by a PRNG (Pseudo-Random Number Generator) Figureand an 1. XOR Generic gate. Anscheme internal of a state stream is constantly cipher composed getting updatedby a PRNG using (Pseudo-Random a feedback function. Number This way,Generator) each valueand an of theXOR internal gate. An state internal is obtained state asis aconstantly function ofgetting the previous updated value using and a key.feedback The function.final keystream This way, is obtained each value from of thethe internalinternal statesstate is using obtained an output as a function function. of Finally,the previous the ciphertext value and is key.generated The final by XORing keystream the plaintextis obtained with from the the keystream. internal states using an output function. Finally, the ciphertext is generated by XORing the plaintext with the keystream. Typically, there are three parameters that must be taken into account when designing a secure encryptionThe idea system: behind encryption chaos-based speed, stream security, ciphers and implementation is that chaotic costsystems [4]. While present is it some relatively intrinsic easy propertiesto design asuch secure as butrandom-like slow cipher, behavior or to designand ergodi a securecity that but area-are closely and power-hungry related with the cipher, properties it can ofbe confusion very challenging and diffusion to design [6] that an encryptionany cryptosystem algorithm should that present is fast, in secure, order low-power,to be considered andeasy secure to [7].implement. Usually, Ina common this context, approach chaos-based used in stream chaos-based ciphers stream have emerged ciphers inconsists the past of decadeusing an as algorithm a suitable alternative, capable of achieving a good balance between all these three parameters [5]. based on a chaotic map of the form =(,Γ). In these kinds of maps, starting with an initial The idea behind chaos-based stream ciphers is that chaotic systems present some intrinsic state, , and one or several control parameters, Γ={γ,γ,…}, a sequence of elements { } is propertiesgenerated using such as a feedback random-like function behavior . To and use ergodicity this map thatas a arestream closely cipher, related it is with digitized the properties and one or of severalconfusion bits and of each diffusion state [is6] used that anyto form cryptosystem the keystream. should The present control in parameter order to be Γ considered as well as securethe initial [7]. Usually, a common approach used in chaos-based stream ciphers consists of using an algorithm based state form the key that must be shared by both the transmitter and the receiver to encrypt and on a chaotic map of the form xi+1 = f (xi, G). In these kinds of maps, starting with an initial state, x0, decrypt the messages. and oneAmong or several the possible control maps, parameters, most ofG the= γrecently1, γ2, ::: pr, aoposed sequence algorithms of elements are {basedxi} is generated on logistic using maps a [8–11],feedback but function other mapsf . To such use as this the map Rényi as amap stream [12], cipher, the Lorenz’s it is digitized attractor and [13], one the or skew several tent bits map of each[14], orstate higher-dimensional is used to form the chaotic keystream. systems The controlhave been parameter used [15].G as Unfortunately, well as the initial in statemostx of0 form these the maps key therethat must are some be shared initial by values both for the which transmitter the output and the sequences receiver are to encryptperiodic and and decrypt therefore the unsuitable messages. for beingAmong used to thegenerate possible secure maps, keystreams. most of theIn these recently cases, proposed the exact algorithms parameters are that based lead to on periodic logistic windowsmaps [8–11 are], often but other unknown maps [16,17], such as so the it can Rényi be ve mapry challenging [12], the Lorenz’s to design attractor a key-generation [13], the skew process tent thatmap guarantees [14], or higher-dimensional that all the generated chaotic keys systems are secu havere been (i.e., usedthey [lead15]. Unfortunately,to a chaotic behavior). in most ofOn these the othermaps therehand, are when some a initial chaotic values system for which is digitized the output it suffers sequences a degradation are periodic in and its therefore dynamics unsuitable due to truncationfor being used or round-off to generate errors secure and, keystreams. as a consequenc In thesee, the cases, generated the exact orbits parameters become that periodic lead to (i.e., periodic non- windowssecure) [18–20]. are often This unknown effect has [16 been,17], sowidely it can studied, be very and challenging although to increasing design a key-generation the precision used process in thethat digitation guarantees can that mitigate all the generatedthis effect, keys it also are needs secure much (i.e., theymore lead area to to a chaoticbe implemented behavior). [21]. On the other hand,In when this awork, chaotic a chaos-based system is digitized stream it cipher suffers is a degradationproposed and in itsimplemented dynamics due in toan truncationapplication- or specificround-o ffintegratederrors and, circuit as a consequence,(ASIC). Its encryption the generated algorithm orbits becomeis based periodic on a skew (i.e., tent non-secure) map (STM) [18– but20]. Thisuses eaff linearect has feedback been widely shift studied,register and(LFSR) although to increase increasing the randomness the precision of usedthe generated in the digitation sequences. can Themitigate proposed this e ffcipherect, it was also implemented needs much more in a 0.18- areaμ tom be CMOS implemented process and [21]. was capable of achieving an encryptionIn this speed work, aof chaos-based 1 Gbps using stream an approximate cipher is proposed area of and~20,000 implemented 2-NAND in equivalent an application-specific gates, with aintegrated power consumption circuit (ASIC). of Its24.1 encryption mW. To prove algorithm the security is based of on the a skew proposed tent map algorithm, (STM) but several uses aspects a linear suchfeedback as the shift key register sensitivity, (LFSR) key tospace increase size, therobust randomnessness against of thereconstruction generated sequences. attacks, and The randomness proposed ofcipher the generated was implemented sequences in were a 0.18- analyzed.µm CMOS process and was capable of achieving an encryption speed of 1 Gbps using an approximate area of 20, 000 2-NAND equivalent gates, with a power ∼ consumption of 24.1 mW.