vestigia

Detect where execution depends on secrets.
git clone git://git.ppad.tech/vestigia.git
Log | Files | Refs | README | LICENSE

DateCommit messageAuthorFiles+-
2026-10-31 10:15merge impl/darwin: the executable built on darwinJared Tobin1+5-0
2026-10-31 10:15cabal: build the executable on darwinJared Tobin1+5-0
2026-10-31 10:09misc: bounds, docs badgeJared Tobin2+21-20
2026-10-31 09:51readme: tweakJared Tobin1+6-5
2026-10-31 09:23release: v0.2.0Jared Tobin2+2-2
2026-10-31 09:22merge impl/cpu-models: a CPU model for QEMU to emulateJared Tobin6+147-29
2026-10-31 09:22merge impl/object-paths: objects resolved to the files they nameJared Tobin5+48-2
2026-10-30 18:19record: a CPU model for QEMU to emulateJared Tobin6+147-29
2026-10-30 14:35read: objects resolved to the files they nameJared Tobin5+48-2
2026-10-27 16:31readme: updateJared Tobin1+91-170
2026-10-27 08:00merge impl/watch-once: the watch list made once per comparisonJared Tobin4+75-30
2026-10-27 08:00watch: list what lies outside the contract once, for every runJared Tobin4+75-30
2026-10-27 07:19merge impl/contract: data-independent-timing contractsJared Tobin14+3665-83
2026-10-27 07:19readme, changelog: data-independent-timing contractsJared Tobin2+60-11
2026-10-27 07:19nix: diffOf under a contract, and the probe's floating-point divisionJared Tobin3+63-16
2026-10-27 07:19record, diff: instructions outside the contract, reported apartJared Tobin3+403-50
2026-10-27 07:19plugin: fingerprint the operands of what a watch list namesJared Tobin1+216-5
2026-10-27 07:19contract: Arm's DIT and Intel's DOITM, and what each makes of an instructionJared Tobin5+2923-1
2026-10-22 04:07release: v0.1.0Jared Tobin1+1-1
2026-10-21 07:03merge impl/gaps: the gaps a review found, closedJared Tobin18+1971-340
2026-10-21 06:42readme, changelog: the gaps closed, and the caveats leftJared Tobin2+62-45
2026-10-21 06:41diff: each origin with the calls that reached itJared Tobin8+316-60
2026-10-21 06:15symbol: LLVM's addr2line, which names what it can and no moreJared Tobin4+67-8
2026-10-21 05:47spikes: traceOf given its runsJared Tobin3+3-3
2026-10-21 05:46trace: taint over every run, mergedJared Tobin8+342-190
2026-10-21 05:37memcheck: a division's undefined operand reported, at its instructionJared Tobin7+360-18
2026-10-21 05:23diff: a division on other operands is an operand originJared Tobin7+291-76
2026-10-21 05:15diff: a return is downstream, never an originJared Tobin7+126-32
2026-10-21 05:08record: QEMU chosen by the harness's architectureJared Tobin5+74-40
2026-10-21 05:03record: how a run was made kept in its dump; runs made apart refusedJared Tobin7+262-49
2026-10-21 04:56plugin: a guest that starts a second thread is stopped, its dump refusedJared Tobin6+69-4
2026-10-21 04:53plugin: an instruction named by its address in its objectJared Tobin5+91-16
2026-10-21 04:44checks: a probe harness under both instruments, on LinuxJared Tobin3+110-1
2026-10-20 10:44merge impl/layout: QEMU's allocations kept off the guest's; runs laid out apart refusedJared Tobin5+82-7
2026-10-20 10:25record: QEMU's allocations kept off the guest's; runs laid out apart refusedJared Tobin5+82-7
2026-10-20 09:21merge impl/readme-trim: the README trimmedJared Tobin1+71-154
2026-10-20 09:21readme: censor linkedJared Tobin1+6-6
2026-10-20 09:18readme: trimmed to what a user needsJared Tobin1+69-152
2026-10-20 08:25merge impl/objects: a taint run kept to the objects, the version exportedJared Tobin7+47-15
2026-10-20 07:53objects: a taint run kept to the objects under audit; version exportedJared Tobin7+47-15
2026-10-19 10:21merge impl/plugin-linux: the plugin on Linux aloneJared Tobin1+9-3
2026-10-19 10:21flake: the plugin on Linux aloneJared Tobin1+9-3
2026-10-19 10:19merge impl/sound: outcome order compared, runs that prove nothing refusedJared Tobin9+176-79
2026-10-19 10:19merge impl/behaviour: each origin names the runs alike at itJared Tobin7+121-24
2026-10-19 10:06qemu: getrandom keeps the kernel's flags and lengthJared Tobin2+17-13
2026-10-19 10:05diff: a dump in which nothing ran is refusedJared Tobin2+12-2
2026-10-19 09:42diff: each origin names the runs alike at it (diff-v2)Jared Tobin7+121-24
2026-10-19 09:42diff: outcome order compared, and runs that prove nothing refusedJared Tobin9+160-77
2026-10-18 08:03merge impl/designed: runs designed for a path, compared apartJared Tobin6+101-25
2026-10-18 08:03diff: runs designed for a path, compared for control and coverage aloneJared Tobin6+101-25
2026-10-18 03:14merge impl/executed: diff reports what the runs executedJared Tobin4+44-8
2026-10-18 03:14diff: what every run executed, per objectJared Tobin4+44-8
2026-10-17 19:43marks: a compilation unit that records where each object sitsJared Tobin14+191-56
2026-10-17 18:23readme: the diff summary as one lineJared Tobin1+1-2
2026-10-17 18:23diff: controls, seeded entropy, and nix/lib.nix for consumersJared Tobin11+285-146
2026-10-17 17:47readme: what vestigia reads, how, and what it cannotJared Tobin2+209-5
2026-10-17 17:32spikes: ppad-poly1305 and ppad-secp256k1, and the FFI marksJared Tobin15+755-0
2026-10-17 16:11spike: Penumbra resultsJared Tobin2+88-1
2026-10-17 16:11vestigia: differential leakage traces under QEMU, and the Penumbra spikeJared Tobin11+867-19
2026-10-17 15:40vestigia: memcheck's report of where an execution depended on a secretJared Tobin19+1607-0