Skip to content

Instantly share code, notes, and snippets.

@cwhinfrey
cwhinfrey / IAuthereumAccount.sol
Last active February 17, 2020 03:52
Authereum Account Contract Interface
pragma experimental ABIEncoderV2;
interface IAuthereumAccount {
// This is required for funds sent to this contract
function () external payable;
/// @dev Get the number of authKeys
/// @return The number of authKeys
function numAuthKeys() external view returns (uint);
@cwhinfrey
cwhinfrey / 3box
Last active February 4, 2020 07:00
3box
This post links my 3Box profile to my Github account! Web3 social profiles by 3Box.
✅ did:3:bafyreighubmjjux4mh55yaqer6fsfeyg2lozjtpjr7kygwv27vz2sqwn3i ✅
Create your profile today to start building social connection and trust online at https://3Box.io/
@cwhinfrey
cwhinfrey / IAuthereumAccount.sol
Created March 13, 2020 21:53
Full Authereum Interface
pragma solidity 0.5.16;
pragma experimental ABIEncoderV2;
contract IAuthereumAccount {
function () external payable;
// getters
function authereumVersion() external view returns(string memory);
@cwhinfrey
cwhinfrey / GasBurner.sol
Created April 24, 2020 22:08
GasBurner.sol
contract GasBurner {
uint[] nums;
function doSomethingHeavy() public {
for( uint i = 0; i < 50; i++ ) {
nums.push(i);
}
}
}
@cwhinfrey
cwhinfrey / bridge_hacks.md
Last active March 10, 2025 13:06
Bridge Hack List
@cwhinfrey
cwhinfrey / message-taxonomy.md
Last active April 9, 2024 16:14
An Incomplete Taxonomy of Cross-Chain Messages

An Incomplete Taxonomy of Cross-Chain Messages

Single or Batched

Single Messages - Single messages have a single target address, target chainId, and data payload. The vast majority of cross-chain messages today are single messages.

Example:

function dispatchMessage(uint256 toChainId, address to, bytes calldata data) external payable returns (bytes32 messageId);