Evan Gray
7ecce0d302
eth: nft bridge impl initialize
2022-01-07 13:28:11 -05:00
Csongor Kiss
7e212fa739
terra/nft_bridge: Implement nft-bridge for terra ( #698 )
...
commit-id:0b547fa5
2022-01-07 16:47:33 +01:00
Hendrik Hofstadt
e50541912b
Fix NFT URI length and parsing ( #628 )
...
* Fix NFT bridge parsing and limit URI length
Change-Id: I71e728bbe35cfb8f10b86d53475f7e1c68b2866a
* Update NFTBridge.sol
* Update NFTBridge.sol
2021-12-21 08:36:00 -05:00
valentin
1226f85461
support tokens with transfer fees
...
Change-Id: Ib6ef2f1680ac845ef0f05c51047846c2633b0d4b
2021-10-29 16:55:05 +00:00
valentin
ffcdc3f3f2
add token migration contract
...
Change-Id: I2bc3fb4d99f5a08452bc2defd3597ec7ad300523
2021-09-28 10:35:34 +00:00
valentin
46440b3bf9
nft: add special case for spl naming, update tests
...
Change-Id: Ifbe9eeaad5d5604d52d75fdac6b018e94afa9d75
2021-09-20 15:16:57 +00:00
valentin
7e2cf1f981
pyth data bridge target chain module for EVM
...
Change-Id: Ieaeed6374e72a5348e05c40bd25598b74061a9a0
2021-09-16 13:46:51 +00:00
valentin
75ac0c9153
nft nits
...
Change-Id: Ie6265e1fcc8d91294dc416ad6bac18327f582c1e
2021-09-13 12:10:36 +02:00
Hendrik Hofstadt
6ff21f8d01
add ethereum NFT bridge
...
Change-Id: I5cc8cfe431f5f9b043adc7baf662760ffe9e7a35
2021-09-10 23:43:14 +00:00
Hendrik Hofstadt
e6a51d0180
don't allow the chain to be registered multiple times
...
Change-Id: Ic757b4ea1316718ad492ca5bc446eaf60ebdf200
2021-09-01 13:54:21 +02:00
Hendrik Hofstadt
745ff0ba9b
Allow to update meta on ETH, new token naming
...
This allows us to update the token name and symbol once solana adds the appropriate metadata.
Change-Id: Ibcabf2a644bcc2b2962ff779fa7fb3cb1f2cc626
2021-09-01 13:15:28 +02:00
Hendrik Hofstadt
50afa0fe9e
Prefix wormhole token names
...
Change-Id: Ieea61ea2833f66c29a2fa0f52ae1a914a3956146
2021-08-26 14:19:19 +00:00
valentin
245409852f
bridge: mint directly to recipient
...
Change-Id: Idfa06609c5b9982c885eaa14b402965514b2e143
2021-08-19 10:19:48 +00:00
valentin
45d22ce84f
bridge: move evm state setup into a separate contract
...
Change-Id: Ibc790ba971be5144c0af65870d424c9c62b52039
2021-08-19 10:19:40 +00:00
valentin
a055af1416
move EVM state setup into a seperate contract
...
Change-Id: Ie000dd042c4ebbd7084511d38d87a7555c5d8048
2021-08-19 10:19:26 +00:00
valentin
51e00dc1bf
tokenbridge: decimal shifting & max outstanding
...
Change-Id: Ia9f27f317fe08c1d8dbb9eaa60e53633acfdd381
2021-07-27 11:43:44 +00:00
valentin
14e892300c
tokenbridge: implement new governance packet spec
...
Change-Id: Iee4b596b6a8ca9dfc9c6ee8c6188a4083a05edeb
2021-07-27 08:59:32 +00:00
valentin
2e6a93b643
ethereum token bridge on wormhole
...
Change-Id: Iab8d6f6aae6163d1c65f7d5a7395a943c62cdb0c
2021-07-21 14:11:58 +00:00
valentin
05d6c41722
update wormhole interface
...
Change-Id: I821234d1d010d9efd15cefb412a35b8717c36fa7
2021-07-20 16:25:38 +02:00
valentin
30a50938d7
remove persistency, return sequence, update tests
...
Change-Id: Ibdaa3f6443dcabe3a838bc25888bb9676b7e1d2d
2021-07-20 16:07:11 +02:00
Hendrik Hofstadt
227445cd76
Fix tests and add double hashing
...
Change-Id: I9676e8dd8d25f44c43ef10462493f20d1caff724
2021-07-20 13:43:21 +00:00
Hendrik Hofstadt
af4e29978d
Add commitment level to VAAs
...
This allows requesting attestations for various commitment/confirmation levels. This is helpful for low-latency applications like Pyth.
Change-Id: Ib49ace163365106b227613d2f66b787b3e5f5461
2021-07-19 07:11:45 +00:00
Hendrik Hofstadt
f665fe4c7b
Fix signature schema and use a single initial guardian in ETH
...
Change-Id: Ia1995df4ed8f86443cdd62acee7914ffc745d407
2021-07-02 10:48:54 +00:00
valentin
2be6f90314
remove payload length from vm
...
Change-Id: I89ae8530de8f43a2d2a1813d1d050413338b45d0
2021-06-28 13:45:45 +02:00
valentin
7032d6fba9
add sequence to vm
...
Change-Id: I0ec81979153c940a8d557ffdd67dec723c09f22c
2021-06-28 11:25:26 +00:00
valentin
c3fa835196
ethereum generalized messaging & governance
...
Change-Id: I412111a10749050ca095458f2fcfe81ce0fe189c
2021-05-27 16:01:49 +02:00
Hendrik Hofstadt
c405ec9f98
Ethereum refactor
...
This splits the Ethereum contract into a generic Wormhole and a
purpose-specific token transfer module that uses the main contract
for verification.
This acts as a draft for this structure.
Change-Id: I59e133dd7558d5e046045e464e4740241c696d5f
2021-04-20 09:51:07 +00:00
Hendrik Hofstadt
f4a7e705c9
Refactor VAA parsing into public view method ( #153 )
...
* refactor VAA parsing into public view method
2021-01-18 20:14:00 +01:00
Hendrik Hofstadt
6321ca2a49
Add more metadata to erc20 token name ( #152 )
...
* add more metadata to ERC20 name
2021-01-11 14:59:36 +01:00
Hendrik Hofstadt
dadb287220
bridge: fix quorum calculation ( #69 )
2020-10-28 21:22:15 +01:00
Hendrik Hofstadt
8d7a35683e
bridge: fix quorum ( #56 )
2020-10-25 08:57:04 +01:00
Hendrik Hofstadt
b4b0c61dfc
bridge: require single step guardian set index changes
2020-08-31 09:25:41 +02:00
Hendrik Hofstadt
3e88ed023e
ethereum: properly realign transfer decimals, handle decimals on ETH transfers, don't allow same-chain transfers
...
Co-authored-by: Valentin von Albrecht <valentinvonalbrecht@yahoo.de>
2020-08-30 19:25:31 +02:00
Hendrik Hofstadt
4871022fee
ethereum: prevent invalid guardian sets or same signer signatures
...
Co-authored-by: valentin <valentinvonalbrecht@yahoo.de>
2020-08-30 17:30:43 +02:00
Hendrik Hofstadt
a2bd5fbb11
ethereum: truncate decimals to 9
2020-08-30 11:21:45 +02:00
Hendrik Hofstadt
f6750a3762
all: consider decimals on wrapped assets, fix VAA posting, fix solana account parsing
2020-08-28 15:10:42 +02:00
Hendrik Hofstadt
8e6dc495dc
bridge: remove VAA timeout
...
Closes #35
2020-08-28 08:49:46 +02:00
Hendrik Hofstadt
a9dee7da99
ethereum: use create2 for wrapped assets
2020-08-28 08:35:00 +02:00
Leo
5a72d9029a
VAA guardian devnet submission
2020-08-27 17:46:40 +02:00
Hendrik Hofstadt
e0533c70c5
ethereum: make sure quorum calculation is done in the right order
2020-08-22 01:11:03 +02:00
Hendrik Hofstadt
9b3f7999ba
ethereum: add nonce to transfer input
2020-08-20 20:11:45 +02:00
Hendrik Hofstadt
085af1d6b7
Add reentrancy protection
2020-08-20 16:58:03 +02:00
Hendrik Hofstadt
59449a30b3
Update VAA structure
2020-08-19 16:41:25 +02:00
Leo
69d8125c67
ethereum: emit guardian set IDs in LogGuardianSetChanged
...
go-ethereum is having trouble parsing a log with structs.
2020-08-19 11:47:29 +02:00
Leo
8b34a3c534
ethereum: add getGuardianSet accessor
2020-08-18 16:19:28 +02:00
Leo
7903402fa6
Deterministic hashes for ETH lockups
...
We're missing a nonce for truly unique hashes - for now, two
identical transfers will only be executed once.
2020-08-17 19:29:25 +02:00
Leo
e548bbbee3
devnet: add send-lockups.js truffle script to generate test lockups
2020-08-17 16:31:48 +02:00
Leo
f8b313cab8
ethereum: remove unused Schnorr references from tests
2020-08-16 01:54:49 +02:00
Hendrik Hofstadt
6e5a3fa118
Update ETH smart contract for new signature schema
2020-08-15 00:09:48 +02:00
Hendrik Hofstadt
0e69aa4ddc
remove requirement for half_q on pub key x
...
Schnorr signatures don't have the ecdsa malleability vulnerability, also we protect against malleable signatures by tracking consumed VAAs using their body hash.
The check was implemented because the author assumed that ecrecover in the EVM does not accept s < HALF_Q values for malleability protection. There were 2 misconceptions:
1. pubkey_x is passed in as r and not s, 2. the check is not enforced in the precompiled evm instruction.
2020-08-10 21:08:57 +02:00