developers/zcash-zf-frost-dag.html

252 lines
17 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<title>Zcash zf-frost DAG</title>
<!-- Pan/zoom SVGs -->
<script src="https://bumbu.me/svg-pan-zoom/dist/svg-pan-zoom.min.js"></script>
<link rel="stylesheet" href="zcash-dag.css">
<style>
@media (prefers-color-scheme: dark) {
body {
/* Material dark theme surface colour */
background-color: #121212;
}
}
</style>
</head>
<body>
<div id="dag"><svg width="730pt" height="1031pt"
viewBox="0.00 0.00 730.00 1031.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 1027)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-1027 726,-1027 726,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="4.5,0 4.5,-219 228.5,-219 228.5,0 4.5,0"/>
<text text-anchor="middle" x="116.5" y="-203.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Remaining Curves</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_2</title>
<polygon fill="none" stroke="#0000ff" points="0,-227 0,-476 486,-476 486,-227 0,-227"/>
<text text-anchor="middle" x="243" y="-460.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Re&#45;randomizable FROST</text>
</g>
<g id="clust3" class="cluster">
<title>cluster_3</title>
<polygon fill="none" stroke="#0000ff" points="0,-484 0,-790 233,-790 233,-484 0,-484"/>
<text text-anchor="middle" x="116.5" y="-774.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: v9/v10/v11</text>
</g>
<!-- ZcashFoundation/frost#70 -->
<g id="node1" class="node open">
<title>ZcashFoundation/frost#70</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/frost/issues/70" xlink:title="ZcashFoundation/frost#70&#10;Add Ed25519 support" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="220.5,-188 12.5,-188 12.5,-150 220.5,-150 220.5,-188"/>
<text text-anchor="middle" x="116.5" y="-172.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#70</text>
<text text-anchor="middle" x="116.5" y="-157.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Ed25519 support</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#19 -->
<g id="node2" class="node open">
<title>ZcashFoundation/frost#19</title>
<g id="a_node2"><a xlink:href="https://github.com/ZcashFoundation/frost/issues/19" xlink:title="ZcashFoundation/frost#19&#10;`frost&#45;secp256k1`:&#10;implement FROST on&#10;Secp256k1 curve" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="220.5,-132 12.5,-132 12.5,-64 220.5,-64 220.5,-132"/>
<text text-anchor="middle" x="116.5" y="-116.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#19</text>
<text text-anchor="middle" x="116.5" y="-101.8" font-family="Times,serif" font-size="14.00" fill="#000000">`frost&#45;secp256k1`:</text>
<text text-anchor="middle" x="116.5" y="-86.8" font-family="Times,serif" font-size="14.00" fill="#000000">implement FROST on</text>
<text text-anchor="middle" x="116.5" y="-71.8" font-family="Times,serif" font-size="14.00" fill="#000000">Secp256k1 curve</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#71 -->
<g id="node3" class="node open">
<title>ZcashFoundation/frost#71</title>
<g id="a_node3"><a xlink:href="https://github.com/ZcashFoundation/frost/issues/71" xlink:title="ZcashFoundation/frost#71&#10;Add Ed448 support" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="220.5,-46 12.5,-46 12.5,-8 220.5,-8 220.5,-46"/>
<text text-anchor="middle" x="116.5" y="-30.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#71</text>
<text text-anchor="middle" x="116.5" y="-15.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Ed448 support</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#119 -->
<g id="node4" class="node open">
<title>ZcashFoundation/frost#119</title>
<g id="a_node4"><a xlink:href="https://github.com/ZcashFoundation/frost/issues/119" xlink:title="ZcashFoundation/frost#119&#10;Review and officially&#10;submit the Re&#45;&#10;randomizable FROST ZIP" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="225,-445 8,-445 8,-377 225,-377 225,-445"/>
<text text-anchor="middle" x="116.5" y="-429.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#119</text>
<text text-anchor="middle" x="116.5" y="-414.8" font-family="Times,serif" font-size="14.00" fill="#000000">Review and officially</text>
<text text-anchor="middle" x="116.5" y="-399.8" font-family="Times,serif" font-size="14.00" fill="#000000">submit the Re&#45;</text>
<text text-anchor="middle" x="116.5" y="-384.8" font-family="Times,serif" font-size="14.00" fill="#000000">randomizable FROST ZIP</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#120 -->
<g id="node5" class="node open">
<title>ZcashFoundation/frost#120</title>
<g id="a_node5"><a xlink:href="https://github.com/ZcashFoundation/frost/issues/120" xlink:title="ZcashFoundation/frost#120&#10;Update Re&#45;randomizable&#10;FROST implementation to&#10;V11" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="225,-359 8,-359 8,-291 225,-291 225,-359"/>
<text text-anchor="middle" x="116.5" y="-343.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#120</text>
<text text-anchor="middle" x="116.5" y="-328.8" font-family="Times,serif" font-size="14.00" fill="#000000">Update Re&#45;randomizable</text>
<text text-anchor="middle" x="116.5" y="-313.8" font-family="Times,serif" font-size="14.00" fill="#000000">FROST implementation to</text>
<text text-anchor="middle" x="116.5" y="-298.8" font-family="Times,serif" font-size="14.00" fill="#000000">V11</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#121 -->
<g id="node6" class="node open">
<title>ZcashFoundation/frost#121</title>
<g id="a_node6"><a xlink:href="https://github.com/ZcashFoundation/frost/issues/121" xlink:title="ZcashFoundation/frost#121&#10;Organize the Re&#45;&#10;randomizable FROST&#10;implementation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="478,-359 261,-359 261,-291 478,-291 478,-359"/>
<text text-anchor="middle" x="369.5" y="-343.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#121</text>
<text text-anchor="middle" x="369.5" y="-328.8" font-family="Times,serif" font-size="14.00" fill="#000000">Organize the Re&#45;</text>
<text text-anchor="middle" x="369.5" y="-313.8" font-family="Times,serif" font-size="14.00" fill="#000000">randomizable FROST</text>
<text text-anchor="middle" x="369.5" y="-298.8" font-family="Times,serif" font-size="14.00" fill="#000000">implementation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#120&#45;&gt;ZcashFoundation/frost#121 -->
<g id="edge1" class="edge">
<title>ZcashFoundation/frost#120&#45;&gt;ZcashFoundation/frost#121</title>
<path fill="none" stroke="#000000" d="M225.26,-325C233.64,-325 242.13,-325 250.57,-325"/>
<polygon fill="#000000" stroke="#000000" points="250.83,-328.5001 260.83,-325 250.83,-321.5001 250.83,-328.5001"/>
</g>
<!-- ZcashFoundation/frost#83 -->
<g id="node12" class="node open">
<title>ZcashFoundation/frost#83</title>
<g id="a_node12"><a xlink:href="https://github.com/ZcashFoundation/frost/pull/83" xlink:title="ZcashFoundation/frost#83&#10;Do not merge: changes&#10;required for&#10;randomization" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="722,-359 514,-359 514,-355 510,-355 510,-351 514,-351 514,-299 510,-299 510,-295 514,-295 514,-291 722,-291 722,-359"/>
<polyline fill="none" stroke="#000000" points="514,-355 518,-355 518,-351 514,-351 "/>
<polyline fill="none" stroke="#000000" points="514,-299 518,-299 518,-295 514,-295 "/>
<text text-anchor="middle" x="618" y="-343.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#83</text>
<text text-anchor="middle" x="618" y="-328.8" font-family="Times,serif" font-size="14.00" fill="#000000">Do not merge: changes</text>
<text text-anchor="middle" x="618" y="-313.8" font-family="Times,serif" font-size="14.00" fill="#000000">required for</text>
<text text-anchor="middle" x="618" y="-298.8" font-family="Times,serif" font-size="14.00" fill="#000000">randomization</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#121&#45;&gt;ZcashFoundation/frost#83 -->
<g id="edge2" class="edge">
<title>ZcashFoundation/frost#121&#45;&gt;ZcashFoundation/frost#83</title>
<path fill="none" stroke="#000000" d="M478.13,-325C486.68,-325 495.32,-325 503.9,-325"/>
<polygon fill="#000000" stroke="#000000" points="503.92,-328.5001 513.92,-325 503.92,-321.5001 503.92,-328.5001"/>
</g>
<!-- ZcashFoundation/frost#81 -->
<g id="node7" class="node open">
<title>ZcashFoundation/frost#81</title>
<g id="a_node7"><a xlink:href="https://github.com/ZcashFoundation/frost/issues/81" xlink:title="ZcashFoundation/frost#81&#10;Start rerandomized repo" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="220.5,-273 12.5,-273 12.5,-235 220.5,-235 220.5,-273"/>
<text text-anchor="middle" x="116.5" y="-257.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#81</text>
<text text-anchor="middle" x="116.5" y="-242.8" font-family="Times,serif" font-size="14.00" fill="#000000">Start rerandomized repo</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#79 -->
<g id="node8" class="node open">
<title>ZcashFoundation/frost#79</title>
<g id="a_node8"><a xlink:href="https://github.com/ZcashFoundation/frost/issues/79" xlink:title="ZcashFoundation/frost#79&#10;Publish `frost&#45;` crates" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="220.5,-759 12.5,-759 12.5,-721 220.5,-721 220.5,-759"/>
<text text-anchor="middle" x="116.5" y="-743.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#79</text>
<text text-anchor="middle" x="116.5" y="-728.8" font-family="Times,serif" font-size="14.00" fill="#000000">Publish `frost&#45;` crates</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#102 -->
<g id="node9" class="node open">
<title>ZcashFoundation/frost#102</title>
<g id="a_node9"><a xlink:href="https://github.com/ZcashFoundation/frost/issues/102" xlink:title="ZcashFoundation/frost#102&#10;frost&#45;core: add and use C&#10;iphersuite.identifier_to_&#10;scalar()" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="225,-703 8,-703 8,-635 225,-635 225,-703"/>
<text text-anchor="middle" x="116.5" y="-687.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#102</text>
<text text-anchor="middle" x="116.5" y="-672.8" font-family="Times,serif" font-size="14.00" fill="#000000">frost&#45;core: add and use C</text>
<text text-anchor="middle" x="116.5" y="-657.8" font-family="Times,serif" font-size="14.00" fill="#000000">iphersuite.identifier_to_</text>
<text text-anchor="middle" x="116.5" y="-642.8" font-family="Times,serif" font-size="14.00" fill="#000000">scalar()</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#133 -->
<g id="node10" class="node open">
<title>ZcashFoundation/frost#133</title>
<g id="a_node10"><a xlink:href="https://github.com/ZcashFoundation/frost/issues/133" xlink:title="ZcashFoundation/frost#133&#10;Use nonce_generate test&#10;vectors" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="225,-616.5 8,-616.5 8,-563.5 225,-563.5 225,-616.5"/>
<text text-anchor="middle" x="116.5" y="-601.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#133</text>
<text text-anchor="middle" x="116.5" y="-586.3" font-family="Times,serif" font-size="14.00" fill="#000000">Use nonce_generate test</text>
<text text-anchor="middle" x="116.5" y="-571.3" font-family="Times,serif" font-size="14.00" fill="#000000">vectors</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#150 -->
<g id="node11" class="node open">
<title>ZcashFoundation/frost#150</title>
<g id="a_node11"><a xlink:href="https://github.com/ZcashFoundation/frost/issues/150" xlink:title="ZcashFoundation/frost#150&#10;Update test vectors to&#10;V11" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="225,-545.5 8,-545.5 8,-492.5 225,-492.5 225,-545.5"/>
<text text-anchor="middle" x="116.5" y="-530.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#150</text>
<text text-anchor="middle" x="116.5" y="-515.3" font-family="Times,serif" font-size="14.00" fill="#000000">Update test vectors to</text>
<text text-anchor="middle" x="116.5" y="-500.3" font-family="Times,serif" font-size="14.00" fill="#000000">V11</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#39 -->
<g id="node13" class="node open">
<title>ZcashFoundation/frost#39</title>
<g id="a_node13"><a xlink:href="https://github.com/ZcashFoundation/frost/issues/39" xlink:title="ZcashFoundation/frost#39&#10;Migrate/port `redjubjub`&#10;to frost&#45;core / FROST&#10;spec v05+" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="220.5,-866 12.5,-866 12.5,-798 220.5,-798 220.5,-866"/>
<text text-anchor="middle" x="116.5" y="-850.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#39</text>
<text text-anchor="middle" x="116.5" y="-835.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate/port `redjubjub`</text>
<text text-anchor="middle" x="116.5" y="-820.8" font-family="Times,serif" font-size="14.00" fill="#000000">to frost&#45;core / FROST</text>
<text text-anchor="middle" x="116.5" y="-805.8" font-family="Times,serif" font-size="14.00" fill="#000000">spec v05+</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#40 -->
<g id="node14" class="node open">
<title>ZcashFoundation/frost#40</title>
<g id="a_node14"><a xlink:href="https://github.com/ZcashFoundation/frost/issues/40" xlink:title="ZcashFoundation/frost#40&#10;Migrate/port `redpallas`&#10;to frost&#45;core / FROST&#10;spec v05+" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="220.5,-952 12.5,-952 12.5,-884 220.5,-884 220.5,-952"/>
<text text-anchor="middle" x="116.5" y="-936.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#40</text>
<text text-anchor="middle" x="116.5" y="-921.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate/port `redpallas`</text>
<text text-anchor="middle" x="116.5" y="-906.8" font-family="Times,serif" font-size="14.00" fill="#000000">to frost&#45;core / FROST</text>
<text text-anchor="middle" x="116.5" y="-891.8" font-family="Times,serif" font-size="14.00" fill="#000000">spec v05+</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#132 -->
<g id="node15" class="node open">
<title>ZcashFoundation/frost#132</title>
<g id="a_node15"><a xlink:href="https://github.com/ZcashFoundation/frost/issues/132" xlink:title="ZcashFoundation/frost#132&#10;Epic: v9/v10/v11" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="225,-1008 8,-1008 8,-970 225,-970 225,-1008"/>
<text text-anchor="middle" x="116.5" y="-992.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#132</text>
<text text-anchor="middle" x="116.5" y="-977.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: v9/v10/v11</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#114 -->
<g id="node16" class="node open">
<title>ZcashFoundation/frost#114</title>
<g id="a_node16"><a xlink:href="https://github.com/ZcashFoundation/frost/pull/114" xlink:title="ZcashFoundation/frost#114&#10;Refreshed Identifier&#10;newtype of Scalar with&#10;traits" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="478,-1023 261,-1023 261,-1019 257,-1019 257,-1015 261,-1015 261,-963 257,-963 257,-959 261,-959 261,-955 478,-955 478,-1023"/>
<polyline fill="none" stroke="#000000" points="261,-1019 265,-1019 265,-1015 261,-1015 "/>
<polyline fill="none" stroke="#000000" points="261,-963 265,-963 265,-959 261,-959 "/>
<text text-anchor="middle" x="369.5" y="-1007.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/frost#114</text>
<text text-anchor="middle" x="369.5" y="-992.8" font-family="Times,serif" font-size="14.00" fill="#000000">Refreshed Identifier</text>
<text text-anchor="middle" x="369.5" y="-977.8" font-family="Times,serif" font-size="14.00" fill="#000000">newtype of Scalar with</text>
<text text-anchor="middle" x="369.5" y="-962.8" font-family="Times,serif" font-size="14.00" fill="#000000">traits</text>
</a>
</g>
</g>
<!-- ZcashFoundation/frost#132&#45;&gt;ZcashFoundation/frost#114 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/frost#132&#45;&gt;ZcashFoundation/frost#114</title>
<path fill="none" stroke="#000000" d="M225.26,-989C233.64,-989 242.13,-989 250.57,-989"/>
<polygon fill="#000000" stroke="#000000" points="250.83,-992.5001 260.83,-989 250.83,-985.5001 250.83,-992.5001"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>