Bitcoin Forum
May 01, 2024, 01:54:20 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Could virtual synchrony help bitcoin?  (Read 631 times)
distcoin (OP)
Newbie
*
Offline Offline

Activity: 11
Merit: 0


View Profile
June 06, 2014, 04:28:45 AM
 #1

Greetings,


  I was wandering if anyone has looked at using virtual synchrony in bitcoin?
This allows for multiple programs to sent multicast messages to one another with
order guaranteed so that every process receives the message at the same time.

I have been using an excellent message oriented middle-ware for some of my projects at work over the past 10 years called the spread toolkit. There may be others, but this is the one I am familiar with, here is a quick overview:

http://www.spread.org/SpreadOverview.html


Here is an example of the kind of messaging control it provides:

RELIABLE_MESS:
    The message will arrive once at all members of its destination group, it may be arbitrarily, but finitely delayed before arriving, and may arrive out of order with regards to other reliable messages.

FIFO_MESS:
    The message will be reliably delivered once to all members of its destination groups, and it will be ordered with all other FIFO messages from the same source. Nothing is guaranteed about the ordering of FIFO messages from different sources.
   
CAUSAL_MESS:
    These messages have all the properties of FIFO messages and in addition are causally ordered (as defined by Lamport) with regards to all sources.

AGREED_MESS:
    These messages have all the properties of FIFO messages but will be delivered in a causal ordering which will be the same at all recipients, i.e. all the recipients will 'agree' on the order of delivery.

SAFE_MESS:
    These messages have all the properties of AGREED messages, but are not delivered until all daemons have received it and are ready to deliver it to the application. This guarantees that if any one application receives a SAFE message then all the applications in that group will also receive it unless the machine or program crashes.



The library implements a publisher/subscriber model were an application can create
a message group that other applications join. It operates like chat room where each message sent by one application is received by any application joined to the spread group.


I was wandering if such a toolkit would be helpful to bitcoin?




"If you don't want people to know you're a scumbag then don't be a scumbag." -- margaritahuyan
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714571660
Hero Member
*
Offline Offline

Posts: 1714571660

View Profile Personal Message (Offline)

Ignore
1714571660
Reply with quote  #2

1714571660
Report to moderator
1714571660
Hero Member
*
Offline Offline

Posts: 1714571660

View Profile Personal Message (Offline)

Ignore
1714571660
Reply with quote  #2

1714571660
Report to moderator
jonald_fyookball
Legendary
*
Offline Offline

Activity: 1302
Merit: 1004


Core dev leaves me neg feedback #abuse #political


View Profile
June 06, 2014, 06:40:51 PM
 #2

I may be wrong cause I'm not a bitcoin expert but I'll take a stab at this:

I think the answer would be no  bitcoin doesn't need this because all communications
are done over TCP, and bitcoin has it's own special system for distributed data that works
fine.

odolvlobo
Legendary
*
Offline Offline

Activity: 4298
Merit: 3214



View Profile
June 06, 2014, 07:56:25 PM
 #3

 I was wandering if anyone has looked at using virtual synchrony in bitcoin?
This allows for multiple programs to sent multicast messages to one another with
order guaranteed so that every process receives the message at the same time.

I don't think there is currently a use for synchronous or in-order messages. You could be the first to come up with one.

Join an anti-signature campaign: Click ignore on the members of signature campaigns.
PGP Fingerprint: 6B6BC26599EC24EF7E29A405EAF050539D0B2925 Signing address: 13GAVJo8YaAuenj6keiEykwxWUZ7jMoSLt
shorena
Copper Member
Legendary
*
Offline Offline

Activity: 1498
Merit: 1499


No I dont escrow anymore.


View Profile WWW
June 06, 2014, 08:09:58 PM
 #4

-snip-
I don't think there is currently a use for synchronous or in-order messages. You could be the first to come up with one.

Maybe stream a video with your transaction? Wink

I dont know the toolkit but the names... the dev's must have a good sense of humor.

-snip-
RELIABLE_MESS:
-snip-
CAUSAL_MESS:
-snip-
AGREED_MESS:
-snip-
SAFE_MESS:

wouldnt want to mess those up Tongue

Im not really here, its just your imagination.
distcoin (OP)
Newbie
*
Offline Offline

Activity: 11
Merit: 0


View Profile
June 06, 2014, 11:33:14 PM
 #5

I found this from the Bitcoin Weakness wiki:

Quote
Attacker has a lot of computing power

An attacker that controls more than 50% of the network's computing power can, for the time that he is in control, exclude and modify the ordering of transactions. This allows him to:

    Reverse transactions that he sends while he's in control. This has the potential to double-spend transactions that previously had already been seen in the block chain.
    Prevent some or all transactions from gaining any confirmations
    Prevent some or all other miners from mining any valid blocks
https://en.bitcoin.it/wiki/Weaknesses

jonald_fyookball
Legendary
*
Offline Offline

Activity: 1302
Merit: 1004


Core dev leaves me neg feedback #abuse #political


View Profile
June 07, 2014, 02:57:03 AM
 #6

I found this from the Bitcoin Weakness wiki:

Quote
Attacker has a lot of computing power

An attacker that controls more than 50% of the network's computing power can, for the time that he is in control, exclude and modify the ordering of transactions. This allows him to:

    Reverse transactions that he sends while he's in control. This has the potential to double-spend transactions that previously had already been seen in the block chain.
    Prevent some or all transactions from gaining any confirmations
    Prevent some or all other miners from mining any valid blocks
https://en.bitcoin.it/wiki/Weaknesses



Bitcoin is not just a distributed network.  Its nodes also come to consensus by following the protocol rules but without necessarily trusting each other, but there are limitations to that as noted above.  Anyway, I don't think spread can provide this distributed consensus. Can it?

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!