hash160(x) a.k.a. ripemd160(sha256(x))
#1
HowTo?

I'm new to hashcat, so forgive my ignorance as I have not yet been able to find out if/how you could combine the raw hashes offered.

Hash Misch
#2
I'm not sure what you mean by this. Could you rephrase?
~
#3
Hmm...

Well - I see hashcat has SHA-256 raw hash and I see hashcat has also the RipeMD160 raw hash.

So my question was if I can somehow combine this to a ripemd160(sha256(x)) and basically for a large list of different x's check for a known result.

Hash Misch
#4
There is no way to combine hashes that I know of. It would be a very interesting and useful feature, but it might be difficult to implement.
~
#5
(11-24-2016, 11:39 PM)royce Wrote: There is no way to combine hashes that I know of.

Oh...

The aforementioned hash160 is part of the Bitcoin (and probably others) address generation process.

I was under the impression hashcat would offer some formalism of how to construct hashes from the "primitives" (raw hashes) it offers. Ideally it could be template given via CLI, like --pipeline "f1(f2(x) . f3(x))" or something like that.

I have no experience with OpenCL, so I cannot estimate how hard this would be to implement, but the combinatorial power of this is beyond doubt - so it might be worth it.

A pitty, I thought hashcat has this already. OK. Thanks for your clarification.


Hash Misch
#6
Such an implementation wouldn't be hard to write, but slow in execution. But there's no reason to implement a slow solution, because if there's a faster alternative everyone would use the faster alternative.

If you think having a slow solution is better than no solution, then why not write it in you favourite language running on CPU. I think the answer is because it wouldn't run on GPU. So it turns out it's the performance you're looking for. Now you're in a loop my first argument.

A simple way to get out of this loop is by writing a specialized version of your hash. That's what we do in hashcat. Read this: https://hashcat.net/wiki/doku.php?id=fre...plish_this
#7
(11-27-2016, 02:21 PM)atom Wrote: Such an implementation wouldn't be hard to write, but slow in execution. 
...
Now you're in a loop my first argument. 

Only if I accepted the claim about slow execution.
In a world, where OpenCL programs are compiled at runtime, I fail to see why an assembled processing pipeline in the source code should be slow in execution.

But never mind, I started to write my specialized code anyway.


Hash Misch
#8
Cool, please do not forget to contribute afterwards