docs.waku.org/assets/js/41a4e09e.e9babc3e.js
2025-07-11 08:17:20 +00:00

1 line
5.1 KiB
JavaScript

"use strict";(self.webpackChunkwaku_guide=self.webpackChunkwaku_guide||[]).push([[9169],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>m});var n=r(67294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var s=n.createContext({}),p=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},c=function(e){var t=p(e.components);return n.createElement(s.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,s=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),u=p(r),f=o,m=u["".concat(s,".").concat(f)]||u[f]||d[f]||a;return r?n.createElement(m,i(i({ref:t},c),{},{components:r})):n.createElement(m,i({ref:t},c))}));function m(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=f;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[u]="string"==typeof e?e:o,i[1]=l;for(var p=2;p<a;p++)i[p]=r[p];return n.createElement.apply(null,i)}return n.createElement.apply(null,r)}f.displayName="MDXCreateElement"},68518:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>d,frontMatter:()=>a,metadata:()=>l,toc:()=>p});var n=r(87462),o=(r(67294),r(3905));const a={title:"Comparing Waku and libp2p",hide_table_of_contents:!0},i=void 0,l={unversionedId:"learn/waku-vs-libp2p",id:"learn/waku-vs-libp2p",title:"Comparing Waku and libp2p",description:"Since Waku is built on top of libp2p, they share a lot of concepts and terminologies between them. However, there are key differences between them that are worth noting.",source:"@site/docs/learn/waku-vs-libp2p.md",sourceDirName:"learn",slug:"/learn/waku-vs-libp2p",permalink:"/learn/waku-vs-libp2p",draft:!1,editUrl:"https://github.com/waku-org/docs.waku.org/tree/develop/docs/learn/waku-vs-libp2p.md",tags:[],version:"current",frontMatter:{title:"Comparing Waku and libp2p",hide_table_of_contents:!0},sidebar:"learn",previous:{title:"Research",permalink:"/learn/research"},next:{title:"Glossary",permalink:"/learn/glossary"}},s={},p=[{value:"Waku as a service network",id:"waku-as-a-service-network",level:2},{value:"Waku as a turnkey solution",id:"waku-as-a-turnkey-solution",level:2},{value:"Economic spam protection",id:"economic-spam-protection",level:2}],c={toc:p},u="wrapper";function d(e){let{components:t,...r}=e;return(0,o.kt)(u,(0,n.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"Since Waku is built on top of libp2p, they share a lot of concepts and terminologies between them. However, there are key differences between them that are worth noting."),(0,o.kt)("h2",{id:"waku-as-a-service-network"},"Waku as a service network"),(0,o.kt)("p",null,"Waku intends to incentivise mechanisms to run nodes, but it is not part of libp2p's scope. Additionally, users or developers do not have to deploy their infrastructure as a prerequisite to use Waku. It is a service network. However, you are encouraged to ",(0,o.kt)("a",{parentName:"p",href:"/#run-a-waku-node"},"run a node")," to support and decentralise the network."),(0,o.kt)("h2",{id:"waku-as-a-turnkey-solution"},"Waku as a turnkey solution"),(0,o.kt)("p",null,"Waku includes various protocols covering the following domains: privacy preservation, censorship resistance, and platform agnosticism, allowing it to run on any platform or environment."),(0,o.kt)("p",null,"Waku provides out-of-the-box protocols to enable mostly offline/resource-limited devices, ",(0,o.kt)("a",{parentName:"p",href:"/learn/concepts/protocols#store"},"Store"),"/",(0,o.kt)("a",{parentName:"p",href:"/learn/concepts/protocols#light-push"},"Light Push"),"/",(0,o.kt)("a",{parentName:"p",href:"/learn/concepts/protocols#filter"},"Filter")," caters to those use cases."),(0,o.kt)("h2",{id:"economic-spam-protection"},"Economic spam protection"),(0,o.kt)("p",null,"libp2p does not have strong spam protection guarantees, ",(0,o.kt)("a",{parentName:"p",href:"/learn/concepts/protocols#rln-relay"},"RLN Relay")," is a protocol being developed by the Waku team towards this goal."))}d.isMDXComponent=!0}}]);