The goal of these contracts and scripts is to allow users to transfer non-fungible tokens(NFT) between two Ethereum networks.
- Deploy ERC721 Token (Example address: '0xa51120080cd19c6dd35a1154e3fdaa770555f746') that will be used as Home ERC721 contract
- Deploy Bridge Contract (Example address: '0xba1ecd4b35953cc578f773580e6aecd3128e5775') that will be used as Home Bridge contract. To deploy, use the address of ERC721 contract which was deployed on step 1 as the first parameter. A second parameter is a number of signatures required to transfer NFT from one network to another. The third one is an array with addresses of all authorities who can transfer NFT
- Deploy ERC721 Token (Example address: '0xa51120080cd19c6dd35a1154e3fdaa770555f746') that will be used as Foreign ERC721 contract
- Deploy Bridge Contract (Example address: '0xba1ecd4b35953cc578f773580e6aecd3128e5775') that will be used as Foreign Bridge contract. To deploy, use the address of ERC721 contract which was deployed on step 1 as the first parameter. A second parameter is a number of signatures required to transfer NFT from one network to another. The third one is an array with addresses of all authorities who can transfer NFT
- Write down your private key in privateKey.json (Example private key: '0x48656c6c6f2c20776f726c6448656c6c6f2c20776f726c6448656c6c6f2c2048'). The address corresponded to specified private key should be listed as an authority in bridge contracts
- Write down addresses of Home and Foreign Bridges in file contracts.json
- Run bridge.py that will be the main script of the bridge