1

I want to design a new crypto-currency, with an algorithm which is different from SHA-256 or Scrypt.

But in order to do this, I need to know the hash algorithm which is the hardest to make specialized ASIC's or FPGA's for.

First, is it difficult to make an ASIC for SHA-512? I head that it uses 64-bit operations, so it could be hard to make specialized processors. But does a SHA-512 ASIC already exist?

Second, if SHA-512 is not good, is there another algorithm which CPU's or GPU's are good at, but FPGA/ASIC's are not?

  • Designing an ASIC is a bit like wiring your house. How many "bits" depends on just how much wire you're willing to embed in the walls. As such, 64 bits is nothing at all considering we've created 1024 bit ASICs. The only reason bit width matter for CPUs is that you can't change it once you've bought it. Designing ASICs is basically being able to design your own CPU with your own instructions. You can choose however many bits you want. Granted, once you reach more than 2000 or so bits it gets impractical but 64 bits is nothing. – slebetman Mar 17 '15 at 9:16
6

Second, if SHA-512 is not good, is there another algorithm which CPU's or GPU's are good at, but FPGA/ASIC's are not?

Yes there is. This particular algorithm is called scrypt which is why scrypt is highly recommended as a password hashing algorithm in the first place.

Also, designing a new cryptocurrency. Not a good idea when you don't even have rudimentary knowledge of cryptography.

1

An ASIC is a chip. A CPU is a chip. Whatever a CPU does best, an ASIC can do equally well, by the simple expendient of using that CPU as ASIC...

What you want, specifically, is a hash function for which the best possible ASIC is indeed a CPU -- i.e. a function which will not get a huge boost by spending the hardware budget on ASIC/FPGA instead of basic PC. This is an active, open research area, usually in the context of password hashing, where configurable slowness is an important feature. Scrypt is a recent function of that type, which relies on pseudo-random accesses to a big amount of RAM; this is based on the idea that accessing a lot of RAM in a pseudo-random way is what PC do all day long, and are specially optimized to do.

There is an ongoing open competition for designing new password hashing functions. Candidates, when known (submission deadline is March 31st, 2014), will probably show some new ideas about making a function PC-optimized.

  • To add to this—using the same process technologies that CPUs use would be extremely expensive. CPUs can afford this cost because a huge number of units are produced. Using cheaper process technologies would make an ASIC implementation of a CPU slower. And FPGAs are slower still, because configurability adds significant overheads. – Artelius Oct 7 '18 at 6:01
0

Scrypt coins are coins which were orignially designed to whitstand the pressure from ASICs. Examples are Litecoin and Feathercoin (and more recently conyecoin).

Scrypt is an algorithm which is supposed to be slow on FPGAs and ASICS (some ASICS are actually just built using several FPGA boards) as it uses a lot of memory during hashing. At the moment you will notice that there are no scrypt ASICS yet! I know Alfa Technology has "announced" that they are building one, but it's currently still at drawing board level. Some people on Reddit are even claiming it might be a scam.

In regards to your question about 64 bit processors, it's not hard, it's actually quite simple. SHA-512 suffers from the same problem in regards to ASICs as SHA-256 did. Some people already decided to implement a crypto coin using SHA-3 (which is even FASTER than bitcoin is now).

In my opinion it's going to be a cat and mouse game, people are going to come up with a hashing algorithm and some other people are going to try and make an FPGA effective version of it. They will probably have difficulties at first, but at some point it might succeed actually.

I also agree with Terry's comment:

Also, designing a new cryptocurrency. Not a good idea when you don't even have rudimentary knowledge of cryptography.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.