From 3462f41f9e246f2b684b8593bc1c6d6866f70c1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Caroline=20Sandsbr=C3=A5ten?= Date: Fri, 12 Sep 2025 10:42:27 +0200 Subject: [PATCH] rename folders --- README.md | 9 +-------- .../Extending AES-128 Attacks to AES-256.ipynb | 0 ...ith Sum of Absolute Difference (SIMULATED).ipynb | 0 ...ing Traces with Sum of Absolute Difference.ipynb | 0 ...with Sum of Absolute Difference (HARDWARE).ipynb | 0 ...g Traces with Dynamic Time Warp (HARDWARE).ipynb | 0 ... Traces with Dynamic Time Warp (SIMULATED).ipynb | 0 ...sychronizing Traces with Dynamic Time Warp.ipynb | 0 .../Lab 2_1 - CPA on 32bit AES (HARDWARE).ipynb | 0 .../Lab 2_1 - CPA on 32bit AES (SIMULATED).ipynb | 0 .../1_SCA_Lab/Lab 2_1 - CPA on 32bit AES.ipynb | 0 ... on Hardware AES Implementation (HARDWARE).ipynb | 0 ...on Hardware AES Implementation (SIMULATED).ipynb | 0 ...b 2_2 - CPA on Hardware AES Implementation.ipynb | 0 .../Lab 2_3 - Attacking Across MixColumns.ipynb | 0 .../Lab 3_1A - AES256 Bootloader Attack.ipynb | 0 ...verse Engineering on the AES256 Bootloader.ipynb | 0 .../1_SCA_Lab/img/AES_Encryption.png | Bin .../1_SCA_Lab/img/AES_MixCol.png | Bin .../1_SCA_Lab/img/Aes256_cbc.png | Bin .../1_SCA_Lab/img/GoodVBadRef.png | Bin .../1_SCA_Lab/img/Resync_traces_ref.png | Bin .../1_SCA_Lab/img/aes_operations.png | Bin .../1_SCA_Lab/img/stm_run1.png | Bin .../1_Constructing_the_Glitch_Loop.ipynb | 0 .../2_Glitching_Past_a_Password_Check.ipynb | 0 .../2_Fault_Lab/3_Glitching_a_Memory_Dump.ipynb | 0 .../2_Fault_Lab/4_Glitching_a_Bootloader.ipynb | 0 .../2_Fault_Lab/img/Clock-glitched.png | Bin .../2_Fault_Lab/img/Clock-normal.png | Bin .../2_Fault_Lab/img/Glitchgen-mux.png | Bin .../2_Fault_Lab/img/Glitchgen-phaseshift.png | Bin .../2_Fault_Lab/img/Mcu-unglitched.png | Bin .../3_RSA_Lab}/3_RSA_Lab.ipynb | 0 .../BONUS_NOT_2025/4_BONUS_RSA_Fault_Lab.ipynb} | 0 .../BONUS_NOT_2025}/5_BONUS_AES_Loop_Skip.ipynb | 0 jupyter/{courses => Lab_Tasks}/README.md | 0 .../Tutorial/Tutorial_1.ipynb | 0 .../Tutorial/Tutorial_2.ipynb | 0 .../Tutorial/Tutorial_3.ipynb | 0 .../Tutorial/Tutorial_4.ipynb | 0 .../Tutorial/Tutorial_5.ipynb | 0 .../Tutorial/Tutorial_6.ipynb | 0 .../Tutorial/img/4traces_aes_clkx1.png | Bin .../Tutorial/img/4traces_aes_clkx1_offset60000.png | Bin .../img/4traces_aes_clkx1_presample5000.png | Bin .../img/4traces_aes_clkx1_presample5000_zoom.png | Bin .../Tutorial/img/4traces_aes_clkx4.png | Bin .../Tutorial/img/4traces_aes_poortrigger.png | Bin .../Tutorial/img/aesinput.png | Bin .../Tutorial/img/dpa-doublepeak.png | Bin .../Tutorial/img/dpa_peakexample.png | Bin .../Tutorial/img/shunt_chipwhisperer.png | Bin .../Tutorial/img/spa_password_diffexample.png | Bin .../Tutorial/img/spa_password_h_vs_0_overview.png | Bin .../Tutorial/img/spa_password_h_vs_0_zoomed.png | Bin .../Tutorial/img/spa_password_list_char1.png | Bin .../Tutorial/img/traces_wrong.png | Bin .../Tutorial/img/uart_triggers.png | Bin 59 files changed, 1 insertion(+), 8 deletions(-) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Extending AES-128 Attacks to AES-256.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Lab 1_1A - Resychronizing Traces with Sum of Absolute Difference (SIMULATED).ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Lab 1_1A - Resychronizing Traces with Sum of Absolute Difference.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Lab 1_1A - Resynchronizing Traces with Sum of Absolute Difference (HARDWARE).ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Lab 1_1B - Resychronizing Traces with Dynamic Time Warp (HARDWARE).ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Lab 1_1B - Resychronizing Traces with Dynamic Time Warp (SIMULATED).ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Lab 1_1B - Resychronizing Traces with Dynamic Time Warp.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Lab 2_1 - CPA on 32bit AES (HARDWARE).ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Lab 2_1 - CPA on 32bit AES (SIMULATED).ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Lab 2_1 - CPA on 32bit AES.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Lab 2_2 - CPA on Hardware AES Implementation (HARDWARE).ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Lab 2_2 - CPA on Hardware AES Implementation (SIMULATED).ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Lab 2_2 - CPA on Hardware AES Implementation.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Lab 2_3 - Attacking Across MixColumns.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Lab 3_1A - AES256 Bootloader Attack.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/Lab 3_1B - Reverse Engineering on the AES256 Bootloader.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/img/AES_Encryption.png (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/img/AES_MixCol.png (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/img/Aes256_cbc.png (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/img/GoodVBadRef.png (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/img/Resync_traces_ref.png (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/img/aes_operations.png (100%) rename jupyter/{courses => Lab_Tasks}/1_SCA_Lab/img/stm_run1.png (100%) rename jupyter/{courses => Lab_Tasks}/2_Fault_Lab/1_Constructing_the_Glitch_Loop.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/2_Fault_Lab/2_Glitching_Past_a_Password_Check.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/2_Fault_Lab/3_Glitching_a_Memory_Dump.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/2_Fault_Lab/4_Glitching_a_Bootloader.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/2_Fault_Lab/img/Clock-glitched.png (100%) rename jupyter/{courses => Lab_Tasks}/2_Fault_Lab/img/Clock-normal.png (100%) rename jupyter/{courses => Lab_Tasks}/2_Fault_Lab/img/Glitchgen-mux.png (100%) rename jupyter/{courses => Lab_Tasks}/2_Fault_Lab/img/Glitchgen-phaseshift.png (100%) rename jupyter/{courses => Lab_Tasks}/2_Fault_Lab/img/Mcu-unglitched.png (100%) rename jupyter/{courses => Lab_Tasks/3_RSA_Lab}/3_RSA_Lab.ipynb (100%) rename jupyter/{courses/4_RSA_Fault_Lab.ipynb => Lab_Tasks/BONUS_NOT_2025/4_BONUS_RSA_Fault_Lab.ipynb} (100%) rename jupyter/{courses/2_Fault_Lab => Lab_Tasks/BONUS_NOT_2025}/5_BONUS_AES_Loop_Skip.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/README.md (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/Tutorial_1.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/Tutorial_2.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/Tutorial_3.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/Tutorial_4.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/Tutorial_5.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/Tutorial_6.ipynb (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/4traces_aes_clkx1.png (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/4traces_aes_clkx1_offset60000.png (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/4traces_aes_clkx1_presample5000.png (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/4traces_aes_clkx1_presample5000_zoom.png (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/4traces_aes_clkx4.png (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/4traces_aes_poortrigger.png (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/aesinput.png (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/dpa-doublepeak.png (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/dpa_peakexample.png (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/shunt_chipwhisperer.png (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/spa_password_diffexample.png (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/spa_password_h_vs_0_overview.png (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/spa_password_h_vs_0_zoomed.png (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/spa_password_list_char1.png (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/traces_wrong.png (100%) rename jupyter/{courses => Lab_Tasks}/Tutorial/img/uart_triggers.png (100%) diff --git a/README.md b/README.md index bb043f8b..e8cac296 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,11 @@ # ChipWhisperer -[![Documentation Status](https://readthedocs.org/projects/chipwhisperer/badge/?version=latest)](https://chipwhisperer.readthedocs.io/en/latest/?badge=latest) | [![Notebook Tests](https://github.com/newaetech/ChipWhisperer-Test-Results/blob/main/.github/badges/hardware_tests.svg)](https://github.com/newaetech/ChipWhisperer-Test-Results/blob/main/tutorials/results.yaml) | [![Discord](https://img.shields.io/discord/747196318044258365?logo=discord)](https://discord.gg/chipwhisperer) +[![Documentation Status](https://readthedocs.org/projects/chipwhisperer/badge/?version=latest)](https://chipwhisperer.readthedocs.io/en/latest/?badge=latest) | [![Discord](https://img.shields.io/discord/747196318044258365?logo=discord)](https://discord.gg/chipwhisperer) ## Important Links [Documentation](https://chipwhisperer.readthedocs.io) | [Tutorials](https://github.com/newaetech/chipwhisperer-jupyter/tree/main) | [Forum](http://forum.newae.com) | [Store](https://store.newae.com) | [NewAE](http://newae.com) -## ChipWhisperer 6.0: Repo Changes and Cleanup - -ChipWhisperer 6.0 is bringing many changes to the ChipWhisperer repository. The biggest one is a cleanup of the git history on both this repo and -chipwhisperer-jupyter, as well as moving some files out of these repositories. We've done our best to make everything most users will want -on this repo, as well as to backup everything else to other repos. - -For more information, please check out our [writeup on this update](https://docs.google.com/document/d/1sAhfBboymKDQyOE_BurCmwsh7hb_Qiw8SW3kCu9ZGrg/edit?usp=sharing). ## What is ChipWhisperer? diff --git a/jupyter/courses/1_SCA_Lab/Extending AES-128 Attacks to AES-256.ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Extending AES-128 Attacks to AES-256.ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Extending AES-128 Attacks to AES-256.ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Extending AES-128 Attacks to AES-256.ipynb diff --git a/jupyter/courses/1_SCA_Lab/Lab 1_1A - Resychronizing Traces with Sum of Absolute Difference (SIMULATED).ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Lab 1_1A - Resychronizing Traces with Sum of Absolute Difference (SIMULATED).ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Lab 1_1A - Resychronizing Traces with Sum of Absolute Difference (SIMULATED).ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Lab 1_1A - Resychronizing Traces with Sum of Absolute Difference (SIMULATED).ipynb diff --git a/jupyter/courses/1_SCA_Lab/Lab 1_1A - Resychronizing Traces with Sum of Absolute Difference.ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Lab 1_1A - Resychronizing Traces with Sum of Absolute Difference.ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Lab 1_1A - Resychronizing Traces with Sum of Absolute Difference.ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Lab 1_1A - Resychronizing Traces with Sum of Absolute Difference.ipynb diff --git a/jupyter/courses/1_SCA_Lab/Lab 1_1A - Resynchronizing Traces with Sum of Absolute Difference (HARDWARE).ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Lab 1_1A - Resynchronizing Traces with Sum of Absolute Difference (HARDWARE).ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Lab 1_1A - Resynchronizing Traces with Sum of Absolute Difference (HARDWARE).ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Lab 1_1A - Resynchronizing Traces with Sum of Absolute Difference (HARDWARE).ipynb diff --git a/jupyter/courses/1_SCA_Lab/Lab 1_1B - Resychronizing Traces with Dynamic Time Warp (HARDWARE).ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Lab 1_1B - Resychronizing Traces with Dynamic Time Warp (HARDWARE).ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Lab 1_1B - Resychronizing Traces with Dynamic Time Warp (HARDWARE).ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Lab 1_1B - Resychronizing Traces with Dynamic Time Warp (HARDWARE).ipynb diff --git a/jupyter/courses/1_SCA_Lab/Lab 1_1B - Resychronizing Traces with Dynamic Time Warp (SIMULATED).ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Lab 1_1B - Resychronizing Traces with Dynamic Time Warp (SIMULATED).ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Lab 1_1B - Resychronizing Traces with Dynamic Time Warp (SIMULATED).ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Lab 1_1B - Resychronizing Traces with Dynamic Time Warp (SIMULATED).ipynb diff --git a/jupyter/courses/1_SCA_Lab/Lab 1_1B - Resychronizing Traces with Dynamic Time Warp.ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Lab 1_1B - Resychronizing Traces with Dynamic Time Warp.ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Lab 1_1B - Resychronizing Traces with Dynamic Time Warp.ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Lab 1_1B - Resychronizing Traces with Dynamic Time Warp.ipynb diff --git a/jupyter/courses/1_SCA_Lab/Lab 2_1 - CPA on 32bit AES (HARDWARE).ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Lab 2_1 - CPA on 32bit AES (HARDWARE).ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Lab 2_1 - CPA on 32bit AES (HARDWARE).ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Lab 2_1 - CPA on 32bit AES (HARDWARE).ipynb diff --git a/jupyter/courses/1_SCA_Lab/Lab 2_1 - CPA on 32bit AES (SIMULATED).ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Lab 2_1 - CPA on 32bit AES (SIMULATED).ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Lab 2_1 - CPA on 32bit AES (SIMULATED).ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Lab 2_1 - CPA on 32bit AES (SIMULATED).ipynb diff --git a/jupyter/courses/1_SCA_Lab/Lab 2_1 - CPA on 32bit AES.ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Lab 2_1 - CPA on 32bit AES.ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Lab 2_1 - CPA on 32bit AES.ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Lab 2_1 - CPA on 32bit AES.ipynb diff --git a/jupyter/courses/1_SCA_Lab/Lab 2_2 - CPA on Hardware AES Implementation (HARDWARE).ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Lab 2_2 - CPA on Hardware AES Implementation (HARDWARE).ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Lab 2_2 - CPA on Hardware AES Implementation (HARDWARE).ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Lab 2_2 - CPA on Hardware AES Implementation (HARDWARE).ipynb diff --git a/jupyter/courses/1_SCA_Lab/Lab 2_2 - CPA on Hardware AES Implementation (SIMULATED).ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Lab 2_2 - CPA on Hardware AES Implementation (SIMULATED).ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Lab 2_2 - CPA on Hardware AES Implementation (SIMULATED).ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Lab 2_2 - CPA on Hardware AES Implementation (SIMULATED).ipynb diff --git a/jupyter/courses/1_SCA_Lab/Lab 2_2 - CPA on Hardware AES Implementation.ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Lab 2_2 - CPA on Hardware AES Implementation.ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Lab 2_2 - CPA on Hardware AES Implementation.ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Lab 2_2 - CPA on Hardware AES Implementation.ipynb diff --git a/jupyter/courses/1_SCA_Lab/Lab 2_3 - Attacking Across MixColumns.ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Lab 2_3 - Attacking Across MixColumns.ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Lab 2_3 - Attacking Across MixColumns.ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Lab 2_3 - Attacking Across MixColumns.ipynb diff --git a/jupyter/courses/1_SCA_Lab/Lab 3_1A - AES256 Bootloader Attack.ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Lab 3_1A - AES256 Bootloader Attack.ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Lab 3_1A - AES256 Bootloader Attack.ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Lab 3_1A - AES256 Bootloader Attack.ipynb diff --git a/jupyter/courses/1_SCA_Lab/Lab 3_1B - Reverse Engineering on the AES256 Bootloader.ipynb b/jupyter/Lab_Tasks/1_SCA_Lab/Lab 3_1B - Reverse Engineering on the AES256 Bootloader.ipynb similarity index 100% rename from jupyter/courses/1_SCA_Lab/Lab 3_1B - Reverse Engineering on the AES256 Bootloader.ipynb rename to jupyter/Lab_Tasks/1_SCA_Lab/Lab 3_1B - Reverse Engineering on the AES256 Bootloader.ipynb diff --git a/jupyter/courses/1_SCA_Lab/img/AES_Encryption.png b/jupyter/Lab_Tasks/1_SCA_Lab/img/AES_Encryption.png similarity index 100% rename from jupyter/courses/1_SCA_Lab/img/AES_Encryption.png rename to jupyter/Lab_Tasks/1_SCA_Lab/img/AES_Encryption.png diff --git a/jupyter/courses/1_SCA_Lab/img/AES_MixCol.png b/jupyter/Lab_Tasks/1_SCA_Lab/img/AES_MixCol.png similarity index 100% rename from jupyter/courses/1_SCA_Lab/img/AES_MixCol.png rename to jupyter/Lab_Tasks/1_SCA_Lab/img/AES_MixCol.png diff --git a/jupyter/courses/1_SCA_Lab/img/Aes256_cbc.png b/jupyter/Lab_Tasks/1_SCA_Lab/img/Aes256_cbc.png similarity index 100% rename from jupyter/courses/1_SCA_Lab/img/Aes256_cbc.png rename to jupyter/Lab_Tasks/1_SCA_Lab/img/Aes256_cbc.png diff --git a/jupyter/courses/1_SCA_Lab/img/GoodVBadRef.png b/jupyter/Lab_Tasks/1_SCA_Lab/img/GoodVBadRef.png similarity index 100% rename from jupyter/courses/1_SCA_Lab/img/GoodVBadRef.png rename to jupyter/Lab_Tasks/1_SCA_Lab/img/GoodVBadRef.png diff --git a/jupyter/courses/1_SCA_Lab/img/Resync_traces_ref.png b/jupyter/Lab_Tasks/1_SCA_Lab/img/Resync_traces_ref.png similarity index 100% rename from jupyter/courses/1_SCA_Lab/img/Resync_traces_ref.png rename to jupyter/Lab_Tasks/1_SCA_Lab/img/Resync_traces_ref.png diff --git a/jupyter/courses/1_SCA_Lab/img/aes_operations.png b/jupyter/Lab_Tasks/1_SCA_Lab/img/aes_operations.png similarity index 100% rename from jupyter/courses/1_SCA_Lab/img/aes_operations.png rename to jupyter/Lab_Tasks/1_SCA_Lab/img/aes_operations.png diff --git a/jupyter/courses/1_SCA_Lab/img/stm_run1.png b/jupyter/Lab_Tasks/1_SCA_Lab/img/stm_run1.png similarity index 100% rename from jupyter/courses/1_SCA_Lab/img/stm_run1.png rename to jupyter/Lab_Tasks/1_SCA_Lab/img/stm_run1.png diff --git a/jupyter/courses/2_Fault_Lab/1_Constructing_the_Glitch_Loop.ipynb b/jupyter/Lab_Tasks/2_Fault_Lab/1_Constructing_the_Glitch_Loop.ipynb similarity index 100% rename from jupyter/courses/2_Fault_Lab/1_Constructing_the_Glitch_Loop.ipynb rename to jupyter/Lab_Tasks/2_Fault_Lab/1_Constructing_the_Glitch_Loop.ipynb diff --git a/jupyter/courses/2_Fault_Lab/2_Glitching_Past_a_Password_Check.ipynb b/jupyter/Lab_Tasks/2_Fault_Lab/2_Glitching_Past_a_Password_Check.ipynb similarity index 100% rename from jupyter/courses/2_Fault_Lab/2_Glitching_Past_a_Password_Check.ipynb rename to jupyter/Lab_Tasks/2_Fault_Lab/2_Glitching_Past_a_Password_Check.ipynb diff --git a/jupyter/courses/2_Fault_Lab/3_Glitching_a_Memory_Dump.ipynb b/jupyter/Lab_Tasks/2_Fault_Lab/3_Glitching_a_Memory_Dump.ipynb similarity index 100% rename from jupyter/courses/2_Fault_Lab/3_Glitching_a_Memory_Dump.ipynb rename to jupyter/Lab_Tasks/2_Fault_Lab/3_Glitching_a_Memory_Dump.ipynb diff --git a/jupyter/courses/2_Fault_Lab/4_Glitching_a_Bootloader.ipynb b/jupyter/Lab_Tasks/2_Fault_Lab/4_Glitching_a_Bootloader.ipynb similarity index 100% rename from jupyter/courses/2_Fault_Lab/4_Glitching_a_Bootloader.ipynb rename to jupyter/Lab_Tasks/2_Fault_Lab/4_Glitching_a_Bootloader.ipynb diff --git a/jupyter/courses/2_Fault_Lab/img/Clock-glitched.png b/jupyter/Lab_Tasks/2_Fault_Lab/img/Clock-glitched.png similarity index 100% rename from jupyter/courses/2_Fault_Lab/img/Clock-glitched.png rename to jupyter/Lab_Tasks/2_Fault_Lab/img/Clock-glitched.png diff --git a/jupyter/courses/2_Fault_Lab/img/Clock-normal.png b/jupyter/Lab_Tasks/2_Fault_Lab/img/Clock-normal.png similarity index 100% rename from jupyter/courses/2_Fault_Lab/img/Clock-normal.png rename to jupyter/Lab_Tasks/2_Fault_Lab/img/Clock-normal.png diff --git a/jupyter/courses/2_Fault_Lab/img/Glitchgen-mux.png b/jupyter/Lab_Tasks/2_Fault_Lab/img/Glitchgen-mux.png similarity index 100% rename from jupyter/courses/2_Fault_Lab/img/Glitchgen-mux.png rename to jupyter/Lab_Tasks/2_Fault_Lab/img/Glitchgen-mux.png diff --git a/jupyter/courses/2_Fault_Lab/img/Glitchgen-phaseshift.png b/jupyter/Lab_Tasks/2_Fault_Lab/img/Glitchgen-phaseshift.png similarity index 100% rename from jupyter/courses/2_Fault_Lab/img/Glitchgen-phaseshift.png rename to jupyter/Lab_Tasks/2_Fault_Lab/img/Glitchgen-phaseshift.png diff --git a/jupyter/courses/2_Fault_Lab/img/Mcu-unglitched.png b/jupyter/Lab_Tasks/2_Fault_Lab/img/Mcu-unglitched.png similarity index 100% rename from jupyter/courses/2_Fault_Lab/img/Mcu-unglitched.png rename to jupyter/Lab_Tasks/2_Fault_Lab/img/Mcu-unglitched.png diff --git a/jupyter/courses/3_RSA_Lab.ipynb b/jupyter/Lab_Tasks/3_RSA_Lab/3_RSA_Lab.ipynb similarity index 100% rename from jupyter/courses/3_RSA_Lab.ipynb rename to jupyter/Lab_Tasks/3_RSA_Lab/3_RSA_Lab.ipynb diff --git a/jupyter/courses/4_RSA_Fault_Lab.ipynb b/jupyter/Lab_Tasks/BONUS_NOT_2025/4_BONUS_RSA_Fault_Lab.ipynb similarity index 100% rename from jupyter/courses/4_RSA_Fault_Lab.ipynb rename to jupyter/Lab_Tasks/BONUS_NOT_2025/4_BONUS_RSA_Fault_Lab.ipynb diff --git a/jupyter/courses/2_Fault_Lab/5_BONUS_AES_Loop_Skip.ipynb b/jupyter/Lab_Tasks/BONUS_NOT_2025/5_BONUS_AES_Loop_Skip.ipynb similarity index 100% rename from jupyter/courses/2_Fault_Lab/5_BONUS_AES_Loop_Skip.ipynb rename to jupyter/Lab_Tasks/BONUS_NOT_2025/5_BONUS_AES_Loop_Skip.ipynb diff --git a/jupyter/courses/README.md b/jupyter/Lab_Tasks/README.md similarity index 100% rename from jupyter/courses/README.md rename to jupyter/Lab_Tasks/README.md diff --git a/jupyter/courses/Tutorial/Tutorial_1.ipynb b/jupyter/Lab_Tasks/Tutorial/Tutorial_1.ipynb similarity index 100% rename from jupyter/courses/Tutorial/Tutorial_1.ipynb rename to jupyter/Lab_Tasks/Tutorial/Tutorial_1.ipynb diff --git a/jupyter/courses/Tutorial/Tutorial_2.ipynb b/jupyter/Lab_Tasks/Tutorial/Tutorial_2.ipynb similarity index 100% rename from jupyter/courses/Tutorial/Tutorial_2.ipynb rename to jupyter/Lab_Tasks/Tutorial/Tutorial_2.ipynb diff --git a/jupyter/courses/Tutorial/Tutorial_3.ipynb b/jupyter/Lab_Tasks/Tutorial/Tutorial_3.ipynb similarity index 100% rename from jupyter/courses/Tutorial/Tutorial_3.ipynb rename to jupyter/Lab_Tasks/Tutorial/Tutorial_3.ipynb diff --git a/jupyter/courses/Tutorial/Tutorial_4.ipynb b/jupyter/Lab_Tasks/Tutorial/Tutorial_4.ipynb similarity index 100% rename from jupyter/courses/Tutorial/Tutorial_4.ipynb rename to jupyter/Lab_Tasks/Tutorial/Tutorial_4.ipynb diff --git a/jupyter/courses/Tutorial/Tutorial_5.ipynb b/jupyter/Lab_Tasks/Tutorial/Tutorial_5.ipynb similarity index 100% rename from jupyter/courses/Tutorial/Tutorial_5.ipynb rename to jupyter/Lab_Tasks/Tutorial/Tutorial_5.ipynb diff --git a/jupyter/courses/Tutorial/Tutorial_6.ipynb b/jupyter/Lab_Tasks/Tutorial/Tutorial_6.ipynb similarity index 100% rename from jupyter/courses/Tutorial/Tutorial_6.ipynb rename to jupyter/Lab_Tasks/Tutorial/Tutorial_6.ipynb diff --git a/jupyter/courses/Tutorial/img/4traces_aes_clkx1.png b/jupyter/Lab_Tasks/Tutorial/img/4traces_aes_clkx1.png similarity index 100% rename from jupyter/courses/Tutorial/img/4traces_aes_clkx1.png rename to jupyter/Lab_Tasks/Tutorial/img/4traces_aes_clkx1.png diff --git a/jupyter/courses/Tutorial/img/4traces_aes_clkx1_offset60000.png b/jupyter/Lab_Tasks/Tutorial/img/4traces_aes_clkx1_offset60000.png similarity index 100% rename from jupyter/courses/Tutorial/img/4traces_aes_clkx1_offset60000.png rename to jupyter/Lab_Tasks/Tutorial/img/4traces_aes_clkx1_offset60000.png diff --git a/jupyter/courses/Tutorial/img/4traces_aes_clkx1_presample5000.png b/jupyter/Lab_Tasks/Tutorial/img/4traces_aes_clkx1_presample5000.png similarity index 100% rename from jupyter/courses/Tutorial/img/4traces_aes_clkx1_presample5000.png rename to jupyter/Lab_Tasks/Tutorial/img/4traces_aes_clkx1_presample5000.png diff --git a/jupyter/courses/Tutorial/img/4traces_aes_clkx1_presample5000_zoom.png b/jupyter/Lab_Tasks/Tutorial/img/4traces_aes_clkx1_presample5000_zoom.png similarity index 100% rename from jupyter/courses/Tutorial/img/4traces_aes_clkx1_presample5000_zoom.png rename to jupyter/Lab_Tasks/Tutorial/img/4traces_aes_clkx1_presample5000_zoom.png diff --git a/jupyter/courses/Tutorial/img/4traces_aes_clkx4.png b/jupyter/Lab_Tasks/Tutorial/img/4traces_aes_clkx4.png similarity index 100% rename from jupyter/courses/Tutorial/img/4traces_aes_clkx4.png rename to jupyter/Lab_Tasks/Tutorial/img/4traces_aes_clkx4.png diff --git a/jupyter/courses/Tutorial/img/4traces_aes_poortrigger.png b/jupyter/Lab_Tasks/Tutorial/img/4traces_aes_poortrigger.png similarity index 100% rename from jupyter/courses/Tutorial/img/4traces_aes_poortrigger.png rename to jupyter/Lab_Tasks/Tutorial/img/4traces_aes_poortrigger.png diff --git a/jupyter/courses/Tutorial/img/aesinput.png b/jupyter/Lab_Tasks/Tutorial/img/aesinput.png similarity index 100% rename from jupyter/courses/Tutorial/img/aesinput.png rename to jupyter/Lab_Tasks/Tutorial/img/aesinput.png diff --git a/jupyter/courses/Tutorial/img/dpa-doublepeak.png b/jupyter/Lab_Tasks/Tutorial/img/dpa-doublepeak.png similarity index 100% rename from jupyter/courses/Tutorial/img/dpa-doublepeak.png rename to jupyter/Lab_Tasks/Tutorial/img/dpa-doublepeak.png diff --git a/jupyter/courses/Tutorial/img/dpa_peakexample.png b/jupyter/Lab_Tasks/Tutorial/img/dpa_peakexample.png similarity index 100% rename from jupyter/courses/Tutorial/img/dpa_peakexample.png rename to jupyter/Lab_Tasks/Tutorial/img/dpa_peakexample.png diff --git a/jupyter/courses/Tutorial/img/shunt_chipwhisperer.png b/jupyter/Lab_Tasks/Tutorial/img/shunt_chipwhisperer.png similarity index 100% rename from jupyter/courses/Tutorial/img/shunt_chipwhisperer.png rename to jupyter/Lab_Tasks/Tutorial/img/shunt_chipwhisperer.png diff --git a/jupyter/courses/Tutorial/img/spa_password_diffexample.png b/jupyter/Lab_Tasks/Tutorial/img/spa_password_diffexample.png similarity index 100% rename from jupyter/courses/Tutorial/img/spa_password_diffexample.png rename to jupyter/Lab_Tasks/Tutorial/img/spa_password_diffexample.png diff --git a/jupyter/courses/Tutorial/img/spa_password_h_vs_0_overview.png b/jupyter/Lab_Tasks/Tutorial/img/spa_password_h_vs_0_overview.png similarity index 100% rename from jupyter/courses/Tutorial/img/spa_password_h_vs_0_overview.png rename to jupyter/Lab_Tasks/Tutorial/img/spa_password_h_vs_0_overview.png diff --git a/jupyter/courses/Tutorial/img/spa_password_h_vs_0_zoomed.png b/jupyter/Lab_Tasks/Tutorial/img/spa_password_h_vs_0_zoomed.png similarity index 100% rename from jupyter/courses/Tutorial/img/spa_password_h_vs_0_zoomed.png rename to jupyter/Lab_Tasks/Tutorial/img/spa_password_h_vs_0_zoomed.png diff --git a/jupyter/courses/Tutorial/img/spa_password_list_char1.png b/jupyter/Lab_Tasks/Tutorial/img/spa_password_list_char1.png similarity index 100% rename from jupyter/courses/Tutorial/img/spa_password_list_char1.png rename to jupyter/Lab_Tasks/Tutorial/img/spa_password_list_char1.png diff --git a/jupyter/courses/Tutorial/img/traces_wrong.png b/jupyter/Lab_Tasks/Tutorial/img/traces_wrong.png similarity index 100% rename from jupyter/courses/Tutorial/img/traces_wrong.png rename to jupyter/Lab_Tasks/Tutorial/img/traces_wrong.png diff --git a/jupyter/courses/Tutorial/img/uart_triggers.png b/jupyter/Lab_Tasks/Tutorial/img/uart_triggers.png similarity index 100% rename from jupyter/courses/Tutorial/img/uart_triggers.png rename to jupyter/Lab_Tasks/Tutorial/img/uart_triggers.png