kdf: Extend original Balloon to other digest algos.
* cipher/kdf.c (struct balloon_thread_data): Use pointer to md_spec. (prng_aes_ctr_init): Select relevant cipher to match BLKLEN. Use other half of digest for IV if not original Balloon. (balloon_open): Support other digest algos. (balloon_final): Check the error code in compute.
- GnuPG-bug-id: T5817
- Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>