[{"data":1,"prerenderedAt":490},["ShallowReactive",2],{"project-32732158":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":28,"sentiment":29,"stance_mix":30,"scored_comments":35,"aspects":36,"strip":45,"post_text":48,"what":49,"said":96,"maker_in_thread":222,"shape":234,"grid":239,"attempts":454,"same_week":455,"maker_shows":41,"maker_hidden":483,"reader_version":484,"card":485},"32732158","Chitchatter","P2P chat app that is serverless, decentralized, ephemeral","title","Show HN: Chitchatter – P2P chat app that is serverless, decentralized, ephemeral","https:\u002F\u002Fchitchatter.im\u002F","chitchatter.im","jckahn",1662432509,2022,191,86,301,2570,12,"notable","productivity","peer-to-peer chat app","web_app",[24,25,26,27],"p2p chat","serverless chat","ephemeral messaging","webrtc chat","curious",-0.17,{"positive":31,"neutral":32,"mixed":33,"critical":34},4,21,1,10,36,{"privacy":37,"idea":40,"performance":42,"execution":43,"design":44},{"positive":38,"critical":39},0,7,{"positive":41,"critical":33},2,{"positive":33,"critical":33},{"positive":38,"critical":33},{"positive":38,"critical":38},[33,38,38,38,46,33,47,38,33,46,46,33,38,33,46,38,38,47,33,46,46,38,38,33,38,33,46,47,38,46,33,46,46,46,46,47,38,46,33,38],3,5,"For anyone who is interested to learn more about Chitchatter, please check out the project README: https:\u002F\u002Fgithub.com\u002Fjeremyckahn\u002Fchitchatter#readme\n\nChitchatter is very much an early MVP, so I'd like to get your feedback. Thanks for looking!",{"problem":50,"audience":59,"pricing":60,"motivation":66,"time_to_build":59,"stack":73,"openness":94,"stage":95,"team_size":94},{"value":51,"source":52,"evidence":53},"Private, ephemeral chat without a central server","maker",[54,56],{"id":55},"post",{"id":57,"by":11,"text":58},"32732415","Thanks for taking a look! This is my first time hearing of Tox, so it’s hard to for me give a great answer at the moment. Based on a quick look at Tox, it seems that a key…",null,{"value":61,"source":52,"evidence":62},"Takes no funding and makes no money",[63],{"id":64,"by":11,"text":65},"32757777","> \"Sufficient\" is a product perspective I don't really have. Anonymity isn't even a product most users want to buy and the users that do, you may not want as customers. FWIW,…",{"value":67,"source":52,"evidence":68},"Simple, secure communication as a public good",[69,72],{"id":70,"by":11,"text":71},"32738544","That makes sense. Thank you for the explanation! > Further, in order to build assurance about the counter integrity, we would need to employ formal verification and code…",{"id":64,"by":11,"text":65},[74,80,86],{"value":75,"source":52,"evidence":76},"WebRTC",[77],{"id":78,"by":11,"text":79},"32738293","Do you know if that might be mitigated by using Chitchatter via a Tor browser? I’m still building my understanding of the low-level mechanics of WebRTC.",{"value":81,"source":52,"evidence":82},"Trystero",[83],{"id":84,"by":11,"text":85},"32739671","Thanks for checking out the project! Chitchatter uses https:\u002F\u002Fgithub.com\u002Fdmotz\u002Ftrystero for peer connectivity, which doesn't support Tor. I don't know how Tor would be supported…",{"value":87,"source":88,"evidence":89},"MUI (Material UI)","commenter",[90],{"id":91,"by":92,"text":93},"32733726","o_m","The components are made with MUI, which is a component library based on Material design, originally created by Google.","unknown","beta",{"praise":97,"objections":112,"requests":149,"questions":177,"alternatives":192},[98,106],{"value":99,"source":88,"evidence":100},"Useful P2P serverless approach with browser-based rooms",[101,105],{"id":102,"by":103,"text":104},"32732552","porcc","Excellent work. We need more of these build-it-once peer to peer serverless webpages.",{"id":57,"by":11,"text":58},{"value":107,"source":52,"evidence":108},"Ephemeral messages not persisted to disk",[109],{"id":110,"by":11,"text":111},"32742075","This blog post was really helpful. Thank you blamestross! My understanding of your concern: So long as there is a static WebTorrent tracker initiating the peer connections, the…",[113,124,135,142],{"value":114,"source":88,"evidence":115},"Room UUID sharing channel is a security weakness",[116,120],{"id":117,"by":118,"text":119},"32732710","adg001","Jeremy, thanks for Chitchatter and for bringing this up here. The first feedback I can give you is about the threat model and the associated OPSEC measures mentioned in the…",{"id":121,"by":122,"text":123},"32734419","feb","The README is a bit optimistic about it the security model. Like the parent said the room UUID is a very critical asset and should be handled as a critical secret. Sadly, users…",{"value":125,"source":88,"evidence":126},"WebRTC signaling requires centralization",[127,131],{"id":128,"by":129,"text":130},"32733144","Sophira","Wouldn't that make it centralised, though, with Cloudflare being necessary for it to work?",{"id":132,"by":133,"text":134},"32733960","nl","https:\u002F\u002Fgithub.com\u002Fdmotz\u002Ftrystero#how-it-works You always need some kind of centralization for discovery with WebRTC.",{"value":136,"source":88,"evidence":137},"IP addresses visible to room participants",[138],{"id":139,"by":140,"text":141},"32735059","ajconway","On top of that, like every p2p service without onion routing, one's IP address is visible to every other room participant by design.",{"value":143,"source":88,"evidence":144},"Room access can be guessed by changing URL hash",[145],{"id":146,"by":147,"text":148},"32732795","SquidJack","I can access anyone room just simply changing the MD5 hash url Random Password protection for room may be the best feature",[150,157,164,171],{"value":151,"source":88,"evidence":152},"Password-protected rooms",[153,154],{"id":146,"by":147,"text":148},{"id":155,"by":11,"text":156},"32743579","FWIW, there is a plan to support password-protected chat rooms: https:\u002F\u002Fgithub.com\u002Fjeremyckahn\u002Fchitchatter#project-roadmap",{"value":158,"source":88,"evidence":159},"Show whether connection is P2P or relayed",[160],{"id":161,"by":162,"text":163},"32733471","laserfly","Thanks for the post, nice to see new apps. In my experience with webRTC, a lot of the time the p2p connection does not get fully achieved, and the connection falls back to the…",{"value":165,"source":88,"evidence":166},"Public key based initial key exchange",[167],{"id":168,"by":169,"text":170},"32734515","DreamFlasher","Initial key exchange via public private keys would be an amazing addition!",{"value":172,"source":88,"evidence":173},"Markdown support, room names and QR codes",[174],{"id":175,"by":133,"text":176},"32734065","Specific suggestions: Make it clear you can use markdown Have a max size of message (noting that MD can make short messages take a lot of space) Allow rooms to have names QR Code…",[178,185],{"value":179,"source":88,"evidence":180},"Why not use Tor for peer connectivity",[181],{"id":182,"by":183,"text":184},"32737842","jstanley","Cool project. I'm curious why you don't use Tor to provide peer-to-peer connectivity? It gives you NAT hole-punching and encryption for free. It seems the obvious choice. For an…",{"value":186,"source":88,"evidence":187},"How does it compare to Tox",[188],{"id":189,"by":190,"text":191},"32732328","cjtrowbridge","I know this is an MVP but it seems unclear what meaningful structural improvements you're making over more feature-rich alternatives like Tox?",[193,200,207,211,218],{"value":194,"source":88,"evidence":195},"Burnernote",[196],{"id":197,"by":198,"text":199},"32732766","kornhole","Butnernote.com could be a good way to share the room URL over generally insecure channels. After MVP, maybe an ephemeral room link could be created using the code from burnernote…",{"value":201,"source":88,"evidence":202},"Yopass",[203],{"id":204,"by":205,"text":206},"32734095","yamrzou","Or Yopass: https:\u002F\u002Fyopass.se",{"value":208,"source":88,"evidence":209},"Tox",[210],{"id":189,"by":190,"text":191},{"value":212,"source":88,"evidence":213},"Briar",[214],{"id":215,"by":216,"text":217},"32866065","timbit42","Tox is distributed but your IP is visible. You can use Tox inside Whonix which forces Tox to go through Tor. Briar is distributed but runs over Tor so your IP is hidden. You…",{"value":219,"source":88,"evidence":220},"Ricochet",[221],{"id":182,"by":183,"text":184},{"comments":223,"answered":31,"key":224},18,[225,228,231],{"id":226,"text":227},"32739576","I've added both of these to the README. Thanks for the suggestions!",{"id":229,"text":230},"32738588","> For example, it suggests to audit the gh-pages branch for the static assets. But when hosting with github, that branch could change at any time and deliver non-audited content.…",{"id":232,"text":233},"32738240","This is an interesting idea. How do you envision this working, broadly speaking?",{"commenters":235,"max_depth":236,"maker_replies":223,"first_comment_mins":237,"lifespan_hours":238},51,8,24,251,[240,242,244,248,251,253,257,259,261,262,264,265,268,269,271,275,277,279,280,281,284,286,288,290,292,293,296,298,302,306,310,312,315,318,320,323,325,327,330,333,336,338,339,340,343,345,348,350,353,355,357,359,360,363,364,367,371,372,373,375,377,382,384,387,389,393,397,399,403,405,407,411,414,417,419,420,423,427,431,435,438,441,445,446,449,450],[117,38,33,241,118,38],"project\u002Fcritical\u002Fprivacy",[197,38,46,243,198,38],"project\u002Fneutral\u002Fprivacy",[245,38,38,246,247,38],"32733955","commenter\u002Fneutral\u002Fnone","jamesholden",[249,38,38,246,250,38],"32734253","edf13",[252,38,38,246,198,38],"32736739",[254,38,38,255,256,38],"32737408","commenter\u002Fneutral\u002Fprivacy","gloosx",[258,38,38,246,198,38],"32737982",[260,38,38,255,256,38],"32746728",[204,38,46,243,205,38],[226,38,38,263,11,33],"maker\u002Fpositive\u002Fdocs",[121,38,33,241,122,38],[266,38,38,255,267,38],"32735657","dspillett",[229,38,38,243,11,33],[168,38,47,270,169,38],"project\u002Fpositive\u002Fidea",[272,38,46,273,274,38],"32735016","project\u002Fneutral\u002Fidea","jwally",[232,38,38,276,11,33],"commenter\u002Fneutral\u002Fidea",[278,38,38,273,11,33],"32801355",[139,38,33,241,140,38],[78,38,38,243,11,33],[282,38,46,243,283,38],"32738904","easrng",[285,38,38,243,11,33],"32738945",[287,38,46,243,140,38],"32739005",[289,38,38,243,11,33],"32736098",[291,38,33,241,118,38],"32736715",[70,38,38,246,11,33],[294,38,38,246,295,38],"32739631","piperswe",[297,38,38,246,11,33],"32743595",[299,38,38,300,301,38],"32740557","other\u002Fneutral\u002Fnone","TheJoeMan",[303,33,46,304,305,38],"32732796","project\u002Fneutral\u002Fnone","x-complexity",[307,33,33,308,309,38],"32733143","project\u002Fcritical\u002Fperformance","chriscjcj",[161,41,46,311,162,38],"project\u002Fneutral\u002Fperformance",[313,41,46,311,314,38],"32733608","ackbar03",[316,41,38,246,317,38],"32734975","jlokier",[319,41,38,246,162,38],"32736211",[321,41,38,246,322,38],"32736242","synctext",[324,41,38,311,11,33],"32743930",[326,41,38,311,11,33],"32750790",[328,41,47,329,162,38],"32799089","project\u002Fpositive\u002Fperformance",[331,46,38,246,332,38],"32732716","gfodor",[334,46,33,241,335,38],"32733133","earnesti",[337,46,38,246,332,38],"32738467",[128,46,46,243,129,38],[132,46,38,246,133,38],[341,46,46,273,342,38],"32735735","deepstack",[344,46,38,246,332,38],"32738557",[346,46,38,246,347,38],"32733504","bilekas",[349,46,38,246,332,38],"32738450",[351,46,38,352,342,38],"32735822","commenter\u002Fneutral\u002Fdocs",[354,46,38,246,332,38],"32738362",[356,46,38,304,11,33],"32743863",[189,31,33,358,190,38],"project\u002Fcritical\u002Fidea",[57,31,38,273,11,33],[361,31,38,246,362,38],"32734355","rendaw",[215,31,38,246,216,38],[365,47,33,241,366,38],"32736236","e12e",[368,369,38,300,370,38],"32736534",6,"snewhacker",[182,39,46,243,183,38],[84,39,38,243,11,33],[374,39,46,243,216,38],"32866092",[102,236,47,376,103,38],"maker\u002Fpositive\u002Fnone",[378,379,38,380,381,38],"32735084",9,"commenter\u002Fcritical\u002Fprivacy","blamestross",[110,379,38,383,11,33],"maker\u002Fneutral\u002Fprivacy",[385,379,46,386,381,38],"32743966","maker\u002Fmixed\u002Fprivacy",[64,379,38,388,11,33],"maker\u002Fneutral\u002Fnone",[390,34,33,391,392,38],"32732639","project\u002Fcritical\u002Fexecution","saimiam",[394,34,46,395,396,38],"32732828","project\u002Fneutral\u002Fexecution","djbusby",[398,34,46,395,392,38],"32732995",[400,401,46,273,402,38],"32739463",11,"altilunium",[175,18,46,404,133,38],"project\u002Fneutral\u002Fdesign",[406,18,38,388,11,33],"32742130",[408,409,46,404,410,38],"32733669",13,"can16358p",[412,409,46,404,413,38],"32733721","onion2k",[415,409,38,300,416,38],"32734664","toomim",[418,409,38,300,410,38],"32748401",[91,409,46,404,92,38],[421,409,46,404,422,38],"32735706","wgx",[424,425,47,270,426,38],"32733541",14,"anon115",[428,429,38,300,430,38],"32733787",15,"DeathArrow",[432,433,38,300,434,38],"32734974",16,"deknos",[436,437,46,304,426,38],"32733402",17,[439,437,38,300,440,38],"32733919","geysersam",[442,437,38,443,444,38],"32738870","other\u002Fneutral\u002Fprivacy","pessimizer",[146,223,33,241,147,38],[447,223,38,255,448,38],"32733138","peddling-brink",[155,223,38,243,11,33],[451,452,38,300,453,38],"32736374",19,"pandemicsoul",[],[456,461,466,471,475,479],{"id":457,"name":458,"points":459,"category":460},"32690410","Openship",1335,"web_saas",{"id":462,"name":463,"points":464,"category":465},"32747067","quake_watch",692,"games",{"id":467,"name":468,"points":469,"category":470},"32688646","Wavvy",530,"creative",{"id":472,"name":473,"points":474,"category":465},"32717133","Zelda Breath of the Wild Street View",456,{"id":476,"name":477,"points":478,"category":470},"32738654","Bauble",252,{"id":480,"name":481,"points":482,"category":20},"32753471","TinyClock",192,false,"v2",{"id":486,"name":5,"line":6,"ai":483,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":29,"top":18,"kw":487,"maker":11,"domain":10,"tier":19,"attempts":38,"strip":488,"url":9,"mix":489,"praise":99,"objection":114,"sub":21},32732158,[24,25,26,27],"1000315013310130051330010135031333350310",[31,32,33,34],1794036624523]