OpenID login for wallets owning an nft.

Overview

nft-login

OIDC login for wallets owning an nft.

context

Non fungible tokens are a proof for a digital ownership. This ownership can be used to give access to any digital resource or service.

What is it good for?

NFT Login Story

Todays online services access are mostly based on identities and not the ownership of an access authorisation.

This provider is a bridge between both worlds. The access is given based on the ownership of a nft.

Functionality

Implicit Flow Diagram

id_token

  • A nft will be created on the ethereum blockchain. The nft will be sold and the ownership will be transfered.

  • The service has to configure an oidc-client to access nft-login. When the user visits the service, the user has to sign a proov for the owner address of the nft.

  • If the user could sign the proof, nft-login will return the nft as id in the jwt-token.

Test with oidcdebugger

Visit https://oidcdebugger.com and use https://nft-login.chriamue.net/ as authorize uri.

Use as client id the nft contract address 0x420d2a6E87D87992EB01e5BFe762B3F437dBfD85.

Connect with an account on kovan.

You must own a nft on https://devpavan04.github.io/cryptoboys-nft-marketplace/#/.

List of supported chains

Chain Authorize URI Contract to use as Client ID Marketplace to get NFT Faucet
Kovan (42) / or /default/authorize 0x3B8270447b913d0b935e09d1C2daEc3F5CDD968f https://devpavan04.github.io/cryptoboys-nft-marketplace/ https://ethdrop.dev/
OKExChain (65) /okt/authorize 0xf0263c1D56A167cDCF72086071f96CbB8a077AE9 https://nft-login.github.io/nft-login-marketplace/okt/ https://okexchain-docs.readthedocs.io/en/latest/developers/quick-start.html#get-testnet-token
Clover (1023) /clv/authorize https://faucet.clovernode.com/
HECO Testnet (256) /heco/authorize 0xa0d4E5CdD89330ef9d0d1071247909882f0562eA https://nft-login.github.io/nft-login-marketplace/heco/ https://scan-testnet.hecochain.com/faucet
Celo alfajores (44787) /celo/authorize 0xBa4e569A5156C00348B89653968c2C294f80E151 https://nft-login.github.io/nft-login-marketplace/celo/ https://celo.org/developers/faucet
Polygon mumbai (80001) /polygon/authorize 0x8866afd737201d9Fcc16438b65f1E3db7A3A5Ddb https://nft-login.github.io/nft-login-marketplace/polygon/ https://faucet.polygon.technology/
Metis stardust (588) /metis/authorize 0x8866afd737201d9Fcc16438b65f1E3db7A3A5Ddb https://nft-login.github.io/nft-login-marketplace/metis/ https://rinkeby-faucet.metis.io/
Theta Testnet (365) /theta/authorize 0x8fb36197889f23E76e68E3FD57c6063A21DdE897 https://market.nft-login.net/
Avalanche FUJI C-Chain (43113) /avax/authorize 0x51320F31d30c56c8107D82b4C67C5EdDfCa88bc2 https://market.nft-login.net/ https://faucet.avax-test.network/
Binance Smart Chain (97) /binance/authorize 0x886B6781CD7dF75d8440Aba84216b2671AEFf9A4 https://market.nft-login.net/ https://testnet.binance.org/faucet-smart
You might also like...
This is the Repo used to learn blockchain development in conjusction with the CyberGen NFT Project.

Environment Setup Install Rust from https://rustup.rs/ Install Solana from https://docs.solana.com/cli/install-solana-cli-tools#use-solanas-install-to

The NFT smart contract powering xyz on Terra

xyz NFT Contract This repository contains the core NFT smart contract that implements xyz, a base layer for metaverses on the Terra blockchain. The xy

A PoC backbone for NFT Marketplaces on NEAR Protocol
A PoC backbone for NFT Marketplaces on NEAR Protocol

NFT Market Reference Implementation A PoC backbone for NFT Marketplaces on NEAR Protocol. Reference Changelog Changelog Progress: basic purchase of NF

Solana NFT generative artwork program

resin Solana NFT generative artwork program Installation Depends on imagemagick for art generation, which can be installed here: https://imagemagick.o

All the data an IC app needs to make seamless experiences, accessible directly on the IC. DAB is an open internet service for NFT, Token, Canister, and Dapp registries.
All the data an IC app needs to make seamless experiences, accessible directly on the IC. DAB is an open internet service for NFT, Token, Canister, and Dapp registries.

DAB 👀 Overview An Internet Computer open internet service for data. All the data an IC app needs to make a seamless experience, accessible directly o

Example of a SC coded in RUST that can safely perform any swaps of tokens (NFT, SFT, ESDT, MetaESDT)
Example of a SC coded in RUST that can safely perform any swaps of tokens (NFT, SFT, ESDT, MetaESDT)

Elrond-NFT-Trading Example of a Smart Contract (SC) coded in RUST, that can perform any swaps of tokens (NFT, SFT, ESDT, MetaESDT) The idea P2P swaps

Solana NFT marketplace boilerplate with anchor & react & candy-machine-cli

The Heros NFT Marketplace Boilerplate project is designed to let users fork, customize, and deploy their own nft marketplace app to a custom domain, ultra fast.

NFT mixing program on solana chain
NFT mixing program on solana chain

Mixture_machine Core logic of composing NFT Compose of NFT As you invoke compose_nft function with 2 or more child NFTs, child NFTs are locked in to M

A reference NFT Staking Program & Client for Solana NFTs

This is a reference NFT Staking Program & Client for Solana NFTs. This program is compatible with both Candy Machine v1 and Candy Machine v2 NFTs.

Minimalistic governance & ledger toolkit for cold wallets

Minimalistic ledger and governance toolkit for cold wallets.

DFINITY 66 Dec 20, 2022
Bitcoin Push Notification Service (BPNS) allows you to receive notifications of Bitcoin transactions of your non-custodial wallets on a provider of your choice, all while respecting your privacy

Bitcoin Push Notification Service (BPNS) Description Bitcoin Push Notification Service (BPNS) allows you to receive notifications of Bitcoin transacti

BPNS 1 May 2, 2022
Using flashbots to mint Otherside metaverse land safely with purchased KYC'd wallets.

Work in progress. Hardcoded to mint 2 lands for 610 APE and approves 100k ape for spending atm, will be updated. Building Install rust, https://rustup

cc 6 May 5, 2022
C++ `std::unique_ptr` that represents each object as an NFT on the Ethereum blockchain

C++ `std::unique_ptr` that represents each object as an NFT on the Ethereum blockchain

null 1.9k Dec 28, 2022
Substrate NFT !ink smart contract base

Substrate !ink NFT simple implementation This is a simple working version of base NFT smart contract written using latest (as of this date) !ink 3.0.0

POLK4.NET 14 Dec 3, 2022
Drop-in Access Control via NFT Ownership

niftygate - Signature-Based Authenticating Proxy What is it? niftygate is a proxy for HTTP services, that validates signatures, providing an AuthN lay

Chris Olstrom 70 Jan 3, 2023
NFT & Marketplace Contracts with royalties and fungible token support. Sample React app included.

NFT Market Reference Implementation A PoC backbone for NFT Marketplaces on NEAR Protocol. Reference Changelog Changelog Progress: basic purchase of NF

NEAR App Examples 156 Apr 28, 2022
Bespoke toolkit for Non-fungible token (NFT) technology 🚀

Bespoke toolkit for Non-fungible token (NFT) technology ?? What is Onft? Instead of forcing a consensus algorithm or peer networking on you, Onft prov

Owez 5 Jan 9, 2022
Examples and helpers to build NFT contracts on CosmWasm

CosmWasm NFTS This repo is the official repository to work on all NFT standard and examples in the CosmWasm ecosystem. cw721 and cw721-base were moved

CosmWasm 147 Jan 4, 2023
The Metaplex NFT-standard Swiss Army Knife tool.

Metaboss The Solana Metaplex NFT 'Swiss Army Knife' tool. Current supported features: Decode NFT mint account metadata Get a list of mint accounts for

Samuel Vanderwaal 576 Jan 6, 2023