NFCarb - open & trustless carbon credits those are verifiable on blockchain

Project Name: NFCarb
Project Track: DeFi
Team Name: NFCarb
Team Member(s): 1 , @Biraris
DevPost Project Link: NFCarb | Devpost
Project Goal:
Our goal is to facilitate carbon credits to all stakeholders with ease. Climate conventions have encouraged generation & trading of carbon credits. But due to the expensive & complex verification and issuance procedures, there is limited practice of carbon credits(CCs). In fact, the CCs offer free money for greener activities. Yet, their issuance and trade is not widespread.
If the issuance & auditing of CCs becomes cheaper & easier, we can see a boom in their trade. It offers good monetization opportunities. Thus by facilitating the CCs at fingertips, we would bring many distant people on the blockchain platform. Blockchain technologies provide an efficient tool for issuance and accounting, hence much advantage is expected over conventional handling of CCs. Representing the CCs as NFTs is not a new idea. There are a few projects implementing this. But no such project is successful in execution due to challenges in the verification or validation. Though blockchain facilitates easier issuance and accounting, the verification remains big challenge. No one is interested in buying unverified CCs, and the CC verification is to be handled in conventional way only.
We want to provide easily verifiable CCs to all.

Project Value:
Compared to conventional CCs, those on blockchain are cost effective & perfectly accounted. Additionally, we make it open i.e. mintable by any Tron address. Thus even the small gardeners can go on to mint carbon credits for their activities. To make the CCs valuable, we provide simple & open verification by using Croin.

The NFTs even don’t rely on any server for storing the metadata. URI itself reconstructs the essential variables. Hence literally peer to peer carbon credit affairs are possible after some developments.

Project Info:
We have developed a platform offering carbon credits to everyone. Any Tron user can generate (i.e. mint) a CC by entering essential details on the dApp. It is like open minting, without any interference of the admin/owner of smart contract i.e. we. This may flood the CCs on our contract, but all the minted CCs are unverified by default. The CC is valuable only if it is verified.

Like minting, verification can also be done by anyone. The form on our dApp facilitates verification of the CC through Croin. This process is also open without anyone’s control. We do have control on updating the verification status for the CC (i.e. NFT) on our smart contract, and we should do it without any bias. Yet, the users have open access to the CC specification on our smart contract and the verification process from Croin. By linking both these ingredients, the users can convince potential buyers without anyone’s control. Hence this is a kind of trustless execution. We are there to streamline and accelerate the trade by updating verified status for each CC.

So, our project offers all users the seamless & trustless issuance, accounting & verification of carbon credits if they do/hold such activity. The issuance and accounting (of all the transfers) part is ensured by our smart contract, while the verification part is ensured by Croin. We are building a dApp to automate the Croin & smart contract execution.

Project Website: https://nfcarb5.vercel.app/
Project Test Instructions:
First ensure that Tronlink extension is unlocked. Then login.
Use the Generate Carbon Credit form to mint the CC. You should be prompted to sign on Tronlink.
Subsequently you can see the specification of the tokenID you minted.
To verify the CC, fill & sign the verification form.

Project Details:
We have created a smart contract on top of TRC-721 standard. Key feature is that any address can mint the NFT (i.e. NFC). And there is a function that implements a special transfer type where the recipient can’t transfer the token further. This function would be called while the transfer to the CC consumer. The metadata is stored as a struct and URI is constructed as ‘~’ delimited values of the key metadata fields. Hence no third party server is needed to store the NFT details. Metadata values like longitude, latitude, CO2 equivalence, time period, creditType, verification status etc. consume less than 256 characters. Hence this offers an efficient & independent way for storage. The specification can be easily recovered by the delimited URI. Thus even the verification by Croin can be done by processing the URI without any external dependency. This is essential ingredient for trustless possibility.

Then we are creating a dApp to facilitate the open minting. It’s a React app that uses injected tronweb from Tronlink for user authentication and firebase as database. Each authenticated user can mint the carbon credit to himself or herself.

Apart from the minting, dApp also facilitates verification. A form takes the tokenID and evidence links as input and generates a credit as per Croin specification on the Croin dApp (https://croin28.vercel.app/). Terms of the credit (for Croin) are recreated from URI of the tokenID. Basically it asks Croin whether the CC metadata and the evidence links provided is reasonable for the CO2 equivalence mentioned. The Croin trustees can make use of the evidence links provided, satellite images for the latitude/longitude, and subsequent arguments by the users to reach the conclusion. Our dApp monitors decision from croin on this CC and updates the verification status when the update is received.

Smart Contract links: TRONSCAN | TRON BlockChain Explorer | 波场区块链浏览器

Project Milestones:
Milestone 1: Deployment of the smart contract and dApp … 7 October 24 (Done)
Milestone 2: Testing & optimization of the smart contract and dApp … till 30 October 24
Milestone 3: Deployment of improved versions on mainnet 15 December 24

27 Likes

I like the project need more infomation please

2 Likes

Welcome to the Hackathon of season 7, I will like to know how are you going to be resolving issues of the cases that are concerning rejected verification, thank you

1 Like

Welcome to hackathon S7
Your project is quite interesting but my concern is how are you going to encourage users to verify their credit.

What steps have you put in place in handling large numbers of carbon credits ( CCs ) and verification.

2 Likes

Thank you! I will update some more information to the project soon. Meanwhile, please ask me to elaborate on any aspect of the project.

1 Like

Thanks!
Verification can be done multiple times. Verification status is just a dynamic state of the NFC and it can be changed anytime. Once rejected, the tokenID can be applied again for verification. Yet, the additional verification incurs the fees.

Moreover, the verification is rejected only if the details (e.g. location, timeframe etc.) fail to justify existence of the thing, or the amount of CO2 equivalence exceeds beyond reasonable limit of the actual CO2 fixation possible by the thing. Hence entering the accurate & reasonable details while the NFC creation avoids chances of rejected verification.

4 Likes

You are welcome to the hackathon session 7
Your project approach in tackling a critical challenge in the carbon credits space through providing for a simplify issuance and verification processes is intriguing. And as you have identified a gap in the verification processes of other projects, my question is;

  1. Are you partnering with a third-party auditors or do you plan using technology like IoT sensors in verifying green activities in other to solve this challenges other projects face?
  2. How are you going to represent carbon credits as NFTs and what details can this NFTs contain that define the status of the carbon credits. Eg. number of carbon credits, verification status, etc
  3. How will the users be incentivised to encourage active engagement?
1 Like

Thanks.

As anyone can mint the CC, they have no trading value unless verified. Its possible that someone finds the buyer without verification, but its rare. Fundamentally, its the buyer/customer who obliges the minter to verify his/her CC.

Issue & accounting of the CCs is done by the smart contract on blockchain. Users are expected to do verification voluntarily. Our dApp listens events from Croin smart contract for the verification requests from our users, and updates the verification status in our database, this is automated. As we rely on historical events from Croin contract & not real time, the update in our database needs single scan for verifications is past period. Updating the verification to our smart contract is a manual process and it would be time consuming.

To make the updates on our contract easier, we will add new function in our smart contract (next version) to update verification status for multiple tokenIDs on single click. This will be helpful for large number of CC. This refinement stems from your question, and thank you for this :slightly_smiling_face:.

2 Likes

Welcome to Hackathon Season 7, I read this presents an interesting proposition by combining blockchain and NFTs for carbon credit issuance, verification, and trading.
How do you safeguard against fraudulent carbon credit minting? Are there penalties for bad actors?

1 Like

Thanks. The minted carbon credit has no value in open market unless verified. Unverified carbon credit means the self declared token.

There is no penalty for fraudulent minting. Few dollars they pay for the minting, transfers & verification (if done) as transaction costs would discourage them. The blockchain can handle their unproductive data as they already paid for the transactions.

If we choose to put any constraint on minting, then it will not be a trustless or open solution.

2 Likes

Thanks for the appreciation. Please find the responses below

  1. We are not partnering with the third party auditors or hardware solutions. We think the verification of existence through open data and formulae about CO2 fixation can be used for the conclusion. In future, it is possible to create a separate ballotin (i.e. group of trustees on Croin) consisting the specialized auditors or technologies for carbon credits.
  2. Each carbon credit is specified by type (out of CO2fixation, CO2 reduction or other), location (longitute, latitude), time duration of the activity, area spanned, verification status etc. Any user who would like to claim for the greener activity at the specific values can go on minting. To change the verification status, he has to provide relevant evidences on Croin.
  3. Users are incentivized by monetization of their green activities. They can sell the verified credits in open market. In future, we shall connect with carbon credits trading platforms.
2 Likes

Thank you for you’re replying to me, please tell me what is the difference in the fee structure for the initial verification versus the re-verification, thank you

1 Like

The clarification is essential for understanding how you manage the trustless and open nature of the platform.
Once a carbon credit is verified, how do you plan to ensure that it can be easily traded or sold? Are there plans to partner with established carbon markets or platforms to facilitate liquidity for verified credits?

Welcome to hackathon season 7
It is like the verification is done manually. So how do you ensure that this can be done without bias. If there any set prerequisite for verification?

How do you handle a case of a corrupt member in your team who may be bias in carrying out the verification task?

Hi,
The fees for verification will be same for any instance. Actually these fees would be incurred by Croin.

Our smart contract does accounting and tracking of the Carbon Credits issued. Mapping of the Carbon Credit with its owner, and its specification is managed on blockchain.

The open nature stems as anyone can mint and proceed for verification and transfer the token. We (through dApp) facilitate the verification, and update the verification status to smart contract. But in principle, any parties can go directly for verification at Croin and do affairs without involvement. Hence it is a kind of trustless.

We indeed plan to integrate with carbon credit platforms or create visibility of verified carbon credits to the seeking population (by making a public directory). Though the users can find buyers themselves in open market, it is always desired that we offer them a straightforward market.

3 Likes

Verification is not done manually, but through a 3rd party DAO: Croin. Just the updation of verification is done by us. Croin’s protocol ensures the verification without any bias.

Once verified on Croin, the users have the decision from Croin without our interference. In case, any users dont want to trust our dApp (though we shall update the verification without any bias), they have the tokenID on smart contract and the verification from Croin to proceed in open market.

Our team do not involved in verification, hence concern of the corrupt member doesnt arise.
FYI: Croin has mechanism to get rid of wrong/inaccurate votes.

1 Like

@Biraris
Thanks for the clarity and response

1 Like

Oh thank you, your response really highlights the robust mechanisms in place for tracking and managing carbon credits through the smart contract.
Since users can choose to verify directly through Croin, how will you ensure that this process is as user-friendly and efficient as the verification through your dApp?

3 Likes

Thank you for the clarity, you mentioned the possibility of a future group of trustees or specialized auditors for the verification of carbon credits and I want to ask;

  1. What criteria will you use to select or qualify these auditors, and how will you ensure their impartiality in the verification process?
  2. In terms of monetization, do you plan on using a native token or will the reward be paid in TRX?