Una dintre scheme are o dimensiune mai mică a cheii publice, iar cealaltă are o dimensiune mai mică a semnăturii. Atunci care schemă este preferată în practică?
Depinde (evident); în unele cazuri, nu contează; în alte cazuri, semnăturile mai mici sunt mai bune; în unele situații obscure, cheile publice mai mici pot fi mai bune.
Cazurile în care nu contează sunt cele în care cheia publică și semnătura apar întotdeauna împreună (de exemplu, în cadrul unui certificat); în acest caz, ambele exemple ar prelua 513 N$ biți, și deci ambele sunt la fel de costisitoare (din punct de vedere al spațiului, și nu dați nicio altă modalitate de a diferenția cele două scheme).
Cazurile în care semnăturile mai mici sunt mai bune sunt atunci când constrângerea este lățimea de bandă totală, iar oamenii pot stoca în cache cheia publică mare (și astfel nu trebuie transmisă). În exemplul dvs., dacă fiecare dispozitiv poate stoca 512 N$ cheie publică de biți, atunci tot ce au nevoie pentru a transfera sunt semnăturile pe 512 de biți, iar lucrurile sunt considerabil mai ieftine.
Cazul în care cheile publice mai mici sunt mai bune? Ei bine, luați în considerare cazul în care dispozitivele sunt constrânse până la punctul în care nu au spațiu pentru a stoca un 512 N$ bit cheie publică; în plus, logica de verificare a semnăturii este capabilă să proceseze semnătura în secțiunile [1], astfel încât să nu fie nevoie să stocheze întregul lucru deodată. În acest caz, transmiterea 512 N$ semnăturile de biți funcționează de fapt mai bine; lățimea de bandă totală este semnificativ mai mare, cu toate acestea, în acest caz, aceasta nu este constrângerea pentru care optimizăm; în schimb, optimizăm pentru capabilitățile pe care le au dispozitivele noastre limitate.
[1]: Și, în cazul în care vă întrebați, da, astfel de sisteme de semnătură există - semnăturile bazate pe hash sunt un exemplu.