Guest User

HashIdentify

a guest
Jul 13th, 2013
125
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #!/usr/bin/env python
  2. # encoding: utf-8
  3. # Hash Identifier v1.1
  4. # By Zion3R
  5. # www.Blackploit.com
  6. # Root@Blackploit.com
  7.  
  8. logo='''   #########################################################################
  9.   #     __  __                     __           ______    _____           #
  10.   #    /\ \/\ \                  /\ \        /\__  _\ /\ _ `\        #
  11.   #    \ \ \_\ \    __      ____ \ \ \___     \/_/\ \/  \ \ \/\ \       #
  12.   #     \ \ _  \ /'__`\  / ,__\ \ \ _ `\     \ \ \  \ \ \ \ \      #
  13.   #      \ \ \ \ \/\ \_\ \_/\__, `\ \ \ \ \ \     \_\ \__ \ \ \_\ \     #
  14.   #       \ \_\ \_\ \___ \_\/\____/  \ \_\ \_\    /\_____\ \ \____/      #
  15.   #        \/_/\/_/\/__/\/_/\/___/    \/_/\/_/     \/_____/  \/___/  v1.1 #
  16.   #                                                             By Zion3R #
  17.   #                                                    www.Blackploit.com #
  18.   #                                                   Root@Blackploit.com #
  19.   #########################################################################'''
  20.  
  21. algorithms={"102020":"ADLER-32", "102040":"CRC-32", "102060":"CRC-32B", "101020":"CRC-16", "101040":"CRC-16-CCITT", "104020":"DES(Unix)", "101060":"FCS-16", "103040":"GHash-32-3", "103020":"GHash-32-5", "115060":"GOST R 34.11-94", "109100":"Haval-160", "109200":"Haval-160(HMAC)", "110040":"Haval-192", "110080":"Haval-192(HMAC)", "114040":"Haval-224", "114080":"Haval-224(HMAC)", "115040":"Haval-256", "115140":"Haval-256(HMAC)", "107080":"Lineage II C4", "106025":"Domain Cached Credentials - MD4(MD4(($pass)).(strtolower($username)))", "102080":"XOR-32", "105060":"MD5(Half)", "105040":"MD5(Middle)", "105020":"MySQL", "107040":"MD5(phpBB3)", "107060":"MD5(Unix)", "107020":"MD5(Wordpress)", "108020":"MD5(APR)", "106160":"Haval-128", "106165":"Haval-128(HMAC)", "106060":"MD2", "106120":"MD2(HMAC)", "106040":"MD4", "106100":"MD4(HMAC)", "106020":"MD5", "106080":"MD5(HMAC)", "106140":"MD5(HMAC(Wordpress))", "106029":"NTLM", "106027":"RAdmin v2.x", "106180":"RipeMD-128", "106185":"RipeMD-128(HMAC)", "106200":"SNEFRU-128", "106205":"SNEFRU-128(HMAC)", "106220":"Tiger-128", "106225":"Tiger-128(HMAC)", "106240":"md5($pass.$salt)", "106260":"md5($salt.'-'.md5($pass))", "106280":"md5($salt.$pass)", "106300":"md5($salt.$pass.$salt)", "106320":"md5($salt.$pass.$username)", "106340":"md5($salt.md5($pass))", "106360":"md5($salt.md5($pass).$salt)", "106380":"md5($salt.md5($pass.$salt))", "106400":"md5($salt.md5($salt.$pass))", "106420":"md5($salt.md5(md5($pass).$salt))", "106440":"md5($username.0.$pass)", "106460":"md5($username.LF.$pass)", "106480":"md5($username.md5($pass).$salt)", "106500":"md5(md5($pass))", "106520":"md5(md5($pass).$salt)", "106540":"md5(md5($pass).md5($salt))", "106560":"md5(md5($salt).$pass)", "106580":"md5(md5($salt).md5($pass))", "106600":"md5(md5($username.$pass).$salt)", "106620":"md5(md5(md5($pass)))", "106640":"md5(md5(md5(md5($pass))))", "106660":"md5(md5(md5(md5(md5($pass)))))", "106680":"md5(sha1($pass))", "106700":"md5(sha1(md5($pass)))", "106720":"md5(sha1(md5(sha1($pass))))", "106740":"md5(strtoupper(md5($pass)))", "109040":"MySQL5 - SHA-1(SHA-1($pass))", "109060":"MySQL 160bit - SHA-1(SHA-1($pass))", "109180":"RipeMD-160(HMAC)", "109120":"RipeMD-160", "109020":"SHA-1", "109140":"SHA-1(HMAC)", "109220":"SHA-1(MaNGOS)", "109240":"SHA-1(MaNGOS2)", "109080":"Tiger-160", "109160":"Tiger-160(HMAC)", "109260":"sha1($pass.$salt)", "109280":"sha1($salt.$pass)", "109300":"sha1($salt.md5($pass))", "109320":"sha1($salt.md5($pass).$salt)", "109340":"sha1($salt.sha1($pass))", "109360":"sha1($salt.sha1($salt.sha1($pass)))", "109380":"sha1($username.$pass)", "109400":"sha1($username.$pass.$salt)", "1094202":"sha1(md5($pass))", "109440":"sha1(md5($pass).$salt)", "109460":"sha1(md5(sha1($pass)))", "109480":"sha1(sha1($pass))", "109500":"sha1(sha1($pass).$salt)", "109520":"sha1(sha1($pass).substr($pass,0,3))", "109540":"sha1(sha1($salt.$pass))", "109560":"sha1(sha1(sha1($pass)))", "109580":"sha1(strtolower($username).$pass)", "110020":"Tiger-192", "110060":"Tiger-192(HMAC)", "112020":"md5($pass.$salt) - Joomla", "113020":"SHA-1(Django)", "114020":"SHA-224", "114060":"SHA-224(HMAC)", "115080":"RipeMD-256", "115160":"RipeMD-256(HMAC)", "115100":"SNEFRU-256", "115180":"SNEFRU-256(HMAC)", "115200":"SHA-256(md5($pass))", "115220":"SHA-256(sha1($pass))", "115020":"SHA-256", "115120":"SHA-256(HMAC)", "116020":"md5($pass.$salt) - Joomla", "116040":"SAM - (LM_hash:NT_hash)", "117020":"SHA-256(Django)", "118020":"RipeMD-320", "118040":"RipeMD-320(HMAC)", "119020":"SHA-384", "119040":"SHA-384(HMAC)", "120020":"SHA-256", "121020":"SHA-384(Django)", "122020":"SHA-512", "122060":"SHA-512(HMAC)", "122040":"Whirlpool", "122080":"Whirlpool(HMAC)"}
  22.  
  23. # hash.islower()  minusculas
  24. # hash.isdigit()  numerico
  25. # hash.isalpha()  letras
  26. # hash.isalnum()  alfanumerico
  27.  
  28. def CRC16():
  29.     hs='4607'
  30.     if len(hash)==len(hs) and hash.isalpha()==False and hash.isalnum()==True:
  31.         jerar.append("101020")
  32. def CRC16CCITT():
  33.     hs='3d08'
  34.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  35.         jerar.append("101040")
  36. def FCS16():
  37.     hs='0e5b'
  38.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  39.         jerar.append("101060")
  40.  
  41. def CRC32():
  42.     hs='b33fd057'
  43.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  44.         jerar.append("102040")
  45. def ADLER32():
  46.     hs='0607cb42'
  47.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  48.         jerar.append("102020")
  49. def CRC32B():
  50.     hs='b764a0d9'
  51.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  52.         jerar.append("102060")
  53. def XOR32():
  54.     hs='0000003f'
  55.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  56.         jerar.append("102080")
  57.  
  58. def GHash323():
  59.     hs='80000000'
  60.     if len(hash)==len(hs) and hash.isdigit()==True and hash.isalpha()==False and hash.isalnum()==True:
  61.         jerar.append("103040")
  62. def GHash325():
  63.     hs='85318985'
  64.     if len(hash)==len(hs) and hash.isdigit()==True and hash.isalpha()==False and hash.isalnum()==True:
  65.         jerar.append("103020")
  66.  
  67. def DESUnix():
  68.     hs='ZiY8YtDKXJwYQ'
  69.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False:
  70.         jerar.append("104020")
  71.  
  72. def MD5Half():
  73.     hs='ae11fd697ec92c7c'
  74.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  75.         jerar.append("105060")
  76. def MD5Middle():
  77.     hs='7ec92c7c98de3fac'
  78.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  79.         jerar.append("105040")
  80. def MySQL():
  81.     hs='63cea4673fd25f46'
  82.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  83.         jerar.append("105020")
  84.  
  85. def DomainCachedCredentials():
  86.     hs='f42005ec1afe77967cbc83dce1b4d714'
  87.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  88.         jerar.append("106025")
  89. def Haval128():
  90.     hs='d6e3ec49aa0f138a619f27609022df10'
  91.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  92.         jerar.append("106160")
  93. def Haval128HMAC():
  94.     hs='3ce8b0ffd75bc240fc7d967729cd6637'
  95.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  96.         jerar.append("106165")
  97. def MD2():
  98.     hs='08bbef4754d98806c373f2cd7d9a43c4'
  99.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  100.         jerar.append("106060")
  101. def MD2HMAC():
  102.     hs='4b61b72ead2b0eb0fa3b8a56556a6dca'
  103.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  104.         jerar.append("106120")
  105. def MD4():
  106.     hs='a2acde400e61410e79dacbdfc3413151'
  107.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  108.         jerar.append("106040")
  109. def MD4HMAC():
  110.     hs='6be20b66f2211fe937294c1c95d1cd4f'
  111.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  112.         jerar.append("106100")
  113. def MD5():
  114.     hs='ae11fd697ec92c7c98de3fac23aba525'
  115.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  116.         jerar.append("106020")
  117. def MD5HMAC():
  118.     hs='d57e43d2c7e397bf788f66541d6fdef9'
  119.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  120.         jerar.append("106080")
  121. def MD5HMACWordpress():
  122.     hs='3f47886719268dfa83468630948228f6'
  123.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  124.         jerar.append("106140")
  125. def NTLM():
  126.     hs='cc348bace876ea440a28ddaeb9fd3550'
  127.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  128.         jerar.append("106029")
  129. def RAdminv2x():
  130.     hs='baea31c728cbf0cd548476aa687add4b'
  131.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  132.         jerar.append("106027")
  133. def RipeMD128():
  134.     hs='4985351cd74aff0abc5a75a0c8a54115'
  135.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  136.         jerar.append("106180")
  137. def RipeMD128HMAC():
  138.     hs='ae1995b931cf4cbcf1ac6fbf1a83d1d3'
  139.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  140.         jerar.append("106185")
  141. def SNEFRU128():
  142.     hs='4fb58702b617ac4f7ca87ec77b93da8a'
  143.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  144.         jerar.append("106200")
  145. def SNEFRU128HMAC():
  146.     hs='59b2b9dcc7a9a7d089cecf1b83520350'
  147.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  148.         jerar.append("106205")
  149. def Tiger128():
  150.     hs='c086184486ec6388ff81ec9f23528727'
  151.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  152.         jerar.append("106220")
  153. def Tiger128HMAC():
  154.     hs='c87032009e7c4b2ea27eb6f99723454b'
  155.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  156.         jerar.append("106225")
  157. def md5passsalt():
  158.     hs='5634cc3b922578434d6e9342ff5913f7'
  159.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  160.         jerar.append("106240")
  161. def md5saltmd5pass():
  162.     hs='245c5763b95ba42d4b02d44bbcd916f1'
  163.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  164.         jerar.append("106260")
  165. def md5saltpass():
  166.     hs='22cc5ce1a1ef747cd3fa06106c148dfa'
  167.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  168.         jerar.append("106280")
  169. def md5saltpasssalt():
  170.     hs='469e9cdcaff745460595a7a386c4db0c'
  171.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  172.         jerar.append("106300")
  173. def md5saltpassusername():
  174.     hs='9ae20f88189f6e3a62711608ddb6f5fd'
  175.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  176.         jerar.append("106320")
  177. def md5saltmd5pass():
  178.     hs='aca2a052962b2564027ee62933d2382f'
  179.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  180.         jerar.append("106340")
  181. def md5saltmd5passsalt():
  182.     hs='de0237dc03a8efdf6552fbe7788b2fdd'
  183.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  184.         jerar.append("106360")
  185. def md5saltmd5passsalt():
  186.     hs='5b8b12ca69d3e7b2a3e2308e7bef3e6f'
  187.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  188.         jerar.append("106380")
  189. def md5saltmd5saltpass():
  190.     hs='d8f3b3f004d387086aae24326b575b23'
  191.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  192.         jerar.append("106400")
  193. def md5saltmd5md5passsalt():
  194.     hs='81f181454e23319779b03d74d062b1a2'
  195.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  196.         jerar.append("106420")
  197. def md5username0pass():
  198.     hs='e44a60f8f2106492ae16581c91edb3ba'
  199.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  200.         jerar.append("106440")
  201. def md5usernameLFpass():
  202.     hs='654741780db415732eaee12b1b909119'
  203.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  204.         jerar.append("106460")
  205. def md5usernamemd5passsalt():
  206.     hs='954ac5505fd1843bbb97d1b2cda0b98f'
  207.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  208.         jerar.append("106480")
  209. def md5md5pass():
  210.     hs='a96103d267d024583d5565436e52dfb3'
  211.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  212.         jerar.append("106500")
  213. def md5md5passsalt():
  214.     hs='5848c73c2482d3c2c7b6af134ed8dd89'
  215.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  216.         jerar.append("106520")
  217. def md5md5passmd5salt():
  218.     hs='8dc71ef37197b2edba02d48c30217b32'
  219.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  220.         jerar.append("106540")
  221. def md5md5saltpass():
  222.     hs='9032fabd905e273b9ceb1e124631bd67'
  223.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  224.         jerar.append("106560")
  225. def md5md5saltmd5pass():
  226.     hs='8966f37dbb4aca377a71a9d3d09cd1ac'
  227.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  228.         jerar.append("106580")
  229. def md5md5usernamepasssalt():
  230.     hs='4319a3befce729b34c3105dbc29d0c40'
  231.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  232.         jerar.append("106600")
  233. def md5md5md5pass():
  234.     hs='ea086739755920e732d0f4d8c1b6ad8d'
  235.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  236.         jerar.append("106620")
  237. def md5md5md5md5pass():
  238.     hs='02528c1f2ed8ac7d83fe76f3cf1c133f'
  239.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  240.         jerar.append("106640")
  241. def md5md5md5md5md5pass():
  242.     hs='4548d2c062933dff53928fd4ae427fc0'
  243.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  244.         jerar.append("106660")
  245. def md5sha1pass():
  246.     hs='cb4ebaaedfd536d965c452d9569a6b1e'
  247.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  248.         jerar.append("106680")
  249. def md5sha1md5pass():
  250.     hs='099b8a59795e07c334a696a10c0ebce0'
  251.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  252.         jerar.append("106700")
  253. def md5sha1md5sha1pass():
  254.     hs='06e4af76833da7cc138d90602ef80070'
  255.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  256.         jerar.append("106720")
  257. def md5strtouppermd5pass():
  258.     hs='519de146f1a658ab5e5e2aa9b7d2eec8'
  259.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  260.         jerar.append("106740")
  261.  
  262. def LineageIIC4():
  263.     hs='0x49a57f66bd3d5ba6abda5579c264a0e4'
  264.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True and hash[0:2].find('0x')==0:
  265.         jerar.append("107080")
  266. def MD5phpBB3():
  267.     hs='$H$9kyOtE8CDqMJ44yfn9PFz2E.L2oVzL1'
  268.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:3].find('$H$')==0:
  269.         jerar.append("107040")
  270. def MD5Unix():
  271.     hs='$1$cTuJH0Ju$1J8rI.mJReeMvpKUZbSlY/'
  272.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:3].find('$1$')==0:
  273.         jerar.append("107060")
  274. def MD5Wordpress():
  275.     hs='$P$BiTOhOj3ukMgCci2juN0HRbCdDRqeh.'
  276.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:3].find('$P$')==0:
  277.         jerar.append("107020")
  278.  
  279. def MD5APR():
  280.     hs='$apr1$qAUKoKlG$3LuCncByN76eLxZAh/Ldr1'
  281.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash[0:4].find('$apr')==0:
  282.         jerar.append("108020")
  283.  
  284. def Haval160():
  285.     hs='a106e921284dd69dad06192a4411ec32fce83dbb'
  286.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  287.         jerar.append("109100")
  288. def Haval160HMAC():
  289.     hs='29206f83edc1d6c3f680ff11276ec20642881243'
  290.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  291.         jerar.append("109200")
  292. def MySQL5():
  293.     hs='9bb2fb57063821c762cc009f7584ddae9da431ff'
  294.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  295.         jerar.append("109040")
  296. def MySQL160bit():
  297.     hs='*2470c0c06dee42fd1618bb99005adca2ec9d1e19'
  298.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:1].find('*')==0:
  299.         jerar.append("109060")
  300. def RipeMD160():
  301.     hs='dc65552812c66997ea7320ddfb51f5625d74721b'
  302.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  303.         jerar.append("109120")
  304. def RipeMD160HMAC():
  305.     hs='ca28af47653b4f21e96c1235984cb50229331359'
  306.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  307.         jerar.append("109180")
  308. def SHA1():
  309.     hs='4a1d4dbc1e193ec3ab2e9213876ceb8f4db72333'
  310.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  311.         jerar.append("109020")
  312. def SHA1HMAC():
  313.     hs='6f5daac3fee96ba1382a09b1ba326ca73dccf9e7'
  314.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  315.         jerar.append("109140")
  316. def SHA1MaNGOS():
  317.     hs='a2c0cdb6d1ebd1b9f85c6e25e0f8732e88f02f96'
  318.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  319.         jerar.append("109220")
  320. def SHA1MaNGOS2():
  321.     hs='644a29679136e09d0bd99dfd9e8c5be84108b5fd'
  322.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  323.         jerar.append("109240")
  324. def Tiger160():
  325.     hs='c086184486ec6388ff81ec9f235287270429b225'
  326.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  327.         jerar.append("109080")
  328. def Tiger160HMAC():
  329.     hs='6603161719da5e56e1866e4f61f79496334e6a10'
  330.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  331.         jerar.append("109160")
  332. def sha1passsalt():
  333.     hs='f006a1863663c21c541c8d600355abfeeaadb5e4'
  334.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  335.         jerar.append("109260")
  336. def sha1saltpass():
  337.     hs='299c3d65a0dcab1fc38421783d64d0ecf4113448'
  338.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  339.         jerar.append("109280")
  340. def sha1saltmd5pass():
  341.     hs='860465ede0625deebb4fbbedcb0db9dc65faec30'
  342.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  343.         jerar.append("109300")
  344. def sha1saltmd5passsalt():
  345.     hs='6716d047c98c25a9c2cc54ee6134c73e6315a0ff'
  346.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  347.         jerar.append("109320")
  348. def sha1saltsha1pass():
  349.     hs='58714327f9407097c64032a2fd5bff3a260cb85f'
  350.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  351.         jerar.append("109340")
  352. def sha1saltsha1saltsha1pass():
  353.     hs='cc600a2903130c945aa178396910135cc7f93c63'
  354.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  355.         jerar.append("109360")
  356. def sha1usernamepass():
  357.     hs='3de3d8093bf04b8eb5f595bc2da3f37358522c9f'
  358.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  359.         jerar.append("109380")
  360. def sha1usernamepasssalt():
  361.     hs='00025111b3c4d0ac1635558ce2393f77e94770c5'
  362.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  363.         jerar.append("109400")
  364. def sha1md5pass():
  365.     hs='fa960056c0dea57de94776d3759fb555a15cae87'
  366.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  367.         jerar.append("1094202")
  368. def sha1md5passsalt():
  369.     hs='1dad2b71432d83312e61d25aeb627593295bcc9a'
  370.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  371.         jerar.append("109440")
  372. def sha1md5sha1pass():
  373.     hs='8bceaeed74c17571c15cdb9494e992db3c263695'
  374.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  375.         jerar.append("109460")
  376. def sha1sha1pass():
  377.     hs='3109b810188fcde0900f9907d2ebcaa10277d10e'
  378.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  379.         jerar.append("109480")
  380. def sha1sha1passsalt():
  381.     hs='780d43fa11693b61875321b6b54905ee488d7760'
  382.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  383.         jerar.append("109500")
  384. def sha1sha1passsubstrpass03():
  385.     hs='5ed6bc680b59c580db4a38df307bd4621759324e'
  386.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  387.         jerar.append("109520")
  388. def sha1sha1saltpass():
  389.     hs='70506bac605485b4143ca114cbd4a3580d76a413'
  390.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  391.         jerar.append("109540")
  392. def sha1sha1sha1pass():
  393.     hs='3328ee2a3b4bf41805bd6aab8e894a992fa91549'
  394.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  395.         jerar.append("109560")
  396. def sha1strtolowerusernamepass():
  397.     hs='79f575543061e158c2da3799f999eb7c95261f07'
  398.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  399.         jerar.append("109580")
  400.  
  401. def Haval192():
  402.     hs='cd3a90a3bebd3fa6b6797eba5dab8441f16a7dfa96c6e641'
  403.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  404.         jerar.append("110040")
  405. def Haval192HMAC():
  406.     hs='39b4d8ecf70534e2fd86bb04a877d01dbf9387e640366029'
  407.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  408.         jerar.append("110080")
  409. def Tiger192():
  410.     hs='c086184486ec6388ff81ec9f235287270429b2253b248a70'
  411.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  412.         jerar.append("110020")
  413. def Tiger192HMAC():
  414.     hs='8e914bb64353d4d29ab680e693272d0bd38023afa3943a41'
  415.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  416.         jerar.append("110060")
  417.  
  418. def MD5passsaltjoomla1():
  419.     hs='35d1c0d69a2df62be2df13b087343dc9:BeKMviAfcXeTPTlX'
  420.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[32:33].find(':')==0:
  421.         jerar.append("112020")
  422.  
  423. def SHA1Django():
  424.     hs='sha1$Zion3R$299c3d65a0dcab1fc38421783d64d0ecf4113448'
  425.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:5].find('sha1$')==0:
  426.         jerar.append("113020")
  427.  
  428. def Haval224():
  429.     hs='f65d3c0ef6c56f4c74ea884815414c24dbf0195635b550f47eac651a'
  430.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  431.         jerar.append("114040")
  432. def Haval224HMAC():
  433.     hs='f10de2518a9f7aed5cf09b455112114d18487f0c894e349c3c76a681'
  434.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  435.         jerar.append("114080")
  436. def SHA224():
  437.     hs='e301f414993d5ec2bd1d780688d37fe41512f8b57f6923d054ef8e59'
  438.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  439.         jerar.append("114020")
  440. def SHA224HMAC():
  441.     hs='c15ff86a859892b5e95cdfd50af17d05268824a6c9caaa54e4bf1514'
  442.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  443.         jerar.append("114060")
  444.  
  445. def SHA256():
  446.     hs='2c740d20dab7f14ec30510a11f8fd78b82bc3a711abe8a993acdb323e78e6d5e'
  447.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  448.         jerar.append("115020")
  449. def SHA256HMAC():
  450.     hs='d3dd251b7668b8b6c12e639c681e88f2c9b81105ef41caccb25fcde7673a1132'
  451.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  452.         jerar.append("115120")
  453. def Haval256():
  454.     hs='7169ecae19a5cd729f6e9574228b8b3c91699175324e6222dec569d4281d4a4a'
  455.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  456.         jerar.append("115040")
  457. def Haval256HMAC():
  458.     hs='6aa856a2cfd349fb4ee781749d2d92a1ba2d38866e337a4a1db907654d4d4d7a'
  459.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  460.         jerar.append("115140")
  461. def GOSTR341194():
  462.     hs='ab709d384cce5fda0793becd3da0cb6a926c86a8f3460efb471adddee1c63793'
  463.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  464.         jerar.append("115060")
  465. def RipeMD256():
  466.     hs='5fcbe06df20ce8ee16e92542e591bdea706fbdc2442aecbf42c223f4461a12af'
  467.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  468.         jerar.append("115080")
  469. def RipeMD256HMAC():
  470.     hs='43227322be1b8d743e004c628e0042184f1288f27c13155412f08beeee0e54bf'
  471.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  472.         jerar.append("115160")
  473. def SNEFRU256():
  474.     hs='3a654de48e8d6b669258b2d33fe6fb179356083eed6ff67e27c5ebfa4d9732bb'
  475.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  476.         jerar.append("115100")
  477. def SNEFRU256HMAC():
  478.     hs='4e9418436e301a488f675c9508a2d518d8f8f99e966136f2dd7e308b194d74f9'
  479.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  480.         jerar.append("115180")
  481. def SHA256md5pass():
  482.     hs='b419557099cfa18a86d1d693e2b3b3e979e7a5aba361d9c4ec585a1a70c7bde4'
  483.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  484.         jerar.append("115200")
  485. def SHA256sha1pass():
  486.     hs='afbed6e0c79338dbfe0000efe6b8e74e3b7121fe73c383ae22f5b505cb39c886'
  487.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  488.         jerar.append("115220")
  489.  
  490. def MD5passsaltjoomla2():
  491.     hs='fb33e01e4f8787dc8beb93dac4107209:fxJUXVjYRafVauT77Cze8XwFrWaeAYB2'
  492.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[32:33].find(':')==0:
  493.         jerar.append("116020")
  494. def SAM():
  495.     hs='4318B176C3D8E3DEAAD3B435B51404EE:B7C899154197E8A2A33121D76A240AB5'
  496.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash.islower()==False and hash[32:33].find(':')==0:
  497.         jerar.append("116040")
  498.  
  499. def SHA256Django():
  500.     hs='sha256$Zion3R$9e1a08aa28a22dfff722fad7517bae68a55444bb5e2f909d340767cec9acf2c3'
  501.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:6].find('sha256')==0:
  502.         jerar.append("117020")
  503.  
  504. def RipeMD320():
  505.     hs='b4f7c8993a389eac4f421b9b3b2bfb3a241d05949324a8dab1286069a18de69aaf5ecc3c2009d8ef'
  506.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  507.         jerar.append("118020")
  508. def RipeMD320HMAC():
  509.     hs='244516688f8ad7dd625836c0d0bfc3a888854f7c0161f01de81351f61e98807dcd55b39ffe5d7a78'
  510.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  511.         jerar.append("118040")
  512.  
  513. def SHA384():
  514.     hs='3b21c44f8d830fa55ee9328a7713c6aad548fe6d7a4a438723a0da67c48c485220081a2fbc3e8c17fd9bd65f8d4b4e6b'
  515.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  516.         jerar.append("119020")
  517. def SHA384HMAC():
  518.     hs='bef0dd791e814d28b4115eb6924a10beb53da47d463171fe8e63f68207521a4171219bb91d0580bca37b0f96fddeeb8b'
  519.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  520.         jerar.append("119040")
  521.  
  522. def SHA256s():
  523.     hs='$6$g4TpUQzk$OmsZBJFwvy6MwZckPvVYfDnwsgktm2CckOlNJGy9HNwHSuHFvywGIuwkJ6Bjn3kKbB6zoyEjIYNMpHWBNxJ6g.'
  524.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:3].find('$6$')==0:
  525.         jerar.append("120020")
  526.  
  527. def SHA384Django():
  528.     hs='sha384$Zion3R$88cfd5bc332a4af9f09aa33a1593f24eddc01de00b84395765193c3887f4deac46dc723ac14ddeb4d3a9b958816b7bba'
  529.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==False and hash[0:6].find('sha384')==0:
  530.         print " [+] SHA-384(Django)"
  531.         jerar.append("121020")
  532.  
  533. def SHA512():
  534.     hs='ea8e6f0935b34e2e6573b89c0856c81b831ef2cadfdee9f44eb9aa0955155ba5e8dd97f85c73f030666846773c91404fb0e12fb38936c56f8cf38a33ac89a24e'
  535.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  536.         jerar.append("122020")
  537. def SHA512HMAC():
  538.     hs='dd0ada8693250b31d9f44f3ec2d4a106003a6ce67eaa92e384b356d1b4ef6d66a818d47c1f3a2c6e8a9a9b9bdbd28d485e06161ccd0f528c8bbb5541c3fef36f'
  539.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  540.         jerar.append("122060")
  541. def Whirlpool():
  542.     hs='76df96157e632410998ad7f823d82930f79a96578acc8ac5ce1bfc34346cf64b4610aefa8a549da3f0c1da36dad314927cebf8ca6f3fcd0649d363c5a370dddb'
  543.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  544.         jerar.append("122040")
  545. def WhirlpoolHMAC():
  546.     hs='77996016cf6111e97d6ad31484bab1bf7de7b7ee64aebbc243e650a75a2f9256cef104e504d3cf29405888fca5a231fcac85d36cd614b1d52fce850b53ddf7f9'
  547.     if len(hash)==len(hs) and hash.isdigit()==False and hash.isalpha()==False and hash.isalnum()==True:
  548.         jerar.append("122080")
  549.  
  550.  
  551. print logo
  552. while True:
  553.     jerar=[]
  554.     print """
  555.   -------------------------------------------------------------------------"""
  556.     hash = raw_input(" HASH: ")
  557.     ADLER32(); CRC16(); CRC16CCITT(); CRC32(); CRC32B(); DESUnix(); DomainCachedCredentials(); FCS16(); GHash323(); GHash325(); GOSTR341194(); Haval128(); Haval128HMAC(); Haval160(); Haval160HMAC(); Haval192(); Haval192HMAC(); Haval224(); Haval224HMAC(); Haval256(); Haval256HMAC(); LineageIIC4(); MD2(); MD2HMAC(); MD4(); MD4HMAC(); MD5(); MD5APR(); MD5HMAC(); MD5HMACWordpress(); MD5phpBB3(); MD5Unix(); MD5Wordpress(); MD5Half(); MD5Middle(); MD5passsaltjoomla1(); MD5passsaltjoomla2(); MySQL(); MySQL5(); MySQL160bit(); NTLM(); RAdminv2x(); RipeMD128(); RipeMD128HMAC(); RipeMD160(); RipeMD160HMAC(); RipeMD256(); RipeMD256HMAC(); RipeMD320(); RipeMD320HMAC(); SAM(); SHA1(); SHA1Django(); SHA1HMAC(); SHA1MaNGOS(); SHA1MaNGOS2(); SHA224(); SHA224HMAC(); SHA256(); SHA256s(); SHA256Django(); SHA256HMAC(); SHA256md5pass(); SHA256sha1pass(); SHA384(); SHA384Django(); SHA384HMAC(); SHA512(); SHA512HMAC(); SNEFRU128(); SNEFRU128HMAC(); SNEFRU256(); SNEFRU256HMAC(); Tiger128(); Tiger128HMAC(); Tiger160(); Tiger160HMAC(); Tiger192(); Tiger192HMAC(); Whirlpool(); WhirlpoolHMAC(); XOR32(); md5passsalt(); md5saltmd5pass(); md5saltpass(); md5saltpasssalt(); md5saltpassusername(); md5saltmd5pass(); md5saltmd5passsalt(); md5saltmd5passsalt(); md5saltmd5saltpass(); md5saltmd5md5passsalt(); md5username0pass(); md5usernameLFpass(); md5usernamemd5passsalt(); md5md5pass(); md5md5passsalt(); md5md5passmd5salt(); md5md5saltpass(); md5md5saltmd5pass(); md5md5usernamepasssalt(); md5md5md5pass(); md5md5md5md5pass(); md5md5md5md5md5pass(); md5sha1pass(); md5sha1md5pass(); md5sha1md5sha1pass(); md5strtouppermd5pass(); sha1passsalt(); sha1saltpass(); sha1saltmd5pass(); sha1saltmd5passsalt(); sha1saltsha1pass(); sha1saltsha1saltsha1pass(); sha1usernamepass(); sha1usernamepasssalt(); sha1md5pass(); sha1md5passsalt(); sha1md5sha1pass(); sha1sha1pass(); sha1sha1passsalt(); sha1sha1passsubstrpass03(); sha1sha1saltpass(); sha1sha1sha1pass(); sha1strtolowerusernamepass()
  558.  
  559.     if len(jerar)==0:
  560.         print ""
  561.         print " Not Found."
  562.     elif len(jerar)>2:
  563.         jerar.sort()
  564.         print ""
  565.         print "Possible Hashs:"
  566.         print "[+] ",algorithms[jerar[0]]
  567.         print "[+] ",algorithms[jerar[1]]
  568.         print ""
  569.         print "Least Possible Hashs:"
  570.         for a in range(int(len(jerar))-2):
  571.             print "[+] ",algorithms[jerar[a+2]]
  572.     else:
  573.         jerar.sort()
  574.         print ""
  575.         print "Possible Hashs:"
  576.         for a in range(len(jerar)):
  577.             print "[+] ",algorithms[jerar[a]]
RAW Paste Data