Schrödinger’s NFT Beta live on Apillon

After the initial demo release, the NFT-based encryption functionality is now available for Apillon Beta users.

Schrödinger’s NFT Beta live on Apillon

Last year, Apillon’s concept of encrypting private files using an NFT as a key was brought to the public eye. Now, it’s available as a ready-to-use functionality for Beta users of the Apillon platform.

Schrödinger’s NFT — Unlock encrypted files with NFT key
In the upgraded NFT Service powered by Phala’s Phat contract logic, private files can be decrypted only via a…

Schrödinger’s NFT represents the first integration of Phala’s Phat contract on Apillon, where specific logic allows admins to encrypt files and users to decrypt them using an NFT from a linked NFT collection.

In this case, an NFT works as an authorization lock that only unlocks contents when the correct key is used. The encryption/decryption key is generated and used only within the smart contract and never gets exposed externally.

Now, let’s dive into how you could make use of it in your Web3 project.

Why NFTs for unlocking files?

NFTs have a range of purposes, spanning well beyond their most widely-known utility in collecting. In essence, NFTs are binary blockchain-based proofs of digital asset ownership — you either own something or you don’t.

Starting from this premise, the Apillon team had the idea of giving users the means to build an NFT collection and share exclusive or sensitive files or information only with persons who own a certain NFT key and use it to decrypt the files in question.

However, encryption and decryption of such private files could only happen in a trusted execution environment (TEE) to ensure full Web3 compatibility, privacy, and security. Based on that requirement, Phala’s Phat contracts became the chosen integration that allowed Apillon to achieve the intended functionality.

Use cases

Schrödinger’s NFT by Apillon serves as an encryption/decryption method to seal and reveal private files on demand and to rightful users only.

Unlike passwords, which can be shared with dozens of persons and used by all to access the locked contents, an NFT key only works for the person owning it in their wallet.

Schrödinger’s NFT file encryption could be used in a range of scenarios.

  • Sensitive files like business contracts, employment agreements, lease contracts, real-estate documents, etc., could be sealed for the intended recipient using NFT key encryption, preventing other parties from accessing them.
  • Exclusive digital files (audio or visual) or unique physical items could be sold with a raw recording, manuscript, or the rights to unlock them in a metaverse gallery or marketplace to rightful users using a designated NFT key.
  • Highly confidential, sensitive, or private matters, as well as limited-edition marketing campaigns and product launches, could include NFT keys to grant exclusive ownership rights, contracts, etc.

The NFT encryption method is handy in the peer-to-peer transfer of assets, files, and other contents. It cuts the need for a trusted intermediary or custodian and, instead, unlocks assets cryptographically.

Access restricted to NFT owners

Imagine you create an NFT collection and have a unique file, such as a text file or some other content that you want to be accessed exclusively by the owners of your NFTs.

With Schrödinger’s NFT, you can assign such a file to an NFT and encrypt it using a key generated in the smart (Phat) contract. Now, it can be published anywhere online without the risk of unauthorized access. If your followers wish to access the encrypted file, they will not be able to do so unless they own an NFT from your collection.

In essence, the non-fungibility of an asset extends to its accessibility, too.

How does it work?

Schrödinger’s NFT embodies the first integration of Phala’s Phat contract on the Apillon platform, hence it can be found under the Computing service on the Apillon dashboard.

But it also combines the features and capabilities of the Moonbeam, Astar, and Crust Network. Encrypted files are stored on IPFS and pinned via Crust. The complete logic for file encryption, together with the decryption key, is hosted via the Phala network’s decentralized cloud computing and powered by a Phat contract. The NFT that contains the key for encrypting/decrypting files can be issued on Moonbeam or Astar out of the box on the Apillon platform, or any EVM chain — under the Chain RPC URL, you can input custom value.

As a completely decentralized method of sharing private files, mainly thanks to IPFS-based decentralized storage, it’s unstoppable from third-party intervention.

To illustrate the mechanics behind Schrödinger’s NFT, let’s take the diagram below:

  1. A developer creates an NFT collection on Apillon.
  2. Next, they upload files they want to deliver to specific NFT owners.
  3. End-users engage with the collection and mint new NFTs.
  4. Any user may download the encrypted file, but to do so, they would need an IPFS CID to locate the file.
  5. Users who have minted and own an NFT from the original collection may visit a designated website the developer created, through which Phala’s Phat contract is called.
  6. The Phat contract verifies whether the key matches the encryption lock and ownership records. Each NFT in the collection comes with an ID, and the contract specifies which content (based on its CID) is linked to that ID. If the key matches, the files are sourced on IPFS and decrypted for the user to download to the local drive.
  7. Once downloaded, the NFT owners may access and consume the content decrypted by the NFT key.

The same logic can be expanded to further stages. A user who originally minted an NFT that contains a key may sell or send it to another wallet, transferring the capability to decrypt the files encrypted by the original NFT creator.

🔎 Note: Future upgrades will allow any user to encrypt and decrypt files with a specific NFT key.

Technical details and limitations

In the process of development and integration of Schrödinger’s NFT into the Apillon platform, certain technical aspects had to be taken into account:

  • Natively, Schrödinger’s NFT solution supports NFT collections on Moonbeam and Astar networks following the ERC-721 standard. In both cases, those can be deployed in a no-code manner on Apillon.
  • For the purpose of Schrödinger’s NFT encryption, any NFT collection deployed on Astar or Moonbeam can be utilized, even if it is not deployed on Apillon.
  • All EVM NFT smart contracts are supported in a best-effort manner. However, to use a custom blockchain, a developer should supply a smart contract address and an RPC provider link.
  • The size limit for encrypted files is currently 64kB due to Phala Phat contract limitations, making it primarily usable for encrypting plain text files or low-resolution photos. This limitation should increase in the future.
  • By setting an NFT to soulbound, it can be linked to one wallet alone, thus cutting the possibility of sharing it with others and permanently attaching the accessibility to files to a single owner.
  • The files that can only be accessible via an NFT key are forever sealed on-chain (and remain there) in case the key is lost. While the method can complement traditional file-sealing methods, it should not replace them as it could lead to permanent file loss.

Start encrypting using NFTs

Schrödinger’s NFT encryption functionality is readily available on the Apillon platform for Beta users.

Protect your sensitive files in a non-fungible manner and start encrypting with Apillon.


⧓ About Apillon

The Apillon platform serves as a unified gateway to the Web3 services provided by linked Polkadot parachains. Following the multi-chain vision, Apillon powers developers’ transition to Web3, simplifying its adoption in the real economy and expanding its versatility as the ecosystem grows. With Apillon, Web3 services are within reach for every developer, regardless of their background and experience with blockchain technology.

Website | Wiki | GitHub | X | Telegram | LinkedIn | Reddit