[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [PATCH v8 09/20] qcow: convert QCow to use QCryptoBlock
From: |
Max Reitz |
Subject: |
Re: [Qemu-block] [PATCH v8 09/20] qcow: convert QCow to use QCryptoBlock for encryption |
Date: |
Wed, 7 Jun 2017 18:55:39 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.1.0 |
On 2017-06-01 19:27, Daniel P. Berrange wrote:
> This converts the qcow driver to make use of the QCryptoBlock
> APIs for encrypting image content. This is only wired up to
> permit use of the legacy QCow encryption format. Users who wish
> to have the strong LUKS format should switch to qcow2 instead.
>
> With this change it is now required to use the QCryptoSecret
> object for providing passwords, instead of the current block
> password APIs / interactive prompting.
>
Beware, nit picks incoming:
> $QEMU \
> -object secret,id=sec0,filename=/home/berrange/encrypted.pw \> -drive
> file=/home/berrange/encrypted.qcow,encrypt.format=qcow,\
encrypt.format should be "aes".
> encrypt.key-secret=sec0
This doesn't work at all, though, because:
Use of AES-CBC encrypted qcow images is no longer supported in system
emulators
You can use 'qemu-img convert' to convert your image to an alternative
supported format, such as unencrypted qcow, or raw with the LUKS format
instead.
>
> Likewise when creating images with the legacy AES-CBC format
>
> qemu-img create -f qcow \
> -object secret,id=sec0,filename=/home/berrange/encrypted.pw \
Should be --object.
> -o encrypt.format=aes,encrypt.key-secret=sec0 \
> /home/berrange/encrypted.qcow
There should be a size here to make it work.
The patch itself does look good to me, though.
Max
>
> Reviewed-by: Alberto Garcia <address@hidden>
> Reviewed-by: Eric Blake <address@hidden>
> Signed-off-by: Daniel P. Berrange <address@hidden>
> ---
> block/crypto.c | 10 +++
> block/crypto.h | 20 ++++--
> block/qcow.c | 198
> +++++++++++++++++++++++++--------------------------
> qapi/block-core.json | 38 +++++++++-
> 4 files changed, 158 insertions(+), 108 deletions(-)
signature.asc
Description: OpenPGP digital signature
- [Qemu-block] [PATCH v8 02/20] block: add ability to set a prefix for opt names, (continued)
- [Qemu-block] [PATCH v8 02/20] block: add ability to set a prefix for opt names, Daniel P. Berrange, 2017/06/01
- [Qemu-block] [PATCH v8 03/20] qcow: document another weakness of qcow AES encryption, Daniel P. Berrange, 2017/06/01
- [Qemu-block] [PATCH v8 04/20] qcow: require image size to be > 1 for new images, Daniel P. Berrange, 2017/06/01
- [Qemu-block] [PATCH v8 05/20] iotests: skip 042 with qcow which dosn't support zero sized images, Daniel P. Berrange, 2017/06/01
- [Qemu-block] [PATCH v8 06/20] iotests: skip 048 with qcow which doesn't support resize, Daniel P. Berrange, 2017/06/01
- [Qemu-block] [PATCH v8 08/20] qcow: make encrypt_sectors encrypt in place, Daniel P. Berrange, 2017/06/01
- [Qemu-block] [PATCH v8 07/20] block: deprecate "encryption=on" in favor of "encrypt.format=aes", Daniel P. Berrange, 2017/06/01
- [Qemu-block] [PATCH v8 09/20] qcow: convert QCow to use QCryptoBlock for encryption, Daniel P. Berrange, 2017/06/01
- Re: [Qemu-block] [PATCH v8 09/20] qcow: convert QCow to use QCryptoBlock for encryption,
Max Reitz <=
- [Qemu-block] [PATCH v8 10/20] qcow2: make qcow2_encrypt_sectors encrypt in place, Daniel P. Berrange, 2017/06/01
- [Qemu-block] [PATCH v8 12/20] qcow2: extend specification to cover LUKS encryption, Daniel P. Berrange, 2017/06/01
- [Qemu-block] [PATCH v8 11/20] qcow2: convert QCow2 to use QCryptoBlock for encryption, Daniel P. Berrange, 2017/06/01
- [Qemu-block] [PATCH v8 13/20] qcow2: add support for LUKS encryption format, Daniel P. Berrange, 2017/06/01
- [Qemu-block] [PATCH v8 15/20] iotests: enable tests 134 and 158 to work with qcow (v1), Daniel P. Berrange, 2017/06/01
- [Qemu-block] [PATCH v8 14/20] qcow2: add iotests to cover LUKS encryption support, Daniel P. Berrange, 2017/06/01