pragma solidity ^0.4.24; contract A { // standard uint uint eventId = 2; // solidity sha3 hash of the unique vendor ref string bytes32 vendorTicketRefHash = 0xee2953199c78f8ffabcd753c8342f13df8173a0ac2f8e6db64c172790ce7477b; // standard string string ticketMetadata = "{ \"eventName\": \"an event\", \"eventTime\": 1544423595, \"eventVenue\": \"amazing venue\" }"; // standard address address ticketOwner = 0xD13CD02E5D0bA8ff796A7189c087925B8ebaf54F; // bytes32 hash signed by the event owner or primary bytes originalProof = hex"f5707e7a8d2a7c1e6ea7299511cd8e5da324a39647f3dc98a52548eda06901382526c13bc88f6abc7da5c90d33afe969f8d39a6781e4300be901f3c5618f2ec700"; // optional bytes doorData = "2965ea60e4b7d3cc7c7920e13a3fa0123c6ec5650f34cdd1dce206efe395167a03c2f48cbaedb15ad1660a40375d0db94741aff4a9cfe5f0c98d7360c9ba6d3d1b"; // packed bytes bytes public packed = abi.encodePacked(eventId, vendorTicketRefHash, ticketMetadata, ticketOwner, originalProof, doorData); // hashed packed bytes bytes32 public leafHash = keccak256(packed); // expected leafHash = 0xe3b7756d314fd54067e251e7dce73081828d35c45a95451d3949447e971934fe }
0.4.24