Bitcoin Forum
May 14, 2024, 08:09:43 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: What is most best way to agree on something if all actors are known?  (Read 493 times)
mczarnek (OP)
Hero Member
*****
Offline Offline

Activity: 527
Merit: 502


View Profile
October 27, 2015, 12:30:10 AM
 #1

Let's say that I and my friends want to basically have a mini-version of Bitcoin.  We don't have to rely on Proof of Work because we know who the actors are and we can basically say that they all have equal mining power that is linked to their known public keys (aka wallet addresses).

Is the best way to come to agreement still to build a blockchain?  Assume we aren't that great of friends and can't just trust each other. Or are there better ways for coming to agreement when the miners are known?

Better can be faster or more secure or something else I'm not thinking of.

Note: I'm applying it to a different type of problem but occurs to me that Bitcoiners probably know their techy stuff and it might lead to an interesting conversation.

Thanks!

BitSend ◢◤Clients | Source
www.bitsend.info
█▄
█████▄
████████▄
███████████▄
██████████████
███████████▀
████████▀
█████▀
█▀












Segwit | Core 0.14 | Masternodes
XEVAN | DK3 | Electrum soon
Bitcore - BTX/BTC -Project












BSD -USDT | Bittrex | C.Gather | S.Exchange
Cryptopia | NovaExchange | Livecoin
Litebit.eu | Faucet | Bitsend Airdrop













████
 ████
  ████
   ████
    ████
     ████
      ████
       ████
        ████
       ████
      ████
     ████
    ████
   ████
  ████
 ████
████

████
 ████
  ████
   ████
    ████
     ████
      ████
       ████
        ████
       ████
      ████
     ████
    ████
   ████
  ████
 ████
████
1715674183
Hero Member
*
Offline Offline

Posts: 1715674183

View Profile Personal Message (Offline)

Ignore
1715674183
Reply with quote  #2

1715674183
Report to moderator
Bitcoin addresses contain a checksum, so it is very unlikely that mistyping an address will cause you to lose money.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715674183
Hero Member
*
Offline Offline

Posts: 1715674183

View Profile Personal Message (Offline)

Ignore
1715674183
Reply with quote  #2

1715674183
Report to moderator
gmaxwell
Staff
Legendary
*
Offline Offline

Activity: 4172
Merit: 8420



View Profile WWW
October 27, 2015, 12:37:49 AM
 #2

When all the actors are known the problem you're trying to solve is called "distributed consensus" and there are many fine algorithms for it.
hhanh00
Sr. Member
****
Offline Offline

Activity: 467
Merit: 266


View Profile
October 27, 2015, 01:13:40 AM
 #3

Classic one is Paxos though Raft is easier to understand and proven to be as correct.

tl121
Sr. Member
****
Offline Offline

Activity: 278
Merit: 252


View Profile
October 27, 2015, 02:16:06 AM
 #4

Classic one is Paxos though Raft is easier to understand and proven to be as correct.


Proofs of correctness for distributed algorithms depend critically on the assumptions made about the behavior of the components (nodes and network communications).  If one has mastered the subject matter in sufficient detail to have any hope of building successful implementations, then one will have little trouble following Paxos.  If one hasn't reached this level of mastery,  my suggestion is to do some serious study before charging off and designing any systems that rely on distributed protocols.  (And before that, one should understand how to prove correctness of programs.) It is also advisable to be familiar with the various "impossibility" results for distributed systems, lest one try to invent something that is impossible.

The issues involved are far more subtle than may appear at first glance.



mczarnek (OP)
Hero Member
*****
Offline Offline

Activity: 527
Merit: 502


View Profile
October 27, 2015, 03:30:03 AM
Last edit: October 27, 2015, 03:45:13 AM by mczarnek
 #5

Classic one is Paxos though Raft is easier to understand and proven to be as correct.


Proofs of correctness for distributed algorithms depend critically on the assumptions made about the behavior of the components (nodes and network communications).  If one has mastered the subject matter in sufficient detail to have any hope of building successful implementations, then one will have little trouble following Paxos.  If one hasn't reached this level of mastery,  my suggestion is to do some serious study before charging off and designing any systems that rely on distributed protocols.  (And before that, one should understand how to prove correctness of programs.) It is also advisable to be familiar with the various "impossibility" results for distributed systems, lest one try to invent something that is impossible.

The issues involved are far more subtle than may appear at first glance.



Thank you everyone!

Raft seems reasonably easy and apparently is correct.  Is there a reason not to use that?  Seems to me like it'd be relatively easy to implement.  Because yes, doing research would be great but need to be nimble since it's a startup app.

How resistant is Raft to 51% attack?  I guess a 51% attacker would just try to block or vote for each other as leader?  Anyone know performance?   Seems to me like bandwidth might be an issue if people are agreeing via the internet... which is one reason something blockchain like might be better and I do have a lot of blockchain experience by this point.

Edit: Actually I may want to tweak this a little bit.  If anyone who is an expert in this field would like to discuss my ideas an tweaks that work a little bit better given our known information, I would be willing to pay something, either equity or cash.

BitSend ◢◤Clients | Source
www.bitsend.info
█▄
█████▄
████████▄
███████████▄
██████████████
███████████▀
████████▀
█████▀
█▀












Segwit | Core 0.14 | Masternodes
XEVAN | DK3 | Electrum soon
Bitcore - BTX/BTC -Project












BSD -USDT | Bittrex | C.Gather | S.Exchange
Cryptopia | NovaExchange | Livecoin
Litebit.eu | Faucet | Bitsend Airdrop













████
 ████
  ████
   ████
    ████
     ████
      ████
       ████
        ████
       ████
      ████
     ████
    ████
   ████
  ████
 ████
████

████
 ████
  ████
   ████
    ████
     ████
      ████
       ████
        ████
       ████
      ████
     ████
    ████
   ████
  ████
 ████
████
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!