Keychat's avatar
Keychat 1 year ago
The Introduction of Keychat Keychat is a chat app, built on Bitcoin ecash, Nostr protocol and Signal protocol. Keychat is inspired by the postal system — stamps, post offices, letters. Keychat uses Bitcoin ecash as stamps and Nostr relays as post offices. Senders send messages stamped with Bitcoin ecash to Nostr relays. The Nostr relays collect the Bitcoin ecash, then deliver messages to receivers. Unlike the centralized postal system, Keychat can use multiple Bitcoin ecash issuers and Nostr relays, each maintained by distinct operators. Keychat uses Signal protocol to ensure message encryption security and meta-data privacy. The content of the letter can be exposed easily by opening the envelope. Keychat messages are end-to-end encrypted via Signal protocol, with a unique encryption key generated for each message. Only the sender and receiver can decrypt the message. The addresses of both parties on the envelope can be tracked. In theory, this problem is solved if they change addresses daily. So Keychat reuses Signal protocol to update sending and receiving addresses for nearly every message. Like the postal system, Keychat requires no registration. Users just generate Nostr keys as ID.

Replies (71)

Keychat's avatar
Keychat 1 year ago
It is interoperable. Keychat relay only add collecting bitcoin ecash function. If the relay operator provides free service, current relays e.g., Damus relay can be used as Keychat relay. The android apk will be released first, then the code.
Keychat's avatar
Keychat 1 year ago
Keychat message is also kind 4 event. So Keychat can use all relays which supports kind 4. The difference between Keychat messages and DM messages is encryption/decryption methods, which processed in client. Relays don’t care about encryption.
事件是由Sats能量驱动的,技术的创新破坏终于来了。
Does the app allow signal users to interact with nostr and vice versa? What's the role of these postage stamps? Are the stamps for paying the relays? What about the internet gateway etc..?
Keychat's avatar
Keychat 1 year ago
Yes, nostr relays get those ecash stamp. We think there is no long-lasting free lunch. So we learn from postal system. Ecash is best e-stamp. relay will be post office, which has income to cover cost.
Keychat's avatar
Keychat 1 year ago
Signal protocol =/= Signal app. WhatsApp also use signal protocol to achieve end to end encryption. So keychat users can’t interact with signal app users.
Keychat's avatar
Keychat 1 year ago
Yes, it’s possible. Bitcoin ecash as estamp is general solution.
Keychat's avatar
Keychat 1 year ago
The Signal protocol is only responsible for encrypting and decrypting messages. Yeah, Keychat uses Signal protocol to encrypt / decrypt message.
Can the devs stop now please. 😂 Can't keep up anymore.
Keychat's avatar Keychat
The Introduction of Keychat Keychat is a chat app, built on Bitcoin ecash, Nostr protocol and Signal protocol. Keychat is inspired by the postal system — stamps, post offices, letters. Keychat uses Bitcoin ecash as stamps and Nostr relays as post offices. Senders send messages stamped with Bitcoin ecash to Nostr relays. The Nostr relays collect the Bitcoin ecash, then deliver messages to receivers. Unlike the centralized postal system, Keychat can use multiple Bitcoin ecash issuers and Nostr relays, each maintained by distinct operators. Keychat uses Signal protocol to ensure message encryption security and meta-data privacy. The content of the letter can be exposed easily by opening the envelope. Keychat messages are end-to-end encrypted via Signal protocol, with a unique encryption key generated for each message. Only the sender and receiver can decrypt the message. The addresses of both parties on the envelope can be tracked. In theory, this problem is solved if they change addresses daily. So Keychat reuses Signal protocol to update sending and receiving addresses for nearly every message. Like the postal system, Keychat requires no registration. Users just generate Nostr keys as ID.
View quoted note →
what is "bitcoin ecash" tho? i'm guessing you're using double blinded signatures for what you call stamps here, but they are not tied to bitcoin?
Default avatar
BTCFalk 1 year ago
The onlyProblemm is constantly having to install a new app/migrate friends and famely.... But one day we'll have a absolutely great solution
Keychat's avatar Keychat
The Introduction of Keychat Keychat is a chat app, built on Bitcoin ecash, Nostr protocol and Signal protocol. Keychat is inspired by the postal system — stamps, post offices, letters. Keychat uses Bitcoin ecash as stamps and Nostr relays as post offices. Senders send messages stamped with Bitcoin ecash to Nostr relays. The Nostr relays collect the Bitcoin ecash, then deliver messages to receivers. Unlike the centralized postal system, Keychat can use multiple Bitcoin ecash issuers and Nostr relays, each maintained by distinct operators. Keychat uses Signal protocol to ensure message encryption security and meta-data privacy. The content of the letter can be exposed easily by opening the envelope. Keychat messages are end-to-end encrypted via Signal protocol, with a unique encryption key generated for each message. Only the sender and receiver can decrypt the message. The addresses of both parties on the envelope can be tracked. In theory, this problem is solved if they change addresses daily. So Keychat reuses Signal protocol to update sending and receiving addresses for nearly every message. Like the postal system, Keychat requires no registration. Users just generate Nostr keys as ID.
View quoted note →
Keychat's avatar
Keychat 1 year ago
I think it is possible. Give all relays who routed the message bitcoin ecash. Just like using 10 letter envelops, every envelop has one stamp.
Keychat's avatar
Keychat 1 year ago
Public. The relay is the first to receive the ecash stamp, so it can collect it. It's like the stamp is affixed on the envelope, not inside it.
Does it make sense to have a setting for receivers to require stamps too? Use case: if someone outside of my contacts sends me a note then they have to pay me to read it.
Keychat's avatar
Keychat 1 year ago
Users choose which relay to use. Relays set their own prices, although some may offer services for free.
Keychat's avatar
Keychat 1 year ago
Almost no one cares about Bcash anymore. We think bitcoin ecash will be popular.
Keychat's avatar
Keychat 1 year ago
It’s possible. You just need to ask him to transfer ecash. In Keychat, transferring ecash is just a message.Very easy.
Agreed, there is no reason to do this. Not necessarily malicious, sometimes people just have bad ideas and/or justify them with bad reasoning. OP, please release the source code as soon as possible; no one cares if it's ugly or half-broken or whatever. When the app is released I might test it out briefly, but for something as important as encrypted comms I won't consider using it regularly until source is available (and ideally it has reproducible builds too).
Keychat's avatar
Keychat 1 year ago
We will release code and android apk at the same time.
Sorry! I can't understand why I should pay for messages when I can send messages for free, for example through SimpleX or Briar? Perhaps you meant that when sending messages with stamps, the relay will have an incentive to work and not interfere with sending encrypted messages? And there might even be special relays?
Keychat's avatar
Keychat 1 year ago
Because in the Lightning Network, payments require multiple interactions to succeed. Additionally, the transaction fees for self-hosted Lightning Network transactions are very expensive.
Analogue Dog's avatar
Analogue Dog 1 year ago
I don't understand. What do you mean by 'multiple interactions to succeed'? Transaction fees on Lightning are in the order of one hundredth of one cent.
Keychat's avatar
Keychat 1 year ago
Because relay operators need to pay for server-related expenses. SimpleX relay operators also need to pay server-related expenses.
Analogue Dog's avatar
Analogue Dog 1 year ago
Don't use Phoenix then. If I have $50 of Bitcoin on the Lightning network. I don't care about custody. If I put $1000 of Bitcoin on the Lightning network, I'll make sure I have my own keys. "Bitcoin e-cash" is a misnomer. It's not Bitcoin. It's some shitcoin that may or may not be backed by Bitcoin.
Keychat's avatar
Keychat 1 year ago
“If I have $50 of Bitcoin on the Lightning network. I don't care about custody.” yes,custody Lightning network is shitcoin.
Analogue Dog's avatar
Analogue Dog 1 year ago
I disagree. Happily used it every day in El Salvador. And it works. And it's bitcoin. The only use case I can think of for e-cash is CBDC and dog meme coins.
I would imagine the relay operates the mint and since lightning is used to get in/out your client could just use lightning to buy the exact amount of ecash needed for a stamp and then use that? Probably still prohibitively expensive with lightning fees for one stamp but maybe you could just round up to whatever makes sense whenever your balance is too low.
You didn’t write about this on your website, you didn’t say why I should send paid messages. I'm not outraged, I just want people to understand what incentive they might have to use your program.
Yeah I don't see it as functionally different than you loading an account somewhere with credits, or a custodial wallet. I think it might be useful as a formalized way for people to spin up an account system within their app/service with lightning in/out and some privacy internally, but still just as risky as holding funds on anywhere else custodially.
Moar messaging options...
Keychat's avatar Keychat
The Introduction of Keychat Keychat is a chat app, built on Bitcoin ecash, Nostr protocol and Signal protocol. Keychat is inspired by the postal system — stamps, post offices, letters. Keychat uses Bitcoin ecash as stamps and Nostr relays as post offices. Senders send messages stamped with Bitcoin ecash to Nostr relays. The Nostr relays collect the Bitcoin ecash, then deliver messages to receivers. Unlike the centralized postal system, Keychat can use multiple Bitcoin ecash issuers and Nostr relays, each maintained by distinct operators. Keychat uses Signal protocol to ensure message encryption security and meta-data privacy. The content of the letter can be exposed easily by opening the envelope. Keychat messages are end-to-end encrypted via Signal protocol, with a unique encryption key generated for each message. Only the sender and receiver can decrypt the message. The addresses of both parties on the envelope can be tracked. In theory, this problem is solved if they change addresses daily. So Keychat reuses Signal protocol to update sending and receiving addresses for nearly every message. Like the postal system, Keychat requires no registration. Users just generate Nostr keys as ID.
View quoted note →
To avoid tracking, do you need to change addresses manually every day or is this done automatically when you send a message?
Keychat's avatar
Keychat 1 year ago
It is done automatically. Just like encryption key updating automatically.
Yes, the protocol just needs to understand "forward to relay" instead of "forward to user".
Default avatar
good Vietnam 1 year ago
Not have free meals. The ecash stamp will help maintain the whole system
Keychat's avatar
Keychat 1 year ago
Please wait, we need some more time. You can first see if you like the design of Keychat through the notes we have posted.
Don’t care about the design. Don’t care about the notes. Open code audited for security claims before a single use, and this will be the nostr wide recommendation.
There are no lightning stamps. Ecash is bearer asset, lightning does not have anything like that, but it's convertible, it is actually created by paying a lightning invoice. Doing several roundtrips to pay 1 sat (which would be requirement for lightning) is not feasible.