Come criptare con ECDSA?

1

Supponiamo che ci sia una transazione nella blockchain in cui un determinato indirizzo trasferisce bitcoin a chiunque. Devo crittografare un messaggio in modo che solo il proprietario di tale indirizzo lo leggerà. Ho la sua chiave pubblica, ma è una chiave ECDSA e, per quanto ne so, ECDSA non supporta la crittografia.

Quale sarebbe il modo per raggiungere questo obiettivo?

    
posta Nathan Parker 08.09.2015 - 12:07
fonte

1 risposta

7

Non criptare con ECDSA; ECDSA è un algoritmo di firma.

Accade così che una chiave pubblica ECDSA sia davvero una "chiave pubblica CE" e possa essere concettualmente utilizzata con un algoritmo di crittografia asimmetrica che utilizza quel tipo di chiave; per esempio. ECIES ; o potrebbe anche essere utilizzato come metà di un algoritmo di scambio di chiavi come ECDH , con conseguente "shared secret" che può quindi essere utilizzato con un algoritmo di crittografia simmetrica.

Tuttavia, questa non è necessariamente una buona idea:

  • L'uso della stessa coppia di chiavi per la firma e la crittografia rischia di scatenare un'interazione indesiderata tra i due algoritmi (ad esempio, la parte ricevente, calcolando una decrittazione su un messaggio controllato da un utente malintenzionato, potrebbe perdere involontariamente informazioni che potrebbero portare a una falsificazione di firma). Questo tipo di interazione non è ben studiato.

  • Le chiavi di firma e le chiavi di crittografia tendono ad avere cicli di vita distinti : generazione, archiviazione, backup ... non devono essere gestiti allo stesso modo per entrambi i tipi di chiavi. Usando la stessa chiave per le firme e la crittografia, si ottengono quindi delle cose in modo subottimale a tale riguardo.

Un modo più sicuro di fare le cose è avere ciascuna coppia di coppie di due , una per la firma e una per la crittografia. Probabilmente, il proprietario firma la sua chiave pubblica di crittografia con la sua chiave di firma, in modo che le persone che conoscono la sua chiave pubblica della firma possano verificare la veridicità della sua chiave pubblica di crittografia.

    
risposta data 08.09.2015 - 14:15
fonte

Leggi altre domande sui tag