diff options
author | tomsmeding <tom.smeding@gmail.com> | 2016-12-09 18:42:45 +0100 |
---|---|---|
committer | tomsmeding <tom.smeding@gmail.com> | 2016-12-09 18:42:45 +0100 |
commit | 6a0325b3ab8e4680de8b4786ada721a1e671157c (patch) | |
tree | eb0367379d1e9dc66913f79d646ed7c3c908f9a9 /5b.c |
Initial
Diffstat (limited to '5b.c')
-rw-r--r-- | 5b.c | 33 |
1 files changed, 33 insertions, 0 deletions
@@ -0,0 +1,33 @@ +#include <stdio.h> +#include <stdbool.h> +#include <string.h> +#include <openssl/md5.h> + +int main(void){ + int counter=0; + char inbuf[100]; + unsigned char outbuf[16]; + int prelen; + scanf("%s%n",inbuf,&prelen); + + char passbuf[9]; + strcpy(passbuf,"________"); + fprintf(stderr,"%s",passbuf); + + for(int i=0;i<8;i++){ + while(true){ + int len=prelen+sprintf(inbuf+prelen,"%d",counter); + counter++; + MD5((const unsigned char*)inbuf,len,outbuf); + if(outbuf[0]==0&&outbuf[1]==0&&(outbuf[2]>>4)==0){ + if((outbuf[2]&0xf)<8&&passbuf[outbuf[2]&0xf]=='_'){ + passbuf[outbuf[2]&0xf]="0123456789abcdef"[outbuf[3]>>4]; + fprintf(stderr,"\r%s",passbuf); + break; + } + } + } + } + fputc('\n',stderr); + printf("%s\n",passbuf); +} |