Selaa lähdekoodia

md5 fix

master
Roderic Day 4 vuotta sitten
vanhempi
commit
34abb98ca4
1 muutettua tiedostoa jossa 6 lisäystä ja 2 poistoa
  1. +6
    -2
      y2016/p05.py

+ 6
- 2
y2016/p05.py Näytä tiedosto

import itertools
import sys import sys


import toolkit import toolkit
text = sys.stdin.read().strip() text = sys.stdin.read().strip()
password1 = ['_' for _ in range(8)] password1 = ['_' for _ in range(8)]
password2 = ['_' for _ in range(8)] password2 = ['_' for _ in range(8)]
for string, digest in toolkit.md5gen(f'{text}{{i}}', pattern=r'00000.+'):
for i in itertools.count():
digest = toolkit.md5(f'{text}{i}')
if not digest.startswith('00000'):
continue
if '_' in password1: if '_' in password1:
password1[password1.index('_')] = digest[5] password1[password1.index('_')] = digest[5]
if digest[5] in '01234567' and password2[int(digest[5])] == '_': if digest[5] in '01234567' and password2[int(digest[5])] == '_':
password2[int(digest[5])] = digest[6] password2[int(digest[5])] = digest[6]
print(digest, string, ''.join(password1), ''.join(password2))
print(digest, ''.join(password1), ''.join(password2))
if '_' not in password1 + password2: if '_' not in password1 + password2:
break break

Loading…
Peruuta
Tallenna