C'è una serie di parti, ognuna delle quali ha una chiave pubblica / privata. Ho la chiave pubblica per ognuno di essi.
Queste parti mi invieranno i JWT firmati con la loro chiave privata. Non so quale parte abbia inviato il JWT, quindi devo controllare il JWT. Se la firma corrisponde alla chiave pubblica n. 1, so che proviene dalla prima parte.
Voglio un modo per identificare in modo sicuro la parte che ha inviato il JWT.
Il modo più semplice ma più lento per farlo è quello di controllare ogni chiave pubblica fino a quando non corrisponde.
La soluzione che ho in mente consiste nell'abbinare la chiave pubblica al campo iss
del JWT. Posso dare un'occhiata al JWT, senza verificare la firma, estrarre la dichiarazione di iss
, usarla per decidere quale chiave pubblica usare e usarla per verificare la firma.
Non riesco a vedere buchi di sicurezza in questo approccio, ma il bisogno di due passaggi è sbagliato. C'è un modo standard per farlo?