Bug 1462312

Summary: PKCS#12 export uses low iteration counts
Product: Red Hat Enterprise Linux 7 Reporter: Hubert Kario <hkario>
Component: nssAssignee: Daiki Ueno <dueno>
Status: CLOSED ERRATA QA Contact: Hubert Kario <hkario>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.4CC: dueno, hkario, kengert, mthacker, nss-nspr-maint
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: nss-3.34.0-1.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1511567 (view as bug list) Environment:
Last Closed: 2018-04-10 09:44:43 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 1492845    
Attachments:
Description Flags
processing times for different ciphers none

Description Hubert Kario 2017-06-16 17:27:17 UTC
Description of problem:
When PKCS#12 file is created using pk12util, it uses hmacWithSHA1 as the PRF for PBKDF2 and only 2000 iterations of that function.

Version-Release number of selected component (if applicable):
nss-3.28.4-8.el7.x86_64

How reproducible:
Always

Steps to Reproduce:
export PKCS#12 file from NSS db using pk12util -o, inspect using openssl pkcs12 or openssl asn1parse

Actual results:
PBKDF2 always uses SHA1 and always uses 2000 iterations

Expected results:
default to SHA256 and higher number of iterations (a million or so, optimally dependent on the speed of CPU)

Additional info:

Comment 4 Hubert Kario 2017-10-25 18:41:42 UTC
Created attachment 1343377 [details]
processing times for different ciphers

It will now take about 2s to export key on a 2.6GHz Haswell machine with default settings.
3s if both key and certificate is encrypted with AES-256-CBC.

that seems to me like acceptable performance

Comment 15 errata-xmlrpc 2018-04-10 09:44:43 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2018:0679