+
+for hash_result in "$hash_dir"/*;do
+ layer=$(basename "$hash_result")
+ if [[ "$mode" == e ]];then
+ # Add the hashes to keyfile
+ key_aside_dir=$(mktemp -d "$keyfile.XXXXXXXXXX")
+ key_aside="$key_aside_dir/key.orig"
+ mv "$keyfile" "$key_aside"
+ sed "${layer}s,.*,$(< "$hash_result")," "$key_aside" > "$keyfile"
+ shred -u "$key_aside"
+ rmdir "$key_aside_dir"
+ else
+ # Verify the hashes
+ if [[ "$(awk '{ print $3 == $4 ? "hash ok" : "mismatch" }' "$hash_result")" != "hash ok" ]];then
+ die "Hash check $layer failed"
+ fi
+ fi
+done
+
+rm -r "$hash_dir"