Hello all, I’m working through trying to parallelize crypto as found in https://wiki.strongswan.org/projects/strongswan/wiki/Pcrypt <https://wiki.strongswan.org/projects/strongswan/wiki/Pcrypt>
Running Centos 7 HVM AMI in AWS supplied by the Centos project. Linux ip-100-125-0-18.ec2.internal 3.10.0-327.36.3.el7.x86_64 #1 SMP Mon Oct 24 16:09:20 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux The crypto I’m using is ike = aes128gcm16-aes128gmac-prfsha256-ecp256! esp = aes128gcm16-ecp256! When I load the drivers: modprobe pcrypt modprobe tcrypt alg="pcrypt(rfc4106(gcm(aes)))" type=3 I don’t see the expected messages in dmesg. [ 7532.356768] tcrypt: one or more tests failed! Further up in dmesg, I see: [ 3.542310] alg: No test for __gcm-aes-aesni (__driver-gcm-aes-aesni) Questions: 1) Are the messages benign (and the wiki is a bit out of date for C7? 2) I don’t see a significant change in performance between the two hosts (shooting a 1GB file via nc over the link). Should I or does it need to be loaded up with multiple flows going on to see an impact? For reference, here’s the output of /proc/crypto name : rfc4106(gcm(aes)) driver : pcrypt(rfc4106-gcm-aesni) module : pcrypt priority : 500 refcnt : 1 selftest : passed type : aead async : yes blocksize : 1 ivsize : 8 maxauthsize : 16 geniv : seqiv name : __ctr-aes-aesni driver : cryptd(__driver-ctr-aes-aesni) module : cryptd priority : 50 refcnt : 1 selftest : passed type : ablkcipher async : yes blocksize : 1 min keysize : 16 max keysize : 32 ivsize : 16 geniv : <default> name : ctr(aes) driver : ctr-aes-aesni module : kernel priority : 400 refcnt : 1 selftest : passed type : givcipher async : yes blocksize : 1 min keysize : 16 max keysize : 32 ivsize : 16 geniv : chainiv name : __gcm-aes-aesni driver : cryptd(__driver-gcm-aes-aesni) module : cryptd priority : 50 refcnt : 14 selftest : passed type : aead async : yes blocksize : 1 ivsize : 0 maxauthsize : 0 geniv : <built-in> name : rfc4106(gcm(aes)) driver : rfc4106-gcm-aesni module : kernel priority : 400 refcnt : 14 selftest : passed type : aead async : yes blocksize : 1 ivsize : 8 maxauthsize : 16 geniv : seqiv name : stdrng driver : drbg_nopr_hmac_sha256 module : drbg priority : 221 refcnt : 2 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_nopr_hmac_sha512 module : drbg priority : 220 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_nopr_hmac_sha384 module : drbg priority : 219 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_nopr_hmac_sha1 module : drbg priority : 218 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_nopr_sha256 module : drbg priority : 217 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_nopr_sha512 module : drbg priority : 216 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_nopr_sha384 module : drbg priority : 215 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_nopr_sha1 module : drbg priority : 214 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_nopr_ctr_aes256 module : drbg priority : 213 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_nopr_ctr_aes192 module : drbg priority : 212 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_nopr_ctr_aes128 module : drbg priority : 211 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_pr_hmac_sha256 module : drbg priority : 210 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_pr_hmac_sha512 module : drbg priority : 209 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_pr_hmac_sha384 module : drbg priority : 208 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_pr_hmac_sha1 module : drbg priority : 207 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_pr_sha256 module : drbg priority : 206 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_pr_sha512 module : drbg priority : 205 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_pr_sha384 module : drbg priority : 204 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_pr_sha1 module : drbg priority : 203 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_pr_ctr_aes256 module : drbg priority : 202 refcnt : 1 selftest : passed type : rng seedsize : 0 name : stdrng driver : drbg_pr_ctr_aes192 module : drbg priority : 201 refcnt : 1 selftest : passed type : rng seedsize : 0 name : ecb(aes) driver : ecb(aes-aesni) module : kernel priority : 300 refcnt : 1 selftest : passed type : blkcipher blocksize : 16 min keysize : 16 max keysize : 32 ivsize : 0 geniv : <default> name : stdrng driver : drbg_pr_ctr_aes128 module : drbg priority : 200 refcnt : 1 selftest : passed type : rng seedsize : 0 name : fips(ansi_cprng) driver : fips_ansi_cprng module : ansi_cprng priority : 300 refcnt : 1 selftest : passed type : rng seedsize : 48 name : stdrng driver : ansi_cprng module : ansi_cprng priority : 100 refcnt : 1 selftest : passed type : rng seedsize : 48 name : crc32 driver : crc32-pclmul module : crc32_pclmul priority : 200 refcnt : 1 selftest : passed type : shash blocksize : 1 digestsize : 4 name : __ghash driver : cryptd(__ghash-pclmulqdqni) module : cryptd priority : 50 refcnt : 1 selftest : passed type : ahash async : yes blocksize : 16 digestsize : 16 name : ghash driver : ghash-clmulni module : ghash_clmulni_intel priority : 400 refcnt : 1 selftest : passed type : ahash async : yes blocksize : 16 digestsize : 16 name : __ghash driver : __ghash-pclmulqdqni module : ghash_clmulni_intel priority : 0 refcnt : 1 selftest : passed type : shash blocksize : 16 digestsize : 16 name : xts(aes) driver : xts-aes-aesni module : aesni_intel priority : 400 refcnt : 1 selftest : passed type : ablkcipher async : yes blocksize : 16 min keysize : 32 max keysize : 64 ivsize : 16 geniv : <default> name : lrw(aes) driver : lrw-aes-aesni module : aesni_intel priority : 400 refcnt : 1 selftest : passed type : ablkcipher async : yes blocksize : 16 min keysize : 32 max keysize : 48 ivsize : 16 geniv : <default> name : __xts-aes-aesni driver : __driver-xts-aes-aesni module : aesni_intel priority : 0 refcnt : 1 selftest : passed type : blkcipher blocksize : 16 min keysize : 32 max keysize : 64 ivsize : 16 geniv : <default> name : __lrw-aes-aesni driver : __driver-lrw-aes-aesni module : aesni_intel priority : 0 refcnt : 1 selftest : passed type : blkcipher blocksize : 16 min keysize : 32 max keysize : 48 ivsize : 16 geniv : <default> name : pcbc(aes) driver : pcbc-aes-aesni module : aesni_intel priority : 400 refcnt : 1 selftest : passed type : ablkcipher async : yes blocksize : 16 min keysize : 16 max keysize : 32 ivsize : 16 geniv : <default> name : rfc4106(gcm(aes)) driver : rfc4106-gcm-aesni module : aesni_intel priority : 400 refcnt : 14 selftest : passed type : nivaead async : yes blocksize : 1 ivsize : 8 maxauthsize : 16 geniv : seqiv name : __gcm-aes-aesni driver : __driver-gcm-aes-aesni module : aesni_intel priority : 0 refcnt : 14 selftest : passed type : aead async : no blocksize : 1 ivsize : 0 maxauthsize : 0 geniv : <built-in> name : ctr(aes) driver : ctr-aes-aesni module : aesni_intel priority : 400 refcnt : 1 selftest : passed type : ablkcipher async : yes blocksize : 1 min keysize : 16 max keysize : 32 ivsize : 16 geniv : chainiv name : __ctr-aes-aesni driver : __driver-ctr-aes-aesni module : aesni_intel priority : 0 refcnt : 1 selftest : passed type : blkcipher blocksize : 1 min keysize : 16 max keysize : 32 ivsize : 16 geniv : <default> name : cbc(aes) driver : cbc-aes-aesni module : aesni_intel priority : 400 refcnt : 1 selftest : passed type : ablkcipher async : yes blocksize : 16 min keysize : 16 max keysize : 32 ivsize : 16 geniv : <default> name : __ecb-aes-aesni driver : cryptd(__driver-ecb-aes-aesni) module : cryptd priority : 50 refcnt : 1 selftest : passed type : ablkcipher async : yes blocksize : 16 min keysize : 16 max keysize : 32 ivsize : 0 geniv : <default> name : ecb(aes) driver : ecb-aes-aesni module : aesni_intel priority : 400 refcnt : 1 selftest : passed type : ablkcipher async : yes blocksize : 16 min keysize : 16 max keysize : 32 ivsize : 0 geniv : <default> name : __cbc-aes-aesni driver : __driver-cbc-aes-aesni module : aesni_intel priority : 0 refcnt : 1 selftest : passed type : blkcipher blocksize : 16 min keysize : 16 max keysize : 32 ivsize : 0 geniv : <default> name : __ecb-aes-aesni driver : __driver-ecb-aes-aesni module : aesni_intel priority : 0 refcnt : 1 selftest : passed type : blkcipher blocksize : 16 min keysize : 16 max keysize : 32 ivsize : 0 geniv : <default> name : __aes-aesni driver : __driver-aes-aesni module : aesni_intel priority : 0 refcnt : 1 selftest : passed type : cipher blocksize : 16 min keysize : 16 max keysize : 32 name : aes driver : aes-aesni module : aesni_intel priority : 300 refcnt : 1 selftest : passed type : cipher blocksize : 16 min keysize : 16 max keysize : 32 name : crct10dif driver : crct10dif-pclmul module : crct10dif_pclmul priority : 200 refcnt : 1 selftest : passed type : shash blocksize : 1 digestsize : 2 name : crc32c driver : crc32c-intel module : crc32c_intel priority : 200 refcnt : 2 selftest : passed type : shash blocksize : 1 digestsize : 4 name : hmac(sha256) driver : hmac(sha256-ssse3) module : kernel priority : 150 refcnt : 2 selftest : passed type : shash blocksize : 64 digestsize : 32 name : hmac(sha1) driver : hmac(sha1-ssse3) module : kernel priority : 150 refcnt : 2 selftest : passed type : shash blocksize : 64 digestsize : 20 name : lzo driver : lzo-generic module : kernel priority : 0 refcnt : 1 selftest : passed type : compression name : crc32c driver : crc32c-generic module : kernel priority : 100 refcnt : 1 selftest : passed type : shash blocksize : 1 digestsize : 4 name : aes driver : aes-generic module : kernel priority : 100 refcnt : 1 selftest : passed type : cipher blocksize : 16 min keysize : 16 max keysize : 32 name : sha224 driver : sha224-generic module : kernel priority : 0 refcnt : 1 selftest : passed type : shash blocksize : 64 digestsize : 28 name : sha256 driver : sha256-generic module : kernel priority : 0 refcnt : 1 selftest : passed type : shash blocksize : 64 digestsize : 32 name : sha1 driver : sha1-generic module : kernel priority : 0 refcnt : 1 selftest : passed type : shash blocksize : 64 digestsize : 20 name : md5 driver : md5-generic module : kernel priority : 0 refcnt : 1 selftest : passed type : shash blocksize : 64 digestsize : 16 name : sha256 driver : sha256-ssse3 module : kernel priority : 150 refcnt : 3 selftest : passed type : shash blocksize : 64 digestsize : 32 name : sha1 driver : sha1-ssse3 module : kernel priority : 150 refcnt : 5 selftest : passed type : shash blocksize : 64 digestsize : 20 name : aes driver : aes-asm module : kernel priority : 200 refcnt : 1 selftest : passed type : cipher blocksize : 16 min keysize : 16 max keysize : 32 Thanks EKG
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ Users mailing list Users@lists.strongswan.org https://lists.strongswan.org/mailman/listinfo/users