Crittografia funzionale

Da testwiki.
Versione del 16 mar 2025 alle 00:41 di imported>FrescoBot (Bot: numeri di pagina nei template citazione)
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)
Vai alla navigazione Vai alla ricerca

La crittografia funzionale è un tipo di crittografia a chiave pubblica, dove chi è in possesso della chiave segreta può imparare una funzione di ciò che è cifrato nel testo[1]. La crittografia funzionale generalizza molte primitive crittografiche, come ad esempio la crittografia su base identità (IBE) e la crittografia su base attributi (ABE).

Storia

La crittografia funzionale è stata introdotta ne 2005 da Amit Sahai e Brent Waters[2] e formalizzata successivamente da Dan Boneh e Amit Sahai nel 2010[3]. Gli schemi proposti, tuttavia, supportano solo un insieme ridotto di funzionalità: per questo motivo nel corso degli anni sono stati effettuati diversi lavori di ricerca per fornire costruzioni universali di crittografia funzionale, in grado cioè di supportare funzioni arbitrarie[4][5].

Definizione

Uno schema a chiave pubblica è composto da tre algoritmi:

  • KeyGen(1λ)(pk,sk)
  • Enc(pk,m)c
  • Dec(sk,c)m

Solo il proprietario di sk può decifrare c e ottenere m, tutti gli altri non possono ottenere nessuna informazione.

Uno schema di crittografia funzionale aggiunge un quarto algoritmo:

  • Setup(1λ)(pk,msk)
  • KeyDer(msk,f)skf
  • Enc(pk,m)c
  • Dec(skf,c)f(m)

Questo quarto algoritmo permette al possessore della chiave skf di decriptare solamente una funzione del messaggio e non il messaggio per intero.

Prendiamo ad esempio in considerazione un messaggio composto da un insieme N di numeri; il possessore della chiave skavg potrà decriptare il valore della media dei valori di N senza avere accesso a nessun'altra informazione sul messaggio originale.

Note

Voci correlate

Template:Portale