Home Page

Home page
Gecko Architecture
Modes: CBC, CTR, ECB, PCBC,
CFB, OFB
Test Harnesses and
Sample programs
Downloads
Building the Software
About Gecko

GECKO encryption.
Faster, smaller, and with
better diffusion than AES



Test Results for GKO vs AES Encryption





Speed Test 18[i],
operating in 256bit CBC mode[ii]

Test Description


TEST18: Speed
Test: Gecko vs AES BIG BLOCK (4096 bytes) test...
Running AES BIG
BLOCK Speed Test (0x7FFF encryption/decryption passes)...
Speed Test
complete, AES took 26.562000 seconds to execute

Running Gecko
BIG BLOCK Speed Test (0x7FFF encryption/decryption passes)...
Speed Test
complete, Gecko took 15.332000 seconds to execute

TEST18 RESULTS:
Gecko vs AES.
The
difference between Gecko and AES is 53.611496%
Gecko
wins!

0x7FFF
encryption/decryption passes, each pass processing 4096 bytes of random
data, or 134,213,632 total bytes
processed.
In each pass, both AES
and GKO receive a new randomly generated[iii]
encryption key and IV.





Internals Test 4, object
code size in CBC mode

Test Description


TEST4: Object
code size in CBC mode: Gecko vs AES
AES obj size:
4.46 KB
Gecko
obj size: 4.14 KB[iv]
Gecko_Individual_Modes/AES_vs_GKO_Size/Size/gecko.obj
is 7.44% smaller

As is the case with all
the other tests, both Gecko and AES were included in the harness in source
form, so both enjoyed the same compiler optimizations.
Other compilers and
module implementations are likely to achieve better/worse footprints.
This test is to show the
relative size of Gecko vs AES, not the best size that can be achieved.





Internals Test 5,
Avalanche/Diffusion test in both CBC and ECB modes[v]

Test Description


TEST5:
Avalanche/Diffusion test: Gecko vs AES CBC
GKO
results in 49.891% diffusion:
149097141 changed of 298844160 bits
AES results in
49.890% diffusion: 149094537 changed of 298844160 bits
TEST5 RESULTS:
Gecko vs AES CBC.
The
difference between Gecko and AES is 0.001747%
Gecko
wins!
**********************************
TEST5:
Avalanche/Diffusion test: Gecko vs AES ECB
GKO results in
49.998% diffusion: 65533951 changed of 131072000 bits
AES results in
49.993% diffusion: 65527193 changed of 131072000 bits
TEST5 RESULTS:
Gecko vs AES ECB.
The
difference between Gecko and AES is 0.010313%
Gecko
wins!

The CBC test was
performed on the story of Little Red Riding Hood, by Charles Perrault. 3,628 bytes (padded to the nearest 16 byte
boundary.)
0x2800 encryption passes.
In each pass, both AES
and GKO receive a new randomly generated encryption key and IV.
In each pass, the text is
encrypted and the ciphertext saved. Then one randomly selected bit
in the plaintext is changed, and the plaintext is again encrypted. The
ciphertexts are then compared and the number of changed bits
calculated. This is the percentage you see here.
The ECB test works the
same except that the plaintext is “Hello World!” padded to 16 bytes, and
the number of passes is 0xFA000.





Internals Test 6, Confusion
test in both CBC and ECB modes

Test Description


TEST6: Confusion
test: Gecko vs AES CBC
GKO results in
50.002% confusion: 149427435 changed of 298844160 bits
AES results in
50.000% confusion: 149421963 changed of 298844160 bits
TEST6 RESULTS:
Gecko vs AES CBC.
The
difference between Gecko and AES is 0.003662%
Gecko
wins!
**********************************
TEST6: Confusion
test: Gecko vs AES ECB
GKO results in
50.000% confusion: 65536324 changed of 131072000 bits
AES results in
49.997% confusion: 65532202 changed of 131072000 bits
TEST6 RESULTS:
Gecko vs AES ECB.
The
difference between Gecko and AES is 0.006290%
Gecko
wins!

The confusion test is
quite similar to the diffusion test. With the difference being that one bit
is changed in the encryption key as opposed to the plaintext
between encryption passes.
The CBC test was
performed on the story of Little Red Riding Hood, by Charles Perrault. 3,628 bytes (padded to the nearest 16 byte
boundary.)
0x2800 encryption passes.
In each pass, both AES
and GKO receive a new randomly generated encryption key and IV.
In each pass, the text is
encrypted and the ciphertext saved. Then one randomly selected bit
in the cipher key is changed, and the plaintext is again encrypted. The
ciphertexts are then compared and the number of changed bits
calculated. This is the percentage you see here.
The ECB test works the
same except that the plaintext is “Hello World!” padded to 16 bytes, and
the number of passes is 0xFA000.





Internals Test 1,
Expanded Key Distribution Test operating in 192bit mode

Test Description


TEST1: Check
expanded key distribution: Gecko vs AES
On average, AES
has 2 key duplicates out of 208 keys, or 1.1892%
On average, GKO
has 2 key duplicates out of 208 keys, or 1.1890%
GKO
has 0.01% fewer expanded key duplicates than AES

0x100000 key expansion passes, each pass getting a
randomly generated encryption key.
This test provided as a datapoint
only.





Internals Test 2, Round
Key Distribution Test operating in 192bit mode

Test Description


TEST2: Check
round key distribution: Gecko vs AES
On average, AES
has 2 key duplicates out of 208 keys, or 1.1890%
On average, GKO
has 2 key duplicates out of 208 keys, or 1.1862%
GKO
has 0.24% fewer round key duplicates than AES

0x2000 round key generation passes, each pass
getting a randomly generated encryption key and encrypting 4096 bytes of
random data.
This test provided as a
datapoint only.
