Skip to content
forked from GongZheng/SWAN

The source codes of the SWAN cipher

Notifications You must be signed in to change notification settings

guojuntang/SWAN

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 

Repository files navigation

SWAN

The source codes of the SWAN cipher

SWAN: Substitution-based White-box oriented block cipher with Affine Network

Software implementation of cryptographic algorithms are widely-used in practice due to its low costs and high interoperability. Among those cryptographic algorithms, block ciphers are mostly implemented for data integrity and confidentiality. The seminal idea of white-box block ciphers was first introduced by Chow et al, which is focusing on how to protect secret keys not to be revealed by fully controlled adversaries. Unfortunately, to the best of our knowledge, the published proposals of white-box block ciphers suffer many theoretical and practical issues. In this talk, a new substitution-based white-box oriented block cipher with affine network (which is named SWAN) is proposed. The design rationale of SWAN not only considers the theoretical issues, but also the implementation costs. The block and key sizes of SWAN support 64/128/256 and 128/256 respectively, which are compatible for various platforms.

Factory_mode usage

Grap the source

git clone https://github.com/GongZheng/SWAN.git

Build steps

${build_type} could be none,debug,release
build_type CMAKE_C_FLAGS
none
debug "-O0 -g3"
none "-O2"
cd SWAN/code/c/factory_mode
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=${build_type} ../
make

Run

./MAIN

About

The source codes of the SWAN cipher

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 45.6%
  • Objective-C 44.5%
  • C++ 9.6%
  • CMake 0.3%