Generate and persist a device keypair and sign a hardware report
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 58/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- rust
- Ambito
- cryptography, security
Direzione di ricerca
Read docs/ARCHITECTURE.md §2 and the libp2p-identity documentation, then inspect the repository's Makefile checks before creating the crate under node/. Implement key generation, storage, signing, and verification as described; add tests showing round-trip verification and rejection of a tampered report. Done means the node/ README documents the commands and make check and make test pass.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Context
Every node will sign its protocol messages with a stable device identity (ARCHITECTURE §2, RFC 0001 Rung 1 setup). This is the first piece of node code.
Task
Write a small Rust crate/binary that on first run generates an Ed25519 keypair, stores it with 0600 permissions in the platform config dir, reuses it on later runs, and signs a JSON hardware report (the ofl doctor fields are a fine start) emitting {report, public_key, signature}. Add a verify subcommand. Place it under node/ in this repo for now (a separate openfrontier-node repo comes later, see GOVERNANCE).
Definition of done
-
cargo run -- keygenis idempotent; key file permissions are 0600 on Unix -
signandverifyround-trip; a tampered report fails verification (test) - README in
node/with the commands - Uses the libp2p-compatible key type so layer 3 can reuse it (
libp2p-identityEd25519) -
make checkandmake testpass - Commits signed off (
git commit -s)
Pointers
- libp2p-identity, ed25519-dalek
docs/ARCHITECTURE.md§2- Ask in Discord
#infra, or comment here. Comment "I'll take this" to be assigned. A draft PR after an hour of work is welcome.
Skills: Rust
Agent: omp / claude-opus-5-5 (issue drafted by an agent; a maintainer reviews the PR)
- Lingua principale
- Python
- Stelle
- 1
- Fork
- 2
- Merge medio
- 2h 4m
- PR unite (30g)
- 23
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
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 OpenFrontierLabs/openfrontier
-
agent-authored area/evals good first issue help wanted layer/8-outputs type/feature
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
OpenFrontierLabs/openfrontier#26 ·
I maintainer di solito rispondono entro 1 giorno
-
agent-authored area/docs good first issue help wanted layer/7-hosting type/docs
Difficoltà 3/5 1-2 giorni Idoneità per principianti 77/100
OpenFrontierLabs/openfrontier#25 ·
I maintainer di solito rispondono entro 1 giorno
-
agent-authored area/web good first issue help wanted layer/6-console type/feature
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
OpenFrontierLabs/openfrontier#24 ·
I maintainer di solito rispondono entro 1 giorno
-
Add hash and licence fields for every entry in `manifests/datasets.toml`, checked by `ofl check`Forse già presa @Neeraj111010 l’ha presa 1 giorno fa. Apertaagent-authored area/data area/python good first issue help wanted layer/5-storage type/feature
Difficoltà 3/5 1-2 giorni Idoneità per principianti 76/100
OpenFrontierLabs/openfrontier#23 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
agent-authored area/data good first issue help wanted layer/5-storage type/feature
Difficoltà 4/5 3-5 giorni Idoneità per principianti 62/100
OpenFrontierLabs/openfrontier#22 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di OpenFrontierLabs/openfrontier
Issue simili
-
Contributing instructionsAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
dbt-labs/spark-utils#51 ·
-
bug pydanty:is-working
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
pydantic/pydantic-ai#13444 ·
I maintainer di solito rispondono entro 1 giorno
-
good first issue help wanted
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
-
good first issue help wanted
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
-
changelog investigate
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 68/100
ramnes/notion-sdk-py#502 ·