IP Library › Granted Patent US 12,731,136
Granted Patent B2
US 12,731,136 · App. 18/957,917 · Granted Sep 8, 2026

Enabling confidential and non-confidential transactions on a digital token architecture

Inventors: Michael Janacek Vines (La Jolla, CA); Sam Bit Kim (New York, NY)
Assignee: Solana Labs, Inc.
G06Q20/3829G06F21/604H04L9/3218
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,731,136
App. No.
18/957,917
Granted
Sep 8, 2026
Kind
B2
Abstract

Introduced here is a new program that was developed to provide privacy for data stored on a blockchain. This new program was designed to be deployed on the blockchain as an extension to the existing program that allows non-confidential transfers of funds. This new can work in conjunction with the existing program to permit users to conduct confidential and non-confidential transactions as necessary based on the sensitivity of the data involved.

Claims (42)

1 . A non-transitory medium with instructions stored thereon that, when executed by a processor, cause the processor to perform operations comprising:

receiving input that is indicative of an instruction from an owner to initialize a first account for a first program that permits confidential transfers of tokens;

establishing, based on the input, that the owner is associated with a second account for a second program that permits non-confidential transfers of tokens; and

deriving, in response to said establishing, an account address for the first account based on (i) an account address of the second account and (ii) a mint address of the second account.

2 . The non-transitory medium of claim 1 , wherein the operations further comprise:

initializing the first account by populating a data structure with (i) the derived account address, (ii) a mint address of a corresponding mint, and (iii) an owner address for the owner.

3 . The non-transitory medium of claim 2 , wherein the data structure is further populated with (iv) a balance that is encrypted using a public cryptographic key associated with the owner.

4 . The non-transitory medium of claim 3 , wherein the balance is encrypted using an encryption scheme that is linearly homomorphic.

5 . The non-transitory medium of claim 2 , wherein the data structure is further populated with (iv) a balance that is encrypted using a public cryptographic key that is specific to the first account and that is included in the instruction.

6 . The non-transitory medium of claim 2 , wherein the owner is able to participate in the confidential transfer of tokens to and from the first account in response to the first account being initialized.

7 . The non-transitory medium of claim 2 , wherein the operations further comprise:

receiving second input that is indicative of a request to initiate a confidential transfer from the first account to a third account for the first program that is associated with a recipient;

subtracting a first ciphertext included in the second input from an encrypted balance of the first account; and

adding a second ciphertext included in the second input to an encrypted balance of the third account that is associated with the recipient.

8 . The non-transitory medium of claim 7 , wherein the second input includes (i) the first ciphertext that is encrypted under a public cryptographic key associated with the owner, (ii) the second ciphertext that is encrypted under a public cryptographic key associated with the recipient, (iii) a range proof, and (iv) an equality proof.

9 . A non-transitory medium with instructions stored thereon that, when executed by a processor, cause the processor to perform operations comprising:

receiving input that is indicative of a request to initiate a confidential transfer from a first account associated with a sender to a second account associated with a recipient,

wherein the input includes (i) a first ciphertext encrypted under a public cryptographic key of the sender, (ii) a second ciphertext encrypted under a public cryptographic key of the recipient, and (iii) at least one zero-knowledge proof;

removing the first ciphertext from an encrypted balance of the first account; and

appending the second ciphertext to an encrypted balance of the second account.

10 . The non-transitory medium of claim 9 , wherein the at least one zero-knowledge proof includes a range proof that certifies that the first ciphertext and/or the second ciphertext encrypts a value within a given range.

11 . The non-transitory medium of claim 9 , wherein the at least one zero-knowledge proof includes an equality proof that certifies that the first and second ciphertexts encrypt a same value.

12 . The non-transitory medium of claim 9 , wherein the operations further comprise:

storing a hash that is representative of the confidential transfer on a blockchain that is associated with a program that permits confidential transfers.

13 . The non-transitory medium of claim 12 , wherein the first account is associated with another account for a second program that permits non-confidential transfers.

14 . The non-transitory medium of claim 13 , wherein the second program is associated with a second blockchain on which hashes representative of the non-confidential transfers are stored.

15 . The non-transitory medium of claim 9 , wherein the operations further comprise:

identifying a first data structure that is representative of the first account and that includes (i) a first account address, (ii) a first mint address, (iii) a first owner address, and (iv) the encrypted balance of the first account; and

identifying a second data structure that is representative of the second account and that includes (i) a second account address, (ii) a second mint address, (iii) a second owner address, and (iv) the encrypted balance of the second account.

16 . The non-transitory medium of claim 9 ,

wherein the encrypted balance of the first account is representative of an encrypted available balance of the first account from which outgoing funds are subtracted, and

wherein the encrypted balance of the second account is representative of an encrypted pending balance of the second account to which incoming funds are added.

17 . The non-transitory medium of claim 16 , wherein the operations further comprise:

executing an instruction to transfer the encrypted balance of the encrypted pending balance to an encrypted available balance of the second account from which the outgoing funds would be subtracted.

18 . A method for initiating a confidential transfer from a first account that is associated with a sender to a second account that is associated with a recipient, the method comprising:

receiving input that includes (i) a first ciphertext that is encrypted using a public cryptographic key of the sender and (ii) a second ciphertext that is encrypted using a public cryptographic key of the recipient;

merging the first and second ciphertexts to create a merged ciphertext; and

effecting the confidential transfer by—

removing the merged ciphertext from an encrypted balance of the first account, and

appending the merged ciphertext to an encrypted balance of the second account.

19 . The method of claim 18 , wherein the input further includes (iii) a zero-knowledge proof that certifies a relationship between a first amount represented by the first ciphertext and a second amount represented by the second ciphertext.

20 . The method of claim 18 , wherein said merging is performed in a homomorphic manner.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 27, 2025
From: VINES, MICHAEL; KIM, SAM BIT
To: SOLANA LABS, INC.
Reel/Frame 070649/0799 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 25, 2024
From: VINES, MICHAEL JANCEK; KIM, SAM BIT
To: SOLANA LABS, INC.
Reel/Frame 069396/0794 →
Continuity (3)
Continuation 18078660 · Dec 9, 2022
Provisional Application 63288073 · Dec 10, 2021
Related Publication 20250094969A1 · Mar 20, 2025
References Cited (12)
US 20190034923A1 · Greco · 2019 [cited by examiner]
US 20190164153A1 · Agrawal · 2019 [cited by examiner]
US 20190303887A1 · Wright et al. · 2019 [cited by applicant]
US 20200126075A1 · Fisch · 2020 [cited by examiner]
US 20210327191A1 · Ivanov et al. · 2021 [cited by applicant]
US 20230128945A1 · Khan · 2023 [cited by examiner]
WO WO2021009496A1 · 2021 [cited by examiner]
Lim, “Solana's Token Program, Explained”, retrieved from https://pencilflip.medium.com/solanas-token-program-explained-de0ddce29714, Oct. 29, 2021, 24 pages (Year: 2021). [cited by examiner]
Friel “Understanding Program Derived Addresses”, Oct. 21, 2021, 9 pages (Year: 2021). [cited by examiner]
International Search Report and Written Opinion of International Application No. PCT/US2022/052363; Date of Mailing: Jun. 6, 2023; 13 pages. [cited by applicant]
Vazquez, “ZeroCT: Improving Zerocoin with Confidential Transactions and more.” In: Cryptology ePrint Archive, Jan. 17, 2019, retrieved May 9, 2023 from https://eprint.iacr.org/2019/072. [cited by applicant]
“Lim, “Solana's Token Program, Explained: Breaking down how fungible and non-fungible tokens work in Solana.””, In: pencilfip.medium.com, Oct. 29, 2021, (online) retrieved on May 9, 2023 from https://pencilflip.medium.c… [cited by applicant]