Very large BMS release this week - just released. Miraculously, the auto upgrade process seemed to work for our testnet participants (looking at Earlz node it appears to be upgraded, should be on v1054 now. ) I'm surprised because this new version adds a dependency for Nethereum, which normally requires a manual upgrade but we'll cover that when we get to portfolio builder.
This upgrade includes: RandomX mining against sancs, mining in testnet And mainnet against sancs, Switching Chains, Web3 Login:Authenticating with metamask (in contrast to usernames and passwords), a user profile page, profile avatar, BBP web wallet (based on metamask for your BBP priv key), Logging Out (clearing the metamask sig), The chain indicator in the header, The logged in indicator, The RandomX pool pages (metrics , leaderboard etc), half of BBP Univ, 75% of portfolio builder, Charts for PB & mining.
So first we need to tackle logging in and logging out (web 3 authentication) before we can discuss anything else (otherwise you cant see your profile or switch chains etc).
The user record is now decentralized and stored on the sidechain, so before we go to prod we need to obfuscate the email address (as that is our only sensitive field at this point) thats not done yet.
The way we access your user record is : Now your metamask public ERC-20 key is your user record primary key, and that pulls up your profile which pulls your avatar, email address, nickname, PB pub signature etc.
So lets go through a few test cases to get logged in and out using web3:
Navigate to my sanc1 for these tests (you can do a lot of this on your own node if you want, but will get errors when doing the RX tests because you need a lot of pool settings to run a pool) so I will recommend just use this endpoint for these tests:
https://sanc20914556214.cdn.biblepay.org:8443/If you go to that sanc1, you will see the new UI and the new menu.
Test case to Register as new User:
- Go to Authentication - Profile
- Our system recognizes you are new, and launches metamask (if you dont have metamask, I think it just throws an error telling you its not installed. We need to make it redirect you to wiki page to explain this web3 mechanism before we go live). Anyway if you have metamask installed, it will prompt you with a signature request.
- The sig request is the brand new non harmless type (IE cant access coins) and its a signing request for logging in. Now sign the message.
- We store this signature for up to 30 days as a cookie on your machine. If you are on a non-secure machine you can Log Out, otherwise for convenience you can keep coming back authenticated.
- Once logged in the header should say Logged In.
Test to populate your profile:
- Navigate to Authentication | Profile
- Populate nickname and save it . Change avatar. It should auto save the avatar.
- Verify that you have a BBP wallet (this wallet is now derived from your Metamask key! An improvement). Another words if you move machines, and reload your metamask key, your bbp webwallet coins will move with you.
(Lets test spending some coins from the web wallet. )
- First, Switch chains by clicking Change Chain- then the header should show chain : TESTNET.
- In testnet mode, verify your bbp wallet has an address for TESTNET now (its no longer starting with a B).
- Try spending some testnet coins by sending them to your biblepaycore wallet. Verify they come through on the core wallet side.
Test to Log Out:
Click the top right avatar circle | Log Out.
Verify the header shows logged out.
If you navigate to Profile, it will try to log you in again (simply because we have that process there to log a user in who has been logged out).