Protocol

Protocol.Protocol History

Hide minor edits - Show changes to output

October 08, 2012, at 09:13 PM by jtimon - adding blockchain commit
Added line 23:
* [[Protocol/BlockChain Commit Method]] - Extension for transaction atomicity using a proof of work blockchain as the registry.
Added lines 16-17:

JSON messages over HTTP.
July 22, 2012, at 06:54 PM by ryan - split routing off of core 0.6 draft
Changed lines 17-18 from:
* [[Protocol/Protocol06 | Protocol 0.6]] - Draft of Ripple Protocol v0.6.
to:
* [[Protocol/Protocol06 | Protocol 0.6]] - Draft of Ripple core transaction protocol v0.6.
* [[Protocol/Exchange Publishing Routing Method]] - Extension for routing by exchange publishing
.
June 12, 2012, at 01:47 AM by Ryan Fugger -
Added line 19:
* [[Protocol/Bare Commit Method]] - Extension for more decentralized, but not completely atomic commit.
June 11, 2012, at 11:45 PM by Ryan Fugger - v0.6
Added lines 15-19:
!! Ripple Protocol v0.6

* [[Protocol/Protocol06 | Protocol 0.6]] - Draft of Ripple Protocol v0.6.
* [[Protocol/Registry Commit Method]] - Extension for transaction atomicity.

Added lines 21-22:

Custom binary message transport with messages encoded as Protocol Buffers.
Added line 32:
* [[Main/Commit scripts]] - A proposal for substituting registries and enable new features.
Added line 18:
* [[Protocol/Registries | Commit Registries]] - Protocol extension for transaction atomicity
Changed line 30 from:
* [[Distributed Architectures]] - Different ways of organizing a Ripple network.
to:
* [[Main/Distributed Architectures]] - Different ways of organizing a Ripple network.
Changed lines 29-30 from:
* [[SolutionStack]] - All the other bits and pieces that form an overall distributed payments and marketplace product from a user perspective
to:
* [[Solution Stack]] - All the other bits and pieces that form an overall distributed payments and marketplace product from a user perspective
* [[Distributed Architectures]] - Different ways of organizing a Ripple network.
Changed lines 15-22 from:
!! Ripple Protocol v0.5 Draft

This section is meant to build on the older designs below, not discard them.  The goal is to bring them together somehow into a v0.5 design that is promising enough to spend time implementing.

* [[Protocol/Definitions]] - What's a ''node''?
* [[Protocol/Identity]] - How do people and hosts address each other?
* [[Protocol/Knowledge Routing]] - Give each peer enough information to compute routes itself.
* [[Protocol/Messages]] - Description of protocol messages
to:
!! Ripple Protocol v0.5
Added lines 21-24:
* [[Protocol/Definitions]] - What's a ''node''?
* [[Protocol/Identity]] - How do people and hosts address each other?
* [[Protocol/Knowledge Routing]] - Give each peer enough information to compute routes itself.
* [[Protocol/Messages]] - Description of protocol messages
April 09, 2011, at 10:23 PM by 86.141.146.191 -
Added lines 31-32:
* [[SolutionStack]] - All the other bits and pieces that form an overall distributed payments and marketplace product from a user perspective
Added line 23:
* [[Protocol/Protocol05 | Protocol 0.5]] - Draft of Ripple Protocol v0.5.
Changed lines 15-18 from:
!! Ideas for Ripple Protocol v0.5

New improvements inspired by [[http://bitcoin.org | Bitcoin]], in particular the brilliant [[ https://en.bitcoin.it/wiki/Block_chain | block chain ]] method of bringing a group of independent peers to a consensus.  Read more about [[https://en.bitcoin.it/wiki/Category:Technical | Bitcoin's technical elements]]. 

to:
!! Ripple Protocol v0.5 Draft
Added lines 22-25:
* [[Protocol/Messages]] - Description of protocol messages

!! Other Recent Ideas

Changed lines 30-32 from:
* [[Protocol/Messages]] - Description of protocol messages

Thanks to Timón Elviejo for [[https://groups.google.com/forum/#!topic/rippleusers/6sBQXKTluDk | suggesting incorporating ideas from Bitcoin, and sketching how it could work]].
to:
Added line 28:
* [[Protocol/Messages]] - Description of protocol messages
February 25, 2011, at 07:03 PM by Ryan - remove data network page.
Deleted line 22:
* [[Protocol/DataNetwork]] - How do hosts communicate with each other?
Added line 23:
* [[Protocol/DataNetwork]] - How do hosts communicate with each other?
Changed line 21 from:
* [[Protocol/Definitions]] - ''Network'', ''node'', ''peer'', ''client'', ''server'', ''connection'' -- what does it all mean?
to:
* [[Protocol/Definitions]] - What's a ''node''?
Changed lines 21-22 from:
* [[Protocol/Definitions]] - ''Node'', ''peer'', ''client'', ''server'', ''connection'', what does it all mean?
to:
* [[Protocol/Definitions]] - ''Network'', ''node'', ''peer'', ''client'', ''server'', ''connection'' -- what does it all mean?
* [[Protocol/Identity]] - How do people and hosts address each other
?
Added line 21:
* [[Protocol/Definitions]] - ''Node'', ''peer'', ''client'', ''server'', ''connection'', what does it all mean?
Changed line 84 from:
* [[Main/Protocol]]
to:
* [[Protocol/Protocol01]]
Changed line 3 from:
!! Ripple inter Server Protocol
to:
!! Ripple Inter Server Protocol
Changed lines 17-19 from:
New improvements inspired by [[http://bitcoin.org | Bitcoin]], in particular the brilliant [[ https://en.bitcoin.it/wiki/Block_chain | block chain ]] method of bringing a group of independent peers to a consensus.  Read more about [[https://en.bitcoin.it/wiki/Category:Technical | Bitcoin's technical elements]].
to:
New improvements inspired by [[http://bitcoin.org | Bitcoin]], in particular the brilliant [[ https://en.bitcoin.it/wiki/Block_chain | block chain ]] method of bringing a group of independent peers to a consensus.  Read more about [[https://en.bitcoin.it/wiki/Category:Technical | Bitcoin's technical elements]]

This section is meant to build on the older designs below, not discard them.  The goal is to bring them together somehow into a v0.5 design that is promising enough to spend time implementing
.
Deleted line 23:
 to organize transactions with them, as well as use them as proxies in the network
Changed lines 22-24 from:
* [[Protocol/Onion Routing]] - Improve anonymity and privacy by letting endpoints build tunnels to other endpoints, and use them for sending and receiving payments (or building another tunnel through).
to:
* [[Protocol/Tunneling]] - Improve anonymity and privacy with secure communication tunnels to other endpoints.
* [[Protocol/Proxies]] - Proxy transactions through other endpoints, obscuring the true source or destination of transactions
.
 to organize transactions with them, as well as use them as proxies in the network
Changed line 22 from:
* [[Protocol/Proxies]] - Improve anonymity and privacy by proxying transactions through other endpoints
to:
* [[Protocol/Onion Routing]] - Improve anonymity and privacy by letting endpoints build tunnels to other endpoints, and use them for sending and receiving payments (or building another tunnel through).
Changed line 22 from:
* [[Protocol/Onion Routing]] - Improve anonymity and privacy by letting endpoints build tunnels to other endpoints, and use them for sending and receiving payments (or building another tunnel through).
to:
* [[Protocol/Proxies]] - Improve anonymity and privacy by proxying transactions through other endpoints
Changed lines 17-18 from:
New improvements inspired by [[http://bitcoin.org | Bitcoin]], in particular the brilliant [[ https://en.bitcoin.it/wiki/Block_chain | block chain ]] method of bringing a group of independent peers to a consensus, and [[http://freenetproject.org/ | Freenet]].  Read more about [[https://en.bitcoin.it/wiki/Category:Technical | Bitcoin's technical elements]].
to:
New improvements inspired by [[http://bitcoin.org | Bitcoin]], in particular the brilliant [[ https://en.bitcoin.it/wiki/Block_chain | block chain ]] method of bringing a group of independent peers to a consensus.  Read more about [[https://en.bitcoin.it/wiki/Category:Technical | Bitcoin's technical elements]].
Changed lines 22-24 from:
* [[Protocol/Premix Routing]] - Improve anonymity and privacy by letting endpoints build tunnels to other endpoints, and use them for sending and receiving payments (or building another tunnel through).

Thanks to Timón Elviejo for [[https://groups.google.com/forum/#!topic/rippleusers/6sBQXKTluDk | suggesting incorporating ideas from Bitcoin, and sketching how it could work]], and to Matthew Toseland of Freenet.
to:
* [[Protocol/Onion Routing]] - Improve anonymity and privacy by letting endpoints build tunnels to other endpoints, and use them for sending and receiving payments (or building another tunnel through).

Thanks to Timón Elviejo for [[https://groups.google.com/forum/#!topic/rippleusers/6sBQXKTluDk | suggesting incorporating ideas from Bitcoin, and sketching how it could work]].
Changed lines 17-18 from:
New improvements inspired by [[http://bitcoin.org | Bitcoin]], in particular the [[ https://en.bitcoin.it/wiki/Block_chain | block chain ]] method of bringing a group of independent peers to a consensus.  Read more about [[https://en.bitcoin.it/wiki/Category:Technical | Bitcoin's technical elements]].
to:
New improvements inspired by [[http://bitcoin.org | Bitcoin]], in particular the brilliant [[ https://en.bitcoin.it/wiki/Block_chain | block chain ]] method of bringing a group of independent peers to a consensus, and [[http://freenetproject.org/ | Freenet]].  Read more about [[https://en.bitcoin.it/wiki/Category:Technical | Bitcoin's technical elements]].
Changed line 24 from:
Thanks to Timón Elviejo for [[https://groups.google.com/forum/#!topic/rippleusers/6sBQXKTluDk | suggesting this direction, and sketching how it could work]].
to:
Thanks to Timón Elviejo for [[https://groups.google.com/forum/#!topic/rippleusers/6sBQXKTluDk | suggesting incorporating ideas from Bitcoin, and sketching how it could work]], and to Matthew Toseland of Freenet.
Changed line 21 from:
* [[Protocol/Building Cells By Block Chain]] - Improve privacy and scalability by letting well-connected groups of peer endpoints self-organize into cells which are then abstracted away from the greater network.
to:
* [[Protocol/Building Cells By Block Chain]] - Improve privacy and scalability by letting well-connected groups of peer endpoints self-organize into cells whose internal connections are then abstracted away from the greater network.
Added lines 23-24:

Thanks to Timón Elviejo for [[https://groups.google.com/forum/#!topic/rippleusers/6sBQXKTluDk | suggesting this direction, and sketching how it could work]].
February 18, 2011, at 07:01 PM by Ryan - Ideas for Protocol v0.5
Added lines 12-29:

Discussions and designs for a protocol by which independent Ripple servers could communicate to route payments between them.

!! Ideas for Ripple Protocol v0.5

New improvements inspired by [[http://bitcoin.org | Bitcoin]], in particular the [[ https://en.bitcoin.it/wiki/Block_chain | block chain ]] method of bringing a group of independent peers to a consensus.  Read more about [[https://en.bitcoin.it/wiki/Category:Technical | Bitcoin's technical elements]].

* [[Protocol/Knowledge Routing]] - Give each peer enough information to compute routes itself.
* [[Protocol/Commit Block Chain]] - Improve transaction atomicity by creating a block chain of commit messages.
* [[Protocol/Building Cells By Block Chain]] - Improve privacy and scalability by letting well-connected groups of peer endpoints self-organize into cells which are then abstracted away from the greater network.
* [[Protocol/Premix Routing]] - Improve anonymity and privacy by letting endpoints build tunnels to other endpoints, and use them for sending and receiving payments (or building another tunnel through).

------------------

! Older Stuff

!! Animation

Deleted lines 30-31:

Older discussions and designs for a protocol by which independent Ripple servers could communicate to route payments between them.
February 17, 2011, at 06:00 PM by Romualdo Grillo -
Added line 13:
February 17, 2011, at 05:59 PM by Romualdo Grillo -
Deleted line 0:
You can find an animation of a basic transaction [[http://docs.google.com/uc?id=0B8dIhu2cdQwsMWE4NzAwYjAtOWM3Ni00ZDZjLWFmYzEtMmJlNmIwYmFhY2Vh&export=download&hl=en|here]] ( .odp open office presentation)
Changed line 12 from:
to:
You can find an animation of a basic transaction [[http://docs.google.com/uc?id=0B8dIhu2cdQwsMWE4NzAwYjAtOWM3Ni00ZDZjLWFmYzEtMmJlNmIwYmFhY2Vh&export=download&hl=en|here]] ( .odp open office presentation)
February 17, 2011, at 05:58 PM by Romualdo Grillo -
Added line 1:
You can find an animation of a basic transaction [[http://docs.google.com/uc?id=0B8dIhu2cdQwsMWE4NzAwYjAtOWM3Ni00ZDZjLWFmYzEtMmJlNmIwYmFhY2Vh&export=download&hl=en|here]] ( .odp open office presentation)
February 15, 2011, at 10:24 AM by Romualdo Grillo -
Changed line 8 from:
[[Implementation/Components|See how this components fits in the system]]
to:
[[Implementation/Components|See how this component fits in the system]]
February 10, 2011, at 10:50 AM by Romualdo Grillo -
Changed line 7 from:
%thumb% Attach:Implementation/GreenInterface.png"Ripple inter server protocol"
to:
%thumb% Attach:GreenInterface.png"Ripple inter server protocol"
February 10, 2011, at 10:46 AM by Romualdo Grillo -
Changed line 7 from:
%thumb% Attach:Implementation/GreenLink2.png"Ripple inter server protocol"
to:
%thumb% Attach:Implementation/GreenInterface.png"Ripple inter server protocol"
February 08, 2011, at 03:18 PM by Romualdo Grillo -
Changed line 7 from:
%thumb% Attach:Main/GreenLink1.png"Ripple inter server protocol"
to:
%thumb% Attach:Implementation/GreenLink2.png"Ripple inter server protocol"
February 08, 2011, at 12:34 PM by Romualdo Grillo - Added header
Added lines 1-10:
(:table border=1 width=100% align=center cellspacing=0 :)
(:cellnr align=center :)
!! Ripple inter Server Protocol
Allows interaction between nodes distributed on many servers.
(:cellnr align=center :)

%thumb% Attach:Main/GreenLink1.png"Ripple inter server protocol"
[[Implementation/Components|See how this components fits in the system]]
(:tableend:)

Changed line 15 from:
* [[https://lists.sourceforge.net/lists/listinfo/ripple-protocol | Protocol Design mailing list archive]]
to:
* [[https://lists.sourceforge.net/lists/listinfo/ripple-protocol | Protocol mailing list archive]]
Added line 14:
Added line 14:
* [[https://lists.sourceforge.net/lists/listinfo/ripple-protocol | Protocol Design mailing list archive]]
Changed lines 1-2 from:
= Ripple Protocol Design Technical Documents =
to:
! Ripple Protocol Design Technical Documents
Changed lines 5-6 from:
== Discussions ==
to:
!! Discussions
Changed lines 15-16 from:
== Designs ==
to:
!! Designs
Changed lines 19-20 from:
=== Ripple Protocol v0.4 ===
to:
!!! Ripple Protocol v0.4
Changed lines 27-28 from:
=== Ripple Protocol v0.3 ===
to:
!!! Ripple Protocol v0.3
Changed lines 37-38 from:
=== Ripple Protocol v0.2 ===
to:
!!! Ripple Protocol v0.2
Changed lines 48-49 from:
=== Ripple Protocol v0.1 ===
to:
!!! Ripple Protocol v0.1
Changed lines 1-2 from:
! Ripple Protocol Design Technical Documents
to:
= Ripple Protocol Design Technical Documents =
Changed lines 5-16 from:
!! Discussions

*
[[Main/Design Considerations]]
* [[Main/Advertisements]]
* [[Main/Grouped Link-State Routing]]
* [[Main/Cell Structure Routing]]
* [[Main/Reputation]]
* [[Main/Account Creation]]
* [[Main/Interest]] [deprecated]

!!
Designs
to:
== Discussions ==

*
[[Protocol/Design Considerations]]
* [[Protocol/Advertisements]]
* [[Protocol/Grouped Link-State Routing]]
* [[Protocol/Cell Structure Routing]]
* [[Protocol/Reputation]]
* [[Protocol/Account Creation]]
* [[Main/Interest]]

==
Designs ==
Changed lines 19-20 from:
!!! Ripple Protocol v0.4
to:
=== Ripple Protocol v0.4 ===
Changed lines 27-28 from:
!!! Ripple Protocol v0.3
to:
=== Ripple Protocol v0.3 ===
Changed lines 37-38 from:
!!! Ripple Protocol v0.2
to:
=== Ripple Protocol v0.2 ===
Changed lines 48-49 from:
!!! Ripple Protocol v0.1
to:
=== Ripple Protocol v0.1 ===
Changed lines 1-2 from:
= Ripple Protocol Design Technical Documents =
to:
! Ripple Protocol Design Technical Documents
Changed lines 5-6 from:
== Discussions ==
to:
!! Discussions
Changed lines 15-16 from:
== Designs ==
to:
!! Designs
Changed lines 19-20 from:
=== Ripple Protocol v0.4 ===
to:
!!! Ripple Protocol v0.4
Changed lines 27-28 from:
=== Ripple Protocol v0.3 ===
to:
!!! Ripple Protocol v0.3
Changed lines 37-38 from:
=== Ripple Protocol v0.2 ===
to:
!!! Ripple Protocol v0.2
Changed lines 48-49 from:
=== Ripple Protocol v0.1 ===
to:
!!! Ripple Protocol v0.1
Added lines 1-50:
= Ripple Protocol Design Technical Documents =

Older discussions and designs for a protocol by which independent Ripple servers could communicate to route payments between them.

== Discussions ==

* [[Main/Design Considerations]]
* [[Main/Advertisements]]
* [[Main/Grouped Link-State Routing]]
* [[Main/Cell Structure Routing]]
* [[Main/Reputation]]
* [[Main/Account Creation]]
* [[Main/Interest]] [deprecated]

== Designs ==

These are meant to be refined during the process of building a reference implementation.

=== Ripple Protocol v0.4 ===

* [[Protocol/Core]]
* [[Protocol/Payment]]
* [[Protocol/Account]]
* [[Protocol/Routing]]
* [[Protocol/Channel]]

=== Ripple Protocol v0.3 ===

* [[Protocol/Introduction]]
* [[Protocol/PaymentProtocol]]
* [[Protocol/RoutingExtension]]
* [[Protocol/ChannelExtension]]
* [[Protocol/AccountExtension]]
* [[Protocol/SCTP Binding]]
* [[Protocol/TCP Binding]]

=== Ripple Protocol v0.2 ===

* [[Protocol/Network Structure]]
* [[Protocol/Host-Level Messages]]
* [[Protocol/Accounts]]
* [[Protocol/Initializing Payment]]
* [[Protocol/Path Discovery]]
* [[Protocol/Payment Transaction]]
* [[Protocol/Routing]]
* [[Protocol/XMPP Binding]]

=== Ripple Protocol v0.1 ===

* [[Main/Protocol]]