philcoin tools for Phil
Solana devnet

Lock a coin. Prove it.

Lock any amount of a Solana coin until a date you choose. Until then nobody can move it, including you. When the date comes, it goes to the wallet you named and nowhere else.

Anyone can check a coin's locks here without a wallet. Every lock and every release is gated by Phil's upload server, running on Solana.

Check a coin's locks

Paste a coin's address. This reads straight from Solana and needs no wallet.

Lock tokens

You need a Solana wallet set to devnet. Your wallet only signs; this page sends the transaction.

How it works

  1. The terms go through Phil

    The amount, the date and the receiving wallet are uploaded to the program in Phil's upload protocol. Phil's server checks them byte for byte. If it accepts, Solana's own token program moves the coins into an escrow account, and the terms are written once.

  2. Nobody holds the key to the escrow

    The escrow is controlled by an address that only the locker program can sign for. The program has two instructions: lock, and release after the date. There is no third.

  3. Anyone can release it when the time comes

    After the date, any wallet can send the release. The coins can only go to the receiving wallet named at the start, so it does not matter who presses the button.

Before you rely on it

Where Phil is in this

Locking and releasing are both uploads through UploadServer, the function Phil's compiler backend emits. Phil's code checks the handshake, the policy and that the bytes match their declared SHA-256, and only then does the locker act. The locker's own logic (the escrow, the checks on the coin, calling the token program) is ours and is not Phil.

The program and its tests are in locker/. This is a community project and is not affiliated with Phil or Solana.