Add ECC docs
This commit is contained in:
+11
-9
@@ -52,6 +52,8 @@
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="../curves/">Curves</a>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="../ecc/">Elliptic Curve Cryptography</a>
|
||||
</li>
|
||||
</ul>
|
||||
<p class="caption"><span class="caption-text">Public Keys</span></p>
|
||||
<ul>
|
||||
@@ -115,7 +117,7 @@
|
||||
|
||||
|
||||
|
||||
<div class="doc doc-children">
|
||||
<div class="doc doc-children">
|
||||
|
||||
|
||||
|
||||
@@ -198,7 +200,7 @@ And for each 1 bit, we compute the exponent.</p>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<details class="quote">
|
||||
<details class="mkdocstrings-source">
|
||||
<summary>Source code in <code>Cryptotools/Utils/utils.py</code></summary>
|
||||
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">35</span>
|
||||
<span class="normal">36</span>
|
||||
@@ -227,7 +229,7 @@ And for each 1 bit, we compute the exponent.</p>
|
||||
<span class="normal">59</span>
|
||||
<span class="normal">60</span>
|
||||
<span class="normal">61</span>
|
||||
<span class="normal">62</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span> <span class="nf">bin_expo</span><span class="p">(</span><span class="n">n</span><span class="p">,</span> <span class="n">e</span><span class="p">)</span> <span class="o">-></span> <span class="nb">int</span><span class="p">:</span>
|
||||
<span class="normal">62</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">bin_expo</span><span class="p">(</span><span class="n">n</span><span class="p">,</span> <span class="n">e</span><span class="p">)</span> <span class="o">-></span> <span class="nb">int</span><span class="p">:</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> This function perform an binary exponentiation, also known as Exponentiation squaring.</span>
|
||||
<span class="sd"> A binary exponentiation is the process for computing an integer power of a number, such as a ** n.</span>
|
||||
@@ -309,7 +311,7 @@ https://en.wikipedia.org/wiki/Extended_Euclidean_algorithm</p>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<details class="quote">
|
||||
<details class="mkdocstrings-source">
|
||||
<summary>Source code in <code>Cryptotools/Utils/utils.py</code></summary>
|
||||
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">18</span>
|
||||
<span class="normal">19</span>
|
||||
@@ -326,7 +328,7 @@ https://en.wikipedia.org/wiki/Extended_Euclidean_algorithm</p>
|
||||
<span class="normal">30</span>
|
||||
<span class="normal">31</span>
|
||||
<span class="normal">32</span>
|
||||
<span class="normal">33</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span> <span class="nf">egcd</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">b</span><span class="p">):</span>
|
||||
<span class="normal">33</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">egcd</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">b</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> This function compute the Extended Euclidean algorithm</span>
|
||||
<span class="sd"> https://user.eng.umd.edu/~danadach/Cryptography_20/ExtEuclAlg.pdf</span>
|
||||
@@ -399,7 +401,7 @@ https://en.wikipedia.org/wiki/Extended_Euclidean_algorithm</p>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<details class="quote">
|
||||
<details class="mkdocstrings-source">
|
||||
<summary>Source code in <code>Cryptotools/Utils/utils.py</code></summary>
|
||||
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">64</span>
|
||||
<span class="normal">65</span>
|
||||
@@ -421,7 +423,7 @@ https://en.wikipedia.org/wiki/Extended_Euclidean_algorithm</p>
|
||||
<span class="normal">81</span>
|
||||
<span class="normal">82</span>
|
||||
<span class="normal">83</span>
|
||||
<span class="normal">84</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span> <span class="nf">exponent_squaring</span><span class="p">(</span><span class="n">n</span><span class="p">,</span> <span class="n">e</span><span class="p">):</span>
|
||||
<span class="normal">84</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">exponent_squaring</span><span class="p">(</span><span class="n">n</span><span class="p">,</span> <span class="n">e</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> This function perform an exponentiation squaring, which compute an integer power of a number based on the following algorithm:</span>
|
||||
<span class="sd"> n ** e = {</span>
|
||||
@@ -470,7 +472,7 @@ Args:
|
||||
<p>the GCD</p>
|
||||
</details>
|
||||
|
||||
<details class="quote">
|
||||
<details class="mkdocstrings-source">
|
||||
<summary>Source code in <code>Cryptotools/Utils/utils.py</code></summary>
|
||||
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 3</span>
|
||||
<span class="normal"> 4</span>
|
||||
@@ -485,7 +487,7 @@ Args:
|
||||
<span class="normal">13</span>
|
||||
<span class="normal">14</span>
|
||||
<span class="normal">15</span>
|
||||
<span class="normal">16</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span> <span class="nf">gcd</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">b</span><span class="p">):</span>
|
||||
<span class="normal">16</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">gcd</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">b</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> This function calculate the GCD (Greatest Common Divisor of the number a of b</span>
|
||||
<span class="sd"> Args:</span>
|
||||
|
||||
Reference in New Issue
Block a user