Toggle theme
Kacper's Wiki
Narzędzia użytkownika
Toggle theme
Zaloguj
Narzędzia witryny
Szukaj
Narzędzia
Pokaż stronę
Poprzednie wersje
Odnośniki
Export to PDF
Ostatnie zmiany
Menadżer multimediów
Indeks
Zaloguj
>
Ostatnie zmiany
Menadżer multimediów
Indeks
Ślad:
notatki:diffie_hellman
Ta strona jest tylko do odczytu. Możesz wyświetlić źródła tej strony ale nie możesz ich zmienić.
====== Security: Diffie Hellman ====== ====== Schemat ====== <diagram><svg xmlns="http://www.w3.org/2000/svg" style="background: transparent; background-color: transparent; color-scheme: light dark;" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1684px" height="910px" viewBox="-0.5 -0.5 1684 910" content="<mxfile host="wiki.ostrowski.net.pl" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0" version="26.2.15"><diagram id="MPfTyJJEroek4mZsyae9" name="Page-1">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</diagram></mxfile>"><defs/><g><g data-cell-id="0"><g data-cell-id="1"><g data-cell-id="2"><g><path d="M 295 830 L 295 220" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/></g></g><g data-cell-id="3"><g><path d="M 655 830 L 655 220" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/></g></g><g data-cell-id="4"><g><ellipse cx="170" cy="207.5" rx="7.5" ry="7.5" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/><path d="M 170 215 L 170 240 M 170 220 L 155 220 M 170 220 L 185 220 M 170 240 L 155 260 M 170 240 L 185 260" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 267px; margin-left: 170px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; ">Alice</div></div></div></foreignObject><text x="170" y="279" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">Alice</text></switch></g></g></g><g data-cell-id="5"><g><ellipse cx="780" cy="207.5" rx="7.5" ry="7.5" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/><path d="M 780 215 L 780 240 M 780 220 L 765 220 M 780 220 L 795 220 M 780 240 L 765 260 M 780 240 L 795 260" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 267px; margin-left: 780px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; ">Bob</div></div></div></foreignObject><text x="780" y="279" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">Bob</text></switch></g></g></g><g data-cell-id="6"><g><rect x="1264" y="270" width="60" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 285px; margin-left: 1265px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">n</div></div></div></foreignObject><text x="1294" y="296" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">n</text></switch></g></g></g><g data-cell-id="7"><g><rect x="750" y="290" width="60" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 305px; margin-left: 751px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">b</div></div></div></foreignObject><text x="780" y="316" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">b</text></switch></g></g></g><g data-cell-id="9"><g><rect x="445" y="210" width="60" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 225px; margin-left: 446px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 21px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Public</div></div></div></foreignObject><text x="475" y="231" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="21px" text-anchor="middle">Public</text></switch></g></g></g><g data-cell-id="10"><g><rect x="95" y="400" width="170" height="50" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 168px; height: 1px; padding-top: 425px; margin-left: 96px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">g<sup>a</sup> mod n</div></div></div></foreignObject><text x="180" y="436" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">ga mod n</text></switch></g></g></g><g data-cell-id="12"><g><rect x="695" y="400" width="170" height="50" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 168px; height: 1px; padding-top: 425px; margin-left: 696px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">g<sup>b</sup> mod n</div></div></div></foreignObject><text x="780" y="436" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">gb mod n</text></switch></g></g></g><g data-cell-id="15"><g><path d="M 632.7 425.53 L 636.37 434.84 L 349.98 547.51 L 353.82 557.28 L 330.47 549.82 L 342.47 528.44 L 346.32 538.21 Z" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="16"><g><path d="M 313.85 434.89 L 317.1 425.43 L 618.18 528.93 L 621.6 519 L 634.53 539.84 L 611.52 548.32 L 614.93 538.39 Z" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="17"><g><rect x="70" y="540" width="210" height="50" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 208px; height: 1px; padding-top: 565px; margin-left: 71px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">(g<sup>b</sup>)<sup>a</sup> mod n</div></div></div></foreignObject><text x="175" y="576" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">(gb)a mod n</text></switch></g></g></g><g data-cell-id="18"><g><rect x="665" y="530" width="220" height="50" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 218px; height: 1px; padding-top: 555px; margin-left: 666px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">(g<sup>a</sup>)<sup>b</sup> mod n</div></div></div></foreignObject><text x="775" y="566" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">(ga)b mod n</text></switch></g></g></g><g data-cell-id="19"><g><rect x="85" y="650" width="189" height="50" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 187px; height: 1px; padding-top: 675px; margin-left: 86px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">g<sup>ab</sup> mod n</div></div></div></foreignObject><text x="180" y="686" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">gab mod n</text></switch></g></g></g><g data-cell-id="20"><g><rect x="676" y="650" width="189" height="50" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 187px; height: 1px; padding-top: 675px; margin-left: 677px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">g<sup>ab</sup> mod n</div></div></div></foreignObject><text x="771" y="686" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">gab mod n</text></switch></g></g></g><g data-cell-id="21"><g><rect x="434" y="290" width="60" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 305px; margin-left: 435px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">g n</div></div></div></foreignObject><text x="464" y="316" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">g n</text></switch></g></g></g><g data-cell-id="23"><g><rect x="380" y="563" width="90" height="50" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 588px; margin-left: 381px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">g<sup>a </sup>g<sup>b</sup> </div></div></div></foreignObject><text x="425" y="599" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">ga gb </text></switch></g></g></g><g data-cell-id="24"><g><rect x="390" y="620" width="70" height="50" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 645px; margin-left: 391px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">g<sup>a+b</sup> </div></div></div></foreignObject><text x="425" y="656" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">ga+b </text></switch></g></g></g><g data-cell-id="25"><g><ellipse cx="1294" cy="510" rx="210" ry="210" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g></g><g data-cell-id="26"><g><rect x="140" y="290" width="60" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 305px; margin-left: 141px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">a</div></div></div></foreignObject><text x="170" y="316" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">a</text></switch></g></g></g><g data-cell-id="27"><g><rect x="1344" y="280" width="30" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 295px; margin-left: 1345px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">0</div></div></div></foreignObject><text x="1359" y="306" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">0</text></switch></g></g></g><g data-cell-id="28"><g><rect x="1404" y="300" width="30" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 315px; margin-left: 1405px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">1</div></div></div></foreignObject><text x="1419" y="326" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">1</text></switch></g></g></g><g data-cell-id="32"><g><rect x="1454" y="340" width="30" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 355px; margin-left: 1455px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">2</div></div></div></foreignObject><text x="1469" y="366" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">2</text></switch></g></g></g><g data-cell-id="33"><g><rect x="1494" y="390" width="30" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 405px; margin-left: 1495px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">3</div></div></div></foreignObject><text x="1509" y="416" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">3</text></switch></g></g></g><g data-cell-id="34"><g><rect x="1514" y="460" width="30" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 475px; margin-left: 1515px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">...</div></div></div></foreignObject><text x="1529" y="486" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">...</text></switch></g></g></g><g data-cell-id="37"><g><rect x="964" y="700" width="170" height="50" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 168px; height: 1px; padding-top: 725px; margin-left: 965px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">g<sup>a</sup> mod n</div></div></div></foreignObject><text x="1049" y="736" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">ga mod n</text></switch></g></g></g><g data-cell-id="38"><g><path d="M 1081.16 703.43 L 1074.57 695.91 L 1118.2 657.62 L 1111.28 649.73 L 1135.78 648.84 L 1131.73 673.03 L 1124.8 665.13 Z" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="39"><g><rect x="954" y="290" width="170" height="50" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 168px; height: 1px; padding-top: 315px; margin-left: 955px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">g<sup>b</sup> mod n</div></div></div></foreignObject><text x="1039" y="326" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">gb mod n</text></switch></g></g></g><g data-cell-id="40"><g><path d="M 1069.12 344.28 L 1075.19 336.33 L 1111.43 363.99 L 1117.8 355.65 L 1123.5 379.5 L 1098.99 380.29 L 1105.37 371.94 Z" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="42"><g><rect x="1464" y="670" width="220" height="50" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 218px; height: 1px; padding-top: 695px; margin-left: 1465px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 38px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">(g<sup>a</sup>)<sup>b</sup> mod n</div></div></div></foreignObject><text x="1574" y="706" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="38px" text-anchor="middle">(ga)b mod n</text></switch></g></g></g><g data-cell-id="43"><g><path d="M 1570.17 667.44 L 1565.09 676.05 L 1489.01 631.1 L 1483.67 640.14 L 1475.2 617.13 L 1499.44 613.45 L 1494.1 622.49 Z" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="45"><g><rect x="410" y="0" width="880" height="170" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 85px; margin-left: 850px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 31px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><h1 class="firstHeading mw-first-heading" id="firstHeading"><span class="mw-page-title-main">Diffie–Hellman key exchange</span></h1></div></div></div></foreignObject><text x="850" y="94" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="31px" text-anchor="middle">Diffie–Hellman key exchange</text></switch></g></g></g><g data-cell-id="46"><g><rect x="80" y="880" width="180" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 895px; margin-left: 81px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Author: Kacper Ostrowski</div></div></div></foreignObject><text x="170" y="899" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">Author: Kacper Ostrowski</text></switch></g></g></g><g data-cell-id="48"><g><rect x="350" y="260" width="250" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 275px; margin-left: 475px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; ">1. Alice and bob agree on public parameters</div></div></div></foreignObject><text x="475" y="279" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">1. Alice and bob agree on public paramete...</text></switch></g></g></g><g data-cell-id="50"><g><rect x="114" y="290" width="26" height="50" fill="none" stroke="none" pointer-events="all"/><path d="M 117 310.2 C 115.36 309.97 114.1 308.61 114 306.94 L 114 292.66 C 114.35 291.23 115.54 290.17 117 290 L 136.75 290 C 138.3 290.06 139.62 291.15 140 292.66 L 140 306.94 C 139.87 308.49 138.66 309.73 137.13 309.9 L 134 309.9 C 132.76 311.01 131.71 312.31 130.9 313.76 C 130.48 314.78 130.41 315.91 130.7 316.97 L 133.45 321.13 L 131.65 323.69 L 130.5 324.89 L 130.5 326.65 C 131.35 327.42 132.29 328.09 133.3 328.65 L 133.35 330.15 L 132.15 331.01 C 131.84 331.38 131.72 331.89 131.85 332.36 L 131.8 335.17 L 130.5 335.37 C 130.51 336.57 130.05 337.73 129.2 338.59 C 128.35 339.45 127.2 339.93 126 339.93 C 124.78 340 123.59 339.57 122.69 338.73 C 121.8 337.9 121.28 336.74 121.25 335.52 L 121.25 310.2 Z M 123.3 335.77 C 123.53 336.53 123.93 337 124.38 337 C 124.82 337 125.22 336.53 125.45 335.77 L 125.45 311.86 C 125.22 311.1 124.82 310.63 124.38 310.63 C 123.93 310.63 123.53 311.1 123.3 311.86 Z M 127 298.42 C 128.66 298.42 130 297.08 130 295.41 C 130.03 294.6 129.72 293.81 129.16 293.22 C 128.59 292.64 127.81 292.31 127 292.31 C 126.19 292.31 125.41 292.64 124.84 293.22 C 124.28 293.81 123.97 294.6 124 295.41 C 124 297.08 125.34 298.42 127 298.42 Z" fill="#00188d" style="fill: light-dark(rgb(0, 24, 141), rgb(191, 211, 255));" stroke="none" pointer-events="all"/></g></g><g data-cell-id="51"><g><image x="733.5" y="289.5" width="31" height="50" xlink:href="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMS4wMDMiIGhlaWdodD0iNTAuMDAxIj48cGF0aCBkPSJNMjkuMzM3IDE5LjUyNWE1LjY5IDUuNjkgMCAwIDAgMC04LjA0NWwtOS44MTItOS44MTNhNS42OSA1LjY5IDAgMCAwLTguMDQ2IDBMMS42NjYgMTEuNDhhNS42OSA1LjY5IDAgMCAwIDAgOC4wNDVsOC42MzMgOC42MzNWNDQuOEwxNS41IDUwbDQuNTItNC41MnYtLjAzM2wyLjY1Mi0yLjY1My0yLjYzLTIuNjMgMi42My0yLjYzLTIuNjMtMi42MyAyLjYzLTIuNjMtMi42NTItMi42NTN2LS43ODR6TTE1LjUwMiA0LjA0YTMuMjMgMy4yMyAwIDAgMSAzLjIyOSAzLjIyOSAzLjIzIDMuMjMgMCAwIDEtMy4yMjkgMy4yMjkgMy4yMyAzLjIzIDAgMCAxLTMuMjI5LTMuMjI5IDMuMjMgMy4yMyAwIDAgMSAzLjIyOS0zLjIyOXoiIGZpbGw9IiNmY2QxMTYiLz48cGF0aCBkPSJNMTQuNzU4IDMwLjAwOGwtMi4wMy0xVjQzLjk2bDIuMDMgMnoiIG9wYWNpdHk9Ii40IiBmaWxsPSIjZmY4YzAwIi8+PHBhdGggZD0iTTUuODY4IDEzLjYxNmgxOC42NHYyLjY4SDUuODY4em0wIDQuMzZoMTguNjR2Mi42OEg1Ljg2OHoiIG9wYWNpdHk9Ii41IiBmaWxsPSIjZmZmIi8+PC9zdmc+"/></g></g><g data-cell-id="52"><g><path d="M 229.51 275 L 231.47 265.2 L 411.86 301.27 L 413.92 290.98 L 429.51 309.9 L 407.84 321.37 L 409.9 311.08 Z" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="53"><g><path d="M 748.35 245.25 L 750.68 254.98 L 520.13 310.31 L 522.58 320.52 L 500.49 309.88 L 515.34 290.38 L 517.79 300.59 Z" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="54"><g><path d="M 499.34 334.98 L 501.63 325.25 L 652.16 360.67 L 654.57 350.45 L 669.51 369.89 L 647.47 380.62 L 649.87 370.4 Z" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="55"><g><path d="M 428.24 325.29 L 430.8 334.96 L 280.13 374.84 L 282.82 384.99 L 260.48 374.87 L 274.88 355.03 L 277.57 365.18 Z" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="56"><g><rect x="0" y="360" width="280" height="40" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 380px; margin-left: 140px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; ">2. Alice combines her secret key (a) with <br />the parameters and sends the resulting key to bob</div></div></div></foreignObject><text x="140" y="384" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">2. Alice combines her secret key (a) with...</text></switch></g></g></g><g data-cell-id="57"><g><rect x="660" y="350" width="300" height="40" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 370px; margin-left: 810px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; ">3. Bob combines his secret key (b) with the<br /> parameters and sends the resulting public key to Alice</div></div></div></foreignObject><text x="810" y="374" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">3. Bob combines his secret key (b) with the...</text></switch></g></g></g><g data-cell-id="58"><g><rect x="45" y="490" width="250" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 505px; margin-left: 170px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; ">4. Alice combines result with her secret key</div></div></div></foreignObject><text x="170" y="509" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">4. Alice combines result with her secret...</text></switch></g></g></g><g data-cell-id="59"><g><rect x="665" y="480" width="240" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 495px; margin-left: 785px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; ">5. Bob combines result with her secret key</div></div></div></foreignObject><text x="785" y="499" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">5. Bob combines result with her secret k...</text></switch></g></g></g><g data-cell-id="60"><g><rect x="560" y="570" width="43" height="43" fill="none" stroke="none" pointer-events="all"/><path d="M 581.5 570 C 593.36 570 603 579.63 603 591.5 C 603 603.37 593.36 613 581.5 613 C 569.64 613 560 603.37 560 591.5 C 560 579.63 569.64 570 581.5 570 Z M 585.29 582.43 C 584.18 582.43 583.19 583.11 582.77 584.13 C 582.38 583.92 581.95 583.81 581.51 583.81 C 581.08 583.81 580.65 583.92 580.26 584.13 C 579.84 583.11 578.85 582.45 577.75 582.45 C 577.06 582.45 576.41 582.71 575.93 583.15 L 573.97 584.74 C 573.91 584.74 573.86 584.73 573.79 584.73 C 573.03 584.73 572.33 584.96 571.75 585.36 L 568.08 588.15 C 566.6 589.45 565.65 591.36 565.65 593.48 C 565.65 597.38 568.85 600.57 572.75 600.57 C 576.22 600.57 579.12 598.05 579.72 594.75 C 580.25 594.99 580.83 595.12 581.42 595.12 C 582.06 595.12 582.69 594.97 583.27 594.68 C 583.85 598 586.77 600.55 590.25 600.55 C 594.15 600.55 597.34 597.36 597.34 593.46 C 597.34 591.27 596.33 589.3 594.76 587.99 L 591.68 585.38 C 591.07 584.92 590.31 584.65 589.48 584.65 C 589.22 584.65 588.97 584.68 588.73 584.73 L 587.17 583.19 C 586.68 582.72 586.01 582.43 585.29 582.43 Z M 572.75 588.76 C 575.36 588.76 577.46 590.86 577.46 593.48 C 577.46 596.09 575.36 598.19 572.75 598.19 C 570.13 598.19 568.04 596.09 568.04 593.48 C 568.04 590.86 570.13 588.76 572.75 588.76 Z M 590.25 588.75 C 592.87 588.75 594.96 590.84 594.96 593.46 C 594.96 596.08 592.87 598.17 590.25 598.17 C 587.64 598.17 585.54 596.08 585.54 593.46 C 585.54 590.84 587.64 588.75 590.25 588.75 Z M 587.47 591.55 C 586.62 592.76 586.27 594.55 587.96 596.18 C 589.66 597.64 591.83 597.05 592.92 595.79 C 591.25 596.08 590 595.81 589.03 595.03 C 588.01 594.19 587.48 593.11 587.47 591.55 Z M 569.96 591.53 C 569.11 592.74 568.76 594.53 570.45 596.16 C 572.15 597.62 574.32 597.03 575.41 595.77 C 573.74 596.06 572.49 595.79 571.52 595.01 C 570.5 594.17 569.97 593.09 569.96 591.53 Z M 581.45 589.58 C 582.47 589.58 583.3 590.41 583.3 591.43 C 583.3 592.46 582.47 593.3 581.45 593.3 C 580.42 593.3 579.58 592.46 579.58 591.43 C 579.58 590.41 580.42 589.58 581.45 589.58 Z" fill="#999999" style="fill: light-dark(rgb(153, 153, 153), rgb(106, 106, 106));" stroke="none" pointer-events="all"/><ellipse cx="581.5" cy="591.5" rx="21.07" ry="21.07" fill="#ffffff" style="fill: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));" stroke="none" pointer-events="all"/><rect x="560" y="570" width="43" height="43" fill="none" stroke="none" pointer-events="all"/><path d="M 581.5 570 C 593.36 570 603 579.63 603 591.5 C 603 603.37 593.36 613 581.5 613 C 569.64 613 560 603.37 560 591.5 C 560 579.63 569.64 570 581.5 570 Z M 585.29 582.43 C 584.18 582.43 583.19 583.11 582.77 584.13 C 582.38 583.92 581.95 583.81 581.51 583.81 C 581.08 583.81 580.65 583.92 580.26 584.13 C 579.84 583.11 578.85 582.45 577.75 582.45 C 577.06 582.45 576.41 582.71 575.93 583.15 L 573.97 584.74 C 573.91 584.74 573.86 584.73 573.79 584.73 C 573.03 584.73 572.33 584.96 571.75 585.36 L 568.08 588.15 C 566.6 589.45 565.65 591.36 565.65 593.48 C 565.65 597.38 568.85 600.57 572.75 600.57 C 576.22 600.57 579.12 598.05 579.72 594.75 C 580.25 594.99 580.83 595.12 581.42 595.12 C 582.06 595.12 582.69 594.97 583.27 594.68 C 583.85 598 586.77 600.55 590.25 600.55 C 594.15 600.55 597.34 597.36 597.34 593.46 C 597.34 591.27 596.33 589.3 594.76 587.99 L 591.68 585.38 C 591.07 584.92 590.31 584.65 589.48 584.65 C 589.22 584.65 588.97 584.68 588.73 584.73 L 587.17 583.19 C 586.68 582.72 586.01 582.43 585.29 582.43 Z M 572.75 588.76 C 575.36 588.76 577.46 590.86 577.46 593.48 C 577.46 596.09 575.36 598.19 572.75 598.19 C 570.13 598.19 568.04 596.09 568.04 593.48 C 568.04 590.86 570.13 588.76 572.75 588.76 Z M 590.25 588.75 C 592.87 588.75 594.96 590.84 594.96 593.46 C 594.96 596.08 592.87 598.17 590.25 598.17 C 587.64 598.17 585.54 596.08 585.54 593.46 C 585.54 590.84 587.64 588.75 590.25 588.75 Z M 587.47 591.55 C 586.62 592.76 586.27 594.55 587.96 596.18 C 589.66 597.64 591.83 597.05 592.92 595.79 C 591.25 596.08 590 595.81 589.03 595.03 C 588.01 594.19 587.48 593.11 587.47 591.55 Z M 569.96 591.53 C 569.11 592.74 568.76 594.53 570.45 596.16 C 572.15 597.62 574.32 597.03 575.41 595.77 C 573.74 596.06 572.49 595.79 571.52 595.01 C 570.5 594.17 569.97 593.09 569.96 591.53 Z M 581.45 589.58 C 582.47 589.58 583.3 590.41 583.3 591.43 C 583.3 592.46 582.47 593.3 581.45 593.3 C 580.42 593.3 579.58 592.46 579.58 591.43 C 579.58 590.41 580.42 589.58 581.45 589.58 Z" fill="#999999" style="fill: light-dark(rgb(153, 153, 153), rgb(106, 106, 106));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 620px; margin-left: 582px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; ">Hacker can <br />only see those</div></div></div></foreignObject><text x="582" y="632" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">Hacker...</text></switch></g></g></g><g data-cell-id="61"><g><path d="M 560 591.5 L 476.37 589.33" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 471.12 589.2 L 478.21 585.88 L 476.37 589.33 L 478.02 592.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="62"><g><path d="M 560 591.5 L 465.31 653.99" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 460.93 656.88 L 464.85 650.11 L 465.31 653.99 L 468.7 655.95 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="63"><g><rect x="365" y="760" width="220" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 775px; margin-left: 475px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; ">6. Alice and Bob have a shared secret!</div></div></div></foreignObject><text x="475" y="779" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">6. Alice and Bob have a shared secre...</text></switch></g></g></g></g></g></g></svg></diagram> źródła: \\ {{youtube>Yjrfm_oRO0w?}} https://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange
notatki/diffie_hellman.txt
· ostatnio zmienione:
2025/05/22 15:46
przez
administrator
Narzędzia strony
Pokaż stronę
Poprzednie wersje
Odnośniki
Export to PDF
Do góry