Delayed Reveal
Delayed reveal is a feature that allows you to release NFTs in a drop with hidden content that can only be revealed at a later time. The owner of the smart contract (or a wallet with the appropriate permissions) can lazy-mints a batch of NFTs, along with placeholder metadata and a password.
Until the NFTs are revealed using this password, the metadata of the NFTs will be the placeholder metadata, and the "real" metadata is not visible to external parties.
This is achieved by using the password as an encryption/decryption key to encrypt the URI containing the "real" metadata. The encrypted URI is stored on-chain, and the password is stored off-chain, only known by the owner.
When the NFTs are revealed, the owner of the smart contract (or a wallet with the appropriate permissions) can decrypt the URI using the password, and the "real" metadata is revealed.