It is time for ERC20 MAID!

Just clarifying to avoid any confusion here.
Bancor is a deFi protocol developped by the Bprotocol foundation in Zug Switzerland. Bancor is not an operator.

there are two ways to build an omni/erc20 bridge:

  • a centralized way where regulated custodians are involved, (e,g With this method KYC is inevitable, but holders are protected as their funds are handled by regulated entities.
  • a permissionless process as described below:

Thanks for the clarification. Even with either of the two options laid out above, there would still need to be some guarantee that whoever has purchased ERC20 MAID can redeem those tokens for OMNI MAID even if they never originally held OMNI MAID (e.g., the Bob converted OMNI to ERC20 >> Bob sold ERC20 to Alice >> Alice wants to redeem OMNI so she can redeem SAFE.). All of this seems so cumbersome that I wouldn’t buy ERC20 MAID if I couldn’t use it to directly redeem SAFE.

Have to agree with this. If kids around the world can figure out how to code an Ethereum smart contract in Solidity, then surely devs who are building an infinitely more complex new internet can solve for how to convert an ERC20 token to a coin which does not yet exist. Or imagine this: with a token value that’s reflective of what many of us think this project is worth, the team could hire an army of developers familiar with Solidity and who could also help to not only speed to launch but also support developing the SAFE dApp ecosystem thereafter.

I’m a bit disheartened that there seems to be risk-adverse-ness in the least beneficial ways. It’s like every attempt to change the status quo (which has been ever-depreciating value and public interest in this project) gets shot down or waffling support that turns into no support—whether that’s this OMNI to ERC20 proposal or the many other exchange and marketing proposals people have shared. I just don’t get it.

As noted further up this chain, I was neither in support of or against this idea until a more clear plan was presented. @SwissPrivateBanker is presenting a clearer plan. Are there risks involved? Yes, but in the grand scheme of things the potential upside (the price of MAID and influence of this project increases thereby increasing the resources MaidSafe has to complete and support launch) outweighs the negatives (MAID loses the last decent exchange it’s listed on which already is unable to meet global demand, and this project’s reputation continues to suffer presenting an even further uphill battle to successful launch).

MaidSafe is a team of brilliant developers. This is a community that’s willing to pitch in and help. We have to do something. There’s no reason why we can’t pull together to get this done—whether that’s executing this ERC20 conversion and/or getting listed on additional exchanges.


I will only point out that if two Safe Networks appear, one with access to an ecosystem like Etherium where all the money are and one with 1 exchange or without an exchange months ahead, people logically will prefer the one with access to all the DiFi money.

I note that I do not want this. But this is a real possibility.


Honestly your proposal is the first decent proposal where there are workable details. Thankyou for presenting the offer. While I would not take up erc20 others have wanted it for some time.

There will be tax implications for a number of countries. Dunno how many but I know of some.

Hopefully the offer can be examined by MaidSafe & community and a decision be made soon.

That is a generous offer.

Maybe if you expand on KYC in Switzerland others might be more comfortable with the process. Like what info, what conditions are needed for you to release the info to an enquiring party. Things like that

Also reading further, I also agree that there needs to be erc20:MAID → omni:MAID process available. I can see a few advantages of allowing that, even if its just a confidence one, and the obvious simplification of the redemption phase. (and attack surface concern too) And of course MiadSafe has less things to worry about


oh there should NOT ever be two networks.

my point is even if THE safenetwork is delivered and successful, it will take months to have any centralized exchange list the new token, especially so as we are talking of a new protocol and a privacy coin on top of it.

In any case we might want to have an erc20 mirror of the safecoins, to have blockchain traceability (useful in some cases) and access to deFi. deFi means smart-contract capabilities, and massive liquidity.


Here again is my (updated) idea for the MAID → SAFE conversion

  • There is a function ClaimSAFEcoins(maidSourceAddress, safeDestinationAddress, amount, txUUID, attestationSignature, pow)
  • attestationSignature is a message signed using the private key of the source address holding the MAID, with the contents of the message being a concatenation of the other function parameters
  • When network is ready to go live, an immutable snapshot of MAID account balances at a given block is stored on the network. Storing a snapshot at a certain block # avoids the need for network participants to run a BTC node in order for new burn transactions to be verified for example, and also makes it so that the exchange doesn’t need to be done in some centralized way, like a clear net site operated by MaidSafe.
  • The ClaimSAFEcoins function verifies that the attestation signature is valid for the given function args. It also verifies that the amount being claimed is valid as per the snapshot, and there would also need to be a running balance of how much each address has been credited so far. The section nearest to the source address could be responsible for keeping this running balance of claimed coins. Each claim would have a UUID, making each redemption event unique and preventing replay claims. Small pow included in the function call based on the function args to avoid DoS attacks.
  • Once elders reach consensus that the claim is valid, claimed coins balance is updated and coins are released

To support both Bitcoin and Ethereum conversions, I’d see this being duplicated such that there is a second snapshot from Ethereum, and a second redemption function that includes a second signature validation algo.

Originally proposed here

For sure. Could entirely be done.

My comment above is just trying to point out that there is a) work there and b) risk. There is no “just do another snapshot”. It is at least 100% more work. There are twice the number of moving parts to work out. Twice the amount of things to go wrong (at least).

Also, I think if it is as easy as some folk are making out, then as you note @Sotros25, we as a community (including maidsafe as a company) could get something working and using it in a testnet to build confidence before anything official would happen (if it was needed). If we don’t have a demo of it… then we need to ask what’s stopping that ?

Smart contracts are also messed up reasonably frequently too.


What’s stopping a company doing this? Promising 1erc-20 = 1maid in a tether like situation? If there’s demand for it, there’s money to be made there no? Can this be done without maidsafe as a company? (And if so… what do maidsafe lose?)


I would suggest here that the process converts all the coins at the address in one. The user can then split up the coin balance later. There is no fees on the network and its anonymous. Basically this saves errors because someone sent some of their MAID to a friend and makes a mistake in amount requested.


Yes, that would be simpler as no running balance of claimed coins required.


I’ll tell you right away. Most people call Hex a Scam. Even more people call MaidSafe a scam. I participate in many communities. Everywhere we are ridiculed or directly called scam. Even in our chats they call us scam … If we don’t do something ourselves, no one will do something for us…

Anyone that invested in ethereum instead of safe back in 2014 is now probably financially free and they have a token standard that we can’t agree on using so we can make our best attempt at drawing in more interest and getting more runway for the team to complete this project and actually compete. Guys this is frustrating beyond belief. The testent idea is a good idea but even more work. I say just do it already.


Every step saved reduces the chance of error by that much more


I agree that the snapshot approach has limitations. It imposes a rigidity that would put a stop to trading. By trading, what I mean is if someone wanted to give or buy MAID after the snapshot, the picture would no longer be accurate.

Okay, I think @neo presents a solution here:

@joshuef, what functionality do you want to see demoed? I’m assuming the process of conversion between OMNI and ERC20 (not between OMNI or ERC20 and SAFE as the later does not yet exist).

@SwissPrivateBanker, what could a demo look like?

People would not trust it. It would be DOA.


I have to disagree with you both. There is not disdain from the company, quite the opposite. I have met @SwissPrivateBanker and he will know that to be the case. So I welcome and thank him for this offer.

However, so far it’s not simple, it’s not no work, it’s not without risk and it’s not something some kid from X can just knock up. It will have to be handled sensitively as you can see in this mega thread. Look so far at the calls for maidsafe to get involved, read this as Stop launching and ponder stuff. When we don’t work on launch we don’t launch. So please be aware of this, it’s not insignificant at all.

Now if we can create a mechanism where we use a message and transfer to burn address mechanism for the conversion then it can happen for erc20 and Omni, but that is work. How much, I doubt too much and it can be done. That means no snapshot etc. just straight message. There are still ways to restart etc. but this thread will take all dev time away from launch getting into details about that.

So again I say thanks @SwissPrivateBanker I think this has legs, but we need to consider a few things and halt some progress to launch to do that. Exactly what I have been avoiding so far. I feel the community can punch away at this for us to get all the questions answered and allow our guys to feed in, but not stop and design the conversion detail right now. I really want the network first.


@SwissPrivateBanker I hear that you are keen to do this, and I have no problem with it so long as it doesn’t impact Maidsafe.

Dropping your requirement for Maidsafe to sign a contract doesn’t eliminate that, because it’s a legally enforceable commitment.

Personally I’m not sure it would be feasible, because it requires Maidsafe to commit to something that we’re saying somebody else will have to do, and doesn’t exist yet. I wouldn’t want to commit to that and I hope Maidsafe won’t.

Regardless, this seems very clear:


Depends what “it” is… if the promise, is evidenced by an option to see 1ETH20.MAID converted to 1Omni.MAID, then that is as good as “it” can be…

I wonder above @SwissPrivateBanker 's post makes very clear the two options…
One option with KYC, as traders might expect; and the other, looks to me like a burn that prevents confidence in a reverse action because there is no option to undo the conversion to ETH20.


The custodians suggested would have to put in place whatever did provide confidence that they would honor the 1:1 ETH20.MAID->Omni.MAID but when reading that I didn’t see that as extraordinary beyond what other 3rd party exchanges do. The process would be evidenced over time as users moved back and forth across that ETH:Omni bridge.


So it looks that most possibly only option
Omni.MAID->ETH20.MAID with ETH20.MAID->Omni.MAID
is possible as it not require aditional work from MaidSafe devs ?

So only official statement on website, about existance of ETH20.MAID and list of some place to buy it would be convenient to have.

After start of real SafeCoin, there can still exist Omni.MAID, ETH20.MAID and arbs should keep the price same.

1 Like

I think that we should leave team to focus on launching. After at least Fleming, let’s do something. And if you want to get ah instant cash game during this bull market, there are plenty of coins out there.

It is the most critical and important time for team to prepare launching full network. It is the time when things developed over a decade are finally assembled.

If we really like and support this project and SAFE’s goal, why we rush team to do another things now ?

And I strongly encourage the team to focus on what they’re doing rather than paying too much attention to the community. This project’s success is totally depends on code nothing else.


Yes, I think we should focus on network first!


So I suppose if we get this sorted then this has a better chance of succeeding? I’m hopeful we can proceed without disrupting or distracting Maidsafe.