freebsd-skq/sys/geom
allanjude 8557f8f2df improve PBKDF2 performance
The PBKDF2 in sys/geom/eli/pkcs5v2.c is around half the speed it could be

GELI's PBKDF2 uses a simple benchmark to determine a number of iterations
that will takes approximately 2 seconds. The security provided is actually
half what is expected, because an attacker could use the optimized
algorithm to brute force the key in half the expected time.

With this change, all newly generated GELI keys will be approximately 2x
as strong. Previously generated keys will talk half as long to calculate,
resulting in faster mounting of encrypted volumes. Users may choose to
rekey, to generate a new key with the larger default number of iterations
using the geli(8) setkey command.

Security of existing data is not compromised, as ~1 second per brute force
attempt is still a very high threshold.

PR:		202365
Original Research:	https://jbp.io/2015/08/11/pbkdf2-performance-matters/
Submitted by:	Joe Pixton <jpixton@gmail.com> (Original Version), jmg (Later Version)
Reviewed by:	ed, pjd, delphij
Approved by:	secteam, pjd (maintainer)
MFC after:	2 weeks
Differential Revision:	https://reviews.freebsd.org/D8236
2017-02-19 19:30:31 +00:00
..
bde Use g_wither_provider() where applicable. 2016-09-23 21:29:40 +00:00
cache
concat Use g_wither_provider() where applicable. 2016-09-23 21:29:40 +00:00
eli improve PBKDF2 performance 2017-02-19 19:30:31 +00:00
gate Use g_wither_provider() where applicable. 2016-09-23 21:29:40 +00:00
journal Defer startup of gjournal switcher kproc. 2017-02-07 22:45:59 +00:00
label Relax checking if the privider size matches size recorded in the 2016-07-18 05:00:01 +00:00
linux_lvm Use g_wither_provider() where applicable. 2016-09-23 21:29:40 +00:00
mirror Add gmirror create subcommand, alike to gstripe, gconcat, etc. 2016-11-30 09:27:08 +00:00
mountver Use g_wither_provider() where applicable. 2016-09-23 21:29:40 +00:00
multipath Report disk addition errors on add or create subcommand. 2017-01-20 13:49:04 +00:00
nop Make geom_nop(4) collect statistics on all types of BIOs, not just 2015-10-10 09:03:31 +00:00
part Check that primary GPT header is valid before wiping partitioning. 2017-02-04 05:09:47 +00:00
raid g_raid: Prevent tasters from attempting excessively large reads 2017-01-12 06:58:31 +00:00
raid3 Use g_wither_provider() where applicable. 2016-09-23 21:29:40 +00:00
sched Cleanup unnecessary semicolons from the kernel. 2016-04-10 23:07:00 +00:00
shsec Use g_wither_provider() where applicable. 2016-09-23 21:29:40 +00:00
stripe Use g_wither_provider() where applicable. 2016-09-23 21:29:40 +00:00
uzip 1.Improve handling around last compressed block of the file, which is 2016-06-29 18:19:05 +00:00
vinum Fix logic error in gvinum's gv_set_sd_state() 2017-01-08 17:56:54 +00:00
virstor Use g_wither_provider() where applicable. 2016-09-23 21:29:40 +00:00
zero
geom_aes.c
geom_bsd_enc.c sys/geom: spelling fixes in comments. 2016-04-29 20:56:58 +00:00
geom_bsd.c Remove pc98 support completely. 2017-01-28 02:22:15 +00:00
geom_ccd.c sys/geom: spelling fixes in comments. 2016-04-29 20:56:58 +00:00
geom_ctl.c geom: unsign some types to match their definitions and avoid overflows. 2016-04-27 15:10:40 +00:00
geom_ctl.h
geom_dev.c Add support for encrypted kernel crash dumps. 2016-12-10 16:20:39 +00:00
geom_disk.c Report random flash storage as non-rotating to GEOM_DISK. 2017-01-12 08:53:10 +00:00
geom_disk.h Report random flash storage as non-rotating to GEOM_DISK. 2017-01-12 08:53:10 +00:00
geom_dump.c Report withered providers as such alike to GEOMs. 2015-03-26 11:19:24 +00:00
geom_event.c Remove asserts that Giant is not held on entrance into geom KPI, which 2016-05-20 08:22:20 +00:00
geom_flashmap.c Teach the flashmap code about the SPI flash. 2016-01-23 05:26:29 +00:00
geom_fox.c
geom_int.h
geom_io.c Add BUF_TRACKING and FULL_BUF_TRACKING buffer debugging 2016-10-31 23:09:52 +00:00
geom_kern.c Remove unneeded Giant locking around kthreads creation. 2016-05-20 08:28:11 +00:00
geom_map.c build: Unbreak LINT 2016-12-21 01:39:11 +00:00
geom_mbr_enc.c sys/geom: spelling fixes in comments. 2016-04-29 20:56:58 +00:00
geom_mbr.c Removal of Giant droping wrappers for GEOM classes. 2016-05-20 08:25:37 +00:00
geom_redboot.c [geom_redboot] Extend geom_redboot to handle non-zero fis offset. 2016-10-04 16:35:38 +00:00
geom_slice.c
geom_slice.h
geom_subr.c Add BUF_TRACKING and FULL_BUF_TRACKING buffer debugging 2016-10-31 23:09:52 +00:00
geom_sunlabel_enc.c sys/geom: spelling fixes in comments. 2016-04-29 20:56:58 +00:00
geom_sunlabel.c
geom_vfs.c Add BUF_TRACKING and FULL_BUF_TRACKING buffer debugging 2016-10-31 23:09:52 +00:00
geom_vfs.h
geom_vol_ffs.c
geom.h Remove asserts that Giant is not held on entrance into geom KPI, which 2016-05-20 08:22:20 +00:00
notes