|
|
@ -207,8 +207,8 @@ int member_signmsg(char *buffer) { |
|
|
} |
|
|
} |
|
|
current[0] = '1'; |
|
|
current[0] = '1'; |
|
|
current = ¤t[1]; |
|
|
current = ¤t[1]; |
|
|
strncpy(current, (char *)member.bsn, MAX_BSNSIZE); |
|
|
bytes = ecdaa_encode(member.bsn, current, MAX_BSNSIZE); |
|
|
current = ¤t[MAX_BSNSIZE]; |
|
|
current = ¤t[bytes]; |
|
|
} else { |
|
|
} else { |
|
|
if (0 != ecdaa_signature_TPM_FP256BN_sign(&sig, chksum, chksum_len, NULL, 0, &member.cred, ecdaa_rand, &(ctx.tpm_ctx))) { |
|
|
if (0 != ecdaa_signature_TPM_FP256BN_sign(&sig, chksum, chksum_len, NULL, 0, &member.cred, ecdaa_rand, &(ctx.tpm_ctx))) { |
|
|
printf("member_signmsg: Signing message failed.\n"); |
|
|
printf("member_signmsg: Signing message failed.\n"); |
|
|
@ -220,14 +220,15 @@ int member_signmsg(char *buffer) { |
|
|
bzero(binbuf, MAX_BUFSIZE); |
|
|
bzero(binbuf, MAX_BUFSIZE); |
|
|
ecdaa_signature_FP256BN_serialize(binbuf, &sig, has_nym); |
|
|
ecdaa_signature_FP256BN_serialize(binbuf, &sig, has_nym); |
|
|
bytes = ecdaa_encode(binbuf, current, sig_len); |
|
|
bytes = ecdaa_encode(binbuf, current, sig_len); |
|
|
|
|
|
current[bytes] = '\n'; |
|
|
#ifdef DEBUG |
|
|
#ifdef DEBUG |
|
|
|
|
|
printf("%s",buffer); |
|
|
printf("member_signmsg: has_nym: %u, sig_len: %lu\n",has_nym, sig_len); |
|
|
printf("member_signmsg: has_nym: %u, sig_len: %lu\n",has_nym, sig_len); |
|
|
printf("member_signmsg: msg: %s, len: %lu\n", msg, msg_len); |
|
|
printf("member_signmsg: msg: %s, len: %lu\n", msg, msg_len); |
|
|
printf("member_signmsg: chksum: %s, len: %lu\n", chksum, chksum_len); |
|
|
printf("member_signmsg: chksum: %s, len: %lu\n", chksum, chksum_len); |
|
|
printf("member_signmsg: bsn: %s, len: %lu\n", (char *)member.bsn, strlen((char *)member.bsn)); |
|
|
printf("member_signmsg: bsn: %s, len: %lu\n", (char *)member.bsn, strlen((char *)member.bsn)); |
|
|
printf("member_signmsg: sig: %s, len: %lu\n", current, sig_len); |
|
|
printf("member_signmsg: sig: %s, len: %lu\n", current, sig_len); |
|
|
#endif |
|
|
#endif |
|
|
current[bytes] = '\n'; |
|
|
|
|
|
tpm_cleanup(&ctx); |
|
|
tpm_cleanup(&ctx); |
|
|
return 2; //send to verifier before closing
|
|
|
return 2; //send to verifier before closing
|
|
|
} |
|
|
} |
|
|
|