有时会遇到参数加密,然后查看源代码python复现
MD5
import hashlib md5_str = "ZG#)@F01Method。。" # 待加密字符串 md = hashlib.md5() md.update(md5_str.encode(encoding='utf-8')) sign_str = md.hexdigest() print(sign_str)
DES/CBC/PKCS5Padding
当时遇到的加密源代码 python代码
from pyDes import * import binascii str1 = '{"area":"昌平区","cateid":16,"city":"北京市","mobid":"865687021569205","pageindex":3,"pagesize":10,"province":"北京市","source":"6.0.1-Xiaomi MI4C-2.4.6","userid":"0"}' KEY = b'ZG#)@F01' IV = b'ZG#)@F01' k = des(KEY, CBC, IV, pad=None, padmode=PAD_PKCS5) DesEncrypt = k.encrypt(str1) DesEncrypt = binascii.b2a_hex(DesEncrypt).decode('unicode_escape')
DESEDE/ECB/PKCS5Padding 3des解密
当时遇到的解密源码 python代码
from pyDes import * import base64 str3 = '7LWfJbl6NeVhff7aChOuji1dIf24 YEaS7U7r cbcGnaSoIUHd4KM3hTMy8vYBrwgCjTIy2Hhsz5h7E31o70K/1lqm9P0gEtW8NcjNqokp8JtOolMhmkHMEDjDeszdU1st4QdjuQHww7I72QGmyeNxtNJVDIhKiJvYWeDgj29nRU5V 1JcbAkEYgHqbP/TkPSgrlKli4JwfnE99U7cgcPL83kjj69g3coZkOf3MnXcgLODdjp0vP5heIW7VjbshUlqLZ8MBFUhfX2020zfFt8XDyBxLvU3gNs2E2cCs9zbBK28cOyov9q69Z8Kn7jHSRxBVa NWB00sJQAR9gqKAg6DEKEGprrbIwT5zxnEFT0FjfgLuam/mBuzyaB shCmNb7256EhTzHWFCso9UBYgVcVosYnnOUzAMMYnJK/1gFSQ8m8GYU 2ITVPhzEkZJL UeJ34HpxIr6FD1t/xOXTAwNQ4Qd1oevl6plejYhWoyUQtGEiUGOsIUm1kEyBARe1dR403oKCKO/aSPjgqhwKYZphe/xRQRk2FLQUi9QChOV LacpzSw8M5phe/xRQRk2FLQUi9QChOUJCBOjctgx9RmRCw8z5RhlrpHQjV6y9Tf7lIsvpTo0BxJK2fSR8y9Mc2WKiUW2yl85/FNvqvXS YrtQ7rLKQrIostnEKovuVQttzGKkxNPP8BRTYN6VwHkNRwYAvTEu8iHvPT87o9d7TP/YTVYdDEPdVIb0 i84ruLQJN rXQayReIW7VjbshU8ImpV/QHbATtRex5kFwe5qNKNUZdujyydd5wdbuGJEvCOqg3K6VxZ1R1/B i1S4BxXpHe5L434/zTQ91/xLtm0U6CoDAhaz2fhbHJ9qE/7yrzkhQu3/SFwHdPqxVQ7q43hEonzpGevWwrjup8YF0FWLNUzNsbjspJ3wP01YIP Hf18qJbkVpqSSwL66HbvZ6YG/q0REhfOnVieFPiuHyP910a5eoxYj41ErbbYk5rQaEqr/RKOU3X4ls4qqrxR4Y08nj4 I4oehSrAp1C87M8eqwR6/vtQSTHs8BUH0Vd1lfRsZMZn5JpPqFgVaG//Eb1C4vx/PCs3XsqQbBexUV43tomwqDsfBhvRKBEaFeOYdN4jXAR+ignbR1BDBiLJrXMYp1NlcK7ik4k39dYzSIWLE6TpgZ6hNgpsB5HNCVdBshkE8QDUB51Z4JdY3kxEBiY6P1ylYexiITjGWvw+uC2mhOdZuT+MNtOas17aHw1i1ApnCb4BYH5e+zPIWr82B85fL0YqQG04J7WJGEbFlknYRRZWfl4Ahh9zHzN6PBbNA+h0o/h8W40ENKKN/Agu7cnkqvPNobL9na4Jl8CWRhJ7f3LBvsyTPC14IZQx0pN5WSt/rb8zgR8kOTpFvL+6XS0aoHKsqh0qVR8/IDc2yfWl1rmez1s4xquQX+Ab9MTwFOSX4kt5mL3CDtEELldTHe5zUaO+fbjdcMomhZJE9hGATsOZTs03U4QFhyl2GjlgNEpkg5IW3cQkfFA/Q969f4QFhyl2GjlgNEpkg5IW3cYZDA8FuyPqy5I7V5Vt5NbebPBSKredn1M+II8DThudzdw8A1cUQYS8kpeG8afMmP+N0bM8dLvXk1K3IpBHnifb4TujqxU6EkdVSWwNi8dp0z3FDsh5Vkcw+HfXn4+vEXJLV/F1uUeldh5kBgYGXSFgtxqh5cC/pxFZ4JdY3kxEB36sjtDbhv1rjB/rqK97qCQCmf9lp0xG+ehC7rkuc7Fy7xjkY2vy0RNgd+fUQ71ls+L7igGDb/NLKnu1Km6nwrfrNVpYGM3b1FOd1PhhUfF+PVBOn9ud53w7iduTF2SefN+LjFCKraPEhWwK8QgMOB3lcebCrblG/zNosOLUo8PIQvCJFRPXBwlai//IcM8VV/c7HDibCqVqqxzHDZ1m+8NPh51KkX8K8oPA2Ix7buBUdN8Z+pnc1FMvc6ISvMmDkBh92KMfSJwIfHT2w2SmK6rHA+62t0KCyYhuPikOJjsXfYh/mmjGDCxFeGwRQFsghhUmqhjEtUKdkOCxZIiogTTyVa7jUPWER17KkGwXsVFeN7aJsKg7HwYb0SgRGhXjmHTeI1wEfooJ20dQQwYiya1zGKdTZXCu4pOJN/XWM0iFixOk6YGeoTYKbAeRzQlXQbIZBPEA1AedWeCXWN5MRAelbidJmD97nujVwc6AOzZcMqRK3Sp0ZfHGEoXx5KVA9P+qxEjWfUR41Ie4jHCmZlfOXy9GKkBtOCe1iRhGxZZJ2EUWVn5eAIYfcx8zejwWzQPodKP4fFuNBDSijfwILu3J5KrzzaGy/Z2uCZfAlkYSe39ywb7Mkz79qMynI/VdeVkrf62/M4Efv7eTo1Zw3drIY6/lMaB6ClUfPyA3Nsn1pda5ns9bOMarkF/gG/TE8BTkl+JLeZi8xiWQjlBC7OPh0jt57ztg+UQ2hP0u5ADJgE7DmU7NN1OEBYcpdho5YDRKZIOSFt3EJHxQP0PevX+EBYcpdho5YDRKZIOSFt3EiR6MBaUxrGeSO1eVbeTW3d4d64AK2sw7PiCPA04bnc3cPANXFEGEvJKXhvGnzJj/jdGzPHS715NStyKQR54n2+E7o6sVOhJHVUlsDYvHadM9xQ7IeVZHMPh315+PrxFyS1fxdblHpXYeZAYGBl0hYLcaoeXAv6cRWeCXWN5MRAd+rI7Q24b9a+46qyzEl/IkApn/ZadMRvlppGs1TXdQZu8Y5GNr8tETYHfn1EO9ZbPi+4oBg2/zStTU2e9/Qomyuvy/vyEVYLXzylPeuWSxVkiFiLjFu8dSDQajj1/vjItioEoE+92cHg57Vu8UV4tVCs//sOzhM6jRmZyjMt2khtRpyuqC3cqkdXczfbi4EQ92rve65dW6UKNKfVZR3BksHgvPVzH09lwlZ6t45Y/stEEug6RURcamBCdRZmBASD0OX6rkjpjhSKoLE0Y8LVAcwJ1xzwSUwKX7ekouuVde0rIHUvP5+wCPM3MvJFVSVoEgGT6cWaY2FlUtn4UMQRz+87q1PRue7SYaSwJqmyotfX47lpCnpyl8UBLJkgQx9lMpYjj67VFoOhZRwQaSj25esfPajPnvYAilihZUT8mvZYVSHBCf3/z/YVTeaYwIWduBFIsFzYFG+79IJbi3/8cHmSlmQq+qtpzFCZPjti3HHd7Wfzvg7JVg8RUk0JG8dvtcW4OoCugTuzR8SSRDylJSGoyAM0IEhu9lCnRUmOO50OyO9kBpsnjd8F45DenO0s5w/hBiqYdQ3bOZ78NRyRvmE9bqqo+zt5maBb+att/gya8x63X4wSJsk0pdBOD/jk7SgaF/IZ5aIostnEKovuVT1pC+b91XnkWksEhuRki4cOFzbl9Ay4PDrQGwBdTZCZZjwOV5PgnvGzDsSDlGStxADUOEHdaHr5TZGx+LTRgIsI3wDnfpvDqUDUOEHdaHr5TZGx+LTRgIs3+Kj4vbEAPr23wB4ANX4WxEYc/s6CjoXJNZztm+/XtbLymYXJ2oaNAPIbr6FOx4QCXZcGOyLKFTHL05NkjSGUpE8XzoLvKqWo3XU+abtTwLAFocAlJAFV8Rrj4UiA3+Z0Qdp4Yi/vwLfDDJc/7LbDJ2ywwmLlqQmjPAv7cEB6TzYVTeaYwIWdh3aYnYOyCnH2kCgxwmhiwUtfx183JriKo9kbid7JC/ez4gjwNOG53NXBVgxnbQFD4wEB34suvrqSwfWOTYy6o+5pe9DzWyqAmB8uzkZDkP0CHsLgK37AinpH+kxKtSNQ/jtPRWFxxeedbtCospNru+Ka1V8648pnWyMPfxSz1KoCwcK4Rz/B/at4E3onwmXb1+cwRsk8Zu2K/aGF9wf0Zn6KK2Ydgi4Nz+NfxJJPI+8hP7MET6lJUnAPGmaMkA0OyzoCLp7tJFs4L5CbfaaXGQQ5dJIIntdmLIod12W0grKS9DQBaTxIvTbpEBBaT6jwP/B4rOoU//f1WQoC0xqs3/XsqQbBexUV43tomwqDsfBhvRKBEaFeOYdN4jXAR+ignbR1BDBiLJrXMYp1NlcK7ik4k39dYzSIWLE6TpgZ6hNgpsB5HNCVdBshkE8QDUB51Z4JdY3kxEB3iv4/DmHpKafeAUNUEVUF2zxSr/8zg1Co+ihsbpAi1uPsYwuOn/MdDUh7iMcKZmV85fL0YqQG04J7WJGEbFlknYRRZWfl4Ahh9zHzN6PBbNA+h0o/h8W40ENKKN/Agu7cnkqvPNobL9na4Jl8CWRhJ7f3LBvsyTPBXkDLo7OXvRWSt/rb8zgR8kOTpFvL+6XOKG02Fcs9w2VR8/IDc2yfWl1rmez1s4xquQX+Ab9MTwFOSX4kt5mLzGJZCOUELs4wSUxQ/sAtmNXiiHkf847OWATsOZTs03U4QFhyl2GjlgNEpkg5IW3cQkfFA/Q969f4QFhyl2GjlgNEpkg5IW3cSJHowFpTGsZ5I7V5Vt5Nbd3h3rgArazDs+II8DThudzdw8A1cUQYS8kpeG8afMmP+N0bM8dLvXk1K3IpBHnifb4TujqxU6EkdVSWwNi8dp0z3FDsh5Vkcw+HfXn4+vEXJLV/F1uUeldh5kBgYGXSFgtxqh5cC/pxFZ4JdY3kxEBdC6Kz6UiYZSquoMdpmJZCACmf9lp0xG+6NtCy+ttbwC7xjkY2vy0RNgd+fUQ71ls+L7igGDb/NLh9PozKycq/frNVpYGM3b15DpvDHkdEV6PVBOn9ud53w7iduTF2SefN+LjFCKraPEhWwK8QgMOB3lcebCrblG/zNosOLUo8PIQvCJFRPXBwlai//IcM8VV/gEe38EQo22BRigC1nBanPDK6qcsifXyLgTLUtVhFS+2CgrpNf/V90eBknP0Ex5OzPcCMxSa2V1fivK313ZuKX8oAbKtSoWUovmz40zZ8YRIBk+nFmmNhZVLZ+FDEEc/vO6tT0bnu0mGksCapsqLX1+O5aQp6cpfFASyZIEMfZTKWI4+u1RaDoWUcEGko9uXrHz2oz572AIpYoWVE/Jr2WFUhwQn9/8/2FU3mmMCFnbTGhMSliBClKidCObBZHnENEKybWz22GzmmuAkhVyaRKaRDxPYFjxtPEVJNCRvHb5+YbaG0rVpSvF0AO9Ih0L0p1z/ZmEoarJSLDHal58P0+FjcPBDNQuSm6j/afmJrlT9ZfNkSVBQDFzFBD8T1YVAwut/dH7MU+6DA6xt0tZUem6tuktbdMdWxeW8JDsmBueYGz4e/eoErBcg3PjMeR8BDSWwfwh3QnAJCBOjctgx9TXCYfrVhaDNrlHA/E2prC5qhQHHw2+U8jlwnQiVxkp8j0Jzf3yN0/0NnAJ/Aeu/1ZyBm3B9xtoWj0Jzf3yN0/0NnAJ/Aeu/1awJP9h/gFVf5I7V5Vt5NbebPBSKredn1M+II8DThudzdw8A1cUQYS8kpeG8afMmP+N0bM8dLvXk1K3IpBHnifb4TujqxU6EkdVSWwNi8dp0z3FDsh5Vkcw+HfXn4+vEXJLV/F1uUeldh5kBgYGXSFgtxqh5cC/pxFZ4JdY3kxEB8wKGhJLzeDwTBK8zR7xvUQCmf9lp0xG+XwLbxzWv1qq7xjkY2vy0RNgd+fUQ71ls+L7igGDb/NIPK/oZjjOHtUlt0Gcl5mW7FOd1PhhUfF+PVBOn9ud53w7iduTF2SefN+LjFCKraPEhWwK8QgMOB3lcebCrblG/zNosOLUo8PIQvCJFRPXBwlai//IcM8VVkrtNIyV57pzTwh5r+3upCtPh51KkX8K8Dp9Wup079C+1ubwP/aW75ejnDbbHKxevkn5SkC+cv1DGUNxyG6SsI/hSj8cqn7wy3DI30jmabomy3hB2O5AfDDsjvZAabJ43G00lUMiEqIm9hZ4OCPb2dFTlX7UlxsCQRiAeps/9OQ9KCuUqWLgnB+cT31TtyBw8vzeSOPr2DdyhmQ5/cyddyAs4N2OnS8/mhMK3pW/sDai4Ejik0LE18I8I6642QKkChugktNNhuGdkF7l+IUpmDnUdeN1JeL74r1nwqfuMdJHEFVr41YHTSwlABH2CooCDoMQoQamutsjBPnPGcQVPQWN+Au5qb+YG7PJoH6yEKY1vvbnoSFPMdYUKyj1QFiBVrBW28UEGhcf4OQjk+IB7t5DybwZhT7YhmosFU18oZFVR4nfgenEivoUPW3/E5dMDA1DhB3Wh6+XqmV6NiFajJRh5BQySE8FsIg7V9KdkN6aFfWDT/j/9B9pI+OCqHAphmmF7/FFBGTYUtBSL1AKE5X4tpynNLDwzmmF7/FFBGTYUtBSL1AKE5QkIE6Ny2DH1RFP9ZFEdKJo4mRoYDWonS+Mi3BoORioanLL3ZlWPsP+xaBOz/VMgLVDiNc8t4jy5QDcdW9nqu63mnRY4RhEN69pMHuypDVZAGPlXJwf8qgm/v5QpoGXiCF86mzz0Mo+aDfr5Gpt+KLrUbWggXmS2ShTlR4DctB+ogaNTGLKlpNV8gVEiVOI1cNxgwhlEmIhr25AS6+gSs12JFn4CUnFAxRNZdoF3GJciKaQ7kSieTvpKlnG1OniO5UGPZGhewDsgRToKgMCFrPYsyMVlNJA/Owh7C4Ct+wIp6R/pMSrUjUP47T0VhccXnnW7QqLKTa7vimtVfOuPKZ1sjD38Us9SqAsHCuEc/wf2reBN6J8Jl28+n4jCJM/+fCv2hhfcH9GZwW101SQHlP9m2C0hdmyUXd2IU4+G5LaCsPhenU5hUjxBwh8DS3w4pMwGHENCyFNGWAOpn9mOmhuy3hB2O5AfDDsjvZAabJ43G00lUMiEqIlA41W0jjMvG9cW4OoCugTuzR8SSRDylJSGoyAM0IEhu9lCnRUmOO50OyO9kBpsnjd8F45DenO0s2w3yBWcPNGbbOZ78NRyRvlZXLrT4d0DXQaIRI15HXzBa8x63X4wSJtS7XWYc49Y9rSgaF/IZ5aIostnEKovuVT1pC+b91XnkWksEhuRki4cJqcZ2RE/WP3rQGwBdTZCZcYCqd7ClVPozDsSDlGStxADUOEHdaHr5TZGx+LTRgIsI3wDnfpvDqUDUOEHdaHr5TZGx+LTRgIs3+Kj4vbEAPomzWVOujQKKhEYc/s6CjoXehvwZdTzX1PLymYXJ2oaNAPIbr6FOx4QCXZcGOyLKFTHL05NkjSGUpE8XzoLvKqWo3XU+abtTwLAFocAlJAFV8Rrj4UiA3+Z0Qdp4Yi/vwLfDDJc/7LbDJ2ywwmLlqQmjPAv7cEB6TzYVTeaYwIWdgQi8ZCkgoMAO6OunuiQ2oIW61WSXhVlyDTzJKXExeCEz4gjwNOG53NXBVgxnbQFD4wEB34suvrqyrbuQoR+huu5pe9DzWyqApYwu2+IxThECHsLgK37AinpH+kxKtSNQ/jtPRWFxxeedbtCospNru+Ka1V8648pnWyMPfxSz1KoCwcK4Rz/B/at4E3onwmXb6YL37e/xcrQK/aGF9wf0ZnBbXTVJAeU/8iCx0wqsCuyNJdMTmyICdOFruHnDmFQovTkjiZIWRrT8eIwBYxWiE2lZLeKIP6SsrLeEHY7kB8MOyO9kBpsnjcbTSVQyISoiUDjVbSOMy8b1xbg6gK6BO7NHxJJEPKUlIajIAzQgSG72UKdFSY47nQ7I72QGmyeN3wXjkN6c7SzbDfIFZw80Zts5nvw1HJG+VlcutPh3QNdC1dkeLMQh/VrzHrdfjBIm19Qfz8mgDQ2tKBoX8hnloiiy2cQqi+5VPWkL5v3VeeRaSwSG5GSLhwmpxnZET9Y/etAbAF1NkJlZuwQcsx+BhPMOxIOUZK3EANQ4Qd1oevlNkbH4tNGAiwjfAOd+m8OpQNQ4Qd1oevlNkbH4tNGAizf4qPi9sQA+ibNZU66NAoqERhz+zoKOhd6G/Bl1PNfU8vKZhcnaho0A8huvoU7HhAJdlwY7IsoVMcvTk2SNIZSkTxfOgu8qpajddT5pu1PAsAWhwCUkAVXxGuPhSIDf5nRB2nhiL+/At8MMlz/stsMnbLDCYuWpCaM8C/twQHpPNhVN5pjAhZ2BCLxkKSCgwDtCtF6H+XVQxbrVZJeFWXI+ssZQ7Bd4c3PiCPA04bnc1cFWDGdtAUPjAQHfiy6+uoUMHjckrQFF7ml70PNbKoCZaGKZMTmJd4IewuArfsCKekf6TEq1I1D+O09FYXHF551u0Kiyk2u74prVXzrjymdbIw9/FLPUqgLBwrhHP8H9q3gTeifCZdvl0B0UxHEWd8r9oYX3B/RmSINechBgbS8YRJ1UHRsBDhxj0KWIVtFwW+LyI+PlEnvr025DZHofUudpY1qne2yQ8C99Af78T/grHfd4UTiOHfoYnyCOf3ir+pSvSvIrSPbDWSOQHTGqETlMiGtYe9aSWN+Au5qb+YGPoyCo5BHaJLnORuFzGGGIyI2V9lXeG/ACY84s/RAILJM8Gw7tKW/mSnYvpu2uIOKgQa838A1pmEIFwm4ek8T15rijRppMnveAK/WqB+Cwi+V8X6n7LVce0BJ726YxhKM++de6iR3IcA6ThpNendZAYcWt1Ufb6LUOHRrtiZrWR/BbXTVJAeU/+kii+tvwYk4lxZMAkV28DDrFeibEhLOcZhDjb4W1wTYLFXyIGnFTk0UflJ58HhGYjjfcx6WxaDbPN48b0LrMjs0j1R0d2V3nmFtkbTE0AgMxY2ixk6/6o0kOPzTElcQjJE8XzoLvKqWOSzwmZGnXdO2E4ktDa54aWgrXlNZfsGF60BsAXU2QmWgXIjppyayk8w7Eg5RkrcQA1DhB3Wh6+U2Rsfi00YCLCN8A536bw6lA1DhB3Wh6+U2Rsfi00YCLN/io+L2xAD6xJF3A4HB72WukdCNXrL1N/uUiy+lOjQHEkrZ9JHzL0xzZYqJRbbKXzn8U2+q9dL5iu1DusspCsiiy2cQqi+5VC23MYqTE08/wFFNg3pXAeQ1HBgC9MS7yIe89Pzuj13tM/9hNVh0MQ91UhvT6Lziu4tAk36tdBrJhMK3pW/sDahtkKvUuw0noPjr/LZm2mAWQ6314LfwG8g8aeW6I2RBWsI6qDcrpXFnVHX8H6LVLgHFekd7kvjfj5lf71ib74WFRToKgMCFrPbveLJTo6JC8Ah7C4Ct+wIp6R/pMSrUjUP47T0VhccXnnW7QqLKTa7vimtVfOuPKZ1sjD38Us9SqAsHCuEc/wf2reBN6J8Jl29MTZCHmfmzaAvl4wiUVrOR'
KEY = b'app^hbrb:321#@!ewq&^*bnm'
k = triple_des(KEY, ECB, IV=None, pad=None, padmode=PAD_PKCS5)
decode = base64.b64decode(str3)
plain_text = k.decrypt(decode).decode()
print(plain_text)
DESEDE/CBC/PKCS5Padding
当时遇到的源码 python代码
from pyDes import *
import base64
content = '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'
KEY = b'^21cbh#App3des@2601!long'
IV = b'60162049'
k = triple_des(KEY, CBC, IV, pad=None, padmode=PAD_PKCS5)
decode = base64.b64decode(content)
plain_text = k.decrypt(decode).decode('utf-8', errors='ignore')
print(plain_text)
SHA256
当时遇到的源码 python代码
import hashlib
str1 = 'T_GOV&&S_KWZ&&3cb7bde1-7413-41bb-b444-f1a739e73dd4&&&&1650353480234&&35c782a2'
str2 = 'SHA-256'
str3 = ''
sha256 = hashlib.sha256()
bs = bytes(str1, encoding="utf-8")
sha256.update(bs)
print(sha256.hexdigest())
参考链接 SHA256 DES