/devon

devon is a heavy-weight tweakable block cipher designed specifically for long-term file archiving.

Primary LanguageCOtherNOASSERTION

devon

devon is a heavy-weight tweakable block cipher designed specifically for long-term file archiving.

Preface

This cipher algorithm is dedicated to my wonderful sister Devon who passed away in 2016. devon was developed for fun and is an accumulation of knowledge gained from researching SPN block ciphers as a hobby. All of the techniques and ideas I have thought of have been crammed into one cipher algorithm. devon is a heavy-weight tweakable block cipher designed specifically for long-term file archiving. It offers no protections against side-channel attacks, so care must be taken to ensure the machines used to encrypt archival data are secure from attackers (offline, isolated).

Overview

devon is a 256-bit tweakable block cipher with 1024-bit master key, 9408-bit hashing key, 1024-bit initialization vector, and 512-bit tweak. It is centralized around the complex combination of 4 internal 512-bit hashes: blake2b, sha2-512, sha3-512, and whirlpool. devon is a 24-round XEX Substitution Permutation Network featuring 24 randomly-generated-filtered 16-bit S-Boxes, 24 randomly-generated-filtered P-Boxes, and (24+1)-block Class 2C key schedule. Each tweak provides 512 random bits which are xor'd before & after encryption (XEX). The 512-bit tweak is also used to randomly shuffle the 24 S-Boxes, 24 P-Boxes, 24 (of the 25) Subkeys, as well as provides 1 of 512 random rotation combinations used during the permutation stage. Essentially, the tweak is used to procedurally generate a new and unique encryption algorithm, with it's own unique S-Box, P-Box, and Subkey collection for each block, hopefully making analysis extremely difficult. 4 hashing algorithms were chosen along with a complicated code set to ensure all futuristic implementations (ASIC, FPGA, Quantum) will be resourcefully expensive in terms of gate count and energy consumption.

Under construction, more to come soon!