qemu-e2k/crypto
Jungmin Park bf98afc75e crypto/luks: Support creating LUKS image on Darwin
When the user creates a LUKS-encrypted qcow2 image using the qemu-img
program, the passphrase is hashed using PBKDF2 with a dynamic
number of iterations. The number of iterations is determined by
measuring thread cpu time usage, such that it takes approximately
2 seconds to compute the hash.

Because Darwin doesn't implement getrusage(RUSAGE_THREAD), we get an
error message:
> qemu-img: test.qcow2: Unable to calculate thread CPU usage on this platform
for this command:
> qemu-img create --object secret,id=key,data=1234 -f qcow2 -o 'encrypt.format=luks,encrypt.key-secret=key' test.qcow2 100M

This patch implements qcrypto_pbkdf2_get_thread_cpu() for Darwin so that
the above command works.

Signed-off-by: Jungmin Park <pjm0616@gmail.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2022-10-26 13:32:08 +01:00
..
aes.c
afalg.c
afalgpriv.h
afsplit.c
akcipher-gcrypt.c.inc crypto: Implement RSA algorithm by gcrypt 2022-05-26 11:41:53 +01:00
akcipher-nettle.c.inc test/crypto: Add test suite for crypto akcipher 2022-05-26 11:41:54 +01:00
akcipher.c crypto: Implement RSA algorithm by gcrypt 2022-05-26 11:41:53 +01:00
akcipherpriv.h crypto: Introduce akcipher crypto class 2022-05-26 11:41:47 +01:00
block-luks.c crypto: Make block callbacks return 0 on success 2022-07-12 12:14:55 +02:00
block-luks.h
block-qcow.c
block-qcow.h
block.c crypto: Make block callbacks return 0 on success 2022-07-12 12:14:55 +02:00
blockpriv.h
cipher-afalg.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
cipher-builtin.c.inc crypto: delete built-in XTS cipher mode support 2021-07-14 14:15:52 +01:00
cipher-gcrypt.c.inc crypto: replace 'des-rfb' cipher with 'des' 2021-07-14 14:15:52 +01:00
cipher-gnutls.c.inc crypto: add gnutls cipher provider 2021-07-14 14:15:52 +01:00
cipher-nettle.c.inc crypto: replace 'des-rfb' cipher with 'des' 2021-07-14 14:15:52 +01:00
cipher.c crypto: add gnutls cipher provider 2021-07-14 14:15:52 +01:00
cipherpriv.h
der.c crypto: add ASN.1 DER decoder 2022-05-26 11:41:49 +01:00
der.h crypto: add ASN.1 DER decoder 2022-05-26 11:41:49 +01:00
hash-afalg.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
hash-gcrypt.c
hash-glib.c
hash-gnutls.c crypto: add gnutls hash provider 2021-07-14 14:15:52 +01:00
hash-nettle.c
hash.c
hashpriv.h
hmac-gcrypt.c
hmac-glib.c
hmac-gnutls.c crypto: add gnutls hmac provider 2021-07-14 14:15:52 +01:00
hmac-nettle.c
hmac.c
hmacpriv.h
init.c crypto: drop gcrypt thread initialization code 2021-07-14 14:15:52 +01:00
ivgen-essiv.c
ivgen-essiv.h
ivgen-plain64.c
ivgen-plain64.h
ivgen-plain.c
ivgen-plain.h Clean up ill-advised or unusual header guards 2022-05-11 16:50:01 +02:00
ivgen.c
ivgenpriv.h
meson.build crypto: Implement RSA algorithm by hogweed 2022-05-26 11:41:51 +01:00
pbkdf-gcrypt.c
pbkdf-gnutls.c crypto: add gnutls pbkdf provider 2021-07-14 14:15:52 +01:00
pbkdf-nettle.c
pbkdf-stub.c
pbkdf.c crypto/luks: Support creating LUKS image on Darwin 2022-10-26 13:32:08 +01:00
random-gcrypt.c
random-gnutls.c
random-none.c
random-platform.c
rsakey-builtin.c.inc crypto: Implement RSA algorithm by hogweed 2022-05-26 11:41:51 +01:00
rsakey-nettle.c.inc crypto: Implement RSA algorithm by hogweed 2022-05-26 11:41:51 +01:00
rsakey.c crypto: Implement RSA algorithm by hogweed 2022-05-26 11:41:51 +01:00
rsakey.h crypto: Implement RSA algorithm by hogweed 2022-05-26 11:41:51 +01:00
secret_common.c crypto: make loaded property read-only 2022-05-14 12:33:44 +02:00
secret_keyring.c
secret.c
sm4.c crypto: move sm4_sbox from target/arm 2022-04-29 10:47:45 +10:00
tls-cipher-suites.c crypto: Make QCryptoTLSCreds* structures private 2021-06-29 18:30:24 +01:00
tlscreds.c
tlscredsanon.c crypto: make loaded property read-only 2022-05-14 12:33:44 +02:00
tlscredspriv.h crypto: Make QCryptoTLSCreds* structures private 2021-06-29 18:30:24 +01:00
tlscredspsk.c crypto: make loaded property read-only 2022-05-14 12:33:44 +02:00
tlscredsx509.c crypto: make loaded property read-only 2022-05-14 12:33:44 +02:00
tlssession.c crypto: mandate a hostname when checking x509 creds on a client 2022-03-07 15:58:42 -06:00
trace-events
trace.h
xts.c