#solana #confidential-transfer #proof-generation #spl-token #elgamal #token-programs

spl-token-confidential-transfer-proof-generation

Solana Program Library Confidential Transfer Proof Generation

7 releases (4 breaking)

0.5.1 Nov 3, 2025
0.5.0 Aug 12, 2025
0.4.1 Aug 12, 2025
0.4.0 Mar 26, 2025
0.1.0 Aug 27, 2024

#3 in #token-programs

Download history 44999/week @ 2025-08-27 41513/week @ 2025-09-03 51211/week @ 2025-09-10 40540/week @ 2025-09-17 41618/week @ 2025-09-24 39232/week @ 2025-10-01 43577/week @ 2025-10-08 53136/week @ 2025-10-15 60455/week @ 2025-10-22 63749/week @ 2025-10-29 59438/week @ 2025-11-05 53050/week @ 2025-11-12 59448/week @ 2025-11-19 46574/week @ 2025-11-26 62587/week @ 2025-12-03 61968/week @ 2025-12-10

238,176 downloads per month
Used in 464 crates (5 directly)

Apache-2.0

65KB
1K SLoC

Token 2022

Programs

The token-2022 repo contains two on-chain programs, the token-2022 program in program, which you can build / test / format using the following commands:

make build-sbf-program
make test-program
make format-check-program
make clippy-program

There's also the ElGamal pubkey registry program in confidential/elgamal-registry, which you can build and test with the following commands:

make build-sbf-confidential-elgamal-registry
make test-confidential-elgamal-registry
make format-check-confidential-elgamal-registry
make clippy-confidential-elgamal-registry

IDL

The token-2022 program has the following IDL.

Generating clients

Once your program's IDL has been generated, you can generate clients for them using the following commands.

pnpm install # only need to run this once
pnpm generate:clients

Managing clients

The following clients are available. You may use the following links to learn more about each client:

Starting and stopping the local validator

The following script is available to start your local validator. In order to run the local validator you must also have the token-2022 and elgamal registry programs built.

make build-sbf-program # you only need to run this once
make build-sbf-confidential-elgamal-registry # you only need to run this once
make restart-test-validator

Finally, you may stop the local validator using the following command.

make stop-test-validator

Dependencies

~11MB
~159K SLoC