Skip to content

Latest commit

 

History

History
265 lines (239 loc) · 14 KB

PERFORMANCE.md

File metadata and controls

265 lines (239 loc) · 14 KB

Performance

goos: windows
goarch: x86
AMD64 Athlon X2 (Dual-Core) 3GB RAM

Asymmetric

  • Keypair Generation:

    Command Mean [s] Min [s] Max [s] Relative
    Dilithium 0.095 ± 0.070 0.066 0.294 1.42 ± 1.08
    EC-ElGamal 0.067 ± 0.005 0.061 0.077 1.00 ± 0.15
    ECDSA 224-bit 0.077 ± 0.006 0.071 0.086 1.16 ± 0.18
    ECDSA 256-bit 0.099 ± 0.067 0.073 0.289 1.49 ± 1.03
    ECDSA 384-bit 0.159 ± 0.008 0.151 0.174 2.39 ± 0.34
    ECDSA 521-bit 0.354 ± 0.009 0.345 0.376 5.32 ± 0.73
    Ed25519 0.099 ± 0.006 0.095 0.113 1.50 ± 0.22
    Ed448 0.091 ± 0.011 0.082 0.120 1.37 ± 0.25
    ElGamal 0.471 ± 0.006 0.458 0.480 7.08 ± 0.96
    GOST 256-bit 0.081 ± 0.011 0.073 0.104 1.22 ± 0.24
    GOST 512-bit 0.127 ± 0.006 0.121 0.138 1.92 ± 0.27
    Kyber 0.067 ± 0.004 0.063 0.077 1.01 ± 0.15
    RSA 3072-bit 6.962 ± 3.262 2.968 12.902 104.73 ± 51.05
    SM2 0.101 ± 0.068 0.074 0.293 1.53 ± 1.05
    SPHINCS+ 0.416 ± 0.018 0.403 0.462 6.25 ± 0.88
    X25519 0.066 ± 0.009 0.059 0.086 1.00
    X448 0.072 ± 0.013 0.064 0.107 1.09 ± 0.25
  • Digital Signature:

    Command Mean [s] Min [s] Max [s] Relative
    Dilithium 0.104 ± 0.009 0.093 0.123 1.67 ± 0.16
    ECDSA 224-bit 0.069 ± 0.011 0.062 0.099 1.11 ± 0.19
    ECDSA 256-bit 0.065 ± 0.004 0.063 0.076 1.05 ± 0.07
    ECDSA 384-bit 0.151 ± 0.009 0.146 0.178 2.44 ± 0.18
    ECDSA 521-bit 0.360 ± 0.010 0.353 0.383 5.81 ± 0.27
    Ed25519 0.171 ± 0.003 0.168 0.179 2.77 ± 0.11
    Ed448 0.160 ± 0.008 0.154 0.181 2.59 ± 0.16
    ElGamal 0.265 ± 0.008 0.259 0.285 4.28 ± 0.20
    GOST2012 256-bit 0.062 ± 0.002 0.060 0.068 1.00
    GOST2012 512-bit 0.111 ± 0.003 0.107 0.119 1.79 ± 0.08
    RSA 3072-bit 0.201 ± 0.005 0.197 0.212 3.25 ± 0.14
    SM2 0.077 ± 0.003 0.074 0.082 1.24 ± 0.07
    SPHINCS+ 7.023 ± 0.233 6.902 7.636 113.33 ± 5.50
  • Shared Key Agreement:

    Command Mean [s] Min [s] Max [s] Relative
    ECDSA 224-bit 0.064 ± 0.008 0.058 0.080 1.19 ± 0.55
    ECDSA 256-bit 0.062 ± 0.007 0.058 0.080 1.17 ± 0.53
    ECDSA 384-bit 0.159 ± 0.003 0.157 0.168 3.00 ± 1.33
    ECDSA 521-bit 0.407 ± 0.011 0.400 0.434 7.65 ± 3.40
    GOST2012 256-bit 0.062 ± 0.009 0.053 0.082 1.16 ± 0.54
    GOST2012 512-bit 0.104 ± 0.006 0.101 0.122 1.96 ± 0.88
    SM2 0.066 ± 0.008 0.061 0.088 1.24 ± 0.57
    X25519 0.053 ± 0.024 0.042 0.120 1.00
    X448 0.055 ± 0.001 0.054 0.057 1.04 ± 0.46

Symmetric

  • Stream Ciphers:

    Command Mean [s] Min [s] Max [s] Relative
    Chacha20Poly1305 0.076 ± 0.012 0.070 0.110 1.93 ± 0.33
    Chacha20 0.049 ± 0.002 0.047 0.055 1.24 ± 0.09
    HC-128 0.039 ± 0.002 0.037 0.044 1.00
    HC-256 0.045 ± 0.008 0.040 0.065 1.15 ± 0.20
    KCipher-2 0.082 ± 0.002 0.080 0.088 2.09 ± 0.13
    RC4 0.050 ± 0.005 0.046 0.059 1.28 ± 0.14
    Rabbit 0.050 ± 0.003 0.047 0.056 1.27 ± 0.11
    Salsa20 0.044 ± 0.006 0.041 0.060 1.13 ± 0.16
    Skein512 0.061 ± 0.003 0.060 0.068 1.56 ± 0.11
    Spritz 0.107 ± 0.004 0.104 0.117 2.73 ± 0.18
    Trivium 0.252 ± 0.006 0.245 0.266 6.44 ± 0.40
    ZUC-128 0.071 ± 0.003 0.068 0.078 1.82 ± 0.13
    ZUC-256 0.072 ± 0.006 0.067 0.084 1.84 ± 0.18
  • 128-bit> Block Ciphers:

    Command Mean [s] Min [s] Max [s] Relative
    AES 0.084 ± 0.006 0.078 0.098 1.49 ± 0.19
    ARIA 0.302 ± 0.003 0.298 0.309 5.38 ± 0.57
    Anubis 0.093 ± 0.007 0.086 0.116 1.65 ± 0.21
    CAST256 0.248 ± 0.008 0.241 0.264 4.43 ± 0.49
    CLEFIA 1.652 ± 0.006 1.644 1.662 29.49 ± 3.12
    CRYPTON 0.170 ± 0.006 0.164 0.185 3.04 ± 0.34
    Camellia 0.086 ± 0.006 0.078 0.110 1.54 ± 0.20
    E2 0.175 ± 0.004 0.171 0.187 3.12 ± 0.34
    Grasshopper 0.419 ± 0.002 0.417 0.422 7.48 ± 0.79
    Kalyna128_128 0.115 ± 0.006 0.110 0.134 2.06 ± 0.24
    Kalyna128_256 0.136 ± 0.006 0.131 0.150 2.42 ± 0.28
    Kalyna256_256 0.133 ± 0.009 0.125 0.152 2.37 ± 0.29
    Kalyna256_512 0.151 ± 0.010 0.144 0.184 2.69 ± 0.33
    Kalyna512_512 0.147 ± 0.006 0.140 0.157 2.62 ± 0.30
    LEA 0.056 ± 0.006 0.052 0.092 1.00
    LOKI97 0.163 ± 0.005 0.158 0.175 2.91 ± 0.32
    MARS2 0.129 ± 0.004 0.125 0.143 2.30 ± 0.25
    MARS 0.089 ± 0.005 0.084 0.101 1.58 ± 0.19
    NOEKEON 0.160 ± 0.005 0.151 0.169 2.85 ± 0.31
    RC6 0.066 ± 0.006 0.061 0.086 1.17 ± 0.16
    SEED 0.081 ± 0.006 0.078 0.108 1.45 ± 0.18
    SM4 0.076 ± 0.004 0.072 0.094 1.36 ± 0.16
    Serpent 0.156 ± 0.006 0.152 0.175 2.79 ± 0.31
    Threefish256 0.081 ± 0.010 0.075 0.124 1.44 ± 0.24
    Threefish512 0.091 ± 0.006 0.087 0.108 1.63 ± 0.20
    Threefish1024 0.100 ± 0.006 0.095 0.114 1.79 ± 0.21
    Twofish 0.112 ± 0.009 0.101 0.140 2.01 ± 0.27
  • 64-bit Block Ciphers:

    Command Mean [s] Min [s] Max [s] Relative
    3DES 0.194 ± 0.008 0.189 0.220 3.25 ± 0.38
    Blowfish 0.070 ± 0.005 0.066 0.083 1.18 ± 0.15
    CAST5 0.096 ± 0.005 0.090 0.107 1.60 ± 0.20
    DES [obsolete] 0.109 ± 0.010 0.101 0.152 1.83 ± 0.26
    GOST89 0.149 ± 0.004 0.146 0.164 2.51 ± 0.29
    HIGHT 0.174 ± 0.005 0.169 0.185 2.91 ± 0.33
    IDEA [obsolete] 0.127 ± 0.016 0.115 0.190 2.13 ± 0.36
    Khazad 0.091 ± 0.007 0.086 0.118 1.52 ± 0.20
    MISTY1 0.132 ± 0.006 0.128 0.151 2.22 ± 0.26
    Magma 0.150 ± 0.004 0.145 0.158 2.52 ± 0.29
    PRESENT 0.205 ± 0.004 0.201 0.218 3.45 ± 0.39
    RC2 [obsolete] 0.126 ± 0.006 0.120 0.144 2.11 ± 0.26
    RC5 0.060 ± 0.007 0.054 0.088 1.00
    TWINE 0.726 ± 0.003 0.723 0.731 12.19 ± 1.35
  • Modes of Operation:

    Command Mean [s] Min [s] Max [s] Relative
    EAX 0.126 ± 0.006 0.122 0.143 1.81 ± 0.12
    GCM 0.113 ± 0.004 0.110 0.125 1.63 ± 0.10
    OCB1 0.106 ± 0.004 0.101 0.118 1.52 ± 0.10
    OCB3 0.086 ± 0.005 0.081 0.104 1.24 ± 0.09
    MGM 0.332 ± 0.005 0.329 0.342 4.78 ± 0.26
    CCM 0.127 ± 0.016 0.117 0.178 1.82 ± 0.24
    CBC 0.085 ± 0.008 0.079 0.108 1.22 ± 0.12
    CFB 0.094 ± 0.017 0.071 0.137 1.35 ± 0.25
    CFB-8 0.657 ± 0.009 0.648 0.678 9.43 ± 0.51
    CTR 0.070 ± 0.004 0.067 0.084 1.00
    ECB [obsolete] 0.080 ± 0.005 0.076 0.096 1.15 ± 0.09
    IGE 0.093 ± 0.003 0.090 0.106 1.34 ± 0.08
    OFB 0.070 ± 0.004 0.067 0.083 1.01 ± 0.08
  • Key Length:

    Command Mean [s] Min [s] Max [s] Relative
    AES128 0.072 ± 0.003 0.069 0.078 1.00
    AES192 0.077 ± 0.006 0.073 0.092 1.07 ± 0.09
    AES256 0.085 ± 0.007 0.079 0.103 1.18 ± 0.11
  • Message Digest:

    Command Mean [s] Min [s] Max [s] Relative
    BLAKE2B256 0.054 ± 0.005 0.051 0.072 1.40 ± 0.22
    BLAKE2B512 0.055 ± 0.006 0.050 0.071 1.43 ± 0.24
    BLAKE2S128 0.040 ± 0.005 0.036 0.055 1.05 ± 0.19
    BLAKE2S256 0.042 ± 0.006 0.036 0.065 1.08 ± 0.21
    BLAKE3 0.050 ± 0.005 0.047 0.075 1.31 ± 0.22
    BMW 0.073 ± 0.004 0.070 0.091 1.89 ± 0.26
    CubeHash256 0.121 ± 0.005 0.117 0.135 3.13 ± 0.43
    CubeHash512 0.153 ± 0.006 0.149 0.174 3.96 ± 0.54
    ECHO224 0.158 ± 0.003 0.156 0.169 4.10 ± 0.54
    ECHO256 0.160 ± 0.006 0.157 0.179 4.14 ± 0.56
    ECHO384 0.266 ± 0.004 0.263 0.278 6.90 ± 0.91
    ECHO512 0.266 ± 0.003 0.264 0.273 6.89 ± 0.90
    ESCH256 0.107 ± 0.003 0.105 0.116 2.77 ± 0.37
    ESCH384 0.148 ± 0.003 0.145 0.155 3.83 ± 0.51
    Fugue224 0.080 ± 0.008 0.077 0.122 2.07 ± 0.34
    Fugue256 0.080 ± 0.003 0.077 0.091 2.06 ± 0.28
    Fugue384 0.104 ± 0.007 0.101 0.133 2.70 ± 0.40
    Fugue512 0.126 ± 0.002 0.124 0.132 3.27 ± 0.43
    GOST94 0.690 ± 0.056 0.658 0.817 17.86 ± 2.75
    Groestl 0.151 ± 0.030 0.140 0.274 3.91 ± 0.94
    Hamsi224 0.086 ± 0.003 0.084 0.099 2.24 ± 0.31
    Hamsi256 0.087 ± 0.004 0.084 0.100 2.25 ± 0.31
    Hamsi384 0.164 ± 0.005 0.160 0.182 4.24 ± 0.57
    Hamsi512 0.163 ± 0.002 0.160 0.165 4.22 ± 0.55
    JH 0.366 ± 0.007 0.361 0.385 9.48 ± 1.25
    Keccak256 0.072 ± 0.005 0.069 0.094 1.87 ± 0.28
    Keccak512 0.109 ± 0.007 0.105 0.129 2.83 ± 0.41
    Kupyna256 0.887 ± 0.012 0.873 0.914 22.98 ± 3.02
    Kupyna384 0.569 ± 0.022 0.556 0.614 14.75 ± 2.01
    Kupyna512 0.566 ± 0.008 0.556 0.581 14.65 ± 1.93
    LSH224 0.055 ± 0.005 0.052 0.075 1.43 ± 0.22
    LSH256 0.057 ± 0.005 0.052 0.071 1.47 ± 0.23
    LSH384 0.058 ± 0.007 0.052 0.084 1.50 ± 0.27
    LSH512 0.123 ± 0.010 0.112 0.148 3.18 ± 0.49
    Luffa224 0.057 ± 0.004 0.054 0.078 1.47 ± 0.22
    Luffa256 0.056 ± 0.004 0.054 0.075 1.46 ± 0.22
    Luffa384 0.069 ± 0.010 0.062 0.109 1.78 ± 0.34
    Luffa512 0.075 ± 0.005 0.072 0.099 1.94 ± 0.28
    MD4 0.043 ± 0.007 0.037 0.065 1.13 ± 0.23
    MD5 0.041 ± 0.007 0.032 0.065 1.06 ± 0.23
    RMD128 0.051 ± 0.007 0.046 0.070 1.32 ± 0.24
    RMD160 0.054 ± 0.006 0.051 0.083 1.41 ± 0.25
    RMD256 0.050 ± 0.005 0.046 0.063 1.29 ± 0.21
    SHA1 0.041 ± 0.007 0.032 0.067 1.06 ± 0.24
    SHA224 0.047 ± 0.007 0.039 0.078 1.21 ± 0.25
    SHA256 0.055 ± 0.017 0.039 0.095 1.43 ± 0.47
    SHA3-224 0.070 ± 0.004 0.067 0.083 1.81 ± 0.26
    SHA3-256 0.075 ± 0.009 0.069 0.108 1.94 ± 0.35
    SHA3-384 0.095 ± 0.024 0.082 0.176 2.45 ± 0.71
    SHA3-512 0.108 ± 0.004 0.105 0.119 2.81 ± 0.38
    SHA384 0.109 ± 0.027 0.073 0.198 2.83 ± 0.80
    SHA512-256 0.076 ± 0.005 0.072 0.090 1.96 ± 0.28
    SHA512 0.075 ± 0.004 0.072 0.088 1.94 ± 0.27
    SIMD224 0.114 ± 0.007 0.111 0.146 2.95 ± 0.43
    SIMD256 0.115 ± 0.006 0.112 0.138 2.98 ± 0.42
    SIMD384 0.138 ± 0.004 0.135 0.147 3.57 ± 0.48
    SIMD512 0.137 ± 0.003 0.135 0.146 3.55 ± 0.47
    SM3 0.045 ± 0.005 0.040 0.060 1.17 ± 0.21
    Shavite224 0.072 ± 0.002 0.070 0.082 1.88 ± 0.25
    Shavite256 0.073 ± 0.003 0.070 0.083 1.88 ± 0.25
    Shavite384 0.099 ± 0.006 0.096 0.124 2.56 ± 0.36
    Shavite512 0.099 ± 0.004 0.096 0.114 2.56 ± 0.35
    SipHash128 0.039 ± 0.005 0.032 0.054 1.00
    SipHash64 0.040 ± 0.006 0.032 0.072 1.02 ± 0.21
    Skein256 0.068 ± 0.005 0.065 0.091 1.76 ± 0.27
    Skein512 0.069 ± 0.007 0.065 0.101 1.78 ± 0.30
    Streebog256 0.575 ± 0.004 0.570 0.581 14.88 ± 1.95
    Streebog512 0.573 ± 0.004 0.569 0.582 14.83 ± 1.94
    Tiger2 0.052 ± 0.005 0.049 0.075 1.35 ± 0.23
    Tiger 0.052 ± 0.005 0.048 0.067 1.35 ± 0.22
    Whirlpool 0.297 ± 0.006 0.292 0.311 7.68 ± 1.02
    Xoodyak 0.079 ± 0.008 0.075 0.115 2.04 ± 0.33
  • Message Authentication Code:

    Command Mean [s] Min [s] Max [s] Relative
    CMAC (AES) 0.066 ± 0.004 0.063 0.079 1.70 ± 0.28
    Chaskey 0.046 ± 0.006 0.040 0.058 1.18 ± 0.23
    GMAC (AES) 0.072 ± 0.007 0.067 0.095 1.85 ± 0.33
    GOST 0.089 ± 0.005 0.085 0.107 2.27 ± 0.37
    HMAC (SHA256) 0.045 ± 0.007 0.040 0.078 1.16 ± 0.26
    MGMAC (AES) 0.236 ± 0.003 0.234 0.245 6.06 ± 0.92
    PMAC (AES) 0.073 ± 0.004 0.070 0.086 1.87 ± 0.30
    Poly1305 0.046 ± 0.004 0.042 0.059 1.19 ± 0.21
    SipHash128 0.040 ± 0.007 0.032 0.070 1.03 ± 0.24
    SipHash64 0.039 ± 0.006 0.033 0.065 1.00
    Skein 0.055 ± 0.005 0.051 0.066 1.41 ± 0.25
    VMAC (AES) 0.328 ± 0.009 0.323 0.353 8.42 ± 1.29
    Xoodyak 0.077 ± 0.004 0.075 0.090 1.98 ± 0.31
    ZUC-128 0.108 ± 0.005 0.104 0.120 2.79 ± 0.44
    ZUC-256 0.369 ± 0.005 0.364 0.381 9.47 ± 1.44
  • Experimental:

    Command Mean [s] Min [s] Max [s] Relative
    Ascon v1.2 0.457 ± 0.021 0.426 0.483 1.04 ± 0.05
    Grain128AEAD 1.202 ± 0.015 1.182 1.228 2.73 ± 0.04
    Grain128a 0.441 ± 0.002 0.438 0.445 1.00
    Xoodyak v2 0.742 ± 0.023 0.705 0.766 1.68 ± 0.05