Thread (15 messages) flat view 15 messages, 4 authors, 2016-07-08

Re: [PATCH v8 6/6] crypto: AF_ALG - add support for key_id

From: Tadeusz Struk <hidden>
Date: 2016-07-05 20:27:09
Also in: linux-crypto, lkml

Hi Mat,
On 06/29/2016 11:43 AM, Mat Martineau wrote:
quoted
+    ret = verify_signature(key, &sig);
+    if (!ret) {
+        req->dst_len = sizeof(digest);
I think you fixed the BUG_ON() problem but there's still an issue with
the handling of the digest. Check the use of sig->digest in
public_key_verify_signature(), it's an input not an output. Right now it
looks like 20 uninitialized bytes are compared with the computed digest
within verify_signature, and then the unintialized bytes are copied to
req->dst here.

With some modifications to public_key_verify_signature you could get the
digest you need, but I'm not sure if verification with a hardware key
(like a key in a TPM) can or can not provide the digest needed. Maybe
this is why the verify_signature hook in struct asymmetric_key_subtype
is optional.
quoted
+        scatterwalk_map_and_copy(digest, req->dst, 0, req->dst_len, 1);
+    } 
So it looks like the only thing that we need to return to the user in
this case is the return code. Do you agree?
Thanks,
-- 
TS
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help