Skip to content

Commit 171fc29

Browse files
authored
Update index.html
Signed-off-by: Mohamed El-Hadedy <47838875+mealycpp@users.noreply.github.com>
1 parent 22e7c19 commit 171fc29

1 file changed

Lines changed: 111 additions & 27 deletions

File tree

index.html

Lines changed: 111 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -81,31 +81,94 @@ <h2>🔒 Lightweight Cryptography</h2>
8181
</p>
8282

8383
<!-- Comparison: AEAD vs Block Ciphers -->
84-
<h3>AEAD vs. Block Ciphers</h3>
85-
<table>
86-
<tr><th>Feature</th><th>AEAD (e.g. Ascon)</th><th>Block Cipher + MAC (e.g. AES-GCM)</th></tr>
87-
<tr><td>Encryption + Auth</td><td>Single pass, atomic</td><td>Two steps (encrypt then tag)</td></tr>
88-
<tr><td>Code Size</td><td>≈2–5 kB</td><td>≈10–20 kB</td></tr>
89-
<tr><td>RAM Usage</td><td>≈200–500 bytes</td><td>≈1–2 kB</td></tr>
90-
<tr><td>Throughput</td><td>2–5 cycles/byte</td><td>10–15 cycles/byte</td></tr>
91-
<tr><td>Security Goal</td><td>Confidentiality & Authenticity</td><td>Confidentiality & Authenticity</td></tr>
92-
</table>
84+
<h3>AEAD vs. Block Cipher Comparison</h3>
85+
<table>
86+
<thead>
87+
<tr>
88+
<th style="text-align:left; padding:8px;">Feature</th>
89+
<th style="text-align:center; padding:8px;">AEAD (e.g., Ascon)</th>
90+
<th style="text-align:center; padding:8px;">Block Cipher + MAC (e.g., AES-GCM)</th>
91+
</tr>
92+
</thead>
93+
<tbody>
94+
<tr>
95+
<td style="padding:8px;">Encryption + Authentication</td>
96+
<td style="text-align:center; padding:8px;">Single pass (atomic)</td>
97+
<td style="text-align:center; padding:8px;">Two steps (encrypt, then tag)</td>
98+
</tr>
99+
<tr>
100+
<td style="padding:8px;">Code Size</td>
101+
<td style="text-align:center; padding:8px;">≈ 2 – 5 kB</td>
102+
<td style="text-align:center; padding:8px;">≈ 10 – 20 kB</td>
103+
</tr>
104+
<tr>
105+
<td style="padding:8px;">RAM Usage</td>
106+
<td style="text-align:center; padding:8px;">≈ 200 – 500 bytes</td>
107+
<td style="text-align:center; padding:8px;">≈ 1 – 2 kB</td>
108+
</tr>
109+
<tr>
110+
<td style="padding:8px;">Throughput (cycles/byte)</td>
111+
<td style="text-align:center; padding:8px;">2 – 5</td>
112+
<td style="text-align:center; padding:8px;">10 – 15</td>
113+
</tr>
114+
<tr>
115+
<td style="padding:8px;">Security Goal</td>
116+
<td style="text-align:center; padding:8px;">Confidentiality &amp; Authenticity</td>
117+
<td style="text-align:center; padding:8px;">Confidentiality &amp; Authenticity</td>
118+
</tr>
119+
</tbody>
120+
</table>
93121

94122
<!-- ASCON Deep Dive -->
95123
<h3>ASCON Internals</h3>
96124
<img src="assets/Ascon_sponge_diagram.png" alt="Ascon Sponge Diagram" style="display:block;margin:10px auto;max-width:400px;">
97125
<table>
98-
<tr><th>Property</th><th>Value</th></tr>
99-
<tr><td>Permutation Size</td><td>320 bits (5 x 64-bit lanes)</td></tr>
100-
<tr><td>Rate</td><td>64 bits / 8 bytes per absorption/squeeze</td></tr>
101-
<tr><td>Initialization Rounds</td><td>12</td></tr>
102-
<tr><td>Intermediate Rounds</td><td>6</td></tr>
103-
<tr><td>Finalization Rounds</td><td>12</td></tr>
104-
<tr><td>Key Size</td><td>128 bits (optional 256 bits)</td></tr>
105-
<tr><td>Nonce Size</td><td>128 bits</td></tr>
106-
<tr><td>Tag Size</td><td>128 bits</td></tr>
107-
<tr><td>Performance (Cortex-M4)</td><td>≈1 MB/s</td></tr>
108-
</table>
126+
<thead>
127+
<tr>
128+
<th style="text-align:left; padding:8px;">Property</th>
129+
<th style="text-align:center; padding:8px;">Value</th>
130+
</tr>
131+
</thead>
132+
<tbody>
133+
<tr>
134+
<td style="padding:8px;">Permutation Size</td>
135+
<td style="text-align:center; padding:8px;">320 bits (5 × 64-bit lanes)</td>
136+
</tr>
137+
<tr>
138+
<td style="padding:8px;">Rate</td>
139+
<td style="text-align:center; padding:8px;">64 bits / 8 bytes per absorption/squeeze</td>
140+
</tr>
141+
<tr>
142+
<td style="padding:8px;">Initialization Rounds</td>
143+
<td style="text-align:center; padding:8px;">12</td>
144+
</tr>
145+
<tr>
146+
<td style="padding:8px;">Intermediate Rounds</td>
147+
<td style="text-align:center; padding:8px;">6</td>
148+
</tr>
149+
<tr>
150+
<td style="padding:8px;">Finalization Rounds</td>
151+
<td style="text-align:center; padding:8px;">12</td>
152+
</tr>
153+
<tr>
154+
<td style="padding:8px;">Key Size</td>
155+
<td style="text-align:center; padding:8px;">128 bits (optional 256 bits)</td>
156+
</tr>
157+
<tr>
158+
<td style="padding:8px;">Nonce Size</td>
159+
<td style="text-align:center; padding:8px;">128 bits</td>
160+
</tr>
161+
<tr>
162+
<td style="padding:8px;">Tag Size</td>
163+
<td style="text-align:center; padding:8px;">128 bits</td>
164+
</tr>
165+
<tr>
166+
<td style="padding:8px;">Performance (Cortex-M4)</td>
167+
<td style="text-align:center; padding:8px;">≈ 1 MB/s</td>
168+
</tr>
169+
</tbody>
170+
</table>
171+
109172

110173
<p>
111174
ASCON’s design is built around a <em>sponge construction</em>, where data and keys are absorbed into an internal state
@@ -114,13 +177,34 @@ <h3>ASCON Internals</h3>
114177
</p>
115178

116179
<!-- Security Comparison -->
117-
<h3>Security Strength vs. Block Ciphers</h3>
118-
<table>
119-
<tr><th>Security Aspect</th><th>ASCON (128-bit key)</th><th>AES-128 (GCM)</th></tr>
120-
<tr><td>Bit-security</td><td>≥ 128 bits</td><td>128 bits</td></tr>
121-
<tr><td>Integrity Bound</td><td>2^64 forgery bound</td><td>2^64 forgery bound</td></tr>
122-
<tr><td>Resistance to Side-Channel</td><td>Simple permutation—easier to mask</td><td>Complex S-boxes—harder to mask</td></tr>
123-
</table>
180+
<h3>Security Strength vs. Block Ciphers</h3>
181+
<table>
182+
<thead>
183+
<tr>
184+
<th style="text-align:left; padding:8px;">Security Aspect</th>
185+
<th style="text-align:center; padding:8px;">ASCON (128-bit key)</th>
186+
<th style="text-align:center; padding:8px;">AES-128 (GCM)</th>
187+
</tr>
188+
</thead>
189+
<tbody>
190+
<tr>
191+
<td style="padding:8px;">Bit-security</td>
192+
<td style="text-align:center; padding:8px;">≥ 128 bits</td>
193+
<td style="text-align:center; padding:8px;">128 bits</td>
194+
</tr>
195+
<tr>
196+
<td style="padding:8px;">Integrity Bound</td>
197+
<td style="text-align:center; padding:8px;">2⁶⁴ forgery bound</td>
198+
<td style="text-align:center; padding:8px;">2⁶⁴ forgery bound</td>
199+
</tr>
200+
<tr>
201+
<td style="padding:8px;">Side-Channel Resistance</td>
202+
<td style="text-align:center; padding:8px;">Simple permutation – easier to mask</td>
203+
<td style="text-align:center; padding:8px;">Complex S-boxes – harder to mask</td>
204+
</tr>
205+
</tbody>
206+
</table>
207+
124208

125209
<p>
126210
By choosing ASCON for Ptah’s edge modules, we ensure each micro-controller—or even a small FPGA slice—can

0 commit comments

Comments
 (0)