{"version":9,"randomSeed":"ba74e3ca2e8299d05b5604a225351739","graph":{"viewport":{"xmin":-10,"ymin":-7.500000000000007,"xmax":10,"ymax":7.499999999999993}},"expressions":{"list":[{"type":"text","id":"57","text":"secret"},{"type":"expression","id":"15","color":"#000000","latex":"p=89","slider":{"hardMin":true,"hardMax":true,"min":"2","max":"1000","step":"1"}},{"type":"expression","id":"16","color":"#c74440","latex":"q=107","slider":{"hardMin":true,"hardMax":true,"min":"2","max":"1000","step":"1"}},{"type":"text","id":"59","text":"public"},{"type":"expression","id":"21","color":"#c74440","latex":"E=3","slider":{"hardMax":true,"max":"1000","step":"1"}},{"type":"expression","id":"17","color":"#2d70b3","latex":"n=pq"},{"type":"text","id":"63","text":"secret"},{"type":"expression","id":"72","color":"#388c46","latex":"L=\\left(p-1\\right)\\left(q-1\\right)"},{"type":"expression","id":"73","color":"#6042a6","latex":"d=\\operatorname{sort}\\left(\\left[1...\\left(L-1\\right)\\right],\\operatorname{mod}\\left(\\left[1...\\left(L-1\\right)\\right]E,L\\right)\\right)\\left[1\\right]"},{"type":"expression","id":"27","color":"#2d70b3","latex":"m=35","slider":{"hardMin":true,"hardMax":true,"min":"1","max":"1000","step":"1"}},{"type":"folder","id":"40","title":"iterated modular squaring","collapsed":true},{"type":"expression","id":"37","folderId":"40","color":"#2d70b3","latex":"S_{0}\\left(a,N\\right)=\\operatorname{mod}\\left(a,N\\right)"},{"type":"expression","id":"38","folderId":"40","color":"#388c46","latex":"S_{1}\\left(a,N\\right)=\\operatorname{mod}\\left(S_{0}\\left(a,N\\right)^{2},N\\right)"},{"type":"expression","id":"41","folderId":"40","color":"#000000","latex":"S_{2}\\left(a,N\\right)=\\operatorname{mod}\\left(S_{1}\\left(a,N\\right)^{2},N\\right)"},{"type":"expression","id":"42","folderId":"40","color":"#c74440","latex":"S_{3}\\left(a,N\\right)=\\operatorname{mod}\\left(S_{2}\\left(a,N\\right)^{2},N\\right)"},{"type":"expression","id":"43","folderId":"40","color":"#2d70b3","latex":"S_{4}\\left(a,N\\right)=\\operatorname{mod}\\left(S_{3}\\left(a,N\\right)^{2},N\\right)"},{"type":"expression","id":"44","folderId":"40","color":"#388c46","latex":"S_{5}\\left(a,N\\right)=\\operatorname{mod}\\left(S_{4}\\left(a,N\\right)^{2},N\\right)"},{"type":"expression","id":"49","folderId":"40","color":"#388c46","latex":"S_{6}\\left(a,N\\right)=\\operatorname{mod}\\left(S_{5}\\left(a,N\\right)^{2},N\\right)"},{"type":"expression","id":"50","folderId":"40","color":"#6042a6","latex":"S_{7}\\left(a,N\\right)=\\operatorname{mod}\\left(S_{6}\\left(a,N\\right)^{2},N\\right)"},{"type":"expression","id":"51","folderId":"40","color":"#000000","latex":"S_{8}\\left(a,N\\right)=\\operatorname{mod}\\left(S_{7}\\left(a,N\\right)^{2},N\\right)"},{"type":"expression","id":"52","folderId":"40","color":"#c74440","latex":"S_{9}\\left(a,N\\right)=\\operatorname{mod}\\left(S_{8}\\left(a,N\\right)^{2},N\\right)"},{"type":"expression","id":"47","folderId":"40","color":"#c74440","latex":"S\\left(a,N\\right)=\\left[S_{0}\\left(a,N\\right),S_{1}\\left(a,N\\right),S_{2}\\left(a,N\\right),S_{3}\\left(a,N\\right),S_{4}\\left(a,N\\right),S_{5}\\left(a,N\\right),S_{6}\\left(a,N\\right),S_{7}\\left(a,N\\right),S_{8}\\left(a,N\\right),S_{9}\\left(a,N\\right)\\right]"},{"type":"expression","id":"45","color":"#6042a6","latex":"B\\left(a,b\\right)=\\operatorname{mod}\\left(\\operatorname{floor}\\left(\\frac{a}{2^{b}}\\right),2\\right)"},{"type":"text","id":"76","text":"aggressively factored to prevent loss of precision by overflow"},{"type":"expression","id":"36","color":"#c74440","latex":"P\\left(a,b,N\\right)=\\operatorname{mod}\\left(\\operatorname{mod}\\left(\\prod_{k=0}^{4}\\left\\{B\\left(b,k\\right)=1:S\\left(a,N\\right)\\left[k+1\\right],1\\right\\},N\\right)\\operatorname{mod}\\left(\\prod_{k=5}^{9}\\left\\{B\\left(b,k\\right)=1:S\\left(a,N\\right)\\left[k+1\\right],1\\right\\},N\\right),N\\right)"},{"type":"text","id":"66","text":"public"},{"type":"expression","id":"29","color":"#6042a6","latex":"c=P\\left(m,E,n\\right)"},{"type":"text","id":"69","text":"recipient decryption"},{"type":"expression","id":"55","color":"#6042a6","latex":"P\\left(c,d,n\\right)"}]}}