{"id":67,"date":"2024-03-25T20:25:28","date_gmt":"2024-03-25T20:25:28","guid":{"rendered":"https:\/\/ribaldoneelia.com\/?p=67"},"modified":"2024-11-15T12:35:23","modified_gmt":"2024-11-15T12:35:23","slug":"asymmetric-cryptography","status":"publish","type":"post","link":"https:\/\/ribaldoneelia.com\/index.php\/2024\/03\/25\/asymmetric-cryptography\/","title":{"rendered":"Asymmetric Cryptography"},"content":{"rendered":"\n<p class=\"has-normal-font-size\">The Asymmetric cryptography use two key, one to encrypt message and one to decrypt it. The <em><strong>Public Key<\/strong><\/em> is used to <strong>encrypt <\/strong>the message while the <strong><em>Private Key<\/em><\/strong> to <strong>decrypt<\/strong> the encrypted message. This two keys are generated using RSA cryptosystem, for example using python you can generate the keys in this way:<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"wp-block-group__inner-container\">\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#282c34\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"import rsa\n\npublic_key, private_key = rsa.newkeys(1024)  # 1024 bits\n\nprint(private_key.save_pkcs1(&quot;PEM&quot;))\n&quot;&quot;&quot;The print return something like:\nb'-----BEGIN RSA PRIVATE KEY-----\nMIICYAIBAAKBgQCMmErj1wy8cr0dPffEviqxcWbsGPp+hrLlIxc3P8bOj3q53fWX\n3dm+sp6gOsJl9Ca+qd3uonuci0kvpqhRvAh1yFbFwYulqcNy1niI9v05PHfLOKam\nvcwMViynk9G2xphKCdqA3sexyToDJrDbMBBgntjraxf1eumxweUf9wDHeQIDAQAB\nAoGATMQ63\/zj72GW8QiM6NgM56ZL1E4vODbEJ2jpnDkujEq7cBFJsApqgj11b3el\n\/ZU6MpD9pPcDF47V\/za4CLmOAjbspVZOECciwmxJueNJnBkN8YtiOHhuH1gwLnSi\n13NRGJ+k7tzaqXcfC4XCu5DOCnWupZkVTy6TH4BhgOdYEqECRQCh9nnsu7LizjeX\nWVaAQvRvh6IrJ2D0J4abejsN4F+IXuDmtjvRr7ms0t8TFHpucmhyzuYHgNwhepKe\nc2Bca0NULcCd3wI9AN45xgRffv9GuiIdAD336KKQMhA5E\/6jNQu9a1tMGzCxPIuS\ngLh3FKyrUOZj2aTp7y8IIrSOt6Iv\/mmVpwJFAISiGMTCDUNpRuMdmRXePthaxXX7\ngI1RFQ2b8mJxvSorMJge4ivccPxTj7TLT1vFOz3Rq1S3tQ2BmDJEH8RvXqq\/8P4X\nAjxpnjPK6EhHs6nLhNUUnrrmaHoi0735DECt770Siz1xCwunml2rTo1484NjvJk4\nlCalx8wW3K3SW9UjAYkCRCyrHE6CPXUvNwEfr+XvcF4T9A\/BuxUg8R9DSLy7TbQs\nrvNEwm5defUV7kgHerQdpfezSJ++kIYXl0egFW31wcYYVbIl\n-----END RSA PRIVATE KEY-----'\n&quot;&quot;&quot;\n\nprint(public_key.save_pkcs1(&quot;PEM&quot;))\n&quot;&quot;&quot;\nb'-----BEGIN RSA PUBLIC KEY-----\nMIGJAoGBAIyYSuPXDLxyvR0998S+KrFxZuwY+n6GsuUjFzc\/xs6Pernd9Zfd2b6y\nnqA6wmX0Jr6p3e6ie5yLSS+mqFG8CHXIVsXBi6Wpw3LWeIj2\/Tk8d8s4pqa9zAxW\nLKeT0bbGmEoJ2oDex7HJOgMmsNswEGCe2OtrF\/V66bHB5R\/3AMd5AgMBAAE=\n-----END RSA PUBLIC KEY-----'\n&quot;&quot;&quot;\" style=\"color:#abb2bf;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki one-dark-pro\" style=\"background-color: #282c34\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #C678DD\">import<\/span><span style=\"color: #ABB2BF\"> rsa<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #ABB2BF\">public_key, private_key <\/span><span style=\"color: #56B6C2\">=<\/span><span style=\"color: #ABB2BF\"> rsa.<\/span><span style=\"color: #61AFEF\">newkeys<\/span><span style=\"color: #ABB2BF\">(<\/span><span style=\"color: #D19A66\">1024<\/span><span style=\"color: #ABB2BF\">)  <\/span><span style=\"color: #7F848E; font-style: italic\"># 1024 bits<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #56B6C2\">print<\/span><span style=\"color: #ABB2BF\">(private_key.<\/span><span style=\"color: #61AFEF\">save_pkcs1<\/span><span style=\"color: #ABB2BF\">(<\/span><span style=\"color: #98C379\">&quot;PEM&quot;<\/span><span style=\"color: #ABB2BF\">))<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">&quot;&quot;&quot;The print return something like:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">b&#39;-----BEGIN RSA PRIVATE KEY-----<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">MIICYAIBAAKBgQCMmErj1wy8cr0dPffEviqxcWbsGPp+hrLlIxc3P8bOj3q53fWX<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">3dm+sp6gOsJl9Ca+qd3uonuci0kvpqhRvAh1yFbFwYulqcNy1niI9v05PHfLOKam<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">vcwMViynk9G2xphKCdqA3sexyToDJrDbMBBgntjraxf1eumxweUf9wDHeQIDAQAB<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">AoGATMQ63\/zj72GW8QiM6NgM56ZL1E4vODbEJ2jpnDkujEq7cBFJsApqgj11b3el<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">\/ZU6MpD9pPcDF47V\/za4CLmOAjbspVZOECciwmxJueNJnBkN8YtiOHhuH1gwLnSi<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">13NRGJ+k7tzaqXcfC4XCu5DOCnWupZkVTy6TH4BhgOdYEqECRQCh9nnsu7LizjeX<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">WVaAQvRvh6IrJ2D0J4abejsN4F+IXuDmtjvRr7ms0t8TFHpucmhyzuYHgNwhepKe<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">c2Bca0NULcCd3wI9AN45xgRffv9GuiIdAD336KKQMhA5E\/6jNQu9a1tMGzCxPIuS<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">gLh3FKyrUOZj2aTp7y8IIrSOt6Iv\/mmVpwJFAISiGMTCDUNpRuMdmRXePthaxXX7<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">gI1RFQ2b8mJxvSorMJge4ivccPxTj7TLT1vFOz3Rq1S3tQ2BmDJEH8RvXqq\/8P4X<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">AjxpnjPK6EhHs6nLhNUUnrrmaHoi0735DECt770Siz1xCwunml2rTo1484NjvJk4<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">lCalx8wW3K3SW9UjAYkCRCyrHE6CPXUvNwEfr+XvcF4T9A\/BuxUg8R9DSLy7TbQs<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">rvNEwm5defUV7kgHerQdpfezSJ++kIYXl0egFW31wcYYVbIl<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">-----END RSA PRIVATE KEY-----&#39;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">&quot;&quot;&quot;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #56B6C2\">print<\/span><span style=\"color: #ABB2BF\">(public_key.<\/span><span style=\"color: #61AFEF\">save_pkcs1<\/span><span style=\"color: #ABB2BF\">(<\/span><span style=\"color: #98C379\">&quot;PEM&quot;<\/span><span style=\"color: #ABB2BF\">))<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">&quot;&quot;&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">b&#39;-----BEGIN RSA PUBLIC KEY-----<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">MIGJAoGBAIyYSuPXDLxyvR0998S+KrFxZuwY+n6GsuUjFzc\/xs6Pernd9Zfd2b6y<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">nqA6wmX0Jr6p3e6ie5yLSS+mqFG8CHXIVsXBi6Wpw3LWeIj2\/Tk8d8s4pqa9zAxW<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">LKeT0bbGmEoJ2oDex7HJOgMmsNswEGCe2OtrF\/V66bHB5R\/3AMd5AgMBAAE=<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">-----END RSA PUBLIC KEY-----&#39;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">&quot;&quot;&quot;<\/span><\/span><\/code><\/pre><\/div>\n<\/div><\/div>\n\n\n\n<p class=\"has-normal-font-size\">I love python! Anyway be aware of use rsa package, indeed in the help of the package is written:<\/p>\n\n\n\n<p class=\"has-normal-font-size\"><em>&#8220;WARNING: this implementation does not use compression of the cleartext input to prevent repetitions, or other common security improvements. Use with care.&#8221;<\/em><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Encrypt and Decrypt<\/h3>\n\n\n\n<p class=\"has-normal-font-size\">Suppose to be a spy manager, you have many spies around the world. In order to receive reports from your spy you can share the public key <em><strong>public_key<\/strong><\/em>  in a whatever way (like above).<\/p>\n\n\n\n<p class=\"has-normal-font-size\">So for example James Bond every day check a specific log site where you place the public key, he copy the key and he run these python code:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#282c34\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"jb_report = &quot;&quot;&quot;Hello, I'm James Bond, I've found a suspicious activity here, the destiny of the Humans is in my hands.&quot;&quot;&quot;\njb_report_enc = rsa.encrypt(jb_report.encode(), public_key)\n# jb_report_enc will be:\nb'Lb^?\\xb7\\x1e\\xa0\\xdd\\xf6B\\x06U\\x86?\\xe6\\x84\\x9b\\x1f\\x14J\\xbc\\x94sf\\xa1z\\xc8&quot;\\x05X\\x95c\\xa7p\\xce. \\x7f\\xc5\\x90\\x92\\xfc\\x9ei\\xf6n%\\xe4=S\\x1e\\xae\\xb3Tu\\xba$\\x930\\x92\\xd8=\\xeb\\xf8\\x12\\xac\\xb6\\xe7\\xc81\\x81)\\x8c\\x02U[L&lt;\\xd1\\x03\\xe2\\x90\\x87\\x10\\x8f\\xe7Kh\\xcb?Mn(\\xea\\xadn\\xa9#Q\\xd7@\\xa4\\x95:\\xd8##\\x8eK\\xdem=K\\xc4\\xb8u\\xc3\\x19\\x96A\\x91.r\\xe9\\xa9y\\x08\\x82'\n\" style=\"color:#abb2bf;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki one-dark-pro\" style=\"background-color: #282c34\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ABB2BF\">jb_report <\/span><span style=\"color: #56B6C2\">=<\/span><span style=\"color: #ABB2BF\"> <\/span><span style=\"color: #98C379\">&quot;&quot;&quot;Hello, I&#39;m James Bond, I&#39;ve found a suspicious activity here, the destiny of the Humans is in my hands.&quot;&quot;&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ABB2BF\">jb_report_enc <\/span><span style=\"color: #56B6C2\">=<\/span><span style=\"color: #ABB2BF\"> rsa.<\/span><span style=\"color: #61AFEF\">encrypt<\/span><span style=\"color: #ABB2BF\">(jb_report.<\/span><span style=\"color: #61AFEF\">encode<\/span><span style=\"color: #ABB2BF\">(), public_key)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #7F848E; font-style: italic\"># jb_report_enc will be:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #C678DD\">b<\/span><span style=\"color: #98C379\">&#39;Lb^?<\/span><span style=\"color: #56B6C2\">\\xb7\\x1e\\xa0\\xdd\\xf6<\/span><span style=\"color: #98C379\">B<\/span><span style=\"color: #56B6C2\">\\x06<\/span><span style=\"color: #98C379\">U<\/span><span style=\"color: #56B6C2\">\\x86<\/span><span style=\"color: #98C379\">?<\/span><span style=\"color: #56B6C2\">\\xe6\\x84\\x9b\\x1f\\x14<\/span><span style=\"color: #98C379\">J<\/span><span style=\"color: #56B6C2\">\\xbc\\x94<\/span><span style=\"color: #98C379\">sf<\/span><span style=\"color: #56B6C2\">\\xa1<\/span><span style=\"color: #98C379\">z<\/span><span style=\"color: #56B6C2\">\\xc8<\/span><span style=\"color: #98C379\">&quot;<\/span><span style=\"color: #56B6C2\">\\x05<\/span><span style=\"color: #98C379\">X<\/span><span style=\"color: #56B6C2\">\\x95<\/span><span style=\"color: #98C379\">c<\/span><span style=\"color: #56B6C2\">\\xa7<\/span><span style=\"color: #98C379\">p<\/span><span style=\"color: #56B6C2\">\\xce<\/span><span style=\"color: #98C379\">. <\/span><span style=\"color: #56B6C2\">\\x7f\\xc5\\x90\\x92\\xfc\\x9e<\/span><span style=\"color: #98C379\">i<\/span><span style=\"color: #56B6C2\">\\xf6<\/span><span style=\"color: #98C379\">n%<\/span><span style=\"color: #56B6C2\">\\xe4<\/span><span style=\"color: #98C379\">=S<\/span><span style=\"color: #56B6C2\">\\x1e\\xae\\xb3<\/span><span style=\"color: #98C379\">Tu<\/span><span style=\"color: #56B6C2\">\\xba<\/span><span style=\"color: #98C379\">$<\/span><span style=\"color: #56B6C2\">\\x93<\/span><span style=\"color: #98C379\">0<\/span><span style=\"color: #56B6C2\">\\x92\\xd8<\/span><span style=\"color: #98C379\">=<\/span><span style=\"color: #56B6C2\">\\xeb\\xf8\\x12\\xac\\xb6\\xe7\\xc8<\/span><span style=\"color: #98C379\">1<\/span><span style=\"color: #56B6C2\">\\x81<\/span><span style=\"color: #98C379\">)<\/span><span style=\"color: #56B6C2\">\\x8c\\x02<\/span><span style=\"color: #98C379\">U[L&lt;<\/span><span style=\"color: #56B6C2\">\\xd1\\x03\\xe2\\x90\\x87\\x10\\x8f\\xe7<\/span><span style=\"color: #98C379\">Kh<\/span><span style=\"color: #56B6C2\">\\xcb<\/span><span style=\"color: #98C379\">?Mn(<\/span><span style=\"color: #56B6C2\">\\xea\\xad<\/span><span style=\"color: #98C379\">n<\/span><span style=\"color: #56B6C2\">\\xa9<\/span><span style=\"color: #98C379\">#Q<\/span><span style=\"color: #56B6C2\">\\xd7<\/span><span style=\"color: #98C379\">@<\/span><span style=\"color: #56B6C2\">\\xa4\\x95<\/span><span style=\"color: #98C379\">:<\/span><span style=\"color: #56B6C2\">\\xd8<\/span><span style=\"color: #98C379\">##<\/span><span style=\"color: #56B6C2\">\\x8e<\/span><span style=\"color: #98C379\">K<\/span><span style=\"color: #56B6C2\">\\xde<\/span><span style=\"color: #98C379\">m=K<\/span><span style=\"color: #56B6C2\">\\xc4\\xb8<\/span><span style=\"color: #98C379\">u<\/span><span style=\"color: #56B6C2\">\\xc3\\x19\\x96<\/span><span style=\"color: #98C379\">A<\/span><span style=\"color: #56B6C2\">\\x91<\/span><span style=\"color: #98C379\">.r<\/span><span style=\"color: #56B6C2\">\\xe9\\xa9<\/span><span style=\"color: #98C379\">y<\/span><span style=\"color: #56B6C2\">\\x08\\x82<\/span><span style=\"color: #98C379\">&#39;<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"has-normal-font-size\"> These bytes are the message that James Bond will share in the log site.<\/p>\n\n\n\n<p class=\"has-normal-font-size\">The spy manager received that can decrypt using its own secret key in this way:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#282c34\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"decoded = rsa.decrypt(jb_report_enc, private_key).decode()\n# decoded data will be again:\n&quot;&quot;&quot;Hello, I'm James Bond, I've found a suspicious activity here, the destiny of the Humans is in my hands.&quot;&quot;&quot;\" style=\"color:#abb2bf;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki one-dark-pro\" style=\"background-color: #282c34\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ABB2BF\">decoded <\/span><span style=\"color: #56B6C2\">=<\/span><span style=\"color: #ABB2BF\"> rsa.<\/span><span style=\"color: #61AFEF\">decrypt<\/span><span style=\"color: #ABB2BF\">(jb_report_enc, private_key).<\/span><span style=\"color: #61AFEF\">decode<\/span><span style=\"color: #ABB2BF\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #7F848E; font-style: italic\"># decoded data will be again:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #98C379\">&quot;&quot;&quot;Hello, I&#39;m James Bond, I&#39;ve found a suspicious activity here, the destiny of the Humans is in my hands.&quot;&quot;&quot;<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-layout-1 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<p class=\"has-normal-font-size\">Now you can be the next spy!<\/p>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>The Asymmetric cryptography use two key, one to encrypt message and one to decrypt it. The Public Key is used<\/p>\n<p><a href=\"https:\/\/ribaldoneelia.com\/index.php\/2024\/03\/25\/asymmetric-cryptography\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\">Asymmetric Cryptography<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/ribaldoneelia.com\/index.php\/wp-json\/wp\/v2\/posts\/67"}],"collection":[{"href":"https:\/\/ribaldoneelia.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ribaldoneelia.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ribaldoneelia.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ribaldoneelia.com\/index.php\/wp-json\/wp\/v2\/comments?post=67"}],"version-history":[{"count":8,"href":"https:\/\/ribaldoneelia.com\/index.php\/wp-json\/wp\/v2\/posts\/67\/revisions"}],"predecessor-version":[{"id":76,"href":"https:\/\/ribaldoneelia.com\/index.php\/wp-json\/wp\/v2\/posts\/67\/revisions\/76"}],"wp:attachment":[{"href":"https:\/\/ribaldoneelia.com\/index.php\/wp-json\/wp\/v2\/media?parent=67"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ribaldoneelia.com\/index.php\/wp-json\/wp\/v2\/categories?post=67"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ribaldoneelia.com\/index.php\/wp-json\/wp\/v2\/tags?post=67"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}