Fast constant time implementations of ZUC-256 on x86 CPUs

Nir Drucker, Shay Gueron

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

ZUC-256 is a Pseudo Random Number Generator (PRNG) that is proposed as a successor of ZUC-128. Similarly to ZUC-128 that is incorporated in the 128-EEA3 and 128-EIA3 encryption and integrity algorithms, ZUC-256 is designed to offer 256-bit security and to be incorporated in the upcoming encryption and authentication algorithm in 5G technologies. In this context software optimizations of ZUC-256 are desired. This paper proposes several ZUC-256 optimizations for x86 processors, especially, modern processors that have efficient AVX vectorization. Surprisingly, we also show that AES-NI can also be used for ZUC-256 and help creating constant-time implementations. Our results show speedup of up to 4.5 x(per key stream) when computational tasks are parallelized efficiently.

Original languageAmerican English
Title of host publication2019 16th IEEE Annual Consumer Communications and Networking Conference, CCNC 2019
PublisherInstitute of Electrical and Electronics Engineers Inc.
ISBN (Electronic)9781538655535
DOIs
StatePublished - 25 Feb 2019
Event16th IEEE Annual Consumer Communications and Networking Conference, CCNC 2019 - Las Vegas, United States
Duration: 11 Jan 201914 Jan 2019

Publication series

Name2019 16th IEEE Annual Consumer Communications and Networking Conference, CCNC 2019

Conference

Conference16th IEEE Annual Consumer Communications and Networking Conference, CCNC 2019
Country/TerritoryUnited States
CityLas Vegas
Period11/01/1914/01/19

Keywords

  • 5G
  • PRNG
  • Software optimizations
  • Stream ciphers
  • Vectorized implementation
  • ZUC-256

All Science Journal Classification (ASJC) codes

  • Electrical and Electronic Engineering
  • Computer Networks and Communications

Fingerprint

Dive into the research topics of 'Fast constant time implementations of ZUC-256 on x86 CPUs'. Together they form a unique fingerprint.

Cite this