1"use strict";(self.webpackChunkaa=self.webpackChunkaa||[]).push([[9726],{1403:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>l,frontMatter:()=>i,metadata:()=>a,toc:()=>c});var t=s(86070),r=s(27468);const i={sidebar_position:1},o="Get started with Haven",a={id:"haven-user-guide/get-started",title:"Get started with Haven",description:"This guide explains how to use Haven and is based on v0.3.",source:"@site/docs/haven-user-guide/get-started.md",sourceDirName:"haven-user-guide",slug:"/haven-user-guide/get-started",permalink:"/docs/haven-user-guide/get-started",draft:!1,unlisted:!1,tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"xx Network Haven User's Guide",permalink:"/docs/category/xx-network-haven-users-guide"},next:{title:"Connect to xx Network",permalink:"/docs/haven-user-guide/access-web-application"}},d={},c=[{value:"How Haven protects your communications",id:"how-haven-protects-your-communications",level:2},{value:"Where to get Haven",id:"where-to-get-haven",level:2},{value:"For the impatient",id:"for-the-impatient",level:3},{value:"Browser considerations",id:"browser-considerations",level:2},{value:"Chromium-based browsers",id:"chromium-based-browsers",level:3},{value:"Firefox-based browsers",id:"firefox-based-browsers",level:3},{value:"Tor",id:"tor",level:3}];function h(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",img:"img",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.h1,{id:"get-started-with-haven",children:"Get started with Haven"}),"\n",(0,t.jsx)(n.p,{children:"This guide explains how to use Haven and is based on v0.3."}),"\n",(0,t.jsx)(n.h2,{id:"how-haven-protects-your-communications",children:"How Haven protects your communications"}),"\n",(0,t.jsx)(n.p,{children:"What's protected?"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Content"})," of messages (E2EE): messages are encrypted on the client using quantum-resistant encryption and may be decrypted by the sender and recepients (channel subscribers). Redundant copies of encrypted messages are stored on xx Network for several weeks before they expire"]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Identities and interactions"}),' of conversation participants: sender-identifying metadata of each message is stripped in the process called mixing (using five random xx Network hosts per each batch of messages - part of cMix protocol). Haven clients use "cover traffic" and data is mixed and stored encrypted on random cMix gateways, so it is not possible to determine which participants may be in the same conversation']}),"\n",(0,t.jsxs)(n.li,{children:["Haven Web ",(0,t.jsx)(n.strong,{children:"application cache"}),": local copy of user's messages is stored encrypted in password-protected browser cache"]}),"\n"]}),"\n",(0,t.jsxs)(n.p,{children:["See ",(0,t.jsx)(n.a,{href:"https://xx.network/faq/",children:"the xx Network FAQs"})," and ",(0,t.jsx)(n.a,{href:"https://xx.network/whitepapers/",children:"whitepapers"})," to learn more about the technology behind it."]}),"\n",(0,t.jsx)(n.h2,{id:"where-to-get-haven",children:"Where to get Haven"}),"\n",(0,t.jsxs)(n.p,{children:['Haven is a Web application that runs in your browser, so you don\'t really have to "get it" - you just need to access a trusted Haven Web instance download and use it ',(0,t.jsx)(n.strong,{children:"from your browser"}),"."]}),"\n",(0,t.jsx)(n.p,{children:"The app, running in the browser, connects to xx Network to send and receive messages. A Socks5 proxy or VPN is optional for these connections."}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.img,{alt:"Haven client connectivity diagram",src:s(53127).A+"",width:"501",height:"282"})}),"\n",(0,t.jsx)(n.h3,{id:"for-the-impatient",children:"For the impatient"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:["Go to ",(0,t.jsx)(n.a,{href:"https://haven.xx.network",children:"haven.xx.network"})," and create a codename. ",(0,t.jsx)(n.a,{href:"/docs/haven-user-guide/identity#backup-an-identity",children:"Back it up"})," if you plan to keepit (",(0,t.jsx)(n.code,{children:"Export my codename"})," in Web UI) and use it later."]}),"\n",(0,t.jsxs)(n.li,{children:["Once you create a codename, create own channel or (if you don't have anyone to chat with) you may
1join existing: ",(0,t.jsx)(n.a,{href:"http://haven.xx.network/join?0Name=xxGeneralChat&1Description=Talking+about+the+xx+network&2Level=Public&3Created=1674152234202224215&e=%2FqE8BEgQQkXC6n0yxeXGQjvyklaRH6Z%2BWu8qvbFxiuw%3D&k=RMfN%2B9pD%2FJCzPTIzPk%2Bpf0ThKPvI425hye4JqUxi3iA%3D&l=368&m=0&p=1&s=rb%2BrK0HsOYcPpTF6KkpuDWxh7scZbj74kVMHuwhgUR0%3D&v=1",children:"xx Network General Chat"})," is a public chat channel managed by the xx Foundation."]}),"\n"]}),"\n",(0,t.jsx)(n.p,{children:"Be back and read on if you get stuck! This animated GIF shows the above steps for your reference."}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.img,{alt:"Haven walk-through",src:s(56718).A+"",width:"1366",height:"690"})}),"\n",(0,t.jsx)(n.h2,{id:"browser-considerations",children:"Browser considerations"}),"\n",(0,t.jsx)(n.p,{children:"All recent Chromium- and Firefox-based browsers work."}),"\n",(0,t.jsx)(n.p,{children:"The following limitations apply:"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Private mode must be disabled"}),'. The reason is Haven identity and data is written encrypted to local (browser) storage. Private (or "Incognito") mode prevents writes to local browser storage, so it must be disabled for the Haven Web application to work.']}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.strong,{children:"Each browser instance can run only one instance of Haven"}),". If you want to test different Haven identities on the same client at the same time, try using different browsers or different browser profiles."]}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"chromium-based-browsers",children:"Chromium-based browsers"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"Brave Browser: disable Brave Shield on the Haven Web site you use"}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"firefox-based-browsers",children:"Firefox-based browsers"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:["Tor Browser cannot be used because","\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"Mullvad Browser is like Tor with extra privacy features, so it cannot be used either"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,t.jsx)(n.p,{children:"Tor prevents apps from using persistent storage because applications generally do not encrypt their data at rest and storing data is seen as privacy risk."}),"\n",(0,t.jsx)(n.h3,{id:"tor",children:"Tor"}),"\n",(0,t.jsx)(n.p,{children:"One way to access Haven Web app and xx Network gateways over Tor is to use Tor's' Socks5 or Arti's Socks5 proxy."}),"\n",(0,t.jsx)(n.p,{children:"VPNs can be used as well. They may hide the fact that you're using Haven in the first place."})]})}function l(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(h,{...e})}):h(e)}},53127:(e,n,s)=>{s.d(n,{A:()=>t});const t=s.p+"assets/images/speakeasy-p2p-network-6efbf44564ddb966e01b1b2da0637914.png"},56718:(e,n,s)=>{s.d(n,{A:()=>t});const t=s.p+"assets/images/walkthrough-1b938f56d991a729b5b2f8c60708c0f8.gif"},27468:(e,n,s)=>{s.d(n,{R:()=>o,x:()=>a});var t=s(30758);const r={},i=t.createContext(r);function o(e){const n=t.useContext(i);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),t.createElement(i.Provider,{value:n},e.children)}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.