IF YOU WANT TO USE THIS, YOU HAVE TO HOST YOUR OWN BACKEND This project utilizes the Diffie-Heilmann (hope i spelled that right) protocol to securely exchange keys until both parties have the same shared private key. IS THIS SECURE? technically, yeah. the values used in this project are way to small to guarantee full security tho. if someone was to write an efficient algorithm for cracking the encryption, he could probaply be through with all combinations in a few seconds lol. (doesnt mean he could crack it). so if you are going to transfer passwords or similar with this, please use higher prime numbers and higher values for g (as g^(a) % p and g^(b)% p is used fairly often, this will exponentially increase the time it takes to establish the connection) WHAT MAKES THIS SO SPECIAL this protocol is actually fairly simple, the most complex part is the fact that scratch rounds high numbers in math, which is, well, bad for cryptography, as just a slight difference in a singular number would cause everything to break. so i had to write my own engine for math stuff (thanks to @senievol for his great work!), which doesnt round values, is a bit slower tho. wheres the backend? here: https://github.com/JanCantCode/Scratch-Secure-Cloud-Backend/blob/master/SCC.py
thanks to @senievol for his great work with some of the custom math blocks! backend: https://github.com/JanCantCode/Scratch-Secure-Cloud-Backend/blob/master/SCC.py Changelog: nov 6, 2022: first implementation dec 24, 2022: implemented @morveman_test 's faster algorithm for a^b%c which now allows scratch to use actuall big numbers for a^b%c, which is quite great! big thanks to him, check out his project https://scratch.mit.edu/projects/780443622/