20 years later, Twitter co-founder Jack Dorsey is back with a new product called bitchat, embracing simplicity.
In the summer of 2006, when mobile internet was still a novelty term, feature phones were still the mainstream devices in people's hands, and text messaging was still the most convenient "mobile social" method, a project with the codename "twttr" was born. Starting from SMS mass delivery, it used a minimalist word limit and the most basic broadcast protocol to make "conversations with the world anytime, anywhere" possible for the first time.
In that rudimentary office, the founding team was passionately debating the details of the features, and Jack Dorsey, who was still just a college student at the time, was sitting among them. Using the most direct technological path, he turned his communication ideal into reality. twttr quickly grew into Twitter—a product that fundamentally changed the global social ecosystem.
Fast forward to today in 2025, as time has passed, technology and the world have undergone tremendous changes. Wi-Fi signals are everywhere in the city, and 5G has interconnected everything into a single network. However, the essence of social interaction has not changed: we still crave communication that is free, authentic, and intermediary-free. But reality is not always perfect—network blind spots, platform crashes, data breaches can happen anytime, anywhere. The now Musk-revamped Twitter not only changed its logo and name but has also been reshaped into an entirely new form.
As for Jack Dorsey, the legendary figure who once simultaneously led two publicly traded companies with a market value of over $5 billion each, he has long since left Twitter and has focused his energy on the crypto industry and the development of the Block. Yet, he has not completely abandoned his passion for the social arena. Like a young man designing the "twttr" project in 2006, Jack Dorsey once again, on a casual weekend, spent the whole night personally coding, designing a new minimalist social product—bitchat.
The only difference is that bitchat includes more of Jack Dorsey's beliefs in minimalist protocols, decentralized communication, and information freedom than "twttr."
Whether you need to share your location, seek emergency assistance while camping outdoors, hiking, or engaging in mountain activities without cellphone signal; effortlessly set up temporary chat networks with companions in crowded places such as music festivals, concerts, sports venues, or comic cons where networks often fail; establish emergency communication networks with rescue teams, volunteers, or residents during sudden disasters, power outages, or extreme weather conditions; protect the privacy of participants in social movements, protest scenes, sensitive discussions that are hard to track; or engage in maximum brainstorming in closed spaces such as universities, summer camps, research groups, or geek gatherings... bitchat is an excellent choice for all these scenarios.
The key highlight of bitchat is that it does not rely on any infrastructure — no servers, no Wi-Fi, and no mobile signal. Each phone serves as both a "transmitter" and a "relay station," discovering each other via Bluetooth Low Energy (BLE).
What attracts the crypto industry, even more importantly, is that all messages are end-to-end encrypted. Private chats use encryption technologies such as X25519+AES-256-GCM, and group chats can also be password-protected, with only those who know the password being able to view the content. Messages are only stored locally and automatically disappear upon exit or shutdown, leaving no backend traces.
Furthermore, compared to other encrypted communication products, bitchat completely eliminates the "login" action, requiring no phone number, email, or long key string. Each time you go online, a random "user ID" is generated, which can be changed at any time, without any worry of being traced.
Copy and open the following address on your iPhone's web browser: https://github.com/jackjackbits/bitchat.
On the page, find the TestFlight invitation entrance, click "View in the App Store" to jump to TestFlight. If you haven't installed TestFlight yet, you will be prompted to download it automatically. After installation, return to the invitation page, and you will see the Beta version of "bitchat mesh."
Install bitchat in TestFlight by clicking the "Install" button. You will see a simple App information page. The installation process takes about 5–10 seconds, and when the button changes from "Install" to "Open," you are ready.
Upon opening bitchat, the system will ask for permission with the prompt "Allow 'bitchat' to find Bluetooth devices?" The prompt explains: bitchat uses Bluetooth to create a secure mesh network for chatting with nearby users. Click "Allow" to enable bitchat to scan and connect to surrounding devices in the background, ensuring the message relay function functions properly.
Since it is still in the testing phase, you will be asked to share feedback with the developer; simply click "Next" to skip this step. Finally, click "Start Testing" to enter bitchat's main interface.
Tip: Be sure to confirm that your phone's Bluetooth is turned on and allow TestFlight to run in the background; otherwise, your nearby friends' devices won't be discoverable.
Discovering bitchat doesn't require any login process. Once downloaded, you can use it immediately. In bitchat, every conversation is anonymous and untraceable—no phone numbers, emails, or registrations are needed. You can change your nickname anytime. This mechanism maximizes user privacy protection, allowing you to communicate without worrying about being traced in sensitive or special situations.
In the bitchat*@ Current ID area at the top of the page, you can easily modify your ID. Simply click on the name after the @ symbol to edit and save your new ID. The new ID will take effect immediately and will be displayed in the friends list and message headers of everyone in the same room.
After using bitchat for a while, you will notice that the main interface continuously shows device connections (online) and disconnections (offline), along with message logs, each preceded by a timestamp.
To prevent "timing attacks," bitchat adds an additional 50–500 milliseconds of random delay after each action. This delay helps obscure the exact timing of your actions, preventing packet sniffing. The network traffic and your actual operation time will not directly correspond, offering identity protection in sensitive or special scenarios.
bitchat supports true end-to-end encryption, ensuring that only you and the recipient(s) can read each message, even group members. Not even intermediary devices can decrypt the messages. Whether in private or group chats, the content remains securely private and is not intercepted by the platform or third parties.
Look at the top right of the page to find a person icon; clicking on it will display all currently online peers: a green dot indicates online status, and a gray cross indicates recent offline status. For frequently contacted or important contacts, click the star icon next to their name to "favorite" them. Once favorited, a star will appear in front of their name for easy recognition.
In the online list, click on "Little Johnny" to enter a private chat window—unread message count will be indicated above their device.
At this time, when Xiao Shuai opens the notification, he will see that the sender is "<@BlockBeats>", and upon entering, he will be able to view the full chat record. Private chats are also end-to-end encrypted, and the conversation content cannot be decrypted by eavesdropping nodes. The timestamps of all messages here will also be accompanied by random time jitter to ensure privacy and resistance to traffic analysis.
Now here comes the question: the privacy of public conversations is not that great. Suppose we want to have a multi-person private conversation, how can we do that?
At any time, simply type / in the input box, and a complete command list will pop up at the bottom of the screen:
For example, /j corresponds to: Join or create a room. If the specified room already exists, you will join directly; if it does not exist, a new room will be created, and you will automatically become the owner.
/rooms corresponds to: List all currently discovered (joinable) room names to quickly view available rooms.
/w corresponds to: View the current online user list, displaying all online contacts in the same room or network as you.
/m corresponds to: Send a private message to a specific user. The format is usually /m @ username message content, and only you and the other party can see it.
/clear corresponds to: Clear all message records in the current chat window to restore the interface to its initial blank state.
/pass corresponds to: (Owner only) Set or modify the room access password. After execution, all users joining this room will need to enter this password to enter.
/transfer corresponds to: Transfer ownership of the room to another online user. The new owner will have powers such as password management and message retention.
/save corresponds to: (Owner only) Toggle the local message retention switch: when turned on, you can still view chat history locally when offline or after restarting the app; when turned off, messages are only saved in memory and cleared upon exit.
So, when creating a room, simply enter /j, then append the desired room name, such as "testroom." After sending, if the room does not exist, the system will automatically create it and make you the owner. Upon creation, a prompt will appear on the screen: "joined room #testroom (created new room – you are the owner) *"
At this time, if Xiaoshuai also wants to enter the private room, he needs to type /j testroom, enter the password on the popup page, and then he can enter the room.
Inside the room, there are also a series of advanced commands. Typing /pass yourSecret will trigger a password input box. Upon successful verification, only partners holding this passphrase can join again. Only the room owner can lock the room or change the password. You can also transfer ownership of the room by typing /transfer @ the other party's ID. After the other party accepts, they will automatically become the new owner, with full permissions for personnel management, password setting, and message retention toggle.
By default, bitchat's room messages exist briefly in memory; the room owner can use /save to locally enable or disable the "message retention" feature. When message retention is enabled, even if the app is restarted, you can still see the room history locally. Enter /save again to disable retention and restore the default "conversation evaporates immediately" mode.
After mastering the basics of creating a room, joining a room, sending and receiving private messages, and viewing online users, the next step is to learn some advanced commands on the main page, including clearing chat history, viewing online users and rooms, and other operations.
If you want to temporarily "clean up the battlefield," type /clear in the command line to quickly clear all displayed messages in the current session window. After cleaning, the screen will become as clean as new, just like the image shown here:
In the future, bitchat mesh will incorporate various transmission methods such as Wi-Fi Direct (250 Mbps, 100 meters), ultrasound, LoRa, automatically switching based on network and power; and can optionally access the Nostr protocol to bridge local Mesh and Internet nodes, extending the communication radius.
You can feel that bitchat perfectly inherits the three core principles of "concise, constraint, craft" that Jack Dorsey once defined for Twitter.
This is not the first time Jack Dorsey has embarked on building a social protocol after leaving Twitter. For example, in 2024, Bluesky, incubated internally at Twitter under Jack Dorsey's leadership and later spun out as an independent entity (with which he is currently no longer associated), was also a decentralized social protocol with a core focus on "Relay/Channel," supporting tens of thousands of community-hosted server nodes, theoretically similar to the BLE multi-hop relay mechanism of bitchat mesh.
Furthermore, the "trustless" spirit advocated by the Bitcoin community is deeply ingrained in the design of bitchat: no central server, no cloud archive, and even the user's identity is refreshed with every reboot. Nostr's stateless discovery mechanism, random delay in processing operations... all these details are aimed at preserving that most genuine "privacy and freedom."
The emergence of bitchat is another personal endeavor of Jack Dorsey towards decentralization and information freedom. In an era where the internet is frequently restricted and data breaches are common, he is once again returning social interaction to the users themselves—where every conversation is only limited by the distance of a Bluetooth signal, no longer subject to any platform, server, or intermediary interference.
Perhaps this is the most anticipated significance of bitchat: it may be small, it may have many flaws, but from a certain perspective, this could also be the "twttr" moment in the encrypted communication field.
Welcome to join the official BlockBeats community:
Telegram Subscription Group: https://t.me/theblockbeats
Telegram Discussion Group: https://t.me/BlockBeats_App
Official Twitter Account: https://twitter.com/BlockBeatsAsia