[{"data":1,"prerenderedAt":372},["ShallowReactive",2],{"project-23523830":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":47,"what":48,"said":79,"maker_in_thread":210,"shape":212,"grid":216,"attempts":333,"same_week":334,"maker_shows":33,"maker_hidden":364,"reader_version":365,"card":366},"23523830","Briefing","Anonymous, secure, open source WebRTC group video chat","title","Show HN: Briefing – Anonymous, secure, open source WebRTC group video chat","https:\u002F\u002Fbrie.fi\u002Fng?ref=hn","brie.fi","holtwick",1592195671,2020,203,51,273,3028,10,"notable","infrastructure","video chat","web_app",[24,21,25,26,27],"webrtc","open source","group video call","peer to peer","curious",-0.031,{"positive":31,"neutral":32,"mixed":33,"critical":34},6,25,1,7,39,{"privacy":37,"docs":38,"design":41,"performance":42,"idea":43,"execution":44},{"positive":33,"critical":31},{"positive":39,"critical":40},3,0,{"positive":33,"critical":40},{"positive":40,"critical":40},{"positive":40,"critical":40},{"positive":40,"critical":33},[33,39,39,40,40,40,33,39,46,40,33,33,39,40,40,39,33,39,39,39,40,39,39,39,39,39,46,39,39,46,39,39,39,39,39,39,46,46,40,33],5,null,{"problem":47,"audience":47,"pricing":47,"motivation":47,"time_to_build":47,"stack":49,"openness":77,"stage":78,"team_size":78},[50,58,65,71],{"value":51,"source":52,"evidence":53},"WebRTC","commenter",[54],{"id":55,"by":56,"text":57},"23524679","perenzo","Correct. Scroll up the page to learn about the details: https:\u002F\u002Fbrie.fi\u002Fng#help Also see https:\u002F\u002Fwebrtc-security.github.io\u002F WebRTC is end-to-end encrypted by default. There is a…",{"value":59,"source":52,"evidence":60},"Vue",[61],{"id":62,"by":63,"text":64},"23531254","sci_prog","Do you maybe have instructions on how to set this up on my own server\u002Fdomain? I've looked at the code but I'm not familiar with Vue. I have an online webgl multiplayer game where…",{"value":66,"source":52,"evidence":67},"TensorFlow.js BodyPix",[68],{"id":69,"by":56,"text":70},"23524946","That's correct, I use https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Ftfjs-models\u002Ftree\u002Fmaster\u002Fbody-pix#bodypixdrawbokeheffect It is indeed slow. The video signal first is drawn to a canvas and…",{"value":72,"source":52,"evidence":73},"coturn",[74],{"id":75,"by":56,"text":76},"23530628","I use coturn. Find installation details here https:\u002F\u002Fgithub.com\u002Fholtwick\u002Fbriefing\u002Fblob\u002Fmaster\u002Fapp\u002FINSTALL-COTURN.md","open_source","unknown",{"praise":80,"objections":99,"requests":138,"questions":167,"alternatives":186},[81,92],{"value":82,"source":52,"evidence":83},"Looks very nice and useful",[84,88],{"id":85,"by":86,"text":87},"23527018","Angostura","I just wanted to say that this looks very nice indeed.",{"id":89,"by":90,"text":91},"23523998","totetsu","Looks useful thank you for sharing. The website that provides the web app and mediates the communication stores as (few -> little) data as possible",{"value":93,"source":52,"evidence":94},"Open source client and server",[95],{"id":96,"by":97,"text":98},"23530523","lioeters","Thank you for making both the client and server sides of this video chat application open source. The only missing piece it seems is the STUN\u002FTURN server. Would you have a plan…",[100,110,120,131],{"value":101,"source":52,"evidence":102},"'Anonymous' is a misleading term; peers see each other's IP addresses",[103,107],{"id":104,"by":105,"text":106},"23524898","cryo","I don't understand the anonymous claim. Since in WebRTC peers connect directly to each other they'll see the IP of the other peer and can determine their locations. Further there…",{"id":108,"by":105,"text":109},"23531432","Thanks for the clarification, imo and as you already see in this discussion different people understand different meanings into the word. Maybe it's safer to use a clear…",{"value":111,"source":52,"evidence":112},"End-to-end encryption claim questioned without password-protected rooms",[113,117],{"id":114,"by":115,"text":116},"23531086","Andrew_nenakhov","> Anonymous end-to-end encrypted End to end encryption implies that you have established an encrypted connection with a known participant and secured it by verifying your keys…",{"id":118,"by":115,"text":119},"23550263","In most e2ee threat models the biggest source of threat is the server that mediates the data exchange. Other threats are sufficiently thwarted with TLS, so ... ... these Briefing…",{"value":121,"source":52,"evidence":122},"Room names are guessable, so anyone can spy on calls",[123,127],{"id":124,"by":125,"text":126},"23527389","seesawtron","Looks really cool. One key element is that anyone can spy on your call if they guess the random name that you generate to create the link. I am curious what randomizations you…",{"id":128,"by":129,"text":130},"23532846","yencabulator","So it's just javascript Math.random. https:\u002F\u002Fdeveloper.mozilla.org\u002Fen-US\u002Fdocs\u002FWeb\u002FJavaScript\u002FReference\u002FGlobal_Objects\u002FMath\u002Frandom > Math.random() does not provide…",{"value":132,"source":52,"evidence":133},"Camera and microphone permission prompts did not appear in Firefox 79",[134],{"id":135,"by":136,"text":137},"23526513","nannal","\"No camera or microphone has been found!\" Using firefox 79, the usual prompts to allow permissions were not issued.",[139,149,153,160],{"value":140,"source":52,"evidence":141},"Password-protected rooms",[142,146],{"id":143,"by":144,"text":145},"23534575","nybble41","In this case authentication is provided through a shared secret (the room name). An arbitrary MitM wouldn't know the room name since the connection to the server is also…",{"id":147,"by":125,"text":148},"23527631","Yes password protection would definitely make this more usable. Have you also seen apprtc [0]? Could you point out if there are any differences you see there to Briefing? [0]…",{"value":150,"source":52,"evidence":151},"Use clearer wording than anonymous",[152],{"id":108,"by":105,"text":109},{"value":154,"source":52,"evidence":155},"Decentralized operation without a signaling server",[156],{"id":157,"by":158,"text":159},"23526713","waynenilsen","How can we further decentralize this such that the entire app runs \"without any servers\"? Sadly it is so close but the realities of ipv4 and local subnets definitely makes this…",{"value":161,"source":52,"evidence":162},"Exposing DTLS fingerprints for manual verification",[163],{"id":164,"by":165,"text":166},"23526670","a1a1a1a1a1a1","Not sure if this is possible with the current WebRTC api, but if you could expose the dtls public keys for the current and remote sessions somewhere, that would help to reduce…",[168,175,182],{"value":169,"source":52,"evidence":170},"How is encryption and key verification handled?",[171],{"id":172,"by":173,"text":174},"23524105","schoen","How does the encryption work here? The home page says \"end-to-end encrypted\"; is there a key management concept and a key verification feature of some kind?",{"value":176,"source":52,"evidence":177},"How is the background blur implemented?",[178],{"id":179,"by":180,"text":181},"23524863","tpetry","How do you do the background? Are you using the bodypix tensorflow library? Because in my tests it had been horrible slow and very inaccurate depending on lighting,",{"value":183,"source":52,"evidence":184},"How to self-host on own domain?",[185],{"id":62,"by":63,"text":64},[187,191,199,203],{"value":188,"source":52,"evidence":189},"apprtc",[190],{"id":147,"by":125,"text":148},{"value":192,"source":52,"evidence":193},"Jitsi",[194,195],{"id":55,"by":56,"text":57},{"id":196,"by":197,"text":198},"23524808","clawoo","I think you are very much misinformed on the subject. You're not sending unencrypted streams to Jitsi, as it uses hop-by-hop encryption, meaning you send an encrypted stream to…",{"value":200,"source":52,"evidence":201},"Zoom",[202],{"id":55,"by":56,"text":57},{"value":204,"source":52,"evidence":205},"Squawk",[206],{"id":207,"by":208,"text":209},"23527076","zumachase","Bootstrapping a distributed swarm is always a tricky proposition. Bittorrent clients use a few endpoints to bootstrap their dht, and then upgrade to p2p after that. I think…",{"comments":40,"answered":40,"key":211},[],{"commenters":213,"max_depth":18,"maker_replies":40,"first_comment_mins":214,"lifespan_hours":215},28,38,55,[217,219,222,226,229,232,234,237,239,243,244,247,250,251,253,254,256,260,264,267,268,269,271,273,275,276,279,282,284,286,288,290,293,294,297,299,300,302,303,306,308,310,313,315,317,320,322,323,325,327,330],[104,40,33,218,105,40],"project\u002Fcritical\u002Fprivacy",[220,40,39,221,56,40],"23524976","maker\u002Fneutral\u002Fprivacy",[223,40,39,224,225,40],"23525563","project\u002Fneutral\u002Fdocs","walterbell",[227,40,40,228,56,40],"23526008","commenter\u002Fneutral\u002Fnone",[230,40,40,228,231,40],"23526312","inanutshellus",[233,40,40,228,225,40],"23526424",[235,40,40,228,236,40],"23526659","asjw",[238,40,33,218,125,40],"23527213",[240,40,40,241,242,40],"23527253","other\u002Fneutral\u002Fprivacy","marci",[108,40,39,224,105,40],[245,40,46,246,56,40],"23531598","maker\u002Fpositive\u002Fdocs",[248,40,40,228,249,40],"23531807","DavidPP",[114,33,33,218,115,40],[143,33,39,252,144,40],"project\u002Fneutral\u002Fprivacy",[118,33,33,218,115,40],[172,255,39,252,173,40],2,[257,255,40,258,259,40],"23524375","commenter\u002Fneutral\u002Fprivacy","ec109685",[261,255,40,262,263,40],"23524561","commenter\u002Fcritical\u002Fprivacy","Beldin",[265,255,40,258,266,40],"23524583","enneff",[55,255,39,252,56,40],[196,255,33,218,197,40],[270,255,39,252,56,40],"23524916",[272,255,39,252,197,40],"23525089",[274,255,39,252,56,40],"23525248",[164,255,39,252,165,40],[277,255,40,241,278,40],"23524987","Lunrtick",[280,255,40,281,56,40],"23525065","other\u002Fneutral\u002Fnone",[124,39,39,283,125,40],"project\u002Fmixed\u002Fprivacy",[285,39,39,252,56,40],"23527422",[147,39,39,287,125,40],"project\u002Fneutral\u002Fnone",[289,39,39,287,56,40],"23527810",[291,39,46,292,125,40],"23528114","project\u002Fpositive\u002Fnone",[128,39,33,218,129,40],[85,295,46,296,86,40],4,"project\u002Fpositive\u002Fdesign",[179,46,39,298,180,40],"project\u002Fneutral\u002Fperformance",[69,46,39,298,56,40],[89,31,46,301,90,40],"project\u002Fpositive\u002Fprivacy",[62,34,39,224,63,40],[157,304,39,305,158,40],8,"project\u002Fneutral\u002Fidea",[307,304,39,224,56,40],"23526840",[309,304,39,305,158,40],"23527720",[311,304,39,305,312,40],"23527924","saurik",[314,304,39,305,158,40],"23530762",[316,304,39,305,56,40],"23527929",[318,304,39,305,319,40],"23529512","kodablah",[96,304,46,321,97,40],"project\u002Fpositive\u002Fdocs",[75,304,39,224,56,40],[324,304,46,246,97,40],"23531020",[207,304,40,326,208,40],"other\u002Fneutral\u002Fidea",[135,328,33,329,136,40],9,"project\u002Fcritical\u002Fexecution",[331,328,39,332,56,40],"23526572","maker\u002Fneutral\u002Fexecution",[],[335,340,345,350,354,359],{"id":336,"name":337,"points":338,"category":339},"23491940","Artvee",550,"learning_science",{"id":341,"name":342,"points":343,"category":344},"23519439","ISS Photo Explorer",528,"creative",{"id":346,"name":347,"points":348,"category":349},"23514682","Collected Notes",457,"productivity",{"id":351,"name":352,"points":353,"category":349},"23517394","LogoSearch",251,{"id":355,"name":356,"points":357,"category":358},"23549471","geekring",235,"consumer_social",{"id":360,"name":361,"points":362,"category":363},"23541949","s4",180,"security_privacy",false,"v2",{"id":367,"name":5,"line":6,"ai":364,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":368,"top":18,"kw":369,"maker":11,"domain":10,"tier":19,"attempts":40,"strip":370,"url":9,"mix":371,"praise":82,"objection":101,"sub":21},23523830,-0.03,[24,21,25,26,27],"1330001350113003133303333353353333335501",[31,32,33,34],1793991011466]