2024-04-07 07:56:46 +00:00
<!DOCTYPE html> < html class = "default" lang = "en" > < head > < meta charSet = "utf-8" / > < meta http-equiv = "x-ua-compatible" content = "IE=edge" / > < title > createDecoder | Documentation< / title > < meta name = "description" content = "Documentation for Documentation" / > < meta name = "viewport" content = "width=device-width, initial-scale=1" / > < link rel = "stylesheet" href = "../assets/style.css" / > < link rel = "stylesheet" href = "../assets/highlight.css" / > < script defer src = "../assets/main.js" > < / script > < script async src = "../assets/icons.js" id = "tsd-icons-script" > < / script > < script async src = "../assets/search.js" id = "tsd-search-script" > < / script > < script async src = "../assets/navigation.js" id = "tsd-nav-script" > < / script > < / head > < body > < script > document . documentElement . dataset . theme = localStorage . getItem ( "tsd-theme" ) || "os" ; document . body . style . display = "none" ; setTimeout ( ( ) => app ? app . showPage ( ) : document . body . style . removeProperty ( "display" ) , 500 ) < / script > < header class = "tsd-page-toolbar" > < div class = "tsd-toolbar-contents container" > < div class = "table-cell" id = "tsd-search" data-base = ".." > < div class = "field" > < label for = "tsd-search-field" class = "tsd-widget tsd-toolbar-icon search no-caption" > < svg width = "16" height = "16" viewBox = "0 0 16 16" fill = "none" > < use href = "../assets/icons.svg#icon-search" > < / use > < / svg > < / label > < input type = "text" id = "tsd-search-field" aria-label = "Search" / > < / div > < div class = "field" > < div id = "tsd-toolbar-links" > < / div > < / div > < ul class = "results" > < li class = "state loading" > Preparing search index...< / li > < li class = "state failure" > The search index is not available< / li > < / ul > < a href = "../index.html" class = "title" > Documentation< / a > < / div > < div class = "table-cell" id = "tsd-widgets" > < a href = "#" class = "tsd-widget tsd-toolbar-icon menu no-caption" data-toggle = "menu" aria-label = "Menu" > < svg width = "16" height = "16" viewBox = "0 0 16 16" fill = "none" > < use href = "../assets/icons.svg#icon-menu" > < / use > < / svg > < / a > < / div > < / div > < / header > < div class = "container container-main" > < div class = "col-content" > < div class = "tsd-page-title" > < ul class = "tsd-breadcrumb" > < li > < a href = "../index.html" > Documentation< / a > < / li > < li > < a href = "../modules/_waku_message_encryption.html" > @waku/message-encryption< / a > < / li > < li > < a href = "../modules/_waku_message_encryption.symmetric.html" > symmetric< / a > < / li > < li > < a href = "_waku_message_encryption.symmetric.createDecoder.html" > createDecoder< / a > < / li > < / ul > < h1 > Function createDecoder< / h1 > < / div > < section class = "tsd-panel" > < ul class = "tsd-signatures" > < li class = "tsd-signature tsd-anchor-link" > < a id = "createDecoder" class = "tsd-anchor" > < / a > < span class = "tsd-kind-call-signature" > create< wbr / > Decoder< / span > < span class = "tsd-signature-symbol" > (< / span > < span class = "tsd-kind-parameter" > contentTopic< / span > , < span class = "tsd-kind-parameter" > symKey< / span > , < span class = "tsd-kind-parameter" > pubsubTopicShardInfo< / span > < span class = "tsd-signature-symbol" > ?< / span > < span class = "tsd-signature-symbol" > )< / span > < span class = "tsd-signature-symbol" > : < / span > < span class = "tsd-signature-type" > Decoder< / span > < a href = "#createDecoder" aria-label = "Permalink" class = "tsd-anchor-icon" > < svg viewBox = "0 0 24 24" > < use href = "../assets/icons.svg#icon-anchor" > < / use > < / svg > < / a > < / li > < li class = "tsd-description" > < div class = "tsd-comment tsd-typography" > < p > Creates a decoder that decrypts messages using symmetric encryption, using
2022-12-06 00:06:29 +00:00
the given key as defined in < a href = "https://rfc.vac.dev/spec/26/" > 26/WAKU2-PAYLOAD< / a > .< / p >
< p > A decoder is used to decode messages from the < a href = "https://rfc.vac.dev/spec/14/" > 14/WAKU2-MESSAGE< / a >
format when received from the Waku network. The resulting decoder can then be
2024-08-05 10:24:16 +00:00
pass to @waku/interfaces!IReceiver.subscribe to automatically decrypt and
2022-12-06 00:06:29 +00:00
decode incoming messages.< / p >
2024-02-26 21:11:31 +00:00
< / div > < div class = "tsd-parameters" > < h4 class = "tsd-parameters-title" > Parameters< / h4 > < ul class = "tsd-parameter-list" > < li > < span > < span class = "tsd-kind-parameter" > contentTopic< / span > : < span class = "tsd-signature-type" > string< / span > < / span > < div class = "tsd-comment tsd-typography" > < p > The resulting decoder will only decode messages with this content topic.< / p >
< / div > < div class = "tsd-comment tsd-typography" > < / div > < / li > < li > < span > < span class = "tsd-kind-parameter" > symKey< / span > : < span class = "tsd-signature-type" > Uint8Array< / span > < / span > < div class = "tsd-comment tsd-typography" > < p > The symmetric key used to decrypt the message.< / p >
2024-10-16 23:02:37 +00:00
< / div > < div class = "tsd-comment tsd-typography" > < / div > < / li > < li > < span > < code class = "tsd-tag ts-flagOptional" > Optional< / code > < span class = "tsd-kind-parameter" > pubsubTopicShardInfo< / span > : < span class = "tsd-signature-type" > string< / span > < span class = "tsd-signature-symbol" > | < / span > < a href = "../interfaces/_waku_interfaces.SingleShardInfo.html" class = "tsd-signature-type tsd-kind-interface" > SingleShardInfo< / a > < / span > < / li > < / ul > < / div > < h4 class = "tsd-returns-title" > Returns < span class = "tsd-signature-type" > Decoder< / span > < / h4 > < div class = "tsd-comment tsd-typography" > < / div > < aside class = "tsd-sources" > < ul > < li > Defined in < a href = "https://github.com/waku-org/js-waku/blob/ded994f8ecd4ebec05cb9760f7eb3da273e5e02b/packages/message-encryption/src/symmetric.ts#L197" > packages/message-encryption/src/symmetric.ts:197< / a > < / li > < / ul > < / aside > < / li > < / ul > < / section > < / div > < div class = "col-sidebar" > < div class = "page-menu" > < div class = "tsd-navigation settings" > < details class = "tsd-index-accordion" > < summary class = "tsd-accordion-summary" > < h3 > < svg width = "20" height = "20" viewBox = "0 0 24 24" fill = "none" > < use href = "../assets/icons.svg#icon-chevronDown" > < / use > < / svg > Settings< / h3 > < / summary > < div class = "tsd-accordion-details" > < div class = "tsd-filter-visibility" > < h4 class = "uppercase" > Member Visibility< / h4 > < form > < ul id = "tsd-filter-options" > < li class = "tsd-filter-item" > < label class = "tsd-filter-input" > < input type = "checkbox" id = "tsd-filter-protected" name = "protected" / > < svg width = "32" height = "32" viewBox = "0 0 32 32" aria-hidden = "true" > < rect class = "tsd-checkbox-background" width = "30" height = "30" x = "1" y = "1" rx = "6" fill = "none" > < / rect > < path class = "tsd-checkbox-checkmark" d = "M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke = "none" stroke-width = "3.5" stroke-linejoin = "round" fill = "none" > < / path > < / svg > < span > Protected< / span > < / label > < / li > < li class = "tsd-filter-item" > < label class = "tsd-filter-input" > < input type = "checkbox" id = "tsd-filter-private" name = "private" / > < svg width = "32" height = "32" viewBox = "0 0 32 32" aria-hidden = "true" > < rect class = "tsd-checkbox-background" width = "30" height = "30" x = "1" y = "1" rx = "6" fill = "none" > < / rect > < path class = "tsd-checkbox-checkmark" d = "M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke = "none" stroke-width = "3.5" stroke-linejoin = "round" fill = "none" > < / path > < / svg > < span > Private< / span > < / label > < / li > < li class = "tsd-filter-item" > < label class = "tsd-filter-input" > < input type = "checkbox" id = "tsd-filter-inherited" name = "inherited" checked / > < svg width = "32" height = "32" viewBox = "0 0 32 32" aria-hidden = "true" > < rect class = "tsd-checkbox-background" width = "30" height = "30" x = "1" y = "1" rx = "6" fill = "none" > < / rect > < path class = "tsd-checkbox-checkmark" d = "M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke = "none" stroke-width = "3.5" stroke-linejoin = "round" fill = "none" > < / path > < / svg > < span > Inherited< / span > < / label > < / li > < / ul > < / form > < / div > < div class = "tsd-theme-toggle" > < h4 class = "uppercase" > Theme< / h4 > < select id = "tsd-theme" > < option value = "os" > OS< / option > < option value = "light" > Light< / option > < option value = "dark" > Dark< / option > < / select > < / div > < / div > < / details > < / div > < / div > < div class = "site-menu" > < nav class = "tsd-navigation" > < a href = "../index.html" > < svg class = "tsd-kind-icon" viewBox = "0 0 24 24" > < use href = "../assets/icons.svg#icon-1" > < / use > < / svg > < span > Documentation< / span > < / a > < ul class = "tsd-small-nested-navigation" id = "tsd-nav-container" data-base = ".." > < li > Loading...< / li > < / ul > < / nav > < / div > < / div > < / div > < footer > < p class = "tsd-generator" > Generated using < a href = "https://typedoc.org/" target = "_blank" > TypeDoc< / a > < / p > < / footer > < div class = "overlay" > < / div > < / body > < / html >