Community Effort to Launch ERC20 MAID

Not yet. Wanted to post the dev update first :smile:

Since we don’t have a ton of content, I want to stretch what we have as much as possible.

I’ll post a tweet for this in a few hours.

7 Likes

Yes agreed the content I have there now is just to quickly fill different sections that I though are important to have.

The client front-end is build with React using functional component and hooks. I’m also using styled-components as I read that this is the cleanest way to style divs/etc.

There also needs to be a working button that connects to your MetaMask wallet. This will the allow the website to send requests that you have to approve, like displaying the wallet address on the website or signing the transactions with MetaMask in case of burning tokens.

7 Likes

Thank you @DeusNexus for all your efforts in implementing this for the community and project.

Quick question @DeusNexus

Does the email address allow the use of the emailaddress+extra@example.com

where emailaddress is the email address and the extra is used for filtering or whatever classification.

GMAIL and some other systems have implemented this specification and others have trouble with it.

The reason I ask is that it provides a way for the user to add additional salt to the encryption process so that even if some group (ABCs) uses known email addresses they will find it hard to know if that email address is being used in your system because they would need to know the “extra”. (even if they got hold of the database)

Email servers will still route emailaddress+extra to emailaddress which means email verification will work as expected

10 Likes

You mean the swap email address or the any personal email address to sign up with? You can sign-up with any email address as long as it is valid.

1 Like

The question is if

maidswap+mysecret@gmail.com is considered valid by your software and can be used for registration.

Will it see that address as invalid
Will it strip the “+mysecret” and just use the actual mail box name of “maidswap”
Or use the whole

Hmm, I’ve no experience yet with that but for sure that could be implemented. So for now I assume that will probably not be available but later on for sure. How does the swap become aware of the secret you want it to append to the sender email? Do you need to provide it while signing up somewhere or want it to be created for the user?

2 Likes

Here’s the tweet supporting the latest update on the MaidSwap :smile:

15 Likes

Under email specifications an email address can have added a user specified subaddress field following a “+”

Email clients/servers recognise this and use the address before the “+” to identify the email account to send the email to. The client can then use the portion after the “+” for its own purpose which maybe for filtering.

For instance I have an email address (just an example) of myaddress@example.com

So any email sent to these addresses will route to “myaddress” account on the example.com email server

  • myaddress
  • myaddress+shop1
  • myaddress+shop2
  • myaddress+carplace1
    etc

This way the email client can do automatic filtering to sort my email when downloading the email. Also it provides a way to identify a site that was hacked and my email address was harvested and they will use the extended form (includes “+whatever”) and then i can filter that to spam now.

Sites should be recording the whole address field as myaddress+whatever@example.com as the email address.

This then means that if the ABCs get a hold of the client registration database (encrypted) by seizing the site or otherwise, then they cannot reverse engineer out peoples accounts (still encrypted but identified) by using known email addresses certain people are known to use.

For instance if the ABCs try to access an account with myaddress@example.com when I registered with myaccount+something@example.com then the ABCs would not see that there was an account with myaccount@example.com since the encryption would stop them. An unencrypted database may not provide that protection.

Thus the extra characters after the “+” become a pseudo additional salt.

TL;DR
All you need to do is allow the “+” to exist in the address part of the address@domain. Do not strip it but leave it there as is and let it be valid.

Simple explanation is in the wikipedia Email address - Wikipedia

Subaddressing

Some mail services support a tag included in the local-part, such that the address is an alias to a prefix of the local part. For example, the address joeuser+tag@example.com denotes the same delivery address as joeuser@example.com . RFC 5233,[13] refers to this convention as sub-addressing , but it is also known as plus addressing , tagged addressing or mail extensions .

Addresses of this form, using various separators between the base name and the tag, are supported by several email services, including Andrew Project (plus),[14] Runbox (plus), Gmail (plus),[15] Rackspace (plus), Yahoo! Mail Plus (hyphen),[16] Apple’s iCloud (plus), Outlook.com (plus),[17] ProtonMail (plus),[18] Fastmail (plus and Subdomain Addressing),[19] postale.io (plus),[20] Pobox (plus),[21] MeMail (plus),[22] MMDF (equals), Qmail and Courier Mail Server (hyphen).[23][24] Postfix and Exim allow configuring an arbitrary separator from the legal character set.[25][26]

The text of the tag may be used to apply filtering,[23] or to create single-use , or disposable email addresses.[27]

In practice, the form validation of some web sites may reject characters such as “+” in an email address – treating them, incorrectly, as invalid characters. This can lead to an incorrect user receiving an e-mail if the “+” is silently stripped by a website without any warning or error messages. For example, an email intended for the user-entered email address foo+bar@example.com could be incorrectly sent to foobar@example.com. In other cases a poor user experience can occur if some parts of a site, such as a user registration page, allow the “+” character whilst other parts, such as a page for unsubscribing from a site’s mailing list, do not.

16 Likes

Hi, I want to confirm that you can register using email+random@provider.com. I tried it with my Gmail and it received the confirmation link successfully.

Login requires you to use,
email: email+random@provider.com
password: Your Password
2-FA Code: (If enabled)

Hope that answers your question/request?

11 Likes

You can now view the contract directly on MaidSwap using the Web3 ABI.
https://maidswap.io/smart-contract

12 Likes

Sounds good, and I am sure a lot of people would use this if they knew about it.

Thanks for confirming it.

4 Likes

You can now all claim your free MAIDe test-network tokens: https://maidswap.io/
Every new user who signs up automatically is eligible to claim 1337 MAID.erc20 from their fake MAID.omni balance.

NOTE: The site is still not mobile-friendly and is best viewed on larger screens.

Requirements:
-You need to be registered, users who already registered now automatically also got 1337 MAID.omni
-You need to have MetaMask installed to get MAIDe minted to your ethereum address on ropsten test-network.

After receiving the ERC20 tokens they will show up in your MetaMask wallet after adding the ‘Custom Token’ with the contract address: 0xaa273e1d9cde57f22b3dcc585b1cf166de38b15d

Have fun claiming your tokens and sending them to each other. This demo is mostly to get familiar with the process and eventually allow you to swap real MAID and trade it on decentralized exchanges.

Metamask on Ropsten Test Network:

Issuing New Tokens:

Please report any bugs here, like stuck transactions etc…

All tokens that are minted will be reflected on the ropsten test-network and can be seen on the ‘Smart Contract’ page. You can also view your ETH balance using the query function.

21 Likes

Great job on this, thanks.
I’m not familiar with eth etc, but is there any way these test coins can be disabled / ended once you go properly live?
Id hate for someone to end up buying test coins thinking they were the real deal.

2 Likes

this went smooth as clockwork :slightly_smiling_face:

one qa note : when using backspace to delete amount of maid to convert - when reaching the last digit it changes to “1” - and then it’s never deleted.
i’m assuming something with react js text area validation.

4 Likes

No worries because the test-network is not connected to the real ethereum network in anyway. You cannot receive test-tokens on the real network and you can remove the contract address from your wallet so it will not display any of those tokens anymore.

3 Likes

Yes MAID only exists with 0 digits. On exchanges you are allowed to trade fractions but you can never really own anything other than a whole MAID. Validation is because minting 0 or anything lower doesn’t make sense and it makes it an integer when you try to put anything else.

I will try to send you some tokens as your address is now under token holders which can be seen on etherscan. :smiley:

4 Likes

Works For Me :slight_smile:

10 Likes

Hmm…I’m getting an error message when I try to demo this

1 Like

Me too…

1 Like

1 Like