Holds id and the signature key. Signs the request and
transmits it to the Registration Office itself.
S1
What this demo substitutes
A real wallet is an eIDAS application holding one citizen's key in hardware it
never leaves, invoked by the browser. This page holds several personas in
memory so one machine can play a whole electorate, and the request arrives as
a file you carry rather than an app-to-app call. The boundary is real; the
wallet is not.
A wallet belongs to one citizen. Choose first: everything after this is done on their behalf, and the page says whose it is from then on. A real wallet has no such control — it has an owner.
The wallet signs hash([id, c]) and posts [id, c, s]
to the office from this origin, where s is the wallet's
signature. Nothing returns to the voting application:
it collects the office's reply itself, by presenting the c it
generated.
D1, for whoever this wallet belongs to. The query
carries a signature of id made here, so only this voter can
ask. Save it and load it into the checker — the check
audits the office, so it must not be performed inside the voting
application, which could simply display whatever it liked.
Choose a request file.