diff --git a/estimate.gp b/estimate.gp index 95ee63c..f0cfb94 100644 --- a/estimate.gp +++ b/estimate.gp @@ -40,7 +40,7 @@ QEnumCN11(b) = { return(MAXDEPTH + 2*(C-MAXDEPTH))); } -SieveNV11(b) = { 0.415*b } +SieveNV08(b) = { 0.415*b } SieveBGJ15(b) = { 0.311*b } SieveD18(b) = { (0.2075 + 0.142)*b } SieveBDGL16(b) = { b*log2(sqrt(3/2)); } @@ -61,13 +61,13 @@ JJPSpace(b,angle) = { COSTFNS = /* enabled? */ [["Quad Enum [CN11]", QuadEnumCN11, 0],\ ["Enum [CN11]", EnumCN11, 0],\ - ["Enum [CN11]", EnumCN11Simple, 1],\ + ["Enum [CN11]", EnumCN11Simple, 0],\ ["Quantum CN11Enum", QEnumCN11, 0],\ - ["SieveNV11", SieveNV11, 1],\ + ["SieveNV08", SieveNV08, 1],\ ["SieveBGJ15", SieveBGJ15, 0],\ ["SieveD18", SieveD18, 1],\ ["SieveBDGL16", SieveBDGL16, 1],\ - ["Quantum LSF Sieve", QSieveLaa15, 1],\ + ["Quantum LSF Sieve", QSieveLaa15, 0],\ ["Sieve vectors", SieveSpace, 0]]; ExpectedCoeffSize(coeffDist) = { @@ -191,7 +191,6 @@ HybridTradeoff(CostFn,n,maxm,q,coeffDist) = { MaxLT((k)->(vecsum(MITM(coeffDist,k)) - HybridCostEstimate(CostFn,n,maxm,q,coeffDist,k)), 0, 0, n); } - /* Primal attack */ PrimalBlocksize(n,m,q,s,usvp=0) = { diff --git a/plot/data/core_nv11_ees.dat b/plot/data/core_nv08_ees.dat similarity index 100% rename from plot/data/core_nv11_ees.dat rename to plot/data/core_nv08_ees.dat diff --git a/plot/data/core_nv11_hps_pow2q.dat b/plot/data/core_nv08_hps_pow2q.dat similarity index 100% rename from plot/data/core_nv11_hps_pow2q.dat rename to plot/data/core_nv08_hps_pow2q.dat diff --git a/plot/data/core_nv11_hps_pow2q_1024.dat b/plot/data/core_nv08_hps_pow2q_1024.dat similarity index 100% rename from plot/data/core_nv11_hps_pow2q_1024.dat rename to plot/data/core_nv08_hps_pow2q_1024.dat diff --git a/plot/data/core_nv11_hps_pow2q_2048.dat b/plot/data/core_nv08_hps_pow2q_2048.dat similarity index 100% rename from plot/data/core_nv11_hps_pow2q_2048.dat rename to plot/data/core_nv08_hps_pow2q_2048.dat diff --git a/plot/data/core_nv11_hps_pow2q_4096.dat b/plot/data/core_nv08_hps_pow2q_4096.dat similarity index 100% rename from plot/data/core_nv11_hps_pow2q_4096.dat rename to plot/data/core_nv08_hps_pow2q_4096.dat diff --git a/plot/data/core_nv11_hps_pow2q_fatf.dat b/plot/data/core_nv08_hps_pow2q_fatf.dat similarity index 100% rename from plot/data/core_nv11_hps_pow2q_fatf.dat rename to plot/data/core_nv08_hps_pow2q_fatf.dat diff --git a/plot/data/core_nv11_hps_pow2q_fatf_1024.dat b/plot/data/core_nv08_hps_pow2q_fatf_1024.dat similarity index 100% rename from plot/data/core_nv11_hps_pow2q_fatf_1024.dat rename to plot/data/core_nv08_hps_pow2q_fatf_1024.dat diff --git a/plot/data/core_nv11_hps_pow2q_fatf_2048.dat b/plot/data/core_nv08_hps_pow2q_fatf_2048.dat similarity index 100% rename from plot/data/core_nv11_hps_pow2q_fatf_2048.dat rename to plot/data/core_nv08_hps_pow2q_fatf_2048.dat diff --git a/plot/data/core_nv11_hps_pow2q_fatf_4096.dat b/plot/data/core_nv08_hps_pow2q_fatf_4096.dat similarity index 100% rename from plot/data/core_nv11_hps_pow2q_fatf_4096.dat rename to plot/data/core_nv08_hps_pow2q_fatf_4096.dat diff --git a/plot/data/core_nv11_hps_pow2q_fatf_8192.dat b/plot/data/core_nv08_hps_pow2q_fatf_8192.dat similarity index 100% rename from plot/data/core_nv11_hps_pow2q_fatf_8192.dat rename to plot/data/core_nv08_hps_pow2q_fatf_8192.dat diff --git a/plot/data/core_nv11_hps_primeq.dat b/plot/data/core_nv08_hps_primeq.dat similarity index 100% rename from plot/data/core_nv11_hps_primeq.dat rename to plot/data/core_nv08_hps_primeq.dat diff --git a/plot/data/core_nv11_hps_primeq_fatf.dat b/plot/data/core_nv08_hps_primeq_fatf.dat similarity index 100% rename from plot/data/core_nv11_hps_primeq_fatf.dat rename to plot/data/core_nv08_hps_primeq_fatf.dat diff --git a/plot/data/core_nv11_hrss_pow2q.dat b/plot/data/core_nv08_hrss_pow2q.dat similarity index 100% rename from plot/data/core_nv11_hrss_pow2q.dat rename to plot/data/core_nv08_hrss_pow2q.dat diff --git a/plot/data/core_nv11_hrss_primeq.dat b/plot/data/core_nv08_hrss_primeq.dat similarity index 100% rename from plot/data/core_nv11_hrss_primeq.dat rename to plot/data/core_nv08_hrss_primeq.dat diff --git a/plot/data/hybrid_nv11_ees.dat b/plot/data/hybrid_nv08_ees.dat similarity index 100% rename from plot/data/hybrid_nv11_ees.dat rename to plot/data/hybrid_nv08_ees.dat diff --git a/plot/data/hybrid_nv11_hps_pow2q.dat b/plot/data/hybrid_nv08_hps_pow2q.dat similarity index 100% rename from plot/data/hybrid_nv11_hps_pow2q.dat rename to plot/data/hybrid_nv08_hps_pow2q.dat diff --git a/plot/data/hybrid_nv11_hps_pow2q_1024.dat b/plot/data/hybrid_nv08_hps_pow2q_1024.dat similarity index 100% rename from plot/data/hybrid_nv11_hps_pow2q_1024.dat rename to plot/data/hybrid_nv08_hps_pow2q_1024.dat diff --git a/plot/data/hybrid_nv11_hps_pow2q_2048.dat b/plot/data/hybrid_nv08_hps_pow2q_2048.dat similarity index 100% rename from plot/data/hybrid_nv11_hps_pow2q_2048.dat rename to plot/data/hybrid_nv08_hps_pow2q_2048.dat diff --git a/plot/data/hybrid_nv11_hps_pow2q_4096.dat b/plot/data/hybrid_nv08_hps_pow2q_4096.dat similarity index 100% rename from plot/data/hybrid_nv11_hps_pow2q_4096.dat rename to plot/data/hybrid_nv08_hps_pow2q_4096.dat diff --git a/plot/data/hybrid_nv11_hps_pow2q_fatf.dat b/plot/data/hybrid_nv08_hps_pow2q_fatf.dat similarity index 100% rename from plot/data/hybrid_nv11_hps_pow2q_fatf.dat rename to plot/data/hybrid_nv08_hps_pow2q_fatf.dat diff --git a/plot/data/hybrid_nv11_hps_pow2q_fatf_1024.dat b/plot/data/hybrid_nv08_hps_pow2q_fatf_1024.dat similarity index 100% rename from plot/data/hybrid_nv11_hps_pow2q_fatf_1024.dat rename to plot/data/hybrid_nv08_hps_pow2q_fatf_1024.dat diff --git a/plot/data/hybrid_nv11_hps_pow2q_fatf_2048.dat b/plot/data/hybrid_nv08_hps_pow2q_fatf_2048.dat similarity index 100% rename from plot/data/hybrid_nv11_hps_pow2q_fatf_2048.dat rename to plot/data/hybrid_nv08_hps_pow2q_fatf_2048.dat diff --git a/plot/data/hybrid_nv11_hps_pow2q_fatf_4096.dat b/plot/data/hybrid_nv08_hps_pow2q_fatf_4096.dat similarity index 100% rename from plot/data/hybrid_nv11_hps_pow2q_fatf_4096.dat rename to plot/data/hybrid_nv08_hps_pow2q_fatf_4096.dat diff --git a/plot/data/hybrid_nv11_hps_pow2q_fatf_8192.dat b/plot/data/hybrid_nv08_hps_pow2q_fatf_8192.dat similarity index 100% rename from plot/data/hybrid_nv11_hps_pow2q_fatf_8192.dat rename to plot/data/hybrid_nv08_hps_pow2q_fatf_8192.dat diff --git a/plot/data/hybrid_nv11_hps_primeq.dat b/plot/data/hybrid_nv08_hps_primeq.dat similarity index 100% rename from plot/data/hybrid_nv11_hps_primeq.dat rename to plot/data/hybrid_nv08_hps_primeq.dat diff --git a/plot/data/hybrid_nv11_hps_primeq_fatf.dat b/plot/data/hybrid_nv08_hps_primeq_fatf.dat similarity index 100% rename from plot/data/hybrid_nv11_hps_primeq_fatf.dat rename to plot/data/hybrid_nv08_hps_primeq_fatf.dat diff --git a/plot/data/hybrid_nv11_hrss_pow2q.dat b/plot/data/hybrid_nv08_hrss_pow2q.dat similarity index 100% rename from plot/data/hybrid_nv11_hrss_pow2q.dat rename to plot/data/hybrid_nv08_hrss_pow2q.dat diff --git a/plot/data/hybrid_nv11_hrss_primeq.dat b/plot/data/hybrid_nv08_hrss_primeq.dat similarity index 100% rename from plot/data/hybrid_nv11_hrss_primeq.dat rename to plot/data/hybrid_nv08_hrss_primeq.dat diff --git a/plot/plot b/plot/plot index 5327c21..d8f6343 100755 --- a/plot/plot +++ b/plot/plot @@ -19,7 +19,7 @@ else echo -e $HEADER$WEBTERM $MISC > tmp/variants_hybrid.gnuplot fi -MODELS="nv11 bdgl16 d18" +MODELS="nv08 bdgl16 d18" for MODEL in ${MODELS}; do cp tmp/variants_core.gnuplot tmp/variants_core_${MODEL}.gnuplot diff --git a/plot/variants_header.gnuplot b/plot/variants_header.gnuplot index c7e01ac..975a192 100644 --- a/plot/variants_header.gnuplot +++ b/plot/variants_header.gnuplot @@ -1,5 +1,5 @@ -core_nv11_ylabel = 'Core-SVP cost, 0.415b metric, log scale' -hybrid_nv11_ylabel = 'Hybrid attack cost assuming Core-SVP preprocessing, 0.415b metric, log scale' +core_nv08_ylabel = 'Core-SVP cost, 0.415b metric, log scale' +hybrid_nv08_ylabel = 'Hybrid attack cost assuming Core-SVP preprocessing, 0.415b metric, log scale' core_bdgl16_ylabel = 'Core-SVP cost, 0.292b metric, log scale' hybrid_bdgl16_ylabel = 'Hybrid attack cost assuming Core-SVP preprocessing, 0.292b metric, log scale' core_d18_ylabel = 'Core-SVP cost, 0.3495b metric, log scale' @@ -15,16 +15,16 @@ Params3(a,b,c) = sprintf("n=%d, q=%d, w=%.2fn", column(a), column(b), column(c)/ # Constants for arrows ntruhrss701_bytes = 2276 # 2 * ceil(700*log(2,8192)/8) -ntruhrss701_core_nv11_cost = `grep 701 ./data/core_nv11_hrss_pow2q.dat | cut -d, -f 4` -ntruhrss701_hybrid_nv11_cost = `grep 701 ./data/hybrid_nv11_hrss_pow2q.dat | cut -d, -f 4` +ntruhrss701_core_nv08_cost = `grep 701 ./data/core_nv08_hrss_pow2q.dat | cut -d, -f 4` +ntruhrss701_hybrid_nv08_cost = `grep 701 ./data/hybrid_nv08_hrss_pow2q.dat | cut -d, -f 4` ntruhrss701_core_bdgl16_cost = `grep 701 ./data/core_bdgl16_hrss_pow2q.dat | cut -d, -f 4` ntruhrss701_hybrid_bdgl16_cost = `grep 701 ./data/hybrid_bdgl16_hrss_pow2q.dat | cut -d, -f 4` ntruhrss701_core_d18_cost = `grep 701 ./data/core_d18_hrss_pow2q.dat | cut -d, -f 4` ntruhrss701_hybrid_d18_cost = `grep 701 ./data/hybrid_d18_hrss_pow2q.dat | cut -d, -f 4` ntruhps2048509_bytes = 1398 -ntruhps2048509_core_nv11_cost = `grep "509, 2048" ./data/core_nv11_hps_pow2q.dat | cut -d, -f 4` -ntruhps2048509_hybrid_nv11_cost = `grep "509, 2048" ./data/hybrid_nv11_hps_pow2q.dat | cut -d, -f 4` +ntruhps2048509_core_nv08_cost = `grep "509, 2048" ./data/core_nv08_hps_pow2q.dat | cut -d, -f 4` +ntruhps2048509_hybrid_nv08_cost = `grep "509, 2048" ./data/hybrid_nv08_hps_pow2q.dat | cut -d, -f 4` ntruhps2048509_core_bdgl16_cost = `grep "509, 2048" ./data/core_bdgl16_hps_pow2q.dat | cut -d, -f 4` ntruhps2048509_hybrid_bdgl16_cost = `grep "509, 2048" ./data/hybrid_bdgl16_hps_pow2q.dat | cut -d, -f 4` ntruhps2048509_core_d18_cost = `grep "509, 2048" ./data/core_d18_hps_pow2q.dat | cut -d, -f 4` @@ -33,8 +33,8 @@ ntruhps2048509_hybrid_d18_cost = `grep "509, 2048" ./data/hybrid_d18_hps_pow2q. ntruhps2048677_bytes = 1860 #ntruhps2048677_core_bdgl_cost = 144 #ntruhps2048677_hybrid_bdgl_cost = 144 -ntruhps2048677_core_nv11_cost = `grep "677, 2048" ./data/core_nv11_hps_pow2q.dat | cut -d, -f 4` -ntruhps2048677_hybrid_nv11_cost = `grep "677, 2048" ./data/hybrid_nv11_hps_pow2q.dat | cut -d, -f 4` +ntruhps2048677_core_nv08_cost = `grep "677, 2048" ./data/core_nv08_hps_pow2q.dat | cut -d, -f 4` +ntruhps2048677_hybrid_nv08_cost = `grep "677, 2048" ./data/hybrid_nv08_hps_pow2q.dat | cut -d, -f 4` ntruhps2048677_core_bdgl16_cost = `grep "677, 2048" ./data/core_bdgl16_hps_pow2q.dat | cut -d, -f 4` ntruhps2048677_hybrid_bdgl16_cost = `grep "677, 2048" ./data/hybrid_bdgl16_hps_pow2q.dat | cut -d, -f 4` ntruhps2048677_core_d18_cost = `grep "677, 2048" ./data/core_d18_hps_pow2q.dat | cut -d, -f 4` @@ -46,8 +46,8 @@ ntruhps2048677_hybrid_d18_cost = `grep "677, 2048" ./data/hybrid_d18_hps_pow2q. #ntruhps4096701_hybrid_bdgl_cost = 146 ntruhps4096821_bytes = 2460 -ntruhps4096821_core_nv11_cost = `grep "821, 4096" ./data/core_nv11_hps_pow2q.dat | cut -d, -f 4` -ntruhps4096821_hybrid_nv11_cost = `grep "821, 4096" ./data/hybrid_nv11_hps_pow2q.dat | cut -d, -f 4` +ntruhps4096821_core_nv08_cost = `grep "821, 4096" ./data/core_nv08_hps_pow2q.dat | cut -d, -f 4` +ntruhps4096821_hybrid_nv08_cost = `grep "821, 4096" ./data/hybrid_nv08_hps_pow2q.dat | cut -d, -f 4` ntruhps4096821_core_bdgl16_cost = `grep "821, 4096" ./data/core_bdgl16_hps_pow2q.dat | cut -d, -f 4` ntruhps4096821_hybrid_bdgl16_cost = `grep "821, 4096" ./data/hybrid_bdgl16_hps_pow2q.dat | cut -d, -f 4` ntruhps4096821_core_d18_cost = `grep "821, 4096" ./data/core_d18_hps_pow2q.dat | cut -d, -f 4` @@ -83,16 +83,16 @@ sntrup5167857_hybrid_bdgl_cost = 262 #sntrup5167857_hybrid_bdgl_cost = 267 ntruees443ep1_bytes = 1220 -ntruees443ep1_core_nv11_cost = `grep 443 ./data/core_nv11_ees.dat | cut -d, -f 4` -ntruees443ep1_hybrid_nv11_cost = `grep 443 ./data/hybrid_nv11_ees.dat | cut -d, -f 4` +ntruees443ep1_core_nv08_cost = `grep 443 ./data/core_nv08_ees.dat | cut -d, -f 4` +ntruees443ep1_hybrid_nv08_cost = `grep 443 ./data/hybrid_nv08_ees.dat | cut -d, -f 4` ntruees443ep1_core_bdgl16_cost = `grep 443 ./data/core_bdgl16_ees.dat | cut -d, -f 4` ntruees443ep1_hybrid_bdgl16_cost = `grep 443 ./data/hybrid_bdgl16_ees.dat | cut -d, -f 4` ntruees443ep1_core_d18_cost = `grep 443 ./data/hybrid_d18_ees.dat | cut -d, -f 4` ntruees443ep1_hybrid_d18_cost = `grep 443 ./data/hybrid_d18_ees.dat | cut -d, -f 4` ntruees743ep1_bytes = 2044 -ntruees743ep1_core_nv11_cost = `grep 743 ./data/core_nv11_ees.dat | cut -d, -f 4` -ntruees743ep1_hybrid_nv11_cost = `grep 743 ./data/hybrid_nv11_ees.dat | cut -d, -f 4` +ntruees743ep1_core_nv08_cost = `grep 743 ./data/core_nv08_ees.dat | cut -d, -f 4` +ntruees743ep1_hybrid_nv08_cost = `grep 743 ./data/hybrid_nv08_ees.dat | cut -d, -f 4` ntruees743ep1_core_bdgl16_cost = `grep 743 ./data/core_bdgl16_ees.dat | cut -d, -f 4` ntruees743ep1_hybrid_bdgl16_cost = `grep 743 ./data/hybrid_bdgl16_ees.dat | cut -d, -f 4` ntruees743ep1_core_d18_cost = `grep 743 ./data/core_d18_ees.dat | cut -d, -f 4` @@ -127,6 +127,7 @@ lc_fill = "#ffffff" lc_gray = "#dddddd" lc_gray2 = "#aaaaaa" +lc_black = "#000000" lc_arrow = "#000000" lc_hrss_prime = "#009e73" lc_hrss_pow2 = "#56b4e9" diff --git a/plot/variants_template2.gnuplot b/plot/variants_template2.gnuplot index b97fad5..2b947da 100644 --- a/plot/variants_template2.gnuplot +++ b/plot/variants_template2.gnuplot @@ -20,32 +20,32 @@ set ylabel xxxx_yyyy_ylabel # to sntrup4591761_bytes+ax2,sntrup4591761_xxxx_yyyy_cost+ay2 #set label 1 "sntrup4591761" at sntrup4591761_bytes-580,sntrup4591761_xxxx_yyyy_cost+ay1+7 -set arrow 2 size 1 front lc rgb lc_gray2 \ +set arrow 2 size 1 front lc rgb lc_black \ from ntruhrss701_bytes+ax1,ntruhrss701_xxxx_yyyy_cost+ay1-13 \ to ntruhrss701_bytes+ax2,ntruhrss701_xxxx_yyyy_cost+ay2 set label 2 "ntruhrss701" at ntruhrss701_bytes+ax2-500,ntruhrss701_xxxx_yyyy_cost+ay1-12 -set arrow 3 size 1 front lc rgb lc_gray2 \ +set arrow 3 size 1 front lc rgb lc_black \ from ntruhps2048509_bytes,ntruhps2048509_xxxx_yyyy_cost+ay1-1 \ to ntruhps2048509_bytes,ntruhps2048509_xxxx_yyyy_cost+ay2 set label 3 "ntruhps2048509" at ntruhps2048509_bytes-200,ntruhps2048509_xxxx_yyyy_cost+ay1 -set arrow 4 size 1 front lc rgb lc_gray2 \ +set arrow 4 size 1 front lc rgb lc_black \ from ntruhps2048677_bytes+ax1,ntruhps2048677_xxxx_yyyy_cost+ay1-13 \ to ntruhps2048677_bytes+ax2,ntruhps2048677_xxxx_yyyy_cost+ay2 set label 4 "ntruhps2048677" at ntruhps2048677_bytes-550,ntruhps2048677_xxxx_yyyy_cost+ay1-12 -set arrow 5 size 1 front lc rgb lc_gray2 \ +set arrow 5 size 1 front lc rgb lc_black \ from ntruhps4096821_bytes+ax1,ntruhps4096821_xxxx_yyyy_cost+ay1-13 \ to ntruhps4096821_bytes+ax2,ntruhps4096821_xxxx_yyyy_cost+ay2 set label 5 "ntruhps4096821" at ntruhps4096821_bytes-550,ntruhps4096821_xxxx_yyyy_cost+ay1-12 -set arrow 6 size 1 front lc rgb lc_gray2 \ +set arrow 6 size 1 front lc rgb lc_black \ from ntruees443ep1_bytes,ntruees443ep1_xxxx_yyyy_cost+ay1-1 \ to ntruees443ep1_bytes,ntruees443ep1_xxxx_yyyy_cost+ay2 -set label 6 "ntru-pke-443" at ntruees443ep1_bytes-50,ntruees443ep1_xxxx_yyyy_cost+ay1 +set label 6 "ntru-pke-443" at ntruees443ep1_bytes-125,ntruees443ep1_xxxx_yyyy_cost+ay1 -set arrow 7 size 1 front lc rgb lc_gray2 \ +set arrow 7 size 1 front lc rgb lc_black \ from ntruees743ep1_bytes+ax1,ntruees743ep1_xxxx_yyyy_cost+ay1-13 \ to ntruees743ep1_bytes+ax2,ntruees743ep1_xxxx_yyyy_cost+ay2 set label 7 "ntru-pke-743" at ntruees743ep1_bytes-450,ntruees743ep1_xxxx_yyyy_cost+ay1-12