Fix links 10/WAKU2 (#153)

Update links that were not working.
This commit is contained in:
Jimmy Debe
2025-04-15 19:35:08 -04:00
committed by GitHub
parent 1b8b2ac70b
commit 34aa3f3647

View File

@@ -27,7 +27,7 @@ These capabilities are things such as:
This makes Waku ideal for running a p2p protocol on mobile devices and This makes Waku ideal for running a p2p protocol on mobile devices and
other similar restricted environments. other similar restricted environments.
Historically, it has its roots in [6/WAKU1](waku/standards/core/legacy/6/waku1.md), Historically, it has its roots in [6/WAKU1](/waku/standards/legacy/6/waku1.md),
which stems from [Whisper](https://eips.ethereum.org/EIPS/eip-627), which stems from [Whisper](https://eips.ethereum.org/EIPS/eip-627),
originally part of the Ethereum stack. originally part of the Ethereum stack.
However, Waku acts more as a thin wrapper for Pub/Sub and has a different API. However, Waku acts more as a thin wrapper for Pub/Sub and has a different API.
@@ -89,7 +89,7 @@ For example:
- Stronger guarantees for spam protection vs economic registration cost - Stronger guarantees for spam protection vs economic registration cost
For more on the concept of adaptive nodes and what this means in practice, For more on the concept of adaptive nodes and what this means in practice,
please see the [30/ADAPTIVE-NODES](waku/informational/30/adaptive-nodes.md) spec. please see the [30/ADAPTIVE-NODES](/waku/informational/30/adaptive-nodes.md) spec.
## Specification ## Specification
@@ -123,17 +123,17 @@ Since these aren't negotiated libp2p protocols,
they are referred to by their RFC ID. they are referred to by their RFC ID.
For example: For example:
- [14/WAKU2-MESSAGE](waku/standards/core/14/message.md) and - [14/WAKU2-MESSAGE](/waku/standards/core/14/message.md) and
[26/WAKU-PAYLOAD](waku/standards/application/26/payload.md) for message payloads [26/WAKU-PAYLOAD](/waku/standards/application/26/payload.md) for message payloads
- [23/WAKU2-TOPICS](waku/informational/23/topics.md) and - [23/WAKU2-TOPICS](/waku/informational/23/topics.md) and
[27/WAKU2-PEERS](waku/informational/27/peers.md) for recommendations around usage [27/WAKU2-PEERS](/waku/informational/27/peers.md) for recommendations around usage
There are also more experimental libp2p protocols such as: There are also more experimental libp2p protocols such as:
1. `/vac/waku/waku-rln-relay/2.0.0-alpha1` 1. `/vac/waku/waku-rln-relay/2.0.0-alpha1`
2. `/vac/waku/peer-exchange/2.0.0-alpha1` 2. `/vac/waku/peer-exchange/2.0.0-alpha1`
The semantics of these protocols are referred to by RFC ID [17/WAKU2-RLN-RELAY](waku/standards/core/17/rln-relay.md) and [34/WAKU2-PEER-EXCHANGE](waku/standards/core/34/peer-exchange.md). The semantics of these protocols are referred to by RFC ID [17/WAKU2-RLN-RELAY](/waku/standards/core/17/rln-relay.md) and [34/WAKU2-PEER-EXCHANGE](/waku/standards/core/34/peer-exchange.md).
#### Use of libp2p and Protobuf #### Use of libp2p and Protobuf
@@ -151,12 +151,12 @@ Waku is using gossiping to disseminate messages throughout the network.
**Protocol identifier**: `/vac/waku/relay/2.0.0` **Protocol identifier**: `/vac/waku/relay/2.0.0`
See [11/WAKU2-RELAY](waku/standards/core/11/relay.md) specification for more details. See [11/WAKU2-RELAY](/waku/standards/core/11/relay.md) specification for more details.
For an experimental privacy-preserving economic spam protection mechanism, For an experimental privacy-preserving economic spam protection mechanism,
see [17/WAKU2-RLN-RELAY](waku/standards/core/17/rln-relay.md). see [17/WAKU2-RLN-RELAY](/waku/standards/core/17/rln-relay.md).
See [23/WAKU2-TOPICS](waku/informational/23/topics.md) See [23/WAKU2-TOPICS](/waku/informational/23/topics.md)
for more information about the recommended topic usage. for more information about the recommended topic usage.
#### Direct use of libp2p protocols #### Direct use of libp2p protocols
@@ -248,18 +248,18 @@ such as low bandwidth or being mostly offline.
**Protocol identifier***: `/vac/waku/store-query/3.0.0` **Protocol identifier***: `/vac/waku/store-query/3.0.0`
This is used to fetch historical messages for mostly offline devices. This is used to fetch historical messages for mostly offline devices.
See [13/WAKU2-STORE spec](waku/standards/core/13/store.md) specification for more details. See [13/WAKU2-STORE spec](/waku/standards/core/13/store.md) specification for more details.
There is also an experimental fault-tolerant addition to the store protocol There is also an experimental fault-tolerant addition to the store protocol
that relaxes the high availability requirement. that relaxes the high availability requirement.
See [21/WAKU2-FAULT-TOLERANT-STORE](waku/standards/application/21/fault-tolerant-store.md) See [21/WAKU2-FAULT-TOLERANT-STORE](/waku/standards/application/21/fault-tolerant-store.md)
#### Content Filtering #### Content Filtering
**Protocol identifier***: `/vac/waku/filter/2.0.0-beta1` **Protocol identifier***: `/vac/waku/filter/2.0.0-beta1`
This is used to preserve more bandwidth when fetching a subset of messages. This is used to preserve more bandwidth when fetching a subset of messages.
See [12/WAKU2-FILTER](waku/standards/core/12/filter.md) specification for more details. See [12/WAKU2-FILTER](/waku/standards/core/12/filter.md) specification for more details.
#### LightPush #### LightPush
@@ -267,7 +267,7 @@ See [12/WAKU2-FILTER](waku/standards/core/12/filter.md) specification for more d
This is used for nodes with short connection windows and This is used for nodes with short connection windows and
limited bandwidth to publish messages into the Waku network. limited bandwidth to publish messages into the Waku network.
See [19/WAKU2-LIGHTPUSH](waku/standards/core/19/lightpush.md) specification for more details. See [19/WAKU2-LIGHTPUSH](/waku/standards/core/19/lightpush.md) specification for more details.
#### Other Protocols #### Other Protocols
@@ -286,55 +286,55 @@ The protocols initially mounted are indicated as such.
The PubSub topics `pubtopic1` and The PubSub topics `pubtopic1` and
`pubtopic2` is used for routing and `pubtopic2` is used for routing and
indicates that it is subscribed to messages on that topic for relay, indicates that it is subscribed to messages on that topic for relay,
see [11/WAKU2-RELAY](waku/standards/core/11/relay.md) for details. see [11/WAKU2-RELAY](/waku/standards/core/11/relay.md) for details.
Ditto for [13/WAKU2-STORE](waku/standards/core/13/store.md) Ditto for [13/WAKU2-STORE](/waku/standards/core/13/store.md)
where it indicates that these messages are persisted on that node. where it indicates that these messages are persisted on that node.
1. Node A creates a WakuMessage `msg1` with a ContentTopic `contentTopic1`. 1. Node A creates a WakuMessage `msg1` with a ContentTopic `contentTopic1`.
See [14/WAKU2-MESSAGE](waku/standards/core/14/message.md) for more details. See [14/WAKU2-MESSAGE](/waku/standards/core/14/message.md) for more details.
If WakuMessage version is set to 1, If WakuMessage version is set to 1,
we use the [6/WAKU1](waku/standards/legacy/6/waku1.md) compatible `data` field with encryption. we use the [6/WAKU1](/waku/standards/legacy/6/waku1.md) compatible `data` field with encryption.
See [7/WAKU-DATA](waku/standards/legacy/7/data.md) for more details. See [7/WAKU-DATA](/waku/standards/legacy/7/data.md) for more details.
2. Node F requests to get messages filtered by PubSub topic `pubtopic1` and 2. Node F requests to get messages filtered by PubSub topic `pubtopic1` and
ContentTopic `contentTopic1`. ContentTopic `contentTopic1`.
Node D subscribes F to this filter and Node D subscribes F to this filter and
will in the future forward messages that match that filter. will in the future forward messages that match that filter.
See [12/WAKU2-FILTER](waku/standards/core/12/filter.md) for more details. See [12/WAKU2-FILTER](/waku/standards/core/12/filter.md) for more details.
3. Node A publishes `msg1` on `pubtopic1` and 3. Node A publishes `msg1` on `pubtopic1` and
subscribes to that relay topic. subscribes to that relay topic.
It then gets relayed further from B to D, but It then gets relayed further from B to D, but
not C since it doesn't subscribe to that topic. not C since it doesn't subscribe to that topic.
See [11/WAKU2-RELAY](waku/standards/core/11/relay.md). See [11/WAKU2-RELAY](/waku/standards/core/11/relay.md).
4. Node D saves `msg1` for possible later retrieval by other nodes. 4. Node D saves `msg1` for possible later retrieval by other nodes.
See [13/WAKU2-STORE](waku/standards/core/13/store.md). See [13/WAKU2-STORE](/waku/standards/core/13/store.md).
5. Node D also pushes `msg1` to F, 5. Node D also pushes `msg1` to F,
as it has previously subscribed F to this filter. as it has previously subscribed F to this filter.
See [12/WAKU2-FILTER](waku/standards/core/12/filter.md). See [12/WAKU2-FILTER](/waku/standards/core/12/filter.md).
6. At a later time, Node E comes online. 6. At a later time, Node E comes online.
It then requests messages matching `pubtopic1` and It then requests messages matching `pubtopic1` and
`contentTopic1` from Node D. `contentTopic1` from Node D.
Node D responds with messages meeting this (and possibly other) criteria. Node D responds with messages meeting this (and possibly other) criteria.
See [13/WAKU2-STORE](waku/standards/core/13/store.md). See [13/WAKU2-STORE](/waku/standards/core/13/store.md).
## Appendix A: Upgradability and Compatibility ## Appendix A: Upgradability and Compatibility
### Compatibility with Waku Legacy ### Compatibility with Waku Legacy
[6/WAKU1](waku/standards/legacy/6/waku1.md) and Waku are different protocols all together. [6/WAKU1](/waku/standards/legacy/6/waku1.md) and Waku are different protocols all together.
They use a different transport protocol underneath; They use a different transport protocol underneath;
[6/WAKU1](waku/standards/legacy/6/waku1.md) is devp2p RLPx based while Waku uses libp2p. [6/WAKU1](/waku/standards/legacy/6/waku1.md) is devp2p RLPx based while Waku uses libp2p.
The protocols themselves also differ as does their data format. The protocols themselves also differ as does their data format.
Compatibility can be achieved only by using a bridge Compatibility can be achieved only by using a bridge
that not only talks both devp2p RLPx and libp2p, that not only talks both devp2p RLPx and libp2p,
but that also transfers (partially) the content of a packet from one version but that also transfers (partially) the content of a packet from one version
to the other. to the other.
See [15/WAKU-BRIDGE](waku/standards/core/15/bridge.md) for details on a bidirectional bridge mode. See [15/WAKU-BRIDGE](/waku/standards/core/15/bridge.md) for details on a bidirectional bridge mode.
## Appendix B: Security ## Appendix B: Security
@@ -395,14 +395,14 @@ the actors / actors' PII. Concerning anonymity, Waku provides the following feat
**Publisher-Message Unlinkability**: **Publisher-Message Unlinkability**:
This feature signifies the unlinkability of a publisher This feature signifies the unlinkability of a publisher
to its published messages in the 11/WAKU2-RELAY protocol. to its published messages in the 11/WAKU2-RELAY protocol.
The [Publisher-Message Unlinkability](waku/standards/core/11/relay.md/#security-analysis) The [Publisher-Message Unlinkability](/waku/standards/core/11/relay.md/#security-analysis)
is enforced through the `StrictNoSign` policy due to which the data fields is enforced through the `StrictNoSign` policy due to which the data fields
of pubsub messages that count as PII for the publisher must be left unspecified. of pubsub messages that count as PII for the publisher must be left unspecified.
**Subscriber-Topic Unlinkability**: **Subscriber-Topic Unlinkability**:
This feature stands for the unlinkability of the subscriber This feature stands for the unlinkability of the subscriber
to its subscribed topics in the 11/WAKU2-RELAY protocol. to its subscribed topics in the 11/WAKU2-RELAY protocol.
The [Subscriber-Topic Unlinkability](waku/standards/core/11/relay.md/#security-analysis) The [Subscriber-Topic Unlinkability](/waku/standards/core/11/relay.md/#security-analysis)
is achieved through the utilization of a single PubSub topic. is achieved through the utilization of a single PubSub topic.
As such, subscribers are not re-identifiable from their subscribed topic IDs As such, subscribers are not re-identifiable from their subscribed topic IDs
as the entire network is linked to the same topic ID. as the entire network is linked to the same topic ID.
@@ -428,7 +428,7 @@ of their connections and remove peers with a low score.
Confidentiality can be addressed through data encryption whereas integrity and Confidentiality can be addressed through data encryption whereas integrity and
authenticity are achievable through digital signatures. authenticity are achievable through digital signatures.
These features are provided for in [14/WAKU2-MESSAGE (version 1)](waku/standards/core/14/message.md/#version-1)` These features are provided for in [14/WAKU2-MESSAGE (version 1)](/waku/standards/core/14/message.md/#version-1)`
through payload encryption as well as encrypted signatures. through payload encryption as well as encrypted signatures.
### Security Considerations ### Security Considerations
@@ -472,39 +472,39 @@ This includes Waku legacy specifications, as they are used for bridging between
| Spec | nim-waku (Nim) | go-waku (Go) | js-waku (Node JS) | js-waku (Browser JS) | | Spec | nim-waku (Nim) | go-waku (Go) | js-waku (Node JS) | js-waku (Browser JS) |
| ---- | -------------- | ------------ | ----------------- | -------------------- | | ---- | -------------- | ------------ | ----------------- | -------------------- |
|[6/WAKU1](waku/standards/legacy/6/waku1.md)|✔|||| |[6/WAKU1](/waku/standards/legacy/6/waku1.md)|✔||||
|[7/WAKU-DATA](waku/standards/legacy/7/data.md)|✔|✔||| |[7/WAKU-DATA](/waku/standards/legacy/7/data.md)|✔|✔|||
|[8/WAKU-MAIL](waku/standards/legacy/8/mail.md)|✔|||| |[8/WAKU-MAIL](/waku/standards/legacy/8/mail.md)|✔||||
|[9/WAKU-RPC](waku/standards/legacy/9/rpc.md)|✔|||| |[9/WAKU-RPC](/waku/standards/legacy/9/rpc.md)|✔||||
|[10/WAKU2](waku/standards/core/10/waku2.md)|✔|🚧|🚧|✔| |[10/WAKU2](/waku/standards/core/10/waku2.md)|✔|🚧|🚧|✔|
|[11/WAKU2-RELAY](waku/standards/core/11/relay.md)|✔|✔|✔|✔| |[11/WAKU2-RELAY](/waku/standards/core/11/relay.md)|✔|✔|✔|✔|
|[12/WAKU2-FILTER](waku/standards/core/12/filter.md)|✔|✔||| |[12/WAKU2-FILTER](/waku/standards/core/12/filter.md)|✔|✔|||
|[13/WAKU2-STORE](waku/standards/core/13/store.md)|✔|✔|✔\*|✔\*| |[13/WAKU2-STORE](/waku/standards/core/13/store.md)|✔|✔|✔\*|✔\*|
|[14/WAKU2-MESSAGE](waku/standards/core/14/message.md))|✔|✔|✔|✔| |[14/WAKU2-MESSAGE](/waku/standards/core/14/message.md))|✔|✔|✔|✔|
|[15/WAKU2-BRIDGE](waku/standards/core/15/bridge.md)|✔|||| |[15/WAKU2-BRIDGE](/waku/standards/core/15/bridge.md)|✔||||
|[16/WAKU2-RPC](waku/deprecated/16/rpc.md)|✔|||| |[16/WAKU2-RPC](/waku/deprecated/16/rpc.md)|✔||||
|[17/WAKU2-RLN-RELAY](waku/standards/core/17/rln-relay.md)|🚧|||| |[17/WAKU2-RLN-RELAY](/waku/standards/core/17/rln-relay.md)|🚧||||
|[18/WAKU2-SWAP](waku/standards/application/18/swap.md)|🚧|||| |[18/WAKU2-SWAP](/waku/standards/application/18/swap.md)|🚧||||
|[19/WAKU2-LIGHTPUSH](waku/standards/core/19/lightpush.md)|✔|✔|✔\**|✔\**| |[19/WAKU2-LIGHTPUSH](/waku/standards/core/19/lightpush.md)|✔|✔|✔\**|✔\**|
|[21/WAKU2-FAULT-TOLERANT-STORE](waku/standards/application/21/fault-tolerant-store.md)|✔|✔||| |[21/WAKU2-FAULT-TOLERANT-STORE](/waku/standards/application/21/fault-tolerant-store.md)|✔|✔|||
*js-waku implements [13/WAKU2-STORE](waku/standards/core/13/store.md) as a querying node only. *js-waku implements [13/WAKU2-STORE](/waku/standards/core/13/store.md) as a querying node only.
**js-waku only implements [19/WAKU2-LIGHTPUSH](waku/standards/core/19/lightpush.md) requests. **js-waku only implements [19/WAKU2-LIGHTPUSH](/waku/standards/core/19/lightpush.md) requests.
### Recommendations for Clients ### Recommendations for Clients
To implement a minimal Waku client, To implement a minimal Waku client,
we recommend implementing the following subset in the following order: we recommend implementing the following subset in the following order:
- [10/WAKU2](waku/standards/core/10/waku2.md) - this specification - [10/WAKU2](/waku/standards/core/10/waku2.md) - this specification
- [11/WAKU2-RELAY](waku/standards/core/11/relay.md) - for basic operation - [11/WAKU2-RELAY](/waku/standards/core/11/relay.md) - for basic operation
- [14/WAKU2-MESSAGE](waku/standards/core/14/message.md) - version 0 (unencrypted) - [14/WAKU2-MESSAGE](/waku/standards/core/14/message.md) - version 0 (unencrypted)
- [13/WAKU2-STORE](waku/standards/core/13/store.md) - for historical messaging (query mode only) - [13/WAKU2-STORE](/waku/standards/core/13/store.md) - for historical messaging (query mode only)
To get compatibility with Waku Legacy: To get compatibility with Waku Legacy:
- [7/WAKU-DATA](waku/standards/legacy/7/data.md) - [7/WAKU-DATA](/waku/standards/legacy/7/data.md)
- [14/WAKU2-MESSAGE](waku/standards/14/message.md) - version 1 (encrypted with `7/WAKU-DATA`) - [14/WAKU2-MESSAGE](/waku/standards/14/message.md) - version 1 (encrypted with `7/WAKU-DATA`)
For an interoperable keep-alive mechanism: For an interoperable keep-alive mechanism:
@@ -520,7 +520,7 @@ under research and initial implementations:
We aim to enable an incentivized spam protection technique We aim to enable an incentivized spam protection technique
to enhance `11/WAKU2-RELAY` by using rate limiting nullifiers. to enhance `11/WAKU2-RELAY` by using rate limiting nullifiers.
More details on this can be found in [17/WAKU2-RLN-RELAY](waku/standards/core/17/rln-relay.md). More details on this can be found in [17/WAKU2-RLN-RELAY](/waku/standards/core/17/rln-relay.md).
In this advanced method, In this advanced method,
peers are limited to a certain rate of messaging per epoch and peers are limited to a certain rate of messaging per epoch and
an immediate financial penalty is enforced for spammers who break this rate. an immediate financial penalty is enforced for spammers who break this rate.
@@ -529,7 +529,7 @@ an immediate financial penalty is enforced for spammers who break this rate.
Denial of service signifies the case where an adversarial node Denial of service signifies the case where an adversarial node
exhausts another node's service capacity (e.g., by making a large number of requests) exhausts another node's service capacity (e.g., by making a large number of requests)
and makes it unavailable to the rest of the system. and makes it unavailable to the rest of the system.
DoS attack is to be mitigated through the accounting model as described in [18/WAKU2-SWAP](waku/deprecated/18/swap.md). DoS attack is to be mitigated through the accounting model as described in [18/WAKU2-SWAP](/waku/deprecated/18/swap.md).
In a nutshell, peers have to pay for the service they obtain from each other. In a nutshell, peers have to pay for the service they obtain from each other.
In addition to incentivizing the service provider, In addition to incentivizing the service provider,
accounting also makes DoS attacks costly for malicious peers. accounting also makes DoS attacks costly for malicious peers.
@@ -538,7 +538,7 @@ The accounting model can be used in `13/WAKU2-STORE` and
Additionally, this gives node operators who provide a useful service to the network Additionally, this gives node operators who provide a useful service to the network
an incentive to perform that service. an incentive to perform that service.
See [18/WAKU2-SWAP](waku/deprecated/18/swap.md) See [18/WAKU2-SWAP](/waku/deprecated/18/swap.md)
for more details on this piece of work. for more details on this piece of work.
## Copyright ## Copyright
@@ -549,31 +549,31 @@ Copyright and related rights waived via [CC0](https://creativecommons.org/public
1. [libp2p specs](https://github.com/libp2p/specs) 1. [libp2p specs](https://github.com/libp2p/specs)
2. [6/WAKU1](waku/standards/legacy/6/waku1.md) 2. [6/WAKU1](/waku/standards/legacy/6/waku1.md)
3. [Whisper spec (EIP627)](https://eips.ethereum.org/EIPS/eip-627) 3. [Whisper spec (EIP627)](https://eips.ethereum.org/EIPS/eip-627)
4. [Waku v2 plan](https://vac.dev/waku-v2-plan) 4. [Waku v2 plan](https://vac.dev/waku-v2-plan)
5. [30/ADAPTIVE-NODES](waku/informational/30/adaptive-nodes.md) 5. [30/ADAPTIVE-NODES](/waku/informational/30/adaptive-nodes.md)
6. [Protocol Identifiers](https://docs.libp2p.io/concepts/protocols/) 6. [Protocol Identifiers](https://docs.libp2p.io/concepts/protocols/)
7. [14/WAKU2-MESSAGE](waku/standards/core/14/message.md) 7. [14/WAKU2-MESSAGE](/waku/standards/core/14/message.md)
8. [26/WAKU-PAYLOAD](waku/standards/application/26/payload.md) 8. [26/WAKU-PAYLOAD](/waku/standards/application/26/payload.md)
9. [23/WAKU2-TOPICS](waku/informational/23/topics.md) 9. [23/WAKU2-TOPICS](/waku/informational/23/topics.md)
10. [27/WAKU2-PEERS](waku/informational/27/peers.md) 10. [27/WAKU2-PEERS](/waku/informational/27/peers.md)
11. [bi-directional binary stream](https://docs.libp2p.io/concepts/protocols/) 11. [bi-directional binary stream](https://docs.libp2p.io/concepts/protocols/)
12. [Protobuf varint encoding](https://developers.google.com/protocol-buffers/docs/encoding#varints) 12. [Protobuf varint encoding](https://developers.google.com/protocol-buffers/docs/encoding#varints)
13. [11/WAKU2-RELAY spec](waku/standards/core/11/relay.md) 13. [11/WAKU2-RELAY spec](/waku/standards/core/11/relay.md)
14. [17/WAKU2-RLN-RELAY](waku/standards/core/17/rln-relay.md) 14. [17/WAKU2-RLN-RELAY](/waku/standards/core/17/rln-relay.md)
15. [EIP-1459](https://eips.ethereum.org/EIPS/eip-1459) 15. [EIP-1459](https://eips.ethereum.org/EIPS/eip-1459)
@@ -585,17 +585,17 @@ Copyright and related rights waived via [CC0](https://creativecommons.org/public
19. [EIP-778 ENR (Ethereum Node Records)](https://eips.ethereum.org/EIPS/eip-778) 19. [EIP-778 ENR (Ethereum Node Records)](https://eips.ethereum.org/EIPS/eip-778)
20. [13/WAKU2-STORE spec](waku/standards/core/13/store.md) 20. [13/WAKU2-STORE spec](/waku/standards/core/13/store.md)
21. [21/WAKU2-FT-STORE](waku/standards/application/21/ft-store.md) 21. [21/WAKU2-FT-STORE](/waku/standards/application/21/ft-store.md)
22. [12/WAKU2-FILTER](waku/standards/core/12/filter.md) 22. [12/WAKU2-FILTER](/waku/standards/core/12/filter.md)
23. [19/WAKU2-LIGHTPUSH](waku/standards/core/19/lightpush.md) 23. [19/WAKU2-LIGHTPUSH](/waku/standards/core/19/lightpush.md)
24. [7/WAKU-DATA](waku/standards/legacy/7/data.md) 24. [7/WAKU-DATA](/waku/standards/legacy/7/data.md)
25. [15/WAKU-BRIDGE](waku/standards/core/15/bridge.md) 25. [15/WAKU-BRIDGE](/waku/standards/core/15/bridge.md)
26. [k-anonymity](https://www.privitar.com/blog/k-anonymity-an-introduction/) 26. [k-anonymity](https://www.privitar.com/blog/k-anonymity-an-introduction/)
@@ -607,9 +607,9 @@ Copyright and related rights waived via [CC0](https://creativecommons.org/public
30. [js-waku (NodeJS and Browser)](https://github.com/status-im/js-waku/) 30. [js-waku (NodeJS and Browser)](https://github.com/status-im/js-waku/)
31. [8/WAKU-MAIL](waku/standards/legacy/8/mail.md) 31. [8/WAKU-MAIL](/waku/standards/legacy/8/mail.md)
32. [9/WAKU-RPC](waku/standards/legacy/9/rpc.md) 32. [9/WAKU-RPC](/waku/standards/legacy/9/rpc.md)
33. [16/WAKU2-RPC](waku/deprecated/16/rpc.md) 33. [16/WAKU2-RPC](waku/deprecated/16/rpc.md)