-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
(documentation) Robustness against hardware acceleration #5
Comments
Hello @carbeer and thank you for your question. The delay function f() used by our VDF involves an inherently sequential computation that requires many 64-bit (or 128-bit) arithmetic operations. 64-bit multipliers are built into the hardware on most CPUs, and these CPUs run at great speed. Regarding ASIC, since 64-bit multipliers are abundantly available on CPUs, the initial bar for an ASIC producer is quite high and costly, as it requires a high-frequency (and costly) ASIC to compete with CPU speed. An ASIC producer might consider a different attack vector, one that does not increase speed but uses a single chip to pack many parallel pipelines, each pipeline computing a separate instance of f(). Such an ASIC would generate many instance pairs (x,y) simultaneously. However, a simple mitigation to this attack vector is to tweak the parameters of the delay function f(). Such changes have minimal effect on the delay time experienced by average Users computing f() on a CPU, because CPUs are efficient general purpose processors. But an optimized ASIC will become obsolete (if it cannot adjust to the new parameters). |
Hello @Yael-Starkware, Regarding ASICs: How would such instance pairs (x,y) look like or, to be more precise, how could they aid in computing the delay function more quickly? |
Hi @carbeer, |
I was wondering whether there is already some documentation on how the robustness against hardware accelerated computations of the VDF is achieved? I stumbled across it in the Medium article and I'd be curious to learn more about it.
Which dimension of speedup do you consider possible for ASICs? I am wondering, because I saw that modular multiplication can be accelerated quite a bit by using ASICs (cf. Simon Peffer's talk), so I was wondering how this relates to the VeeDo protocol?
The text was updated successfully, but these errors were encountered: