=== Web3 - Crypto wallet Login & NFT token gating ===
Contributors: miniorangesecurity, cyberlord92
Tags: web3 authentication, NFT token gating, Ethereum, Polygon, Solana, Loopring, ERC20, ERC721, ERC1155, Metamask, WalletConnect, Phantom
Requires at least: 2.0.2
Tested up to: 6.4
Stable tag: 3.1.1
Requires PHP: 7.0
License: MIT/Expat
License URI: https://docs.miniorange.com/mit-license

Users can sign up for your WordPress using their crypto wallets. Gate content based on NFTs owned. Web3 authentication plugin supports crypto wallets such as Metamask, Coinbase Wallet, Argent, Trust Wallet, Rainbow, Coinomi, Guarda Wallet, Crypto.com DeFi Wallet, Trezor, etc.

== Description ==

This plugin allows users to **Sign Up/login** to a WordPress website using their **cryptocurrency wallet**. And also helps to **NFT token gate exclusive content** of the WordPress site. Here only users who have specified NFTs in their crypto wallet will be able to access locked content. 

Our Web3 Authentication plugin uses digital signature verification for crypto login. This increases the security of WordPress crypto login.

During crypto wallet signup, our Web3 plugin creates a regular WordPress user account, so existing plugins, and customizations will continue to work as intended.

The Web3 authentication login plugin supports both hot and cold wallet login. 

Watch video embedded below to get an overview of the plugin functionality
[youtube https://youtu.be/YigW54vg22k]

== Hot Wallets Supported for Crypto Login ==

MetaMask, WalletConnect, Coinbase, Trust, Edge, XUMM, MyAlgo, Pera Wallet, Nami, Typhon, Flint, VeWorld Electrum, Robinhood, Binance, Mycelium, AtomicDEX, Jaxx, Samourai, Huobi, Luno, ZenGo, Crypto.com, Bitcoin IRA, Exodus etc

== Cold Wallets Supported for Crypto Login == 

Ledger Nano S, Ledger Nano X, Gamestop, Trezor, KeepKey, CoolWallet Pro, Safepal S1, Keystone Pro, Ellipal Titan, etc

== Supported Blockchains ==

Ethereum, Polygon, Binance, Avalanche, Algorand, Solana, Loopring Layer 2, Base Layer 2, Cardano, All EVM based blockchains, XRPL, Vechain etc

== Supported Token Standards ==

ERC20, ERC721, ERC1155, BEP20, BEP721, BEP1155, SOL, etc

You can view more about our plugin at [[here](https://plugins.miniorange.com/web3-wordpress-login)].


== FREE VERSION FEATURES ==

In the free version of the plugin, you can log in to the WordPress website using a crypto wallet. The login with Crypto Wallet button can be displayed on the WP login default page. List of features-

* Login with Crypto wallet button available at WP login default page
* Option to hide the Login with Crypto wallet button 
* Login with Crypto wallet support for MetaMask, Wallet Connect, Coinbase, Phantom, MyAlgo Wallet

== STANDARD VERSION FEATURES == 

* All free version features are included
* Shortcode for Login with Crypto Wallet button
* Custom styling for Login Button
* Custom Redirect after login
* Enable/Disable profile completion for new users that signup to your site using crypto wallet


== PREMIUM VERSION FEATURES ==

The premium version of the plugin has additional features where you can also restrict/lock/gate specific pages, posts, and videos on their WP website and allow users to access the content based on the NFTs owned in their Crypto Wallet. List of features-

* All Standard version features are included
* NFT Token gated content
* Multiple NFT contract addresses supported 
* Regex based rule(All child pages will block automatically under the configured URL)
* Support cold wallets like ledger, trezor, etc
* Support Added for Hedera, Algorand and Solana Blockchain
* Connect wallet to existing  WordPress profile


== ENTERPRISE VERSION FEATURES ==

The enterprise version of the plugin additionally lets you assign roles based on the NFT collection owned in their crypto wallets. Users who login in with a crypto wallet to the WordPress website is assigned a role based on their NFT collection.

* All Premium version features are included
* WordPress role mapping based on NFT owned by crypto user
* NFT token gated section of page/post
* Disconnect Button
* Customize end user experience for NFT gated content access flow

== ALL-INCLUSIVE VERSION FEATURES ==

All-in-one WordPress management with the support of add-ons / Third Party Plugin compatibility. 

* WooCommerce Coupon mapping based on NFTs ownership
* BuddyBoss/BuddyPress Profile Mapping based NFTs owned by end user
* LearnDash Attribute/Group/Course Mapping based on NFTs owned by user
* MemberPress membership mapping based on NFTs held by crypto user
* Crypto wallet user video analytics for Brandmax plugin

== WooCommerce - Web3 Integration Add-on ==

The add-on can be used for Crypto wallet login/Wallet connect to WooCommerce login and registration page. You can create NFT token gating and NFT gated WooCommerce stores where access can be restricted. Users who have required NFT collection in their wallet have access to the restricted products on WooCommerce stores.

You can also employ NFT gated WooCommerce for giving discounts, here users who have specific NFT or token collection in their wallet are given discounts or certain benefits.

You can restrict access to WooCommerce coupon affiliate programs based on the NFTs owned by the user wallet.

Add NFT images to the user media library so that they print that NFT on WooCommerce Products like T-shirt, Mugs, Canvas, etc.

* NFT/Token gating WooCommerce-discount based on token owned in wallet [[Setup Guide](https://plugins.miniorange.com/woocommerce-coupon-discount-based-on-nft)] [[Video](https://www.youtube.com/watch?v=Fpc38jsJDPY)]
* Gate exclusive products for the NFT users [[Setup Guide](https://plugins.miniorange.com/woocommerce-product-gating-based-on-nft-token)] [[Video](https://www.youtube.com/watch?v=vnNS-i6_wpE)]

== MemberPress - Web3 Integration Add-on ==

MemberPress will give you the ability to confidently create, manage and track membership subscriptions. Admin can now add NFT Token Gating to Memberpress Memberships created.[[Setup Guide](https://plugins.miniorange.com/membership-mapping-based-on-nfts)] [[Video](https://www.youtube.com/watch?v=LqWNjyHxVk8)]

== BuddyBoss - Web3 Integration Add-on ==

Profiles created in BuddyBoss can be NFT Token Gated using miniOrange BuddyBoss Integration Addon. Admin can now add NFT Token Gating to BuddyBoss Profile Types created. [[Setup Guide](https://plugins.miniorange.com/wp-buddyboss-web3-integration-addon)] [[Video](https://www.youtube.com/watch?v=S3OBh-duVHM)]

== LearnDash - Web3 Integration Add-on ==

Admin can now Restrict Access to the Courses published on LearnDash. 

When a User logins using our Web3 Login Button, then the user will be assigned courses in LearnDash based on the NFT owned by the user.[[Setup Guide](https://plugins.miniorange.com/web3-learndash-integrator)] [[Video](https://www.youtube.com/watch?v=jZO8fbgDtL4)]


== Use cases for Web3 authentication plugin ==

* Login with web3 Cryptocurrency wallet: Use one of a variety of hot wallet like MetaMask, WalletConnect, Edge, Electrum, Coinbase, Trust, Robinhood, Binance, Mycelium, AtomicDEX, Jaxx, Samourai, Huobi, Luno, ZenGo, Crypto.com, Bitcoin IRA, and Exodus for WordPress website login. Popular cold wallets like Ledger Nano S, Ledger Nano X, Trezor, KeepKey, CoolWallet Pro, Safepal S1, Keystone Pro, and Ellipal Titan can also be used for WordPress website login

* Token gated content: Restrict posts, pictures, content, and videos on your website based on NFT collection in web3 wallet. Make it mandatory for users to buy specific NFT collections to access the restricted content. For purchasing NFT collections redirected the users to famous NFT marketplaces like OpenSea, Rarible, and Mintable

* Sensitive documentation: Ownership of NFTs in your crypto wallet allows you to access secure and sensitive information in an organization

* Role Assigning: WordPress website owners can assign roles to the users of their website according to the NFT collection in their wallet

* Restrict access: You can even choose to restrict users that hold certain NFTs from gaining access to pages, images, videos, or documents that you don’t want them to see.

* Token gated communities: The plugin can be used to restrict access on zoom, discord, google drive, youtube, and gaming channels based on NFT collection


== NFT Marketplace ==

Please try out our NFT Marketplace solution [[here](https://plugins.miniorange.com/wordpress-nft-marketplace-creator-wp-nft-maker)].


== Installation ==

This section describes how to install the WEB3 authentication plugin.

= From your WordPress dashboard =

1. Visit `Plugins > Add New`
2. Search for `WEB3 authentication plugin`. Find and Install the `WEB3 authentication plugin ` plugin by miniOrange
3. Activate the plugin

= From WordPress.org =

1. Download the WEB3 authentication plugin.
2. Unzip and upload the `WEB3 authentication plugin` directory to your `/wp-content/plugins/` directory.
3. Activate the WEB3 authentication plugin from your Plugins page.


== Frequently Asked Questions ==


=Why should I use Web3 Login Plugin?=

Our plugin utilizes the most reliable yet most secure Blockchain Technology to secure your data. Take full advantage of our blockchain-based security which is a protocol that is virtually impossible to break. Your information will always remain safe and secure.

= How does Web3 Login Plugin work? =

*The outline is described in [this TopTal post by Amaury Martiny](https://www.toptal.com/ethereum/one-click-login-flows-a-metamask-tutorial).
*We have used database nonces which are refreshed every time they are used and append the user IP or Wallet Address to the login message to prevent replays from elsewhere.

= How do I Login through metamask? = 

1. Install the metamask extension in your browser.
2. Install the WEB3 login plugin. Read the "Installation".
3. A Login Button will be added in the WordPress Login window, where users can log in through the wallet public address.


= What is signature verification? =

When a user submits a signature, it needs to be verified on the server-side.
We use libraries like Keccak, and Elliptic to verify the signature using the stored nonce in the database on the backend side.

= How to configure the setting of solana blockchain in Plugin? =

In plugin instead of configuring a single mint address, you can do configuration through anyone of the following options

* Import a list of mint address
* Configure the collection key
* Or you can configure the collection id

= How to login through phantom wallet on mobile devices? =

Use the built-in browser in the phantom wallet mobile app to log in.

= I need to customize the plugin or need support and help? =

Please email us at web3@xecurify.com or Contact us. You can also submit your query from the plugin’s configuration page.


= The web3 authentication plugin is not compatible with the plugins installed on my site. What can I do? = 

Please email us at web3@xecurify.com or Contact us. You can also submit your query from the plugin’s configuration page.


= I would like to change our license domain. How do we do this? =

Yes, You can activate the license on your new domain. Write to us at web3@xecurify.com we will help you set up.


= Is it possible to set a different redirect URL after login & logout? =

Yes, with a standard license you can set different redirect URLs after logging in as well as after logout.


= For any other query/problem/request? =

Please email us at web3@xecurify.com or Contact us. You can also submit your query from the plugin’s configuration page.


= Are my crypto assets safe? =

Yes. A wallet (e.g. MetaMask) does not leak your private keys. The plugin also doesn’t have access to your private keys.


= For any other query/problem/request? =

Please email us at web3@xecurify.com or Contact us. You can also submit your query from the plugin’s configuration page.


== Privacy ==

miniOrange Web3 login plugin does not store anything other than the wallet address, on your server.



== Contact Us ==

Feel free to reach out to us. Send an email at web3@xecurify.com for any inquiries.
User can now also connect to us on [Discord](https://discord.com/invite/TRKFdck2r6) 

== Screenshots ==

1. Login Button.
2. WEB3 Test connectivity.
3. NFT configuration and test wallet


== Changelog ==

=3.1.1=
* Compatability with wordpress 6.4.0
* Fixed Bug for enabling default wallet on activation 


=3.1.0=
* Fixed Bug in phantom and alogrand wallet login flow


=3.0.0=
* Fixed nonce vulnerability

=2.8.0=
* Licensing update

=2.7.0=
* Fixed hidden form vulnerability

=2.6.0=
* Added Binance Blockchain support
* Free Demo Trial of paid plugins

=2.5.0=
* Added PHPCS Fixes and support phantom wallet login

=2.3.6=
* added support for solana
* Advertising add-on 

=2.3.5=
* Loader class issue fixes.

= 2.1.2=
* Advertising show nft hold by user feature in shortcode info tab
* Web3 library(Elliptic) fixes
* fixing purchasing plan UI
* Readme update

= 2.1.0=
* Advertising Premium Tabs UI
* Web3 library(Elliptic) fixes
* Adding multiple purchasing plan


= 2.0.1 =   
* Test option to check NFTs held by wallet
* Licensing Plan
* UI improvement
* Readme updated

= 1.0.4 =   
* Compatibility with WordPress 6.0.0
* Readme updated

= 1.0.3 =   
* Added support to change text of web3 login button
* Added test functionality for web3 connectivity 
* Improved UI of the plugin

= 1.0.2 =   
* Added support for crypto wallets
* Added feedback form

= 1.0.1 =   
* Readme Update

= 1.0.0 =  
* First release of the plugin
* Compatibility with WordPress 5.9



== Upgrade Notice ==

=3.1.1=
* Compatability with wordpress 6.4.0
* Fixed Bug for enabling default wallet on activation 


=3.1.0=
* Fixed Bug in phantom and alogrand wallet login flow


=3.0.0=
* Fixed nonce vulnerability

=2.8.0=
* Licensing update

=2.7.0=
* Fixed hidden form vulnerability

=2.6.0=
* Added Binance Blockchain support
* Free Demo Trial of paid plugins

=2.5.0=
* Added PHPCS Fixes and support phantom wallet login 

=2.3.6=
* added support for solana
* added support for token standard ERC-1155

=2.3.5=
* Loader class issue fixes.

=2.3.4=
* Login with Cryptowallet support added for MyAlgo, Phantom, and Coinbase Wallet.

= 2.1.2=
* Advertising show nft hold by user feature in shortcode info tab
* Web3 library(Elliptic) fixes
* fixing purchasing plan UI
* Readme update


= 2.1.0=
* Advertising Premium Tabs UI
* Web3 library(Elliptic) fixes
* Adding multiple purchasing plan


= 2.0.1 =   
* Test option to check NFTs held by wallet
* Licensing Plan
* UI improvement
* Readme updated

= 1.0.4 =   
*Compatibility with WordPress 6.0.0
*Readme updated


= 1.0.3 =   
* Added support to change text of web3 login button
* Added test functionality for web3 connectivity 
* Improved UI of the plugin

= 1.0.2 =   
* Added support for crypto wallets
* Added feedback form

= 1.0.1 =   
* Readme Update

= 1.0.0 =   
* First release of the plugin
* Compatibility with WordPress 5.9