Simulated data

Safety stop with congested clock sync (ordering ambiguity test)

SIM-2026-0002·SIM-AMR-01·Robot + facility logs·Integrity verifiedSimulated
Facility signal → robot stop input
-12.0–21.0ms
Order cannot be proven: clock uncertainty exceeds the gap.
Robot reaction
40ms
Stop input to zero-velocity command, same clock
Time to stationary
0.92s
910–935 ms window, from odometry
Reported stop distance
0.55m
From 1.20 m/s, as reported by odometry

Verify in this browser

WebCrypto · Ed25519 · SHA-256 · RFC 9162

Downloads the sealed bytes of SIM-2026-0002, fetches the trusted public key by ID from the key registry, and runs the same verifier the server and CLI run.

IDLEREADINGSIGNATURE_CHECKHASHINGRESULT
Tamper experiments · each runs on a copy in memory
Flip one bit inside the robot's stop-input record

Copies the MCAP in memory and flips one bit inside the bytes of the ROBOT_SAFETY_STOP_INPUT message.

Flip one bit in the facility stop broadcast line

Alters the facility JSONL copy. The file digest fails and the hash chain breaks at that line.

Edit the signed manifest title

Changes the case title to a fault claim. Every file still matches, but the signature no longer does.

Verify against an empty trust registry

Same bytes, but the verifier does not know the signer. A valid signature from an unknown key is not trusted.

Remove an evidence file

Drops the robot recording from the copy, as if it had been withheld.

Verifier response

Waiting

Ready

Click Verify evidence. A green result appears only when the signature and every listed byte check out.

Sources

Generated separately and simulated. Logically separate, not yet independent custody.

raw/robot_navigation.mcap

Robot
Origin
kinesim/0.1.0 kinematic AMR simulation (not Gazebo, not a real robot)
Clock domain
ROBOT_ROS_TIME · resolution 1 ns
Size
1.25 MiB · 21 × 64 KiB chunks
SHA-256
85506b8080bb1918dd580cf2a290a6e2775c9de93d53bfb97130902d1a581cfc
Merkle root
195b9ee4bc894ef77757e406ca1f10f4c3718c52b5bcfc184c902d4416e7009e
Integrity features
mcap_crc32
Topics
/scan (141), /tf_static (1), /odom (701), /tf (701), /navigate_to_pose/_action/status (3), /cmd_vel (277), /kinwit/clock_sync (7), /safety/state (2), /safety/stop_input (1)
Profile
MCAP ros2 · CDR · kinesim/0.1.0 (@mcap/core)
Download file

raw/facility_controller.jsonl

Facility
Origin
kinesim/0.1.0 facility zone controller generator (not a physical PLC)
Clock domain
FACILITY_PLC_CLOCK · resolution 1000 ns
Size
7.4 KiB · 1 × 64 KiB chunks
SHA-256
eecf794ac852273ff961312ba3098b5f4d3cf6527791cef616e34688708aee77
Merkle root
b08fd6e286ee28ce13ca0373317dab44326c2704f2e8d48a46771d16ab9cd14c
Integrity features
jsonl_hash_chain
Records
23 hash-chained lines
Declared timing
PLC scan 4 ms · jitter ±10000 ns
Download file

Signed package

kinwit.evidence.v1 · RFC8785-JCS-integer-profile
PathRoleSizeSHA-256Chunks
raw/robot_navigation.mcapOriginal evidence1.25 MiB85506b8080bb1918dd580cf2…21Download
raw/facility_controller.jsonlOriginal evidence7.4 KiBeecf794ac852273ff961312b…1Download
derived/timeline.jsonDerived from 2 files100.2 KiB2f88e5b586cb3e2cad7a7331…2Download
derived/facts.jsonDerived from 2 files11.8 KiBe38d652da021b244c152dd63…1Download
derived/report.jsonDerived from 2 files17.3 KiB1d131b088c8b5966cded80f2…1Download
proof/manifest.jsonSigned manifestCanonical JSON: the exact bytes the signature coversDownload
proof/manifest.sigSignatureEd25519, detached from the signed bytesDownload
Signer
kinwit-demo-signer-01 · Ed25519
Trusted fingerprint
af1a 9a59 c6fc bd01 9be9 4785 6a3d f3e6 de04 b60d 82c3 93a1 5cd8 204c e0f4 beb5 (from the server key registry, never from the package)
Ingest verification
kinwit-verify-ts/0.1.0 at 2026-11-02T20:56:22.625Z
Derivation
kinwit-facts/0.1.0 · reproducible from raw bytes