|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: May 2011
Messaggi: 21
|
[OpenSSL] problema BIGNUM
Salve ho questo problema, ipotizziamo che sul server crei una struttura DH *a; e abbiamo quindi disponibili i vari parametri caratteristici di un oggetto di tipo DIFFIEHELMAN in particolare p e g.
Allora io voglio spedire dal server al client questi parametri per poter calcolare la chiave di sessione condivisa. Dal server mando ad esempio p che è un BIGNUM così : SSL_write(ssl,a->p,sizeof( BIGNUM )); Sul client per ricevere faccio così: char buffer[1024]; SSL_read(ssl,buffer,1024); BIGNUM *p= (BIGNUM *) x; Accade però che quando tento di creare sul client una struttura DH e di mettere p nella nuova struttura; b=DH_new(); if(b == NULL) { printf("errore"); return 1; } b -> p = BN_dup(p); Mi da segfault !! Ho appunto messo in un buffer il BIGNUM , così da poter stampare sia sul client che sul server i valori in esadecimale di p, ed effettivamente sia sul client che sul server ho la stessa stringa. Quindi il valore arriva al client corretto ! Che sbagli a inizializzare il BIGNUM ? non so proprio che fare T_T |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 21:36.