mirror of
https://github.com/logos-co/roadmap.git
synced 2025-02-25 14:15:41 +00:00
104 lines
106 KiB
HTML
104 lines
106 KiB
HTML
|
<!DOCTYPE html>
|
|||
|
<html><head><title>2024-01-08 Nomos weekly</title><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><meta property="og:title" content="2024-01-08 Nomos weekly"/><meta property="og:description" content="Weekly update of Nomos."/><meta property="og:image" content="https://roadmap.logos.co/static/og-image.png"/><meta property="og:width" content="1200"/><meta property="og:height" content="675"/><link rel="icon" href="../../static/icon.png"/><meta name="description" content="Weekly update of Nomos."/><meta name="generator" content="Quartz"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com"/><link href="../../index.css" rel="stylesheet" type="text/css" spa-preserve/><link href="https://cdn.jsdelivr.net/npm/katex@0.16.0/dist/katex.min.css" rel="stylesheet" type="text/css" spa-preserve/><link href="https://fonts.googleapis.com/css2?family=IBM Plex Mono&family=sans-serif:wght@400;700&family=sans-serif:ital,wght@0,400;0,600;1,400;1,600&display=swap" rel="stylesheet" type="text/css" spa-preserve/><script src="../../prescript.js" type="application/javascript" spa-preserve></script><script type="application/javascript" spa-preserve>const fetchData = fetch(`../../static/contentIndex.json`).then(data => data.json())</script></head><body data-slug="nomos/updates/2024-01-08"><div id="quartz-root" class="page"><div id="quartz-body"><div class="left sidebar"><h1 class="page-title "><a href="../..">Logos Collective Project Roadmaps</a></h1><div class="spacer mobile-only"></div><div class="search "><div id="search-icon"><p>Search</p><div></div><svg tabIndex="0" aria-labelledby="title desc" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 19.9 19.7"><title id="title">Search</title><desc id="desc">Search</desc><g class="search-path" fill="none"><path stroke-linecap="square" d="M18.5 18.3l-5.4-5.4"></path><circle cx="8" cy="8" r="7"></circle></g></svg></div><div id="search-container"><div id="search-space"><input autocomplete="off" id="search-bar" name="search" type="text" aria-label="Search for something" placeholder="Search for something"/><div id="results-container"></div></div></div></div><div class="darkmode "><input class="toggle" id="darkmode-toggle" type="checkbox" tabIndex="-1"/><label id="toggle-label-light" for="darkmode-toggle" tabIndex="-1"><svg xmlns="http://www.w3.org/2000/svg" xmlnsXlink="http://www.w3.org/1999/xlink" version="1.1" id="dayIcon" x="0px" y="0px" viewBox="0 0 35 35" style="enable-background:new 0 0 35 35;" xmlSpace="preserve"><title>Light mode</title><path d="M6,17.5C6,16.672,5.328,16,4.5,16h-3C0.672,16,0,16.672,0,17.5 S0.672,19,1.5,19h3C5.328,19,6,18.328,6,17.5z M7.5,26c-0.414,0-0.789,0.168-1.061,0.439l-2,2C4.168,28.711,4,29.086,4,29.5 C4,30.328,4.671,31,5.5,31c0.414,0,0.789-0.168,1.06-0.44l2-2C8.832,28.289,9,27.914,9,27.5C9,26.672,8.329,26,7.5,26z M17.5,6 C18.329,6,19,5.328,19,4.5v-3C19,0.672,18.329,0,17.5,0S16,0.672,16,1.5v3C16,5.328,16.671,6,17.5,6z M27.5,9 c0.414,0,0.789-0.168,1.06-0.439l2-2C30.832,6.289,31,5.914,31,5.5C31,4.672,30.329,4,29.5,4c-0.414,0-0.789,0.168-1.061,0.44 l-2,2C26.168,6.711,26,7.086,26,7.5C26,8.328,26.671,9,27.5,9z M6.439,8.561C6.711,8.832,7.086,9,7.5,9C8.328,9,9,8.328,9,7.5 c0-0.414-0.168-0.789-0.439-1.061l-2-2C6.289,4.168,5.914,4,5.5,4C4.672,4,4,4.672,4,5.5c0,0.414,0.168,0.789,0.439,1.06 L6.439,8.561z M33.5,16h-3c-0.828,0-1.5,0.672-1.5,1.5s0.672,1.5,1.5,1.5h3c0.828,0,1.5-0.672,1.5-1.5S34.328,16,33.5,16z M28.561,26.439C28.289,26.168,27.914,26,27.5,26c-0.828,0-1.5,0.672-1.5,1.5c0,0.414,0.168,0.789,0.439,1.06l2,2 C28.711,30.832,29.086,31,29.5,31c0.828,0,1.5-0.672,1.5-1.5c0-0.414-0.168-0.789-0.439-1.061L28.561,26.439z M17.5,29 c-0.829,0-1.5,0.672-1.5,1.5v3c0,0.828,0.671,1.5,1.5,1.5s1.5-0.672,1.5-1.5v-3C19,29.672,18.329,29,17.5,29z M17.5,7 C11.71,7,7,11.71,7,17.5S11.71,28,17.5,28S28,23.29,28,17.5S23.29,7,17.5,7z M17.5,25c-4.136,0-7.5-3.364-7.5-7.5 c0-4.136,3.364-7.5,7.5-7.5c4.136,0,7.5,3.364,7.5,7.5C25,21.636,21.636,25,17.5,2
|
|||
|
<h3 id="research"><code>research</code><a aria-hidden="true" tabindex="-1" href="#research" class="internal"> §</a></h3>
|
|||
|
<ul>
|
|||
|
<li>The <a href="https://www.notion.so/Mixnet-Specification-807b624444a54a4b88afa1cc80e100c2?pvs=4#af141ade3e8147ec900cf3599953f4da" class="external">Mixnet specification doc</a> has been updated with new details after a discussion was help in terms of establishing connections in advance - Whenever a Mixnet topology is reconstructed, each mix node in the layer l establishes connections optimistically with all mix nodes in the layer L+1 , in order to reduce the latency of individual packet delivery - more details in the relevant comments in the linked Notion doc.</li>
|
|||
|
</ul>
|
|||
|
<h3 id="development"><code>development</code><a aria-hidden="true" tabindex="-1" href="#development" class="internal"> §</a></h3>
|
|||
|
<ul>
|
|||
|
<li>No updates</li>
|
|||
|
</ul>
|
|||
|
<h2 id="testnet"><code>testnet</code><a aria-hidden="true" tabindex="-1" href="#testnet" class="internal"> §</a></h2>
|
|||
|
<h3 id="development-1"><code>development</code><a aria-hidden="true" tabindex="-1" href="#development-1" class="internal"> §</a></h3>
|
|||
|
<ul>
|
|||
|
<li>Increased the storage limit in addition setting up firewall rules for the Nomos http ports - they are set in the same range for containers and host - more details <a href="https://github.com/logos-co/nomos-node/pull/553" class="external">here</a>.</li>
|
|||
|
<li>Opened TCP ports 18080-18083 for HTTP - more details <a href="https://github.com/status-im/infra-misc/pull/222" class="external">here</a>. Also opened some <a href="https://github.com/status-im/infra-misc/issues/221" class="external">additional ports</a></li>
|
|||
|
<li>Added missing configuration and fixed conflicting rules for ports: Limit number of committed blocks in info requests - more info <a href="https://github.com/logos-co/nomos-node/pull/552" class="external">here</a>; Receive blocks blobs in parallel - more info <a href="https://github.com/logos-co/nomos-node/pull/554" class="external">here</a>; Set and get blocks tip without filtering - more info <a href="https://github.com/logos-co/nomos-node/pull/548" class="external">here</a>.</li>
|
|||
|
<li>Optimized consensus related methods, the changes allow node to run without problems on a testnet: <a href="https://github.com/logos-co/nomos-node/pull/550" class="external">CI</a> - more work in progress (in terms of DA specification)</li>
|
|||
|
</ul>
|
|||
|
<h2 id="private-pos"><code>private PoS</code><a aria-hidden="true" tabindex="-1" href="#private-pos" class="internal"> §</a></h2>
|
|||
|
<h3 id="research-1"><code>research</code><a aria-hidden="true" tabindex="-1" href="#research-1" class="internal"> §</a></h3>
|
|||
|
<ul>
|
|||
|
<li>After trying 6 attempts, we had a breakthrough in understanding variance of our learning process around the fixed point: this latest method shows very good agreement with simulation across the full parameter space that we tested - This sets up to answer some of the burning questions we have had for a while (How big should T be, how small should delta be, how fast does this converge).</li>
|
|||
|
<li>We came up with a good measure of “centrality of stake”, this has allowed us to do much more informative simulations across the parameters that matter: More detailed update with plots in Notion: <a href="https://www.notion.so/Lottery-Function-65f5ed5522b64c36b625652023318d88?pvs=4#d0e8cab7dae5414a9af20b24db0b28cf" class="external">2024-01-08 Progress</a></li>
|
|||
|
<li>Analysis of total stake inference problem: the analytical framework, derived for the algorithm which uses Crypsinous lottery function stochastic process to estimate the total stake, was used to construct the simplest possible theory which describes expectation and variance of the total stake statistical estimator.</li>
|
|||
|
<li>Several approaches were tried, including mapping to the physical thermal relaxation process, but explained simulations but only for a limited scope of parameters.</li>
|
|||
|
<li>The latest approach, which uses large stake expansion, leads to simple theory with a small number of parameters which explains simulations quite well. More details <a href="https://www.overleaf.com/read/fzbrxvkwwscq#f2907c" class="external">here</a>.</li>
|
|||
|
<li>Large numbers of validators issue has been documented - something that Carnot doesn’t solve implicitly - more details <a href="https://www.notion.so/Large-Numbers-of-Validators-9d331b4b7a204e62881453ecb3976ff7" class="external">here</a>.</li>
|
|||
|
</ul>
|
|||
|
<h2 id="data-availability"><code>data availability</code><a aria-hidden="true" tabindex="-1" href="#data-availability" class="internal"> §</a></h2>
|
|||
|
<h3 id="research-2"><code>research</code><a aria-hidden="true" tabindex="-1" href="#research-2" class="internal"> §</a></h3>
|
|||
|
<ul>
|
|||
|
<li>We have made a new design - the <a href="https://www.notion.so/2D-Data-Availability-Structure-a8ee0b9ffe404a4482ec4eb56d2b033d" class="external">2D Data Availability Structure</a> based on a problem whether the execution zones perform the RS-encoding process correctly; it has been solved accordingly but it is costly due to the size of the data - more studies to come.</li>
|
|||
|
<li>The protocols we have examined and also designed so far were compared on relevant data. Detailed information can be viewed <a href="https://www.notion.so/DA-Layer-Comparison-Table-5848811f0af042e2b24c10d3cea9b0a8" class="external">here</a>. Additionally, the total data size can be accessed by entering the data size and number of nodes <a href="https://docs.google.com/spreadsheets/d/1I2hk69hWLVXaATC5048tLcw2qUTjiZORIzL0y90PTLg/edit?pli=1#gid=0" class="external">here</a></li>
|
|||
|
</ul>
|
|||
|
<h3 id="development-2"><code>development</code><a aria-hidden="true" tabindex="-1" href="#development-2" class="internal"> §</a></h3>
|
|||
|
<ul>
|
|||
|
<li>No updates</li>
|
|||
|
</ul>
|
|||
|
<h3 id="miscellaneous"><code>miscellaneous</code><a aria-hidden="true" tabindex="-1" href="#miscellaneous" class="internal"> §</a></h3>
|
|||
|
<ul>
|
|||
|
<li>Architecture whitepaper is being reviewedg.</li>
|
|||
|
<li>Shared sequencing - compiled notes on some of the implications, architectural designs, discussions, inspirations and more, in an article <a href="https://www.notion.so/Shared-Sequencing-15ab39a1fab94d008c5011ef27cc0f5e" class="external">here</a>.</li>
|
|||
|
<li>Notes on the MTR Declaration of Decentralization provided [here](<a href="https://www.notion.so/Filip-8b260c1bfddd43cc9cd1211478be53e8" class="external">https://www.notion.so/Filip-8b260c1bfddd43cc9cd1211478be53e8</a> <a href="https://www.notion.so/Filip-8b260c1bfddd43cc9cd1211478be53e8" class="external">here</a>- It is in an interesting proof of value approach (mix of PoS on main chain with a sidechain Relay/CER for the PoW, merged every sidechain’s 30 blocks), that they are utilizing, but I think that it has too many holes to fulfill - risks and attack vectors. Even though the ecosystem has been live for a couple of years, it never reached the heights they apparently planned. They focused too much on becoming “big” rather than building up from ground zero. However, the interesting design choice is their utilization of sidechains (more precisely their adaptors and connectors) in the attempt to connect to other ecosystems. The paper didn’t provide too many details about it though.</li>
|
|||
|
</ul></article></div><div class="right sidebar"><div class="graph "><h3>Graph View</h3><div class="graph-outer"><div id="graph-container" data-cfg="{"drag":true,"zoom":true,"depth":1,"scale":1.1,"repelForce":0.5,"centerForce":0.3,"linkDistance":30,"fontSize":0.6,"opacityScale":1,"showTags":true,"removeTags":[]}"></div><svg version="1.1" id="global-graph-icon" xmlns="http://www.w3.org/2000/svg" xmlnsXlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 55 55" fill="currentColor" xmlSpace="preserve"><path d="M49,0c-3.309,0-6,2.691-6,6c0,1.035,0.263,2.009,0.726,2.86l-9.829,9.829C32.542,17.634,30.846,17,29,17
|
|||
|
s-3.542,0.634-4.898,1.688l-7.669-7.669C16.785,10.424,17,9.74,17,9c0-2.206-1.794-4-4-4S9,6.794,9,9s1.794,4,4,4
|
|||
|
c0.74,0,1.424-0.215,2.019-0.567l7.669,7.669C21.634,21.458,21,23.154,21,25s0.634,3.542,1.688,4.897L10.024,42.562
|
|||
|
C8.958,41.595,7.549,41,6,41c-3.309,0-6,2.691-6,6s2.691,6,6,6s6-2.691,6-6c0-1.035-0.263-2.009-0.726-2.86l12.829-12.829
|
|||
|
c1.106,0.86,2.44,1.436,3.898,1.619v10.16c-2.833,0.478-5,2.942-5,5.91c0,3.309,2.691,6,6,6s6-2.691,6-6c0-2.967-2.167-5.431-5-5.91
|
|||
|
v-10.16c1.458-0.183,2.792-0.759,3.898-1.619l7.669,7.669C41.215,39.576,41,40.26,41,41c0,2.206,1.794,4,4,4s4-1.794,4-4
|
|||
|
s-1.794-4-4-4c-0.74,0-1.424,0.215-2.019,0.567l-7.669-7.669C36.366,28.542,37,26.846,37,25s-0.634-3.542-1.688-4.897l9.665-9.665
|
|||
|
C46.042,11.405,47.451,12,49,12c3.309,0,6-2.691,6-6S52.309,0,49,0z M11,9c0-1.103,0.897-2,2-2s2,0.897,2,2s-0.897,2-2,2
|
|||
|
S11,10.103,11,9z M6,51c-2.206,0-4-1.794-4-4s1.794-4,4-4s4,1.794,4,4S8.206,51,6,51z M33,49c0,2.206-1.794,4-4,4s-4-1.794-4-4
|
|||
|
s1.794-4,4-4S33,46.794,33,49z M29,31c-3.309,0-6-2.691-6-6s2.691-6,6-6s6,2.691,6,6S32.309,31,29,31z M47,41c0,1.103-0.897,2-2,2
|
|||
|
s-2-0.897-2-2s0.897-2,2-2S47,39.897,47,41z M49,10c-2.206,0-4-1.794-4-4s1.794-4,4-4s4,1.794,4,4S51.206,10,49,10z"></path></svg></div><div id="global-graph-outer"><div id="global-graph-container" data-cfg="{"drag":true,"zoom":true,"depth":-1,"scale":0.9,"repelForce":0.5,"centerForce":0.3,"linkDistance":30,"fontSize":0.6,"opacityScale":1,"showTags":true,"removeTags":[]}"></div></div></div><div class="toc desktop-only"><button type="button" id="toc"><h3>Table of Contents</h3><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="fold"><polyline points="6 9 12 15 18 9"></polyline></svg></button><div id="toc-content"><ul class="overflow"><li class="depth-0"><a href="#network-privacy-and-mixnet" data-for="network-privacy-and-mixnet">network privacy and mixnet</a></li><li class="depth-1"><a href="#research" data-for="research">research</a></li><li class="depth-1"><a href="#development" data-for="development">development</a></li><li class="depth-0"><a href="#testnet" data-for="testnet">testnet</a></li><li class="depth-1"><a href="#development-1" data-for="development-1">development</a></li><li class="depth-0"><a href="#private-pos" data-for="private-pos">private PoS</a></li><li class="depth-1"><a href="#research-1" data-for="research-1">research</a></li><li class="depth-0"><a href="#data-availability" data-for="data-availability">data availability</a></li><li class="depth-1"><a href="#research-2" data-for="research-2">research</a></li><li class="depth-1"><a href="#development-2" data-for="development-2">development</a></li><li class="depth-1"><a href="#miscellaneous" data-for="miscellaneous">miscellaneous</a></li></ul></div></div><div class="backlinks "><h3>Backlinks</h3><ul class="overflow"><li>No backlinks found</li></ul></div></div></div><footer class><hr/><p>Created with <a href="https://quartz.jzhao.xyz/">Quartz v4.1.0</a>, © 2024</p><ul><li><a href="https://github.com/logos-co/roadmap">GitHub</a></li><li><a href="https://discord.com/invite/logos-state">Discord Community</a></li></ul></footer></div></body><script type="application/javascript">// quartz/components/scripts/quartz/components/scripts/callout.inline.ts
|
|||
|
function toggleCallout() {
|
|||
|
const outerBlock = this.parentElement;
|
|||
|
outerBlock.classList.toggle(`is-collapsed`);
|
|||
|
const collapsed = outerBlock.classList.contains(`is-collapsed`);
|
|||
|
const height = collapsed ? this.scrollHeight : outerBlock.scrollHeight;
|
|||
|
outerBlock.style.maxHeight = height + `px`;
|
|||
|
let current = outerBlock;
|
|||
|
let parent = outerBlock.parentElement;
|
|||
|
while (parent) {
|
|||
|
if (!parent.classList.contains(`callout`)) {
|
|||
|
return;
|
|||
|
}
|
|||
|
const collapsed2 = parent.classList.contains(`is-collapsed`);
|
|||
|
const height2 = collapsed2 ? parent.scrollHeight : parent.scrollHeight + current.scrollHeight;
|
|||
|
parent.style.maxHeight = height2 + `px`;
|
|||
|
current = parent;
|
|||
|
parent = parent.parentElement;
|
|||
|
}
|
|||
|
}
|
|||
|
function setupCallout() {
|
|||
|
const collapsible = document.getElementsByClassName(
|
|||
|
`callout is-collapsible`
|
|||
|
);
|
|||
|
for (const div of collapsible) {
|
|||
|
const title = div.firstElementChild;
|
|||
|
if (title) {
|
|||
|
title.removeEventListener(`click`, toggleCallout);
|
|||
|
title.addEventListener(`click`, toggleCallout);
|
|||
|
const collapsed = div.classList.contains(`is-collapsed`);
|
|||
|
const height = collapsed ? title.scrollHeight : div.scrollHeight;
|
|||
|
div.style.maxHeight = height + `px`;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
document.addEventListener(`nav`, setupCallout);
|
|||
|
window.addEventListener(`resize`, setupCallout);
|
|||
|
</script><script type="module">
|
|||
|
import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.esm.min.mjs';
|
|||
|
const darkMode = document.documentElement.getAttribute('saved-theme') === 'dark'
|
|||
|
mermaid.initialize({
|
|||
|
startOnLoad: false,
|
|||
|
securityLevel: 'loose',
|
|||
|
theme: darkMode ? 'dark' : 'default'
|
|||
|
});
|
|||
|
document.addEventListener('nav', async () => {
|
|||
|
await mermaid.run({
|
|||
|
querySelector: '.mermaid'
|
|||
|
})
|
|||
|
});
|
|||
|
</script><script src="https://cdn.jsdelivr.net/npm/katex@0.16.7/dist/contrib/copy-tex.min.js" type="application/javascript"></script><script src="../../postscript.js" type="module"></script></html>
|