A First Look: Nethermind’s SPP (Stellar Private Payments)

Recorded: Feb. 23, 2026 Duration: 0:34:50
Space Recording

Full Transcription

lot of things by that i mean zero knowledge games zk gaming hackathon that we are currently running
and so on and so forth um it was a challenge uh the the last live stream we tried to build
five zero knowledge games in 60 minutes after talking about zero knowledge and how it works for 30 minutes.
And at the end of the live stream, I had a river of sweat running down my back.
But in this live stream, we're going to be talking about something adjacent to it.
But this live stream is not going to be about coding in any sense.
We will be talking about stellar private
payments spp by nethermind and um we will talk about what that is why you should care and what
kind of things that you can build with it and how it compares to other similar actors on the blockchain space.
We will just be talking about Stellar private payments
in this slide deck that we prepared.
So you will not have a hard time following with me.
So let's get started.
This live stream is going to take like 20 or 30 minutes so
just you know um just relax sit back crack open a cold one we're going for a ride all right um
we will be talking about started private payments and how zero knowledge proofs bring privacy to the
privacy to the stellar blockchain um so first of all let's talk about why public blockchains need
privacy um well i mean you like you and me and probably most like most retail users in the blockchain space are accustomed to these kinds of things
like we are like we are used to it by that but by it i mean you know like total surveillance
surveillance right so um maybe i can start off with a few sentences about total transparency
you know like you know it better than i, every transaction and every data about a certain transaction is permanently visible to anyone
on earth. So there's no financial confidentiality by default, which is fine, which is great.
It's not like this is a bug, this is a feature, this is by design, and this is one of the things that differentiates between blockchains and traditional financial systems.
So I'm not going to be advocating for total privacy on all blockchains and all transactions.
That's not why public blockchains need privacy.
Public blockchains need privacy as a use case.
So enterprises, for that matter.
We as a retail user, we probably don't care about
who sees our transactions on SoroSwap, for example.
But that's not how enterprises work.
Enterprises can't use public chains more often than not
because competitors can see treasury flows, business deals,
or basically what kind of funds are there
in that institution's specific treasury?
So unlike a bank account, your entire on-chain transaction history is permanently public, but it doesn't have to.
It doesn't need to be sometimes, right?
So that's where the privacy feature comes into play.
But, well, I mean mean what is a private payment we talked to we talked very comprehensively about this specific thing in our latest live stream so
i'm not gonna repeat myself but just to get you up to speed a private payment is a transaction
where everything is hidden everything that you can, basically, like the sender's identity, recipient's identity, transaction amount, transaction history, or, you know, what happened between, you know, point A to point B, basically.
Like paying cash, you know, like cash reveals nothing, you know.
you can't really I mean like you can when you think about it um like follow when that
cash went to but it doesn't really have uh like a like an on-chain evidence to it right
so like for example cash reveals nothing like I said no no balance is visible you know when I'm paying someone in cash they can see how many you know
like how much I have but with but you know but on public blockchains that is not the case when you
send when you when you send someone you know like an XLM or something and if you don't want them to see how much xlm that you have in your specific wallet
there's that like you didn't have anything else to do like you like you you would just you know
um use that wallet and that would be it there wouldn't be any cryptographic guarantees
but with svp specifically i mean maybe i should go back and talk about the X-Ray protocol with,
with XA protocol, with the protocol 25, as AK proof can be implemented on this stellar blockchain.
And as AK proof, like I said in the last, um, my live stream mathematically certifies
that the transaction is valid, how exactly like I said I talked
a lot about these this is a knowledge proof thingy I know uh but the thing with ZK is that
it's a really hard concept to grasp so you perish like you know repeating the same thing over and over again is the key in learning
these last things so let me just go back and give you an example like i did in this slide
so alice proves that she knows a cave's secret password i talked a bit about this cave analogy in the latest live stream as well.
But she doesn't want to reveal its password.
She only needs to reveal the fact that she knows the password.
So she enters one slide and exits the other.
What happens is Bob, observing all of of this is convinced that she knows the password but learns absolutely nothing about the password itself and that's
basically what zero knowledge is so the prover the verifier um the person or like, let's just say a person, the person that verifies the transaction
doesn't have to know the other things
such as the recipient address or the sender's address
or the amount or anything like that.
The only thing that it needs to verify
is that Alice has a certain amount of funds and she wants to send that amount
to a certain someone and that is a valid thing to do that is basically it
so uh let me talk about the technical architecture I'm not even gonna talk a lot about this
because this is basically how to implement ZK,
but we talked a bit about this specific thing
in the latest live stream as well,
and it took like 30 minutes.
So let me just go to one of the slides here.
Well, I mean, was going to talk about how stellar private payments work but let me just talk about how the entire um private payment
operation work as well because the in the latest live stream what we talked about was how zero knowledge proofs worked in the specific context of our
zk gaming hackathon but what it basically is what zk basically is is first the user creates a note
a note that consists of all the unnecessary things that verifiers shouldn't know about and then it creates and then
the user creates the nodes hash so no one can see what the sender's identity is what the amount what
recipient address is because it's hashed then the hash is taken to the merkle tree to find out if the sender or recipient is blocked that is the
compliance layer that I'm going to talk about uh in a bit in like in in in the in the upcoming
slides which is my favorite thing about the seller private payments by the way the compliance layer
and then we generate its proof generate the proof of the fact that this transaction is valid and then
the contract itself verifies that oh it is a valid operation to do let's do it and then it's complete
um that is the most basic definition that you can come up with by the way i know that i ignored maybe like 90
percent of this uh page but bear with me right uh so uh let's just let's just talk like one or two
minutes about protocol x-ray before i talk about the stellar private payments so that you can get the full picture.
Well, like I said in the latest live stream,
Protocol X-Ray is an upgrade on the Stellar network
that introduced native on-chain
zero-knowledge proof verification.
So what it basically is, is that with that protocol,
with this upgrade, now developers all around the world can write,
you know, zero knowledge circuits and verify proofs
directly inside Soroban smart contracts.
So there's no external actor involved whatsoever.
I mean, if you can implement it if you want to,
but why would you?
It needs to be said that without Protocol X-Ray,
Stellar Private Payments would not exist
because it is the foundational infrastructure
that makes it all possible.
So let's talk about, let's dive into the Stellar Private Payments.
Stellar Private Payments, built by the Nether nethermind team is an open source proof
of concept it's not like a production ready uh package but it gets you where you need to go but
like an open source proof of concept like i said that brings privacy reserving zero knowledge
verified transactions to the stellar network. In the latest live stream,
we talked about the Game Hub contract, the Game Studio,
and Zero Knowledge implementation as a whole.
But we, in this live stream,
are going to be talking about
the private payment angle of it all.
So SVP using GROS 16 proofs,
Circom circuits, and Sorban smart contracts
enables developers to create privacy
reserving payment solutions.
That is basically it.
I know that it sounds not as interesting as one would hope,
but bear with me, just give me 10 minutes of your time
and I'll make it worth your while.
So obviously it is a complete stack in this repo you can also um run the demo app as
well to see how a private transaction can occur and also it has a built-in asp um so that you can you know like so that you can add your or like like add your wallet address to
a certain private pool which is going to be an interesting uh thing to talk about in the
next live stream maybe but basically um we we i mean in this repo never mind has a complete stack
of browser front-end circumsakia circuits and ready-to-use
sorban smart contracts with built-in asps for kyc or anti-many laundering compatibility this is a
really um hard thing to grasp maybe but bear with me because the compliance first aspect of it is
bear with me because the compliance first aspect of it is personally my favorite aspect of the
Stellar private payments so we have three pillars obviously like I talked about the first part is
the front end this is basically like a this is basically built for demoing how a private payment work on on the stellar network um in this demo app they have
like a certain you know straightforward um private payment dashboard and they also have
an like an admin dashboard so that you can add or remove you know addresses um
to experiment with how compliant can a private payment can be.
Also, we have zero-node circuits, thanks to Protocol X-Ray.
I'm not going to be talking about how many circuit configurations that they have.
What I would do if I were you after this live stream
is I would just go to that repo stellar private payments
github.com you can see it on this on the screen um i would go there and i would ask the ai of
my choosing to walk me through how this repo works and what are the key aspects of this repo should i be worried about or should i
really grasp you know um probably the ii is going to be talking about the zk circuits because that is
um one of the most important things about the spp repo because it because it has the proving
system it has a circuit configuration it has the ownership verification
logic and merkel proof and so on and so forth um so in svp how a private transfer works is we have
five i mean maybe you have four steps first is like i said let's go back to the alice and bob
Like I said, let's go back to the Alice and Bob are two most popular actors in software engineering.
So first, Alice creates a node.
What is a node?
A node is basically like Alice defines the amount of the transaction, the recipient's public key, and the random blinding factor.
And this node that I'm talking about is like a unit of private value.
It's never stored in plain text on chain because if that were to happen,
then we wouldn't have like a private payment solutions.
So what happens is Alice,
the sender hashes that node that consists of the recipient's public key
and a random lining factor and hashes it with Poseidon 2.
That is only possible.
I mean, it can be possible with other tools as well,
but Poseidon 2 personally I think is the best
to do this sort of transaction, to do this sort of operation.
But what it basically
does is posidum 2 produces a commitment so this hash when you look at it you can't see the
recipient's public address you can't see the amount of transaction you can't see anything
it's just a hash right um so that hash it is private so we're going to be storing it on chain and in the merkle tree
specifically so and then what happens is alice's browser her browser runs wasn't compiled
circumcircuits that was that is available to use uh in the spp repo and basically it says i own a valid note it is unspent that is basically it the only
thing that a verifier needs to know about is that this transaction is valid and the sender is waiting
to make that happen that is basically it and then what happens is um like the circumcircuits using the nodes generates a proof so you have to you know
um verify that proof to make that transaction that happens on chain that happens on the smart
contracts so the proof um that was recently generated um is submitted to the stellar network
the storebound smart contract verifies it mathematically if
if it's valid um if it's not nullified then you know then the transaction is final then it just
happens so what you see on chain if you were to you know go to stellar.expert and if you were to look into some private payments what you will see
is just the proof just the proof that a certain thing might happen and it is valid that is
basically it that is what a private transfer works that is how like a is that is that is how a privacy on chain works basically so in SPP we have four transaction types
like I said this is a bit like a proof of concept so just you know um it's not like a full repo that
consists of anything that can be built on Stellar that is up to you uh as builders so but you know just as like a proof of concept just to show you show you the
builders how a private payment works on stellar they have the deposit type transfer type withdrawal
type and a split or merge type so the deposit type just you know like i said creates like a new node commitments and the transfers
it allows the user to create private to private value transfers in the SPP in the in the demo app
how a private payment works is that they have a dark pool so what happens is the user sends the money
to its pool and the recipient takes the money out of that pool so it's not like you going it's not
like your money is going from point a to point b there is a pool um in between and that makes
the private payments possible.
And that's why they have a withdrawal transaction type
for you to exit the private pool.
And also, they do have a split or merge transaction,
which just basically combines or divides the notes
within the shielded pool.
The shielded pool was the pool that I was talking about
previously. within the shield pool the shielded pool was the pool that i was talking about previously
but my favorite thing about private payments is the compliance layer that makes like the the
compliance layers the association set providers asps makes it possible for you, the builders, to build compliant privacy solutions.
So ASPs basically are trusted gatekeepers that manage who participates in that pool,
in the privacy pool that makes it all possible.
They do have like Merkle trees for both approved users and not approved users.
So they maintain two trees, like I said.
The approved users are the membership tree.
They are maybe just like manually approved users.
Or if you want to go all the way, they are maybe KYC verified participants.
the way they are maybe kyc verified participants and we have like an exclusion tree which are
which consists of um not approved users or sanctioned ones or banned wallets
that makes your project compliant um i always like to talk about the tornado cash
like to talk about the tornado cash example because in the in the tornado cash example they
didn't have association set providers when they were first starting out and that's why the founder
is in jail and that's why um you can't really you know use it with like an ease of mind maybe
i'm going to talk about the tornado cache example in a bit,
but this is my second favorite part of the slides,
which is just me listing what you can build
and with examples.
So I had the chance to talk with some Indian builders
last night, Sunday night, and they already built a lot of privacy solutions.
So I kind of copied and pasted some of the examples.
But what you can build is basically anything that is private,
but if you really want a list, well, there you go,
want like a list well there you go private private payroll systems um you know you can pay employees
private payroll systems.
in usdc or any kind of stable coin that you want without anyone seeing how much money you have
that is like a straightforward use case right or confidential dex trading you know you can you can
now i mean uh if anyone builds it you can execute large trades without signaling anything to copy traders and whatnot, which is a problem in my opinion.
Or you can, like, with Stellar Network, you can already send money internationally.
But with private remittances, you can now send money internationally on the stellar network without broadcasting the transaction, without broadcasting anything that you don't want anyone to know about.
Or, like I said, institutional treasury management.
um no one's like maybe it's too forward of me saying no one but like more often than not um
people are people don't want people to know how much money that they have especially if they're
like an institution so you know you can create like institutional treasury management system on the Stellar network as well.
Or if we want to move to like an enterprise solutions, you can create private CBDC layers like Bank of England.
You can create healthcare payment privacy solutions, private NFT auctions.
This is like a straightforward thing. If you're like a retail like me, you already know that this
is like a use case of payment solutions, like private payment solutions. Like, you know, you
can just create like sealed bid auctions, you know, Aztec Network already created a demo for it.
You should definitely check that out. Or like I said, you know, cross-b already created a demo for it, you can, you should definitely check that out.
Or like I said, you know, cross-border B2B payments.
You can already do that on the standard network.
But if you don't want anyone to know everything about your wallet or anything about, like everything about your transaction, you can build an app that, you know, makes it all possible.
build an app that makes it all possible.
So these are just like maybe you can define them
as like new frontiers because I haven't had the time
to look into if there is an example of these.
But it can happen, like a compliance preserving mixer.
When you take TornadoCache and slap some ASP compliance to it, well, there you have it,
a TornadoCache that you can use. That's like the easiest use case of the SPP repo.
easiest use case of the uh of the of the svp repo um private ai agent payments there are a lot of
things to talk about on this front um such as you know um erc 8 or 0 4 um standards or x402
But let's just take all of these aside
and talk about how useful would it
be for autonomous AI agents to have a chance to do private
payments, right?
I don't know if you use your autonomous AI agents
to trade things or send money or receive money.
I do to experiment with it.
And I know for a fact that more often than not,
the agents are looking for something that is privacy
reserving, to say the least.
I've also not been able to see anything that
resembles private anonymous voting systems or
say key identity credentials on the stellar network but i used some kyc providers
before and i know that they can but choose not to look at your credentials so it would be good to have a service that proves that you are kyc
verified without you know being able to see what your credentials are because in these in those
kinds of systems you literally take a picture of you know of your id and then and you know of your id and that and you know that being not private is is a problem
um and you know i just want to talk about like one minute about some similar projects
um that is tornado cache and railgun um tornado Well, I mean, it's like a mixer.
It's a dark pool, maybe, to say the least.
That's the most simplified answer.
The developer of Tornado Cash is arrested
because the Tornado Cash, the mixer,
that makes private payments on Ethereum possible,
it didn't have any regulatory framework.
So in August 2022, it has been OFAC sanctioned.
So you probably shouldn't use that.
But don't quote me on that.
But what I'm trying to say is with SPP,
you can now use that repo just clone that repo
and you can now build a compliant an ofac compliant to another cache um you know
project on the stellar network and um another similar project is called Railgun on Ethereum.
It's not sanctioned, it is active,
but it uses a proprietary compliance layer
called private proofs of innocence.
I don't know, I haven't looked into the code itself,
but it sounds like a hat on a hat though.
So just using zero knowledge seems like
the most straightforward solution
to this private payment problem
that most of us are having.
The differentiator between these projects and SPP is,
SPP's design is compliance first via ASPs.
And it is also built on Stellar's cheap and maybe not cheap,
but like inexpensive and fast rails.
And there are a few more similar projects like Aztec Network and Zcash.
These are, you know are standalone blockchains, so I'm not going to talk a lot about them.
But what I will say is Stellar private payments bring Zcash's cryptographic model to Stellar with the added benefits of smart contracts and DeFi composability so that you can create tools or
middleware for other projects on the Stellar network to just slap onto their dApp and also
you know like I said its design is compliant first and I feel like that is the most important part about stellar private payments. This is AI generated, but what it
basically is, it compares SPP to the similar projects that I
talked about right then and there, like Aztec, Zcash, Railgun,
TornadoCash. I want to emphasize this one last time
that SPP's design is compliance first.
And I feel like that is the most important part about this,
but it also has to be said that SPP is currently in the research preview
and it has been open sourced as a proof of concept.
So you probably just need to view SVP as a way for you
to build other things on top of it,
rather than something that you can just plainly use as a user.
The REPL structure is pretty straightforward
um if i were you i wouldn't i would obviously look into the code but i would just ask the ai of my choosing to walk me through the ripple structure so that i can you know have enough
knowledge to build on top of it um but you need to, I'm assuming that you already have these,
but you obviously need to have Rust, Cargo, Node.js,
Circums 2.0, Snark.js, and obviously Stellar CLI.
So lastly, I wanna say what,
I wanna talk about what makes SVP historically significant.
I already talked a lot about this.
It's basically Zcash plus DeFi on the world's payment rail.
So what more do you need, right?
SVP combines Zcash's privacy model with Stellar's fast and inexpensive payments and Sorbonne smart contracts
so that it can you know open a door for you in any kind of composable design that you might have
so basically you know before we close this live stream I want to say that SPP is not just like a
private privacy tool it's a proof of concept
of what can be possible on stellar using strong knowledge um spp demonstrates that um
demonstrates that the cryptographic primitives that is um live on stellar right now work end to
end it can be possible to build any kind of privacy
solutions that you want through soroban verification to final final settlements
um so yeah this is uh this is just like a slogan that that i came up with you know open by default
private when needed but um lastly i want to to say that Stellar Private Payments proves that the privacy and compliance are not opposites.
You can build a privacy solution that is compliance first by design.
compliance first by design and that's what SPP is basically you know in its simplest
way to define that you know so they're complementary features of a well-designed ZK system
yeah so I talked a lot about this about what like how zk works how how proof generation works and what svp really is
um so thank you so much for listening me ramble on about svp for 30 35 minutes um
in the in the next live streams, I will be doing more practical live streams.
So just, you know, stick around is what I will say as like a last statement.
So thank you so much for, you know, watching this.
And I'll see you on the next live stream that we're going to do.
So, yeah, you can obviously build on top of SPP
and let us know by tagging us so that we can see
and maybe amplify through our social media.
But yeah, thank you so much for watching
and I'll see you on the next livestream.