@SatsCodei
iAccount based inKenya
About this account
- Account based in
- Kenya
- Connected via
- Kenya Android App
Account-level information from X, not a live location or the device used for a specific post.
⚡ Coding the future of Bitcoin from Africa. https://nitter.cf/t.co/dMABOlun8O
Nairobi, Kenya
Joined September 2025
- Tweets469
- Following88
- Followers86
- Likes519
Satscode retweeted
We're on location.....🫡⚡️
Happy Friday Nairobi 👋⚡️,
Announcing our socratic seminar for this month, come learn share and discuss bitcoin, Mining and lightning network topics as well as becoming a bitcoin Opensource contributor...see you soon 🫡, tell a dev to tell a dev 📌
RSVP 🔗 luma.com/nj2wcjjj
Satscode retweeted
Sharon (@nkatha_kk) is a developer based in Nairobi 🇰🇪, and an alumna of @DadaDevs and @btrust_builders.
She completed the 2026 BOSS Challenge, where she made her first major Bitcoin open-source contribution.
Her grant-funded work focuses on @braidpool's mining infrastructure: strengthening Stratum V1 reliability, addressing gaps in protocol implementation, and improving scalability.
This work helps connect existing mining ⛏️ equipment with decentralized pool software.
Nkatha also helps lead discussions at @BitDevsNBO meetups, supporting learning and knowledge-sharing within the local developer community.
Satscode retweeted
We’re excited to announce the Q3 2026 Btrust developer grant recipients. 🚀
Ten Bitcoin open-source developers are receiving support: five starter grant recipients and five long-term open-source cohort members.
This quarter also marks an important first: Btrust developer grants are going directly to developers outside Africa. Through our recent expansion of long-term grants across the Global Majority, we’re now supporting developers in Brazil 🇧🇷 and India 🇮🇳.
Their work, alongside that of recipients in Nigeria 🇳🇬 and Kenya 🇰🇪, spans @bitcoincoreorg, mining ⛏️ infrastructure, Lightning⚡, wallet libraries, and privacy-preserving payments.
Meet the recipients and learn about their work:
Release: Nutshell 0.21.0 🥜
⚡ LND self-payments
🚀 Core Lightning xpay
✨ Smoother wallet handling
🌱 Updated Spark integration
Update wallets and mints:
git fetch && git checkout 0.21.0 && poetry install
Big thanks to all our contributors! 🧡
github.com/cashubtc/nutshell…
Who wants their own Jarvis?
The included sayit skill allows any coding agent to speak to you in a natural voice and keep you in the loop as they work on your task.
Turn on sound 🔊
Satscode retweeted
JUST IN: Fedimint (@fedimint) Lightning gateways operating on legacy v1 integration urged to migrate to v0.12.1 ASAP following a bug discovery. Gateways running the LNv2 protocol or LDK node unaffected.
The Fedimint protocol, federations, and ecash balances are not impacted.
More details 👇
Satscode retweeted
Context:
A topic this critical deserves my first long-form post.
The real question is not trusted vs trustless. It's how many independent things have to go wrong before you lose money.
@TheBlueMatt said it in one sentence. Run the same software, suffer the same bugs.
⬇️
Think about what actually happened. Liquid was an 11-of-15 multisig. Fifteen independent signers. No keys were compromised. Nevertheless, eleven honest signers approved a withdrawal that emptied 95% of the reserves, because every one of them was running the same code, and the code had the same bug.
A few weeks before that, one firmware flaw swept thousands of Coldcard cold wallets. Different product, same lesson from the other side.
Before anything else, none of this is abstract. Coldcard victims lost savings they stacked over years. LBTC holders woke up to frozen funds through no fault of their own. And anyone who has ever shipped code that holds other people's money can and should empathise with the engineers at Blockstream. I do.
But we have to be honest with ourselves here. The world has changed. AI tooling is surfacing bugs that sat dormant for years, a point Matt also made after Coldcard. Five year old vulnerabilities are getting weaponised. Supply chains are getting attacked. "Secure so far" doesn't mean much anymore.
So let's also retire a comforting fiction. There is no such thing as “trustless.” There never was. It was always shorthand for trust-minimised. Every system puts trust somewhere: in code, in firmware, in the people who write, ship, and run both. Liquid users trusted Elements. Coldcard users trusted a random number generator they never saw.
Don't get me wrong. We should keep doing everything possible to make our code, our systems and the people behind them as trustworthy as we can. Audits, reviews, security culture, all of it. But trustworthiness is not the same thing as fault tolerance, and we need both. Fault tolerance only comes from having independent failure domains. In other words, no single point of failure.
So what does this look like in practice:
1. Multiple implementations of every protocol that holds funds, with the power to reject and not just observe.
2. Multiple wallet implementations. We mostly have this already.
3. Keys generated on hardware from different vendors.
4. Multiple independent, trustworthy humans behind every system that holds money.
5. Geographic and jurisdictional distribution as one jurisdiction's rules can change overnight.
And to be clear, Matt's sentence currently applies to @Fedimint too. Fedimint was designed to remove single humans and single institutions as points of failure. That's the whole point of a constellation of federations. But today there is only one implementation of the protocol: every guardian runs the same software. Federated humans, monoculture code, and it's not good enough.
So I'm calling on the Fedimint community to lead by example and fix this as quickly as we can.
And to everyone else, tell me where I'm wrong. If I am, propose something better. If I'm not, then let's stop debating trusted vs trustless and start demanding independence at every layer. Software, hardware, humans, jurisdictions. All the way down.
That's how Bitcoin stays worth the highest confidence as we enter this new age.
Satscode retweeted
Thanks to the Fedimint team for their transparency and quick response.
It’s a reminder that beyond accelerating AI threat detection, we need multi-provider multisig to prevent single points of failure.
Satscode retweeted
Currently stacking knowledge at our @TrezorAcademy Bitcoin session 3. Educating the youth, building self-custody skills, and taking control of our financial future.
#bitcoin #AfribitKibera #BitcoinEducation
Satscode retweeted
We are excited to announce Charles J. Kelly @cjthesmartguy as one of the speakers at the Africa Bitcoin Conference in Blantyre, Malawi.
Charles J. Kelly is an entrepreneur, business consultant, Bitcoin educator, and author of Bitcoin & Black America 2 who focuses on using technology to strengthen economic connections across Africa and the global Black diaspora. Through his consulting business, he works with skilled Kenyan professionals in areas such as bookkeeping, virtual assistance, website development, content curation, and social media management, while helping businesses operate more efficiently across borders. Bitcoin is a practical part of that model: CJ uses it to transact globally, including for payroll and cross-border payments, because it can reduce friction, move value internationally without relying on traditional banking rails, and be carried securely across borders without transporting physical cash. His work highlights Bitcoin not simply as an investment, but as infrastructure for global commerce, mobility, entrepreneurship, and more direct economic participation.
Don’t miss any of his session at ABC2026.
Get 20% off your ABC2026 ticket and secure your pass today.
Afrobitcoin.org/tickets
surl.li/yjsxxy
#ABC2026 #Malawi #Blantyre #Africa

A Merkle Tree is more than a structure for organizing hashes. It is one of the mechanisms that helps Bitcoin nodes efficiently verify that transactions belong to a block without having to process every transaction individually.
Understanding concepts like this matters when you’re building with Bitcoin. Because before you can build useful applications on top of the protocol, you need to understand what is happening underneath it.
And that’s exactly the kind of foundation @hack4_freedom Nairobi is designed to help developers build.
From Bitcoin and Lightning to Nostr, eCash and open-source development, you’ll have the opportunity to learn from experienced contributors, deepen your technical knowledge and put it into practice.
If you’re a woman developer in Kenya and you’re curious about building in this ecosystem, Hack4Freedom is a good place to start.
📅 Sept. 22 – Oct. 5, 2026
📍 Nairobi, Kenya
🎟️ Free to participate
Apply here:
app.evento.so/e/evt_thLRxQBL…
#BitcoinConceptOfTheWeek #Hack4Freedom #DadaDevs #BitcoinDevelopment
Satscode retweeted
What happens when learning Bitcoin stops being just about understanding the technology and starts becoming about building something with it?
In the latest episode of Btrust in Focus, @proofofpaul sits with @Fideltodayy, Founder of @bitika_KE, to talk about his path into Bitcoin development and the experiences that shaped his approach to building.
They discuss the challenges of learning Bitcoin as a developer, the programmes and communities that helped Fidel deepen his technical understanding, and how those experiences eventually led to Bitika, a platform making it easier for people in Kenya to access Bitcoin through M-Pesa and Lightning.
The conversation also explores Fidel's vision for building useful Bitcoin products in Africa and his advice to developers who have ideas but are still waiting for the right moment to act on them.
Watch the full episode here 👉 youtu.be/tFpmZEe0xpc?si=4e4k…
6/ On the Cashu side, the Payjoin extension to NUT-30 is a draft spec and @thesimplekid's implementation is a draft in CDK. But mints don't need to wait for that to power their Lightning payments with Bark: github.com/cashubtc/cdk-paym…
Satscode retweeted
We are pleased to announce Bright Kportiklah @BryteLitty as one of the speakers at the Africa Bitcoin Conference in Blantyre, Malawi!
He is a Ghanaian software developer and Bitcoin builder focused on making Bitcoin practical and accessible across Africa. He is the founder of BitSpenda, a Bitcoin payments platform that enables users to buy and sell Bitcoin and convert Bitcoin to local mobile money across multiple African markets.
Bright has been building Bitcoin payment infrastructure with a particular focus on the intersection of Bitcoin, lightning and mobile money. Through BitSpenda, he has worked on real-world payment solutions serving everyday users and businesses across Ghana, Nigeria, Kenya, Uganda and Cameroon.
He also contributes to Bitcoin education and ecosystem development through initiatives such as college BTC and his work with Bitcoin Dua and BitDevs Accra. His interests include Bitcoin payments, Lightning infrastructure, stablecoins, and building financial tools that address the realities of African markets.
Don’t miss any of his speech at ABC 2026. Get your ticket now Afrobitcoin.org/tickets
surl.li/yjsxxy
#ABC2026 #Bitcoin #Malawi #Blantyre

Satscode retweeted
After months of planning We're finally launching BitDevs Kisumu, see you this Sat 12th Sep 2026...Newest kid on the block😃⚡️🎊. Thank you @LakeHub for opening the doors...excited to working together and strengthening Bitcoin Dev community in Kisumu 🫡
Replying to @BitDevsKsm
Introducing BitDevs Kisumu
We’re excited to launch BitDevs Kisumu with our first meetup!
📅 12 Sept 2026
📍 LakeHub, Lake Basin Mall, Kisumu
Join us as we explore Bitcoin, development opportunities, and the ecosystem.
Liquid hack explained.
Liquid has confidential transactions that hide the amounts for improved privacy. A bug in how these transactions are validated caused inflation of Liquid BTC (L-BTC) and allowed hackers to empty the entire side chain.
Liquid nodes don't see the amounts of a confidential transaction, so to make sure that the transaction is still valid and doesn't cause inflation nodes check something called a balance proof and a range proof.
The balance proof establish that sum of the input amounts equal the output amounts, i.e., that "x L-BTC going in and x L-BTC going out". But there's a catch. Only relying on a balance proof isn't enough. You also need the range proof.
The range proof establishes that a hidden output amount falls within a positive range. That means a valid output must be at least 1 L-sat and at most 2^64 − 1 L-sats. Range proofs make sure that you can't mint "negative L-BTC".
Why is this even necessary? Remember, the amounts are hidden and a hidden negative amount would allow extra positive outputs to balance against it. Without a range proof, a transaction could say "I've put 1 L-BTC in, and I'm taking two outputs out: one with 4000 L-BTC and one with -3999 L-BTC)."
This is going to cause a disaster in a little bit.
Once the balance proof, the range proof, and other validations pass, a transaction is regarded as valid and can pass consensus. However, because especially the range proof is computationally expensive, Liquid nodes cache the result of a successful range proof in memory. Essentially, the node remembers "I saw this range proof before and it was valid, all good!".
In order to recognize the same range proof later on, you need to assign a label to it. This is called a cache key. This cache key is the actual cause of the bug.
The way this cache key was constructed allowed two different transactions to collide on their cache key. Essentially, one valid transaction (1 L-BTC in, 1 L-BTC out) had the same cache key as an invalid transaction (1 L-BTC in, 4000 L-BTC out).
Here's the hack: the attackers submitted the valid transaction (1 L-BTC in, 1 L-BTC out) first. Liquid nodes verified this transaction successfully, created a cache key called REKT and stored it in their cache. Then the attackers carefully crafted a second invalid transaction with (1 L-BTC in, 4000 L-BTC out) that created the same cache key REKT.
Instead of validating the second transaction and realizing that it printed money out of thin air, Liquid nodes found it in their cache and said "hey I saw this transaction before, everything is fine" and that caused the inflation.
The attackers then took their 4000 L-BTC and withdrew 4000 BTC onto the Bitcoin base chain.
Note: I might have gotten some details wrong, and I'm aware that I simplified quite a bit. I wrote this post to help people understand what happened. Please feel free to correct me in the comments or add more details below.