Revoke a signer as a whole, not permission by permission
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 45/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- solidity
- Ambito
- authorization, blockchain, security
Direzione di ricerca
Inizia da src/SessionKeyRegistry.sol, in particolare authorizationExpiry e _setAuthorizations, poi leggi la discussione sulla specifica collegata relativa al modello di storage previsto. Definisci il completamento in termini di revoca di ogni autorizzazione per un signer senza una lista di permessi fornita dal chiamante, preservando il corretto comportamento di scadenza del login ed esponendo ciò che possiede un signer.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description
The registry has no way to revoke a signer as a whole. Storage is authorizationExpiry[user][signer][permission], and revoke writes zero only into the permissions the caller names. Nothing enumerates a signer's permissions on chain, so a client can only revoke the permissions it knows about, and any permission granted through another client, or added to the protocol later, stays live.
The same shape means expiries are per permission. A login that names a subset of permissions leaves the others on their old expiry, so shortening or renewing a key needs the full permission list too.
Impact
A user who revokes a key in the console, or with filecoin-pin session revoke, cannot be sure the key is dead. Raised during review of the console's session keys page in FilOzone/filecoin-pay-explorer#346 (https://github.com/FilOzone/filecoin-pay-explorer/pull/346#discussion_r3971152844). The console's workaround is to send every permission it knows on revoke, which covers today's four FWSS permissions and nothing added later.
Expected behavior
A caller can end a signer's authorization for every permission in one call, without knowing the list. Two shapes that fit the current storage:
- A per-signer epoch:
authorizationExpiryreads return zero whensignerEpoch[user][signer]is newer than the grant.revokeAll(signer)bumps the epoch. - A stored permission set per signer that
loginappends to andrevokeAlliterates.
Either also gives clients a way to read what a signer holds, which the console reconstructs from events today.
Additional context
Spec discussion: FilOzone/filecoin-services#455. Contract: src/SessionKeyRegistry.sol, _setAuthorizations.
- Lingua principale
- Solidity
- Stelle
- 0
- Fork
- 1
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di FilOzone/SessionKeyRegistry
-
enhancement
FilOzone/SessionKeyRegistry#7 · 1 commento · 1 assegnatario ·
-
Support secp256r1 Apertaenhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
FilOzone/SessionKeyRegistry#3 · 4 commenti · 1 reazione ·
-
EIP 712 authorizations Apertaenhancement
FilOzone/SessionKeyRegistry#2 · 6 commenti · 1 assegnatario ·
-
Deterministic Deployment Apertaenhancement good first issue help wanted
FilOzone/SessionKeyRegistry#1 · 6 commenti · 1 assegnatario ·
Tutte le issue di FilOzone/SessionKeyRegistry
Issue simili
-
needs-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Nmap
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
-
Mend: dependency security vulnerability untriaged
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
blocklist removal
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
MetaMask/eth-phishing-detect#296544 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
Azure/azure-functions-docker#1257 ·