Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update GcmHeader types #3572

Merged
merged 11 commits into from
Feb 18, 2022
Merged

Update GcmHeader types #3572

merged 11 commits into from
Feb 18, 2022

Conversation

eddyashton
Copy link
Member

Side effect of #3569 was introducing a new public-header-includes-private chain from symmetric_key.h. This was because GcmHeader was templated on the IV_SIZE, so the implementation details need to be public. I've refactored that so GcmHeader is no longer templated (but still fixed-size by construction), and derived a supporting type for the users that still want statically known IV sizes.

Additionally I've simplified this public interface a little, moving the Tx-encryption specifics (interpreting the IV as a seqno + term + snapshot-bit) out of the public definition, and closer to where it's used.

@eddyashton eddyashton requested a review from a team February 18, 2022 11:44
@ghost
Copy link

ghost commented Feb 18, 2022

gcm_private_impl@42104 aka 20220218.17 vs main ewma over 20 builds from 41777 to 42094

Click to see table

main

build_id build_number tpcc_sgx_cft^ tpcc_sgx_cft_mem ls_sgx_cft^ ls_sgx_cft_mem ls_jwt_sgx_cft^ ls_jwt_sgx_cft_mem ls_js_sgx_cft^ ls_js_sgx_cft_mem ls_v8_sgx_cft^ ls_v8_sgx_cft_mem ls_full_js_sgx_cft^ ls_full_js_sgx_cft_mem ls_full_v8_sgx_cft^ ls_full_v8_sgx_cft_mem ls_js_jwt_sgx_cft^ ls_js_jwt_sgx_cft_mem hist_sgx_cft^ RB put (/s)^ CHAMP put (/s)^ RB get (/s)^ CHAMP get (/s)^
41777 20220214.18 5865.45 8.97885e+07 19688.8 1.58639e+07 5560.78 1.56017e+07 2517.87 1.03588e+07 1615.71 1.63975e+08 2147.62 1.00967e+07 1453.37 9.76528e+07 1962.5 9.31027e+06 17754 886267 1.38687e+06 9.24597e+06 3.59923e+07
41783 20220214.20 5952.36 9.08371e+07 20144.7 1.6126e+07 5624.12 1.56017e+07 2549.75 1.00967e+07 1671.19 1.64237e+08 2164.37 9.57242e+06 1447.8 9.81771e+07 1888.25 9.04813e+06 18738.6 887920 1.34701e+06 9.21273e+06 3.61199e+07
41790 20220215.2 6048.05 9.03128e+07 19906 1.71746e+07 5686.33 1.58639e+07 2544.02 1.03588e+07 1642.59 1.63451e+08 2170.01 9.83456e+06 1471.8 9.87014e+07 1921.84 9.31027e+06 20003.4 924058 1.35736e+06 9.19619e+06 3.66369e+07
41819 20220215.13 5961.57 9.08371e+07 20085.7 1.6126e+07 5614.26 1.53396e+07 2549.07 1.2456e+07 1660.44 1.61354e+08 2170.95 9.83456e+06 1477.95 9.87014e+07 1975.43 9.04813e+06 20036.4 913181 1.37191e+06 9.36867e+06 3.5189e+07
41839 20220215.20 6037.49 9.10992e+07 20014.2 1.6126e+07 5693.99 1.56017e+07 2649.45 1.03588e+07 1677.76 1.63713e+08 2164.08 1.00967e+07 1505.08 9.81771e+07 1932.56 9.57242e+06 19848.4 895881 1.35628e+06 9.35578e+06 3.58042e+07
41851 20220215.25 6003.55 9.08371e+07 19996.4 1.58639e+07 5619.51 1.56017e+07 2531.12 1.03588e+07 1630.16 1.63975e+08 2162.59 1.00967e+07 1443.5 9.87014e+07 1934.6 9.57242e+06 18235 895333 1.39357e+06 9.44645e+06 3.65056e+07
41861 20220215.29 5995.07 9.03128e+07 19962.2 1.63882e+07 5640.8 1.56017e+07 2537.86 1.35046e+07 1625.91 1.63451e+08 2111.27 1.00967e+07 1469.38 9.79149e+07 1970.53 9.31027e+06 20076.6 888073 1.39642e+06 9.22514e+06 3.56168e+07
41879 20220215.35 5867.64 8.97885e+07 19734.9 1.6126e+07 5682.42 1.56017e+07 2527.3 1.0621e+07 1629.15 1.63713e+08 2051.63 1.21939e+07 1463.9 9.89635e+07 1961.04 9.04813e+06 19070.9 907997 1.35315e+06 9.36867e+06 3.65714e+07
41919 20220215.49 5659.44 9.05749e+07 18947.4 1.63882e+07 5526.55 1.56017e+07 2472.27 9.83456e+06 1572.28 1.63451e+08 2138.1 9.04813e+06 1423.79 9.87014e+07 1914.34 9.31027e+06 18735.6 877457 1.34356e+06 9.0419e+06 3.50679e+07
41940 20220215.57 5976.65 9.26721e+07 20000.8 1.63882e+07 5684.32 1.56017e+07 2524.82 1.03588e+07 1661.56 1.64237e+08 2109.61 1.03588e+07 1475.98 9.87014e+07 1878.96 1.11453e+07 21970.4 904869 1.3768e+06 9.27112e+06 3.58669e+07
41943 20220216.1 6053.86 9.10992e+07 19977.7 1.63882e+07 5632.89 1.6126e+07 2524.46 1.0621e+07 1663.47 1.63975e+08 2166.73 1.00967e+07 1482.81 9.89635e+07 1969.38 9.31027e+06 17362.9 879418 1.40148e+06 9.40308e+06 3.58669e+07
41971 20220217.1 5961.12 9.00506e+07 19956.7 1.66503e+07 5662.83 1.56017e+07 2545.28 1.03588e+07 1655.01 1.62402e+08 2185.9 9.83456e+06 1487.66 9.87014e+07 1984.7 9.31027e+06 19455.6 908722 1.38303e+06 9.21688e+06 3.67019e+07
42010 20220217.15 6000.5 9.03128e+07 19673.9 1.69124e+07 5661.87 1.58639e+07 2400.44 1.03588e+07 1637.96 1.63451e+08 2230.07 9.57242e+06 1478.06 9.87014e+07 1966.5 9.31027e+06 17686.2 903869 1.38602e+06 9.30905e+06 3.63766e+07
42017 20220217.18 5901.08 9.13613e+07 19836 1.74367e+07 5518.43 1.56017e+07 2533.56 1.00967e+07 1638.9 1.62665e+08 2149.57 9.83456e+06 1450.01 9.87014e+07 1937.65 1.11453e+07 19972 901482 1.39044e+06 9.33876e+06 3.58669e+07
42040 20220217.26 5837.37 8.97885e+07 19762.9 1.66503e+07 5636.59 1.56017e+07 2538.87 1.0621e+07 1644.94 1.63189e+08 2163.74 1.00967e+07 1462.36 9.76528e+07 1964.24 9.83456e+06 20054.6 903595 1.37394e+06 9.28798e+06 3.57417e+07
42063 20220218.1 5836.31 8.97885e+07 19979.8 1.58639e+07 5654.85 1.58639e+07 2534.49 1.03588e+07 1652.36 1.645e+08 2161.46 9.83456e+06 1461.92 9.89635e+07 2018.57 8.78598e+06 21834.2 903032 1.37219e+06 9.22934e+06 3.58663e+07
42069 20220218.3 6118.04 9.16235e+07 18538.9 1.6126e+07 5573.33 1.58639e+07 2525.65 1.03588e+07 1656.49 1.64237e+08 2162.93 1.00967e+07 1425.53 9.87014e+07 1964.72 9.31027e+06 20305.9 906268 1.41857e+06 9.4074e+06 3.54939e+07
42075 20220218.5 5645.07 9.05749e+07 19205.9 1.66503e+07 5589.19 1.56017e+07 2531.81 1.0621e+07 1635.21 1.61878e+08 2160.44 1.03588e+07 1467.45 9.87014e+07 1968.46 9.31027e+06 18034.8 922557 1.38107e+06 9.4074e+06 3.64413e+07
42089 20220218.11 5970.53 9.10992e+07 19748.5 1.63882e+07 5613.78 1.58639e+07 2526.78 1.08831e+07 1620.27 1.63975e+08 2114.89 9.83456e+06 1422.61 9.76528e+07 1907.5 9.31027e+06 18943.2 910096 1.38537e+06 9.25855e+06 3.57417e+07
42094 20220218.13 5968.92 9.00506e+07 20004.6 1.6126e+07 5685.72 1.56017e+07 2542.61 1.0621e+07 1659.39 1.61354e+08 2167.73 1.00967e+07 1477.41 9.92257e+07 1972.93 9.04813e+06 19940.9 910262 1.37829e+06 9.20445e+06 3.58036e+07

gcm_private_impl

build_id build_number tpcc_sgx_cft^ tpcc_sgx_cft_mem ls_sgx_cft^ ls_sgx_cft_mem ls_jwt_sgx_cft^ ls_jwt_sgx_cft_mem ls_js_sgx_cft^ ls_js_sgx_cft_mem ls_v8_sgx_cft^ ls_v8_sgx_cft_mem ls_full_js_sgx_cft^ ls_full_js_sgx_cft_mem ls_full_v8_sgx_cft^ ls_full_v8_sgx_cft_mem ls_js_jwt_sgx_cft^ ls_js_jwt_sgx_cft_mem hist_sgx_cft^ RB put (/s)^ CHAMP put (/s)^ RB get (/s)^ CHAMP get (/s)^
42104 20220218.17 5935.22 9.05749e+07 19544.8 1.63882e+07 5648.27 1.50774e+07 2477.8 1.00967e+07 1573.65 1.63713e+08 2130.84 1.00967e+07 1471.53 9.73907e+07 1963.33 9.31027e+06 20144.7 888138 1.39459e+06 9.3685e+06 3.56788e+07

images

@eddyashton eddyashton merged commit f1ac915 into microsoft:main Feb 18, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants