{ devices:[ { id:"Example Alice", ports:1, x:0.25, y:0.35, script: deviceScripts.encryption }, { id:"Example Bob", image: "iphone-1", ports:1, x:0.75, y:0.35, script: deviceScripts.encryption }, { id:"Alice", ports:1, x:0.25, y:0.6, script: deviceScripts.encryption }, { id:"Router", image: "router", ports:3, x:0.5, y:0.6, script: deviceScripts.manualRouter, rules:[ {dstip:"Alice", portNum:0}, {dstip:"Bob", portNum:1} ], player:false }, { id:"Eve", image: "macbook", ports:1, x:0.5, y:0.8, player:true }, { id:"Bob", image: "iphone-1", ports:1, x:0.75, y:0.6, script: deviceScripts.encryption } ], links:[ { src:"Alice", srcport:0, dst:"Router", dstport:0 }, { src:"Router", srcport:1, dst:"Bob", dstport:0 }, { src:"Router", srcport:2, dst:"Eve", dstport:0 }, { src:"Example Alice", srcport:0, dst:"Example Bob", dstport:0 } ], timeline:[ { type:"packet", at:500, from:"Alice", payload:{ network:{srcip:"Alice",dstip:"Bob"}, transport:{proto:"encryption"}, application:{type:"keyrequest"} } }, { type:"packet", at:500, from:"Example Alice", payload:{ network:{srcip:"Example Alice",dstip:"Example Bob"}, transport:{proto:"encryption"}, application:{type:"keyrequest"} } } ], triggers:[ { type:"packet", device:"Eve", payload:{ network:{srcip:"Alice",dstip:"Bob"}, transport:{proto:"encryption"}, application:{type:"message",key:"31337"} } }, { type:"packet", device:"Bob", payload:{ network:{srcip:"Alice", dstip: "Bob"}, transport:{proto:"encryption"}, application:{type:"message",key:"123456"} } } ] }