proof-of-activity/workout-completed
Open proof protocol on SolanaProtocole de preuve ouvert sur Solana
An open standard for proving that something really happened. Un standard ouvert pour prouver que quelque chose s'est vraiment passé.
Iron Chain turns a training session, a work shift, a delivery or a sensor reading into a proof signed by its author, whether a person, a device or an organisation. Any reader checks it with open code, and the raw data stays at the source. Iron Chain transforme une séance, une journée de travail, une livraison ou la mesure d'un capteur en une preuve signée par son auteur, que ce soit une personne, un appareil ou une organisation. N'importe quel lecteur la vérifie avec du code ouvert, et la donnée brute reste à la source.
- 01Something really happensQuelque chose se passe vraiment
session · 60 min · 3 Sep 2026séance · 60 min · 3 sept. 2026 - 02The app writes a leafL'app écrit une feuille
leaf 39ef…118dDBMCWN - 03Its author signs itSon auteur la signe
Ed25519 · the author's own key · 742K…rzuPEd25519 · la clé de l'auteur · 742K…rzuP - 04One root a month goes on SolanaUne racine par mois part sur Solana
root 4078…18a0 · leafCount 3 - 05Any reader checks itN'importe quel lecteur la vérifie
valid · read without the datavalide · lue sans la donnée
01Why it existsPourquoi il existe
Real effort is worth money, and today it is paid on trust.L'effort réel vaut de l'argent, et aujourd'hui il se paie sur parole.
Insurers, brands and labs already pay for physical activity. To check it they get a gym invoice or a step count, and both are easy to fake.Assureurs, marques et labos paient déjà pour l'activité physique. Pour la vérifier, ils reçoivent une facture de salle ou un compteur de pas, deux choses faciles à truquer.
We needed a real proof for our own app. We wrote it as an open standard, so that a proof made in any app reads the same for every reader and stays readable without us.Nous avions besoin d'une vraie preuve pour notre propre app. Nous l'avons écrite comme un standard ouvert, pour qu'une preuve faite dans n'importe quelle app se lise de la même façon pour tous les lecteurs, et reste lisible sans nous.
That someone paid a membership.Que quelqu'un a payé un abonnement.
That a phone moved.Qu'un téléphone a bougé.
That the session happened, with the signals the reader asked for.Que la séance a eu lieu, avec les signaux que le lecteur a demandés.
The more signals a proof carries, the more it costs to fake.Plus une preuve porte de signaux, plus elle coûte cher à truquer.
02Anatomy of a proofAnatomie d'une preuve
A proof is one small signed record, called a leaf.Une preuve, c'est un petit relevé signé, appelé feuille.
Here is a real one, taken from the test vectors of the spec. Point at a line to see what it means.En voici une vraie, tirée des vecteurs de test de la spec. Pointez une ligne pour voir ce qu'elle veut dire.
leaf.jsonworkout-completed/v1{ "schema": "proof-of-activity/workout-completed/v1",1 "subject": "742Ky5D88EGep7dcy7Yqtz2JRW1T6X9qaC9w8nFKrzuP",2 "window": { "start": 1788386400, "end": 1788390000 },3 "activity": "conditioning", "signals": ["D", "B", "M", "C"],4 "payloadHash": "2c26b46b68ffc68ff99b453c…",5 "photoHashes": ["fcde2b2e…", "0ffe1abd…"], "device": { "kind": "watch", "baselineDays": 47 }6}
- 1The profileLe profil
schemaIt says what kind of fact this is. A training session here, a work shift in another app.Il dit de quel fait il s'agit. Ici une séance d'entraînement, dans une autre app une journée de travail.
- 2The authorL'auteur
subjectA public key, held by a person, a device or an organisation. The leaf carries the key and never a name.Une clé publique, tenue par une personne, un appareil ou une organisation. La feuille porte la clé, jamais un nom.
- 3The timeLe moment
windowWhen it started and when it ended, to the second.Quand ça a commencé et quand ça a fini, à la seconde.
- 4The signalsLes signaux
signalsWhat confirms the fact, from Declared to Notarized. The leaf carries signals and leaves the verdict to the reader.Ce qui confirme le fait, de Declared à Notarized. La feuille porte des signaux et laisse le verdict au lecteur.
- 5The fingerprintsLes empreintes
payloadHashThe measures and the two photos, reduced to hashes. The files themselves stay on the phone.Les mesures et les deux photos, réduites à des empreintes. Les fichiers restent sur le téléphone.
- 6The sensorLe capteur
deviceThe kind of device, and how many days of history it holds for this author.Le type d'appareil, et combien de jours d'historique il a pour cet auteur.
The author signs the leaf with its own key. For a person, that key sits in their wallet, which shows a sentence they can read.L'auteur signe la feuille avec sa propre clé. Pour une personne, cette clé est dans son portefeuille, qui affiche une phrase lisible.
03The six signalsLes six signaux
Six signals, ranked by what it costs to fake them.Six signaux, rangés selon ce qu'il en coûte de les truquer.
Who reads the proof?Qui lit la preuve ?
The author says it, and signs.L'auteur le dit, et signe.
A photo at the start and one at the end, taken with the app's camera.Une photo au début et une à la fin, prises avec l'appareil photo de l'app.
A sensor recorded it.Un capteur l'a enregistré.
The heart rate follows the effort.Le cœur suit l'effort.
Someone who was there confirms.Quelqu'un de présent confirme.
A verified professional confirms.Un professionnel vérifié confirme.
Every app means the same thing by the same letter, so a reader sets its bar once and reads proofs from any app. The bars above are examples.Chaque app entend la même chose par la même lettre, donc un lecteur fixe sa barre une fois et lit les preuves de n'importe quelle app. Les barres ci-dessus sont des exemples.
The signals in the specLes signaux dans la spec04On SolanaSur Solana
Once a month, an author's leaves fold into one fingerprint.Une fois par mois, les feuilles d'un auteur se replient en une seule empreinte.
The leaves of the month are paired into a Merkle tree, and only its root is written on Solana, as one attestation per author. To check one leaf, a reader needs the leaf and a short path of hashes.Les feuilles du mois sont appariées en arbre de Merkle, et seule sa racine est écrite sur Solana, en une attestation par auteur. Pour vérifier une feuille, un lecteur a besoin de la feuille et d'un court chemin d'empreintes.
Stays at the sourceReste à la source
- Heart rate and caloriesLe cœur et les calories
- The photosLes photos
- Duration and measuresLa durée et les mesures
- The nameLe nom
Written on SolanaÉcrit sur Solana
- One root per author and per monthUne racine par auteur et par mois
- The number of leavesLe nombre de feuilles
- The version of the leaf formatLa version du format de feuille
To check the session of 3 September, a reader needs its leaf and the two dashed hashes.Pour vérifier la séance du 3 septembre, un lecteur a besoin de sa feuille et des deux empreintes en pointillé.
Check it without asking us.Vérifiez sans nous demander.
The verifier is one open script. It validates each leaf against its profile, recomputes its hash and checks the author's signature. A reader needs the file, the script and a public Solana address.Le vérificateur est un script ouvert. Il valide chaque feuille contre son profil, recalcule son empreinte et contrôle la signature de l'auteur. Un lecteur a besoin du fichier, du script et d'une adresse Solana publique.
$ pip install cryptography jsonschema $ python verify_leaf.py 2026-09.jsonl # exit code 0 only if every leaf passes
05What the protocol guaranteesCe que le protocole garantit
Four rules every proof keeps.Quatre règles que chaque preuve tient.
The author holds the key.L'auteur tient la clé.
Each leaf is signed with its author's own key, kept on their phone or device. The proof belongs to whoever signed it.Chaque feuille est signée avec la clé de son auteur, gardée sur son téléphone ou son appareil. La preuve appartient à celui qui l'a signée.
The data stays where it was made.La donnée reste là où elle est née.
Heart rate, photos and measures stay at the source, with an encrypted backup. A reader receives fingerprints.Le cœur, les photos et les mesures restent à la source, avec une sauvegarde chiffrée. Un lecteur reçoit des empreintes.
Whoever needs the proof pays for it.Celui qui a besoin de la preuve la paie.
An insurer, a brand or a lab pays for the certainty it asks for, in ordinary money. Iron Chain mints no speculative token and pays no one for moving.Un assureur, une marque ou un labo paie la certitude qu'il demande, en monnaie ordinaire. Iron Chain n'émet aucun jeton spéculatif et ne paie personne pour bouger.
The proof outlives us.La preuve nous survit.
The spec, the verifier and the test vectors are open under Apache-2.0, and the root sits on a public chain. A proof stays readable if we disappear.La spec, le vérificateur et les vecteurs de test sont ouverts sous Apache-2.0, et la racine est sur une chaîne publique. Une preuve reste lisible si nous disparaissons.
06Any activityToute activité
A new kind of proof is one JSON file.Un nouveau type de preuve, c'est un fichier JSON.
The envelope, the signals and the monthly root are shared by every profile. A trade adds the two or three fields it needs, and the schema on Solana stays the same.L'enveloppe, les signaux et la racine mensuelle sont communs à tous les profils. Un métier ajoute les deux ou trois champs dont il a besoin, et le schéma sur Solana reste le même.
proof-of-presence/hours-worked
A shift of work, apprenticeship or volunteeringUne journée de travail, d'apprentissage ou de bénévolat
your-family/your-profile/v1
A rehab exercise, a delivery, a sensor readingUn exercice de rééducation, une livraison, la mesure d'un capteur
Every profile inherits schema, subject, window, signals, payloadHash and signature.Chaque profil hérite de schema, subject, window, signals, payloadHash et signature.
07First productPremier produit
The first app built on Iron Chain is ohmGym.La première app construite sur Iron Chain, c'est ohmGym.
A training app with a session every day and live video duels with friends. Each finished session becomes a leaf, signed in the member's wallet. Here is how the app lights each signal.Une app d'entraînement avec une séance par jour et des duels en visio entre amis. Chaque séance terminée devient une feuille, signée dans le portefeuille du membre. Voici comment l'app allume chaque signal.
- BPhotos taken with the app's cameraDes photos prises avec l'appareil photo de l'appOne at the start and one at the end, never from the gallery.Une au début et une à la fin, jamais depuis la galerie.
- MData from the watchLes données de la montreThe measured calories enter the leaf as a fingerprint.Les calories mesurées entrent dans la feuille sous forme d'empreinte.
- CThe heart against the effortLe cœur face à l'effortThe heart rate has to follow the session.Le rythme cardiaque doit suivre la séance.
- WA friend confirms the duelUn ami confirme le duelAt the end of a live video duel.À la fin d'un duel en visio.
08Who reads the proofsQui lit les preuves
The proof is read by whoever needs certainty.La preuve est lue par celui qui a besoin de certitude.
InsurersLes assureurs
Pay the prevention bonus on proven sessions instead of a gym invoice, without receiving any health data.Versent le bonus de prévention sur des séances prouvées plutôt que sur une facture de salle, sans recevoir de donnée de santé.
BrandsLes marques
Run a challenge that only real sessions can win, and share the prize pool among those who proved.Organisent un défi que seules de vraies séances peuvent gagner, et partagent la cagnotte entre ceux qui ont prouvé.
LabsLes labos
Recruit on a proven history instead of a questionnaire. Each participant consents and is paid for their share.Recrutent sur un historique prouvé plutôt que sur un questionnaire. Chaque participant consent et il est payé pour sa part.
Outside fitness, the same proof covers apprenticeship hours and volunteer shifts.Hors du sport, la même preuve couvre les heures d'apprentissage et de bénévolat.
All use casesTous les cas d'usage09Build on itConstruire dessus
Build something people can prove.Construisez quelque chose que les gens peuvent prouver.
Your app writes the leaves, your users sign them, and any reader checks them with the same open code. A delivery or a sensor reading uses the same envelope as a workout.Votre app écrit les feuilles, vos utilisateurs les signent, et n'importe quel lecteur les vérifie avec le même code ouvert. Une livraison ou la mesure d'un capteur utilise la même enveloppe qu'une séance.
The leaf, the six signals and the monthly anchor, in a few short pages.La feuille, les six signaux et l'ancrage mensuel, en quelques pages courtes.
02Write a profileÉcrire un profilCopy hours-worked.json and replace its fields with the ones your trade needs.Copiez hours-worked.json et remplacez ses champs par ceux dont votre métier a besoin.
The exact bytes every implementation must produce, and the verifier to check yours.Les octets exacts que toute implémentation doit produire, et le vérificateur pour contrôler la vôtre.
Tell us what you want to prove. We answer every message.Dites-nous ce que vous voulez prouver. Nous répondons à chaque message.
contact@ironchain.app10Questions
What people ask us.Ce qu'on nous demande.



What exactly goes on chain?Qu'est-ce qui va exactement sur la chaîne ?
One root per author and per month, with the number of leaves and the format version. A date, a duration or a heart rate stays off the chain, and the spec forbids putting it there.Une racine par auteur et par mois, avec le nombre de feuilles et la version du format. Une date, une durée ou un rythme cardiaque restent hors de la chaîne, et la spec interdit de les y mettre.
Is there a token?Y a-t-il un jeton ?
Whoever needs the proof pays for it, in ordinary money. Iron Chain mints no speculative token and pays no one for moving.Celui qui a besoin de la preuve la paie, en monnaie ordinaire. Iron Chain n'émet aucun jeton spéculatif et ne paie personne pour bouger.
Does a reader need crypto?Un lecteur a-t-il besoin de crypto ?
A reader needs the leaf, the open verifier and a public Solana address. There is nothing to buy and no wallet to open.Un lecteur a besoin de la feuille, du vérificateur ouvert et d'une adresse Solana publique. Il n'y a rien à acheter et aucun portefeuille à ouvrir.
Why Solana?Pourquoi Solana ?
The Solana Attestation Service gives every reader the same public format, and the Seed Vault lets people sign on their own phone. A proof stays readable even if we disappear.Le Solana Attestation Service donne à tous les lecteurs le même format public, et le Seed Vault permet de signer sur son propre téléphone. Une preuve reste lisible même si nous disparaissons.
Who can write a profile?Qui peut écrire un profil ?
Anyone. A profile is a JSON schema and a set of test vectors, published like the two that exist. Write to us if you want a review before you ship it.N'importe qui. Un profil est un schéma JSON et un jeu de vecteurs de test, publiés comme les deux qui existent. Écrivez-nous si vous voulez une relecture avant de le publier.