Bitcoin Forum
May 09, 2024, 07:30:16 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Is it possible: industry standard API for crypto algorithm to drive off asic  (Read 215 times)
ggbtctalk000 (OP)
Full Member
***
Offline Offline

Activity: 394
Merit: 101


View Profile
July 18, 2018, 11:33:10 PM
 #1

Coin X will use the industry standard API
Specific new algorithm suitable for verification will also use the industry standard API so that algorithm and coin will be a plug-n-play.
Once algorithm is owned by ASIC, the algorithm change will be instant or near-instant.
1715239816
Hero Member
*
Offline Offline

Posts: 1715239816

View Profile Personal Message (Offline)

Ignore
1715239816
Reply with quote  #2

1715239816
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
danda
Full Member
***
Offline Offline

Activity: 201
Merit: 157


View Profile WWW
July 19, 2018, 08:06:26 AM
Merited by suchmoon (7), ABCbits (1)
 #2

Hmm.... well one could certainly write code that does something like:

Code:
    code = fetch_url('http://asicresistantpow.org/algo/lang/mylang')
    eval(code)

But this raises some issues:

  • What if the code can't be fetched?    mitigation: Presumably it would be cached and would not activate until X utc timestamp, specified by algo source
  • asicresistantpow.org is now a huge central point of control.  It can be compromised via coercion, extortion, bribery, insider greed, etc, etc.   mitigation: ??

One thought to avoid the centralization issue but still allow change is to use something like decred which has a built-in governance mechanism for change control.  So if the pow algo were itself hosted on some sort of decred-like decentralized blockchain, that might be a starting point, though what's to prevent gaming by large players...?

It's a hard problem.

mybitprices.info - wallet auditing   |  hd-wallet-derive - derive keys locally |  hd-wallet-addrs - find used addrs
lightning-nodes - list of LN nodes  |  coinparams - params for 300+ alts  |  jsonrpc-cli - cli jsonrpc client
subaddress-derive-xmr - monero offline wallet tool
ggbtctalk000 (OP)
Full Member
***
Offline Offline

Activity: 394
Merit: 101


View Profile
July 19, 2018, 11:49:00 PM
 #3

Hmm.... well one could certainly write code that does something like:

Code:
    code = fetch_url('http://asicresistantpow.org/algo/lang/mylang')
    eval(code)

But this raises some issues:

  • What if the code can't be fetched?    mitigation: Presumably it would be cached and would not activate until X utc timestamp, specified by algo source
  • asicresistantpow.org is now a huge central point of control.  It can be compromised via coercion, extortion, bribery, insider greed, etc, etc.   mitigation: ??

One thought to avoid the centralization issue but still allow change is to use something like decred which has a built-in governance mechanism for change control.  So if the pow algo were itself hosted on some sort of decred-like decentralized blockchain, that might be a starting point, though what's to prevent gaming by large players...?

It's a hard problem.

Not sure if I understood correctly. Whatever body will not be concerned in developing the API only, instead of code library. Remember the word API is Applicatoin programming interface not a body of the code. Basically interface between coin X and algorithm that whoever developing coin X and/or algorithm will have to follow. I admit lot of people will confuse or simply use intercheangably the API and code library.
danda
Full Member
***
Offline Offline

Activity: 201
Merit: 157


View Profile WWW
July 21, 2018, 04:39:03 AM
 #4

You said: "the algorithm change will be instant or near-instant".  That's not really possible in a decentralized system where the code is deployed to many places already unless that code has a built-in mechanism to fetch updates and synchronize when they activate together.   But that mechanism itself becomes a point of centralization.  That's the problem you would need to solve, imho.

mybitprices.info - wallet auditing   |  hd-wallet-derive - derive keys locally |  hd-wallet-addrs - find used addrs
lightning-nodes - list of LN nodes  |  coinparams - params for 300+ alts  |  jsonrpc-cli - cli jsonrpc client
subaddress-derive-xmr - monero offline wallet tool
Kallisteiros
Copper Member
Member
**
Offline Offline

Activity: 85
Merit: 122


View Profile
July 21, 2018, 01:50:13 PM
 #5

You can't do that automatically without involving a centralized third party, that would have the authority to pronounce when it's known that the algorithm has been incorporated into ASICs, and then the power to make all nodes switch algos. You could use social consensus to convince people to fork, but what's the point? Somebody would produce an ASIC with the second algorithm, and the third, and the fourth. How many forks you and your community can tolerate?

It's more productive to concentrate research on how to design ASIC-resistant algorithms overall. Some solutions have been proposed, but it's an arms race, there's always room for improvement.
ggbtctalk000 (OP)
Full Member
***
Offline Offline

Activity: 394
Merit: 101


View Profile
July 23, 2018, 06:57:42 PM
 #6

You can't do that automatically without involving a centralized third party, that would have the authority to pronounce when it's known that the algorithm has been incorporated into ASICs, and then the power to make all nodes switch algos. You could use social consensus to convince people to fork, but what's the point? Somebody would produce an ASIC with the second algorithm, and the third, and the fourth. How many forks you and your community can tolerate?

It's more productive to concentrate research on how to design ASIC-resistant algorithms overall. Some solutions have been proposed, but it's an arms race, there's always room for improvement.

If you are saying to that extent, true absolute pure decentralization is not really possible. For bitcoin there is also centralized aspect of it. Mining is most common example. Also development of crypto coins are highly centralized, it is open source but still there are select few are qualified to contribute.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!