Skip to content
This repository was archived by the owner on Jun 6, 2018. It is now read-only.

Performance analysis

Julian Ospald edited this page Jun 9, 2014 · 11 revisions

Test context

toolchain/flags

  • clang-3.4.1
  • CFLAGS="-march=native -O2 -pipe -std=c99 -pedantic -Wall -Wextra -Werror -Wno-unused-variable -Wno-unused-parameter -Wno-unused-function"
  • LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"

hardware

  • x86_64 Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz GenuineIntel GNU/Linux
  • 16GB memory

NTRU parameters

N q p df dg dr
Low Security 107 64 3 15 12 5
Moderate Security 167 128 3 61 20 18
High Security 263 128 3 50 24 16
Highest Security 503 256 3 216 72 55

Test results

Key generation (via /dev/random)

This highly depends on the entropy pool. The results actually don't mean much.

| low sec, time (s) | mod sec, time (s) | high sec, time (s) | highest sec, time (s) | | -------------:| -----:| -----:| -----:| -----:| | 0, 007 | 21,209 | 17,433 | 292,343 |

Encryption

file size (bytes) low sec, time (s) mod sec, time (s) high sec, time (s) highest sec, time (s)
5694 0,065 0,130 0,178 0,478
12017 0,132 0,269 0,356 0,897
24034 0,255 0,531 0,697 1,701
48068 0,517 1,055 1,353 3,321
215728 2,296 4,665 6,080 14,355
431457 4,501 9,416 12,121 28,879

Decryption

file size (bytes) low sec, time (s) mod sec, time (s) high sec, time (s) highest sec, time (s)
5694 0,229 0,457 0,620 1,534
12017 0,478 0,956 1,287 3,102
24034 0,955 1,900 2,538 6,082
48068 1,898 3,783 5,069 12,078
215728 8,543 16,987 22,610 53,689
431457 16,994 33,963 45,154 108,795

Conclusion

Linear growth in encryption and decryption.