Недавно я прочитал запись в блоге Джеффа, озаглавленную Скоростное хеширование , где среди прочего он упоминает, что можно очень быстро хэшировать, используя мощь своего графического процессора.
Мне интересно, можно ли использовать мощь графического процессора для хэширования в Python (md5, sha-1 и т. д.)?
Мне это интересно, потому что я пытаюсь понять, как быстро я могу-перебором форсировать вещи, (не из реального мира, из старых просочившихся дампов данных).
В данный момент я занимаюсь чем-то подобным (упрощенный пример):
from itertools import product
from hashlib import md5
hashes = ["some","hashes"]
chars = []
for i in range(97,123): # a-z only
chars.append(chr(i))
for i in range(1,6): # all combos of a-z, 1-5 chars
for c in product(chars,repeat=i):
s = ''.join(c)
if md5(s).hexdigest() in hashes:
print "Found",s
Но мне интересно, есть ли способ ускорить это с помощью графического процессора? Я предполагаю, что мне понадобится модуль, который будет последовательно генерировать хэши, подобные этому -. Кто-нибудь знает о таком?