2

If I create an NFT by setting mintAuthority to null and foregoing a metaplex Master Edition, I retain the ability to arbitrarily freeze and thaw NFTs so long as I retain freezeAuthority on the token (and no one else can change that). I've used this to various effects so far.

If I instead set a Master Edition on the token, I can only freeze it if I am the delegate of - I believe - the associated token account I mint the NFT to. And - I believe - I cannot set the delegate of that account without its owner's signature, which I do not have.

I understand that an existing NFT owner can delegate freeze authority to someone (e.g. escrowless marketplace contract), but I don't see a way to do this as part of an airdrop.

1 Answer 1

0

That's right the wallet you are going to airdrop the NFT has to approve either your contract or some other address to manage that NFT and then you can call this ix to freeze it

    // freeze Signer ATA
invoke_signed(
    &freeze_delegated_account(
        *ctx.accounts.token_metadata_program.key,
        ctx.accounts.rent_manager.key(),
        ctx.accounts.renter_ata.key(),
        *ctx.accounts.edition_info.key,
        ctx.accounts.nft_mint.key(),
    ),
    &[
        ctx.accounts.rent_manager.to_account_info(),
        ctx.accounts.renter_ata.to_account_info(),
        ctx.accounts.edition_info.to_account_info(),
        ctx.accounts.nft_mint.to_account_info(),
    ],
    &[rent_manager_seeds],
)?;
7
  • Unfortunate, but this was also the conclusion I reached after talking with Metaplex. I view this as a regression from native SPL functionality to be able to use Metaplex's community standards. I wouldn't use master editions at all for my tokens as a result of this if not for OpenSea requiring their usage to be listed (and now mintAddress = null with a supply of 1 has been erroneously redefined to be a Fungible Asset instead of a NFT like it is, ugh). Sep 2, 2022 at 20:20
  • Ya thats correct i feel masteredition is the thing that makes it an NFT cause even the fungible token or asset can have a metadata account but they dont have a masteredition and the token metadata program takes the mint authority to make sure these changes happens through the program
    – Pratik.js
    Sep 5, 2022 at 8:29
  • Master Edition is absolutely not what makes it an NFT. What makes it an NFT is that you have programmatic confidence that your token is unique, i.e., non-fungible. A 1 of 1. Sep 6, 2022 at 17:36
  • There are two ways on Solana to do this. 1: Master Edition. Because this takes mintAuthority, we're actually trusting that future updates to the metaplex metadata program don't decide to make more tokens for some weird reason. It'd be really weird if they did that and ruin the chain so I can't see this happening, but point being this is literally less safe. 2: Setting mint authority to null. This GUARANTEES that there's never ever going to be another of the token, no matter what. This is still an NFT. Sep 6, 2022 at 17:38
  • There can be multiple solutions to it but there needs to be a standard that's being followed by everyone so that wallets and other user's makes sense out of it. You can for sure go with setting up the mint authority to null but look from a user point of view if they want to interact with some other contract thats not made by you then they are bound to stick to you to provide them the same services
    – Pratik.js
    Sep 7, 2022 at 8:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.