diff --git a/README.md b/README.md index 483edb2..b18a1d3 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,17 @@ # HushChat - Signal-like Protocol on Hush - +
+ ## Features of HushChat: @@ -21,9 +32,7 @@ code from Signal. A HushChat protocol whitepaper is in progress. ## Is HushChat only compatible with HUSH mainnet? -No, it's designed to run on any compatible Zcash Protocol chain, including all Hush Smart Chains: - -https://git.hush.is/hush/hush-smart-chains +No, it's designed to run on any compatible Zcash Protocol chain, including all [Hush Smart Chains](https://git.hush.is/hush/hush-smart-chains). That being said, HushChat is being developed soley on HUSH mainnet. Other cryptocoins are encouraged to read our Free Software and port it to their codebases with appropriate licensing. @@ -80,7 +89,7 @@ communicaitons. The world is increasingly chat-based versus email-based and Hush ## Will HushChat store messages on the blockchain like HushList does? Yes, data must be stored on-chain to have censorship resistance and HushChat can be thought of as a "flavor" of HushList. -Users may choose between storing data on the *public* Hush blockchain or their own Hush Smart Chain (which could be public or completely private) : https://git.hush.is/hush/hush-smart-chains +Users may choose between storing data on the *public* Hush blockchain or their own [Hush Smart Chain](https://git.hush.is/hush/hush-smart-chains) (which could be public or completely private). ## Isn't it a bad idea to store private data in a blockchain? @@ -126,4 +135,4 @@ Glad you asked!! HushChat adds various layers of privacy on top of our "base" Hu ## Where can I learn more? -Join our [Telegram](https://hush.is/telegram) +Join us on [Telegram](https://hush.is/telegram) or our [Telegram Support](https://hush.is/telegram_support) channels. diff --git a/guide.md b/guide.md index 9bebe5a..3aec7ef 100644 --- a/guide.md +++ b/guide.md @@ -1,33 +1,80 @@ # HushChat Beta Guide -## Ask somebody for their HushChat z-address (z-addr) +## Initial Setup -They click the button that says "zs1" and it will copy it to their clipboard. Give every contact a different z-addr! +In our example we use HushChat user Alice and HushChat user Bob that **both have valid positive Hush values in their wallets**. -## When you know a HushChat z-addr, send a contact request - -Make sure you have funds! Send yourself funds 3+ times or with 3+ outputs in one transaction, so you have multiple +Tips: + * Make sure to send yourself funds 3+ times or with 3+ outputs in one transaction, so you have multiple "notes" to spend. This means you can send another memo before waiting for a confirmation. If you don't, you will need to wait for 1 confirmation every time, before sending. -Click the "add contact" button at the top left, and "Send Contact Request" screen will show up. - * Choose a name - * Enter zaddr + * **I cannot stress this enough, but make sure to give every contact a different z-addr (z-address)!** + +### HushChat handshake + +Alice and Bob first have to initiate the HushChat initial communication handshake otherwise HushChat will not work correctly and you will end up with garbage, like this: + + + +##### Alice begins... + +1. Alice asks Bob for a HushChat z-address (z-addr) to start communicating. + + + +1. Bob clicks on the "Zs1" button in his HushChat tab. The result is that the wallet creates a new z-addr and copies it into his clipboard. We'll call this Bob's HushChat z-addr. + +1. Bob shares his newly created HushChat z-addr with Alice. + +1. Alice receives Bob's HushChat z-addr. + +##### Alice adds Bob as HushChat contact + +1. Alice clicks on the "add contact" button in her HushChat tab, which is to the left of "Zs1". The result is the "Send Contact Request" screen appears with a new z-addr, which we'll call this Alice's HushChat z-addr. This screen appears as: + + + +1. Alice then fills it in as follows: + * Choose a nickname + * Enter Bob's HushChat z-addr * Choose an avatar (custom avatars coming soon) * Add a custom memo introducing yourself - * Click "create new address" to make a custom new zaddr for this contact - * Click "Add contact and send request" - * Close "send contact request" window (this will autoclose in the future) - -## If you sent a request, be patient! -It may take a few minutes. This process became twice as fast as of November 2020 at Block 340,000, when our block time -decreased to 75 seconds. +1. Alice then clicks "Add contact and send request" and then close "send contact request" window (this will autoclose in the future). + +##### Bob confirms new HushChat contact + + + +1. Bob clicks on the "incoming contact request" button in his HushChat tab, which is to the left of the "add contact" button. Note that Bob sees a red 1 here instead of the zero, as seen above. The result is the "Incoming Contact Request" screen, which is shown here: + + + +1. Bob then clicks on the request as seen here: + + + +1. Bob then fills it in as follows: + * Choose a nickname + * Choose an avatar (custom avatars coming soon) + +1. Bob then clicks "Add new contact" and sees the following "Added Contact" popup, which he clicks "OK" on. + + + +##### Now Patience... + +1. Now Bob sends a HushChat message to Alice. It may take a few minutes. This process became twice as fast as of November 2020 at Block 340,000, when our block time decreased to 75 seconds. + +1. Alice then responds once she receives Bob's message. + +### Success -## Once your contact has accepted +Now both Alice and Bob are able to type encrypted memos (messages) back and forth and enjoy a bit of privacy :sunglasses: -And you get a response, now you can type encrypted memos back and forth and enjoy a bit of privacy :sunglasses: + ## Support -Join our [Telegram](https://hush.is/telegram) +Join us on [Telegram](https://hush.is/telegram) or our [Telegram Support](https://hush.is/telegram_support) channels. diff --git a/hushchat-sneak-preview.png b/hushchat-sneak-preview.png deleted file mode 100644 index 8e4f36a875134a96b0f2a3a5e320898480e70247..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 76517 zcmbrlWmH^E*Dbn%U?E6Ca0?*>hu{tg5D4zU-Q8Up65I*y?$WrsOK=O)xLe~cr=K^^ z`<;94y+7_4_eYN&U3>4UwO7@unrqJ0!E!QU=r0Lh0sw$6{!K&y0A8>G0Q?LJJglWc zA{#^
zi`E|EDpI;bXZ=gLU XBB)rlD8EQmN%(WpS9BGCtrX0{P`Z{;X?pP!H7dB`7I
zI)Uvh4hAo_Mg6y@U1UqY%5;PE9Uug65~KW-gnumi$UUhhehC>O5$|7NiLn?O8u!*U
ze=RqVAgUwKHR_fnek>DkD3 vza8InMZ0xBvj8fK)U5*Pffr-Nw=Zf8^=0?=g=k8B7`xs~
zu4o}cG*|fbDXbb?S&mKXdsD;=d(I{y4;QNq)Poe4a-AAE2Vu61s`&QZrv4lD%IlKMWcb`$XL&1CsT%f+u(x*u7=syDgC^zVIv|EJ*&oCkO8|26n$
z#y|74S-tbj&V+<>O1DJx`10UpzQUFkFCN4k0w4W6%}&+6z1;`Hs~0gaH3U9`EcF{`
zUlNjV|9^YIYD*)NHKMMOa9Bp;OICp`y7iGlr8H^$L9(6o%0iLlfZfgc*}Y|G6j`Vp
zOFpLZ;5pf-NNN7|1{Yr|bOO!zqVN{5
zD0Ts+P1fD5Eb?oiU6YFqE%Bg%KUE$Y)l8-#0X~K7N4)OeEFQ^h&OsQI=Z#c0X{i%J
zs`CW5NheOf=@-~%8Ms~%
q-f3%oC6=?rfyA0yL{0#h$
zCPG>k$E0nm%@_6`6S@+6yhX6T
z4WH?KlCY$Qc}ugME#z#A&L!33O<8HyhsT>*yeu23yQkEVXij#j^5h9k0>DSbqG!m>
z>K7AOa5a52k8ip0GQVMX66X;eA9!aTUp*H#Zog8$W&c95x&_mkiwt79om}aJ2moE8
zF)Grm=sb06HSL>3CdtN4B!cVI>=`V*LhLS46>AN9tw}q95gxgLI*U%sN}!W4a&`w<
z8j*sz-<8H|c-LC!vP>p@Qhe`9UL^0ixz=6YEly|}?c`$pqk?423s$4wXfIT{_fFP&
zFg4^ATA-YKh=9dyeKA%lRybVql2+ZN{P%~!M5(8_$K#iha6r)hm5%fDm2XN)_0-Rj
z{?g=aex~jEMDO*{jh$l|Olx9ofpMiq*I!cMuj%kywn)p9`7AaDi7?aoL7qE96J;eB
zTt*5&w*J-qFMbs=J_na3(Bt@7R`^+ZPq4cBk$~ICQ&wn6NrA&@EMi&0(&fp?<(cgY
z=eJP6fX93+j#q}UJbetRJ
3llh
z;*>U4--Hwv10;AlE$2Ouya9}NyA^lA!talL(P^u)aNC-3p)h8$lzl|X^g(CQC40x?CSkiXBdL7tqHIs#60UA;^WSy(fZ2-
z*OLRO*!Ze>;Aeh5%otnLoJF_}MZQU>u49%&R&l$QrLN8%7TcmA0g`ZYP`2LtGi}t4LaCkWRJ17q)bh`KDzVptWq!Cligo&yKec0Vyk=F0>};a-!Q?
zJJ^S**vc?*&Mv80zgGM+u2CKf`@$)1)`+&vlFIv`!4Mj~Z7_zjG}F~|=%&Z9__on6
zziP`?cG)^Xa8e3TjN6>ev|fO8aAk6m!4bOZNLzP;$j`QhPOEmeNWiw^5a+Ym1IZfE
z-wxWaSn31je^Kn?j%uhS2kM1H9Jt#17}p5#GHv@Wd%AbW!Xd5(_CjeT*q*Nx7livp
z5w*KZ{XH@(WoHY%AG5=fUe^%PJXSN1Gs&-VS(HAkHT(OGfw78F+qOt*ia$>O;CCx!
zE0b4aNNjM!z>8H}{oq16PqQlY2MIB?8zC+5RZoUZ_FNB8G-l#&?wj*xDBmJ@5qJ7A
zkelyJUgAI62ZoAZT8d|KrDNfuRQMs`QTss^%c6Zvma`d3$%jkfEw@2zN&A%_EzeNe
zI;pe6bv0wvV@$V3^FGQnRVN!w`T6(vpFXs5AijV5mcyXucp6FR0`KKHoby{On7w{hZHSJ=)4{PL
zQWbFR