How to Claim your EOS Tokens after Buying on Bitshares (or commit suicide)

in #eos6 years ago (edited)

I suspect that the suicide rate is going to go up this June because many EOS investors who buy on an exchange seem to be under the mistaken impression that they will still have EOS come June 3rd while leaving them on an exchange. Right now, the EOS ICO is being hosted on the Ethereum blockchain using that smart contract system.

But because EOS is meant to replace Ethereum by fixing the scaling issues in the same manner that Steem and Bitshares did, your EOS tokens will no longer exist after early June unless you take the technical measures I will lay out below. This is because EOS will have its own blockchain in early June. You need to secure your EOS public and private key and register the public key to your Ethereum public address by then.

giphy.gif
source

Keep in mind that there’s more than one way to do this, so the way I’m going to explain to you is a method using MEW (MyEtherWallet) and using the Bitshares DEX to get past restrictions from the EOS website. Some people will not be able to participate in the ICO without a VPN due to potential securities restrictions. If you can access the website directly, you might want to use the Metamask plugin to hold your contract.

Because the website has someone in charge (Dan Larimer), that website has to be careful of government regulation. Conversely, with the power of decentralization, because no one is in charge (decentralized apps run wild autonomously), no one can be blamed. In this latter case, you are your own bank and have to be fully responsible for yourself (hence this is not investment advice).

Step 1: Buying on Bitshares

This is probably the easiest way to do this particularly if you already have a Steemit account. In this case you can just send some of your Steem directly to your Bitshares account using Blocktrades. There are also other methods like this one that might be cheaper. This will convert your Steem into Bitshares… (you don't have to use Steem to do this, my personal preference is Litecoin for most of these transactions)

Screen Shot 2018-03-03 at 9.30.39 PM.png

From inside of your Steemit account you can click on the "buy Steem or Steem Power" and it will bring you to this page above. Then you fill out the fields. On the left is where you are getting your funds (Steem in this case) and on the right is what you want it to be converted to (Bitshares in this case), then you replace your Steemit name with your bitshares account name. I used "BillButler" here who is one of the main programmers of Bitshares but you would replace it with your own account name.

Screen Shot 2018-03-03 at 9.31.38 PM.png

Then you click on "get deposit address". It will say that it's generating a transaction which is a bit misleading to newbs but what it is doing is setting up a link between accounts. The amounts shown above don't really matter here either because the actual amount is whatever you send from your Steemit account, not what is shown here.

Screen Shot 2018-03-03 at 9.32.59 PM.png

Then you go back to your Steemit account and click on Wallet and click on Transfer and it will bring up fields to be filled out below. The most important ones here is the Blocktrades account and the Memo field. You can send any amount up to the total balance.

Screen Shot 2018-03-03 at 9.34.45 PM.png

When you click on Submit, then the funds will be converted into Bitshares in your bitshares account momentarily. It's important to make sure that the memo field is copied exactly. Trying to type this in manually is the same as just burning your cash in a fireplace.

Screen Shot 2018-03-03 at 9.37.23 PM.png

Next, inside of your Bitshares account you want to click on Exchange, then look toward the top right and you will see Markets as shown above. You want to set the Quote currency to BTS then type in EOS below that to find the right market to trade your bitshares into EOS. Double click on Open.EOS and you'll see a change in the display with the new candle graph.

Screen Shot 2018-03-03 at 9.38.46 PM.png

Then you click on the Lowest Ask link at the bottom and the quantity of EOS to buy. The other info such as market fees are below that. When you're satisfied with the exchange rate you click buy and it will start looking for others in the market willing to sell. Usually this order will be completed inside of a few seconds.

At this point you now have EOS in your Bitshares account, but they are as yet unregistered. (EDIT: this is technically not correct; it is registered to Open.EOS, but you still don't control your keys. @vortac mentions that OpenLedger will replace this with EOS when launched). You don't exactly have to rush yet to register these, but you should be familiar enough with this procedure so that you aren't rushed in the last few days before this ICO closes for good. I held my EOS tokens in my Bitshares account for over a month before transferring and registering them. This is different from getting them from the eos.io website directly which seems to require registering them before the end of each offer period that lasts a couple of days (not sure of this).

Step 2: Sending your Open.EOS to an ETH address you control

At some point you will want to go to the Deposit/Withdraw tab and set up the following settings...

Screen Shot 2018-03-04 at 3.02.10 AM.png

I already withdrew all my EOS which is why the balance is zero, so I'll just outline this rather simple process. You want to select OpenLedger and Gateway at top left, then select Open.EOS below that. Then towards the right you want to click on the Withdraw tab and then the Withdraw Now button in blue. It will bring up the following window...

Screen Shot 2018-03-04 at 3.02.53 AM.png

Note that the Gateway fee is 0.7 EOS which is about $6 USD. That's rather expensive compared the Bitshares fee, so you don't want to do this every time you buy EOS. Let it accumulate and then ideally transfer it once. You should make sure that the ethereum public address you're sending to is correct (copy and paste then check the beginning and end of the string at the very least). Then click withdraw and it will bring up a dialog for you to enter your passphrase. Things are now about to get very interesting!

Step 3: Create your EOS Public and Private Keys

This is where you have to be extremely careful. There is this handy tool offered up by another Steemit user. If red flags are going off in your head, your instincts are good. You do not want to generate these keys when you're connected to the internet and should do so on a machine that never connects to the internet if you want to be completely safe.

giphy2.gif
source

For one thing, how do you know nobody is recording the public and private key pairs on the server? What if you have malware taking screen shots of all your passwords on your local machine and sending them off to some obscure location? Are you running Wireshark to detect all nefarious network activity? Do you have any anti-keylogger software that encrypts your keyboard strokes?

So here's what you do...

Screen Shot 2018-03-04 at 3.33.19 AM.png

Disconnect your internet, then click on Generate EOS Keys. Make sure you store them on a couple of thumb drives and disconnect. Printing really isn't a good idea either because malware frequently resides on these as well, so if you're like me, you went to Github downloaded and installed it on a local machine that never connects to the web using TAILS. Or maybe simply disconnecting while you do this, (then wiping your hard drive and reinstalling the operating system before connecting to the web again). Or you can take your chances and hope nobody is spying.

giphySDF.gif
source

The page on Steemit that shows this tool did get an upvote from Dan Larimer's account. Is that an endorsement that the code is clean? Even if it is, how do you know the code on Github is what is actually being run? Does the random number generator have sufficient entropy? (generate a few thousand of these to see if there are any repeats) Is the private key that is generated valid? (another way of saying does the hash output map correctly) This is the kind of mental process you have to go through to be absolutely sure. So take it offline to a local machine that never connects to the internet if you want to be completely safe. Then store multiple copies of your private and public keys in a safe place.

Take the EOS public key by itself and copy it to your internet connected machine. The private key should ideally never ever see internet access whatsoever. For those of you around in the 1990's, these keys work in much the same way as PGP email did (Phil Zimmerman) where the public key is your address that the other user uses to encrypt a message to you. That is like your mailbox outside of your house. But the private key is what you use to open that mailbox.

Step 4: Register your EOS Public Key to your Ethereum public address

This will of course be the same public Ethereum address you've sent your EOS to from Bitshares. From inside MEW (MyEtherWallet) you want to select the Contracts tab...

Screen Shot 2018-03-04 at 4.31.34 AM.png

At top right you want to select EOS Contribution, then the other fields will automatically populate. Click Access. This will bring up the following...

Screen Shot 2018-03-04 at 4.36.14 AM.png

You can ignore step 4 in the above graphic because that's for those who have used the EOS website directly instead of Bitshares. Select register from the grey combobox which is near the bottom of a long list of functions. Below that you will want to paste in your EOS PUBLIC key. Make sure this is the public key! Then you will be ready to write the EOS public key to the Ethereum smart contract with the ETH public address as a reference.

Note: You will need at least a small amount of ether as gas for the transaction for this to work (0.01 ETH should do it).

Screen Shot 2018-03-04 at 4.37.21 AM.png

I recommend you connect with Trezor or Ledger S Nano then you can click Write at the bottom. Note: this is where I had trouble for a while because the browser blocked a popup window. I disabled blocking of popup windows and it worked which didn't make much sense to me because I had to use a popup window to login in the first place. Anyway I got it to succeed after being stuck there for a while changing various browser settings.

Step 5: Peace of Mind (checking the keys function to be sure), then listing your EOS balance in MEW

Once the last step is completed, you will want to know if your EOS contract has completed successfully. You can do this using the Keys function (the same place where you selected "register" you will now select keys.

Screen Shot 2018-03-04 at 5.04.36 AM.png

After clicking Read at the bottom, you should see your EOS public key and if you do, then you've successfully registered the smart contract and can wait until launch day for further instructions on how to use your EOS priv/pub key pair.

If you want to see your EOS balance in MEW, you go to the Send Ether and Tokens tab. At the middle right to lower right side will be a tokens section. There is a ready made list that you can just select which includes EOS and from that point on, EOS balance held at that Ethereum address will show up in the box. Click the Show all Tokens button as shown below...

Screen Shot 2018-03-04 at 5.11.15 AM.png

This list that popups up will be long, but EOS is there. Once clicked on, your wallet will remember to display it as above. If you want, you can go back to Bitshares and send more EOS later on and it should show up.

Last, I wanted to explain, why go through all of this? Because I noticed that the top performing blockchains are Steem and Bitshares which were created by Dan Larimer. EOS is his current project. All the other blockchains out there have potential scaling issues, but these three have that issue fixed and explains a likely scenario later this year. As always this is not investment advice. I take action on what I believe. You must make your own decisions.

Please note any errors in the comments section. While I've been a programmer for over 2 decades, I'm a novice to blockchain tech...


Donations (public bitcoin address):
donatebitcoin.png
3FwxQsa7gmQ7c1GXJyvDTqmT6CM3mMEgcv


steemit-footer.png


Sort:  

Congratulations! Your post has been selected as a daily Steemit truffle! It is listed on rank 1 of all contributions awarded today. You can find the TOP DAILY TRUFFLE PICKS HERE.

I upvoted your contribution because to my mind your post is at least 59 SBD worth and should receive 126 votes. It's now up to the lovely Steemit community to make this come true.

I am TrufflePig, an Artificial Intelligence Bot that helps minnows and content curators using Machine Learning. If you are curious how I select content, you can find an explanation here!

Have a nice day and sincerely yours,
trufflepig
TrufflePig

I was under the impression that OpenLedger will register my OPEN.EOS for me?

http://cryptofresh.com/a/OPEN.EOS_GDEX.EOS
OPEN.EOS is OpenLedger-issued asset for EOS Ethereum token.
After EOS release it will be replaced by "real" eos

Good to know. Thanks for the clarification. I operate under the principle that Andreas Antonopoulos often cites: "your keys your coins, not your keys not your coins". When I couldn't find the private keys for my ETH addresses on Bitshares, I knew I wasn't in control.

If you're comfortable with holding your coins on an exchange, then I suppose the situation would be similar to what happened when bitcoin forked last August and you were holding on Coinbase. Those users eventually got an equal amount of BCH the following January (early this year), but they had to wait 5 months. I don't know what OpenLedger will do, but you should assume that they could become an MtGox either intentionally or by accident.

The reason I want to control my own keys is because of this scenario...

You might want to upvote your own comment here for visibility because it's important and I don't have enough voting power to put it in first place currently.

I would upvote it, but as you say, it's not entirely clear what will OpenLedger do regarding OPEN.EOS registration. It's far too vague, don't want anyone to think "OK, so no worries, they are on it 100%".

Thanks a lot for posting this @zoidsoft, I saved this link. I’m one of those people banking on EOS to do spectacular things. Though I’ve been aware this entire time that steps are going to have to be made in order to maintain, I wasn’t certain how to execute them. Thanks.

I find this post very useful. Finally registered my EOS, better late than never :)
Thank you.

I'm a little confused i did everything you said in this guide, but step 3 Fund EOS Contract on Send Page, do i also need to do something with this? send eos tokens somewhere? or do i only need to do it when the main network is launched?
Edit: I think i got it, that is supposed to fund the eos contract with eth to get more eos tokens right? So i don't need to do it, and if i happen to send EOS to that place i'll probably lose them all right? You should explain this in the post, dumb noobs like me need a picture to understand this :P Just tell me if i'm correct

EOS is currently an Ethereum based token, but this is temporary. You need to send your EOS to an ethereum address you control before June 3rd because wherever they are at that date is when the EOS blockchain takes a snapshot of all of the EOS ethereum contracts as to where they are. @vortac pointed out that Open.EOS will do that with it's own copies, so if you trust them, you may get EOS at a later date, but nothing is as certain as having your own keys.

So send your EOS to an ETH address that already has at least 0.01 ETH in there and then use the Contracts tab to register your public EOS key to that ethereum address.

That's what i did, my EOS is in my MEW account and used the guide to register my public EOS key, the thing that got me confused was the part that told "Fund EOS Contract on Send Page" on the register page, which you don't explain in your guide what it is used for

You did that when you sent the transaction to burn a small amount of ETH to register the public EOS address. If you then use the "keys" function, then put the ETH address and click read, if it shows your public EOS key, you're ready.

Then at some point after which EOS has its own blockchain, you will want to create an EOS wallet which you can send your funds to (or keep on that address until you're ready to spend). It is similar to a bitcoin paper wallet at this point though, so if you send any, you should send all of it to a new EOS address.

WTF?

I just found this and I'm trying to get my head around it all. Maybe after half a bottle of Vodka isn't the best time to be dealing with this.

Is this the only way to do this ?

I had the idea that once I'd taken off the exchange they were safe but it seems like that's not the case. What happens to them if I leave them in my offline wallet until June when they switch over to their own blockchain , do they disappear into the aether or does EOS get them back ?

I can't find any mention of any of this on eos.io.

Can I secure my EOS public and private key and register the public key to the Ethereum public address in the offline wallet I'm using now ?

The simple explanation is send your EOS to an ethereum address you control the private keys to. Then you just register the EOS public key to the ethereum address you sent it to.

Thanks zoidsoft!

On behalf of everyone who uses their private key to sign in here, how do we change that? How do we sign in, manage our page, etc. using a different key? ....If you don’t mind, thanks in advance!

Different key from what? Are you talking about Steemit? EOS? Bitshares? I keep my keys backed up to external thumb drives.

Steemit. Yes, sorry I didn’t clarify that. To sign into Steemit, rather than using your private key, I’ve read a couple different things about using a different key. Is that an easy process to switch? Thank you.

Use your active or posting key if you aren't doing financial transactions under wallet | permissions...

Screen Shot 2018-03-20 at 5.17.34 PM.png

And that’s why I ask you. Thanks @zoidsoft!

The part, how to generate private/public key is not clear enough. I understand concerns, good you addressed them, but actual steps seems to be missing.

For example, you said to DL and install from github on a machine that is not connected to internet. The only way to install something form github that I know is when you are connected to the internet.

It would be nice, to show us with all the steps, how to do this manually. As it is right now, I can't (don't dare) to follow your guide since I would be stuck at this github part. (I already have open.eos, but moving them to reg. mew plus registering the wallet and creating the keys is my problem)

That's because generating the public private key pair is no more complicated than clicking a button on this website (which you would have found if you read the link in that section)...

For extra security, you run a virus / trojan scan to see if any hackers are taking screen shots of your events and sending off to a remote site. Before you click the "Generate EOS Keys" link, disconnect from the internet.

Oh, OK, thank you, will give it a go ;-)

This is such an interesting project on how they have executed the ICO. It proves that it will be a force in the crypto world. Thanks for the guide!

Is it true that they are trying to build a platform like steemit on EOS?

Don't know.

Coin Marketplace

STEEM 0.29
TRX 0.12
JST 0.033
BTC 63762.28
ETH 3107.51
USDT 1.00
SBD 3.84