Bitcoin Forum
May 24, 2024, 05:35:50 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 [18] 19 20 21 22 »
341  Other / Off-topic / FellowTraveler in London, Dec 6-13 on: November 26, 2011, 08:18:01 AM
Hi all,

FYI, I will be in London Dec 6th - 13th.

I'll be busy much of the time, but if anyone wants to arrange a meeting, or slip some polonium in my sushi, that will be your opportunity.

-Fellow Traveler.

342  Bitcoin / Bitcoin Discussion / Re: Using Bitcoin in the new Darknet project? on: November 25, 2011, 02:17:30 AM
May as well be looking at namecoin for it after all they are going to need dns somewhere in that plan so you could kill two birds with the one stone..

Someone already mentioned Namecoin in the thread, I noticed.
343  Bitcoin / Bitcoin Discussion / Using Bitcoin in the new Darknet project? on: November 25, 2011, 01:13:43 AM
Hi all,

I'm sure many of you have heard of the new /r/darknetplan reddit -- since SOPA, the membership has surged past 10,000. Lots of people seem very interested now in creating a new mesh net that cannot be centrally controlled.

I've said for a long time that I believe there is great potential in using digital cash technology to solve issues of resource allocation on mesh networks and anonymous networks.

There is discussion on this thread today of using Bitcoin to accomplish this for the new darknet: http://www.reddit.com/r/darknetplan/comments/mnjwb/digital_cash_is_vital_for_solving_issues_of/

Some people involved in the meshnet discussion seem convinced that their solution is to simply require symmetry between the nodes, but I think Bitcoin is a far more ideal solution.

You guys may find interest in the thread.

-FT
344  Bitcoin / Bitcoin Discussion / Re: Virtual bank notes, 100% backed by bitcoins, enforced by smart contracts. on: November 24, 2011, 09:31:12 AM
As I said, the point is instant transactions and invisible transactions. If you are going to withdraw the BTC immediately it's pretty pointless though. But this proposal makes it possible to recieve a BTC and spend it again instantly, without leaving any trail at all. To track you someone would need access to your banks private database, but the bank doesn't even need to store this info as it only needs to keep track of the current owner of the BTC.
...
But my proposal is not perfect. Ideally I would've liked to find a way to use smart contracts to eliminate the trust issue completely. But this is the best I have managed to come up with, and I certainly think it's way better than current methods of bitcoin banking.

Hi.  As others have mentioned, Open-Transactions might be a good solution. It makes possible:

1) OT enables untraceable / anonymous cash transactions (when using the cash instrument.) There are a variety of other instruments such as cheques, markets, cashier's cheques, basket currencies, etc.

2) Destruction of Account History: OT enables all parties to prove which instruments are valid, as well as which transactions have cleared, without storing the transaction history, but instead by only storing the last signed receipt. (Your "account" and your "balance" are actually just your last signed receipt.)

3) OT servers are not able to forge your transactions or change your balance without your signature.

4) An issuer of any currency can issue on multiple OT servers. If the server disappears, the issuer can reissue their funds onto another server.

5) Soon a solution is coming that will make (4) possible with Bitcoins (through voting pools on the Bitcoin blockchain, made possible by the Bitcoin built-in scripting language.)

6) OT features instant transactions.  (No 10-minute wait.)

7) I have just coded smart contracts (scriptable clauses on OT contracts).  It's not debugged yet, but you can check out the smartcontracts branch on Github if you're curious. It's designed so it's easy to swap in whatever scripting language you prefer.

If you want to read more, there are plenty of materials and articles available here: https://github.com/FellowTraveler/Open-Transactions/wiki


345  Bitcoin / Wallet software / Re: Open-Transactions v0.72b release on: November 24, 2011, 09:12:38 AM
P.S. My latest project, which I will be announcing soon, is a full implementation of smart contracts, agnostic to scripting language, which will allow users to design their own financial instruments by adding scripted clauses to their contracts.  If you are curious to see the progress, look at the github code for OT, there is a "smartcontracts" branch where I have been checking in commits every night (lately.) It's not done yet.

Great!
I proposed to add an scripting language similar to bitcoin's for the decentralized ripple protocol.
I've been thinking lately that a common language that could be useful for other systems would be preferable. I focused on bitcoin and ripple since I don't really understand how OT untraceable cash works yet.
Probably abstracting the scripting language would be better. Maybe a higher level language compilable to different languages (like bitcoin scripts)?
Thank you for your work.

The smart contracts (coming soon) are coded such that it's very easy to swap in different scripting languages. So if you want to play around with that on OT, you will be able to do so.

FYI, the OT untraceable cash works through Chaumian blinding. (Blind signatures.)

So for example, if you want to withdraw, say, 100 clams, then you send a withdrawal request, including a random ID that's been blinded using the 100 clam key (public key) for that mint.

The server doesn't know the ID for the token, since you blinded it (encrypted it) before sending the request.  The server just signs it using the 100 clam (private key) for the clams mint. The server also removes 100 clams from your account.

When you receive the reply, your client software (moneychanger, for example, or any software using the OT API) then UNBLINDS it using the (public key) for the clams mint.

You now have a valid, server-signed 100 clam token.  The server does not know the ID for that token (since it was blinded when the server signed it.)

When the 100 clam token is redeemed (by whoever I paid it to), then server is able to verify that the signature on the token is valid. However, the server is unable to see where the token originally came from, since the server is seeing the ID for the first time.

After redemption, the ID is then stored in a spent-token database in order to prevent anyone from spending it again.

Once the mint expires (they rotate) then you can delete the spent token database for that series, which eliminates any need to store the (growing) spent token database forever. (No one will run a server if they have to store a growing database forever....)

I'm currently using Ben Laurie's Lucre library to do the actual blinding. You can read the white paper here:  http://anoncvs.aldigital.co.uk/lucre/

Someday soon I will also add credlib, since OT is designed to make it easy to add new algorithms.
346  Bitcoin / Wallet software / Re: Open-Transactions v0.72b release on: November 19, 2011, 09:09:06 AM
IMO the thing that is needed for all these things (OT, iWAT, ripple) is to decouple the ISSUER from the OWNERSHIP REGISTRY.  Transfers should not require any contact with the original issuer.  Until this happens these things are not going to take off IMO, because the kind of people who have interesting things to offer are unlikely to be the same set of people capable of running highly-available internet services. The right way to do it is via byzantine quorum as explained by Szabo:

http://webcache.googleusercontent.com/search?q=cache:http://szabo.best.vwh.net/securetitle.html

I should be able to issue certificates to people and then go offline, only to return when the certificate is redeemed back to me.  I shouldn't need to sign every transfer.

FYI, this is accurate for OT.

The issuer sends a signed message to OT, issuing the currency. The issuer can then go offline while users continue transacting the currency without him.

The issuer could issue the same currency on multiple OT servers. It's like Diaspora: each user has their own data, and can switch to any Diaspora seed they wish, and while there are multiple seeds, the users only see a single, giant social web, since the connections to the various seeds are handled behind the scenes. OT is the same way. The OT wallet may redeem one instrument here, and another there, which is intended to be as seamless to the user as possible. (Still a true OT client has yet to be written, since Moneychanger is only a test client, and does not have the GUI flow that a real client will have.)

The end result of any transaction is a signed receipt in the hands of the user, which can be redeemed at the issuer in the event that the OT transaction server disappears, and re-issued onto a new server, if you wish.

Every party (the server, the issuer, and the other users) is able to prove which instruments are valid, and which transactions have closed, as well as his current balance, using only his last signed receipt.

The server cannot forge any of your transactions, or change your balance. (YOU must sign first.)

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

I think the only possible improvement, in terms of decentralized registration of ownership, is to use a blockchain, such as Bitcoin or Namecoin, which I think is the best way to do this.

But in that case, you also lose certain capabilities inherent in OT, such as untraceable cash, and instant finality of settlement.

Therefore I prefer to use Bitcoin / Namecoin as layers, just as OT is just another layer, in a larger overall solution. In fact, Bitcoin will solve very specific problems for OT that are not, so far, solvable in any other way.

-FT

347  Bitcoin / Wallet software / Re: Open-Transactions v0.72b release on: November 19, 2011, 06:34:57 AM
Thread added to my notification list. The work you are doing is awesome: I really believe this is much better than the original release.
When is the first stable release scheduled to be published?

Hi Retired,

Thank you for your kind words. The software is a work-in-progress, and has been a personal project, so I don't really have any schedules or timetables. I work on OT when I can.

I encourage you to fork Moneychanger, or develop a Chrome plugin, or Android app, for OT. There is an endless mountain of work.

A shout-out to da2ce7 who has recently been contributing pull requests to OT and developing related projects:  https://github.com/da2ce7

-Fellow Traveler
P.S. My latest project, which I will be announcing soon, is a full implementation of smart contracts, agnostic to scripting language, which will allow users to design their own financial instruments by adding scripted clauses to their contracts.  If you are curious to see the progress, look at the github code for OT, there is a "smartcontracts" branch where I have been checking in commits every night (lately.) It's not done yet.
348  Bitcoin / Bitcoin Discussion / Re: What's the "first decision from a Central Bank, positive" ? on: November 15, 2011, 10:43:15 AM
Of more immediate interest is, if Bitcoin is deemed to be under quasi-legal status, whether the various thefts would be subject to more active official investigation

"Go on down to the station and I'm sure they'll be happy to take your report."
349  Bitcoin / Bitcoin Discussion / Re: Wallet encryption bug found (IMPORTANT!) on: November 12, 2011, 04:16:30 AM
"Thanks for all your hard work!" is not good enough. IMO, You guys need to figure out an organized way to fund Gavin's work.  

When he says, "It is embarrassing and astonishing that this critical a bug was not caught before the 0.4 release...Getting sufficient testing of code BEFORE it is released has been a chronic problem for this project..."

...That is developer-speak for, "I need better Q/A volunteers or I need funding to pay for them, and it's embarrassing that I even have to say this in the first place when I should be focused on my code right now."

Support your guy.
350  Bitcoin / Bitcoin Discussion / Re: Front Page of Drudge: Vatican Calls For Global Bank on: October 24, 2011, 09:52:12 PM


Jesus Christ throws the moneychangers out of the temple.

...2000 years later, Pope Benedict calls for a global banking cartel.


Fallen, fallen, is Babylon the great,
and is become the habitation of devils,
and the hold of every foul spirit,
and a cage of every unclean and hateful bird.
351  Bitcoin / Wallet software / Re: Open-Transactions v0.72b release on: October 11, 2011, 02:41:56 AM
This forum is for "Technical discussion about Satoshi's Bitcoin client and the Bitcoin network in general. No third-party sites/clients..."

Would Open Transactions discussions be more appropriate in Off-Topic or Alternative Clients ?


Sorry about that, feel free to move the thread to that forum.

352  Bitcoin / Wallet software / Re: Open-Transactions v0.72b release on: October 10, 2011, 08:42:04 PM
Great! Thank you.

Are you considering my "set of orders to be executed atomically" suggestion for markets that would enable OT to be used as an alternative ripple implementation?


1) Absolutely. At some point in the future OT will provide an implementation of Ripple, including atomic ripplepays.

2) However it's a bigger job than you might realize. There needs to be a few classes added. For example, one for managing a Nym's various "creditlines." (The various issuer accounts a Nym will have for each asset type, as well as his own accounts denominated in the creditlines issued by his friends.) The object will be responsible for managing those accounts on behalf of each user, sending credit requests back and forth between the users, etc. There will also need to be a class for managing a Nym's Ripple offers and finding the paths for the Ripplepays. Such a class will probably make use of the existing OT market code, and will perform the atomic transactions that you speak of.

3) Coming ASAP. (I do this stuff in my spare time so it might take a few months Tongue Voting groups probably before Ripple.)
353  Bitcoin / Wallet software / Open-Transactions v0.72b release on: October 10, 2011, 12:24:41 AM

Hi all,

The latest release of Moneychanger / OT supports exchanging in-and-out of basket currencies.

Moneychanger v0.06 GUI:  https://github.com/FellowTraveler/Moneychanger
OT library v0.72b:            https://github.com/FellowTraveler/Open-Transactions/wiki

People might ask, "Didn't OT already do baskets?" Well yes. But now it can do such exchanges inside the GUI itself.
---------------------------------

The markets code is also pretty stable/solid. (Lots of debugging was done in markets for this latest release.)

-FT


354  Bitcoin / Wallet software / Re: libbitcoin on: October 02, 2011, 07:20:30 AM
Congratulations! And great work.


We're getting closer to a high-level interface?

355  Bitcoin / Project Development / Open-Transactions v0.71 release on: September 19, 2011, 10:23:37 AM

Open-Transactions new release: v0.71


Don't miss the OT video walkthru:  http://vimeo.com/28141679
http://vimeo.com/28142096



Bitcoin donations:  1NtTPVVjDsUfDWybS4BwvHpG2pdS9RnYyQ

(A word on donations:  Thank you very much to those of you who have
kicked down a few bucks to support this effort.  Even $100 will pay for
a half-week of my Java coder's time, and those of you who have supported
the effort have helped us to produce the now-functional Market Screen --
shown in video 2 -- as well as the upcoming Basket screen, which we are
debugging now!)



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



In THIS ISSUE:



*** The COMMAND LINE utility has big updates.

*** The data folders have changed   (Now: ~/.ot/client_data and
~/.ot/server_data)

*** The "sudo make install" and "sudo make uninstall" were added.
*** Lots of debugging was done in the core library.

*** NEW POWER: finalReceipt and basketReceipts.
*** finalReceipt and basketReceipt are powerful additions to OT's
receipt system, which bring OT's recurring transactions, basket
currencies, and markets fully into compliance with the doctrine of
"destruction of account history".

*** Finally, thoughts on RIPPLE, which is now theoretically possible
within OT (due to the above changes with finalReceipt and basketReceipt.)



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


Latest code:  https://github.com/FellowTraveler/Open-Transactions
Binaries:  https://github.com/FellowTraveler/Open-Transactions/downloads

(This release covers the core OT server and API only, not the GUI. An
updated release of the Moneychanger GUI is planned for the next week or
two.)


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


Let's go over everything in closer detail:



DATA FOLDERS

-- The default data folders have changed to:   ~/.ot/client_data and
~/.ot/server_data

-- These locations are configurable in ~/.ot/ot_init.cfg

-- There are also the config files: ~/.ot/client.cfg and ~/.ot/server.cfg

-- I'm open to any IDEAS about VALUES that should be configurable in the
various ini files… Thoughts?

-- A fresh copy of the OT sample data is located:
Open-Transactions/ot-sample-data

-- (The cash mint had recently expired for the silver grams, so I
regenerated it.)





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

MAKE INSTALL

-- "sudo make install" has been added. It copies the contents of
ot-sample-data into ~/.ot

-- It also copies transaction.exe (the server) to /usr/local/bin/ot_server

-- It also copies testwallet.exe (command-line utility) to /usr/local/bin/ot

-- "sudo make uninstall" was also provided for your convenience.

-- If you ever want to start over with fresh data, just go to the
Open-Transactions folder and type this:

           sudo make uninstall && make clean && make && sudo make install





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

COMMAND LINE UTILITY

-- Lots of updates were made to the command-line version of OT.

-- After installation, try "ot -?" to see the command-line options.

-- Certain default values are provided in ~/.ot/command-line-ot.opt



For example, you don't have to specify: --server SERVER_ID --mynym
NYM_ID --myacct ACCT_ID with every single command-line run, since
defaults are provided in that file.  This means commands can be used
such as:

ot --balance

ot --withdraw 500

ot --transfer 50 --hisacct RECIPIENT_ID



===> Can't you imagine the above commands as URLs, instead of as
commands at the unix shell?

===> VOLUNTEER WANTED:  create a Google Native Chrome version of OT,
that enables URLs that perform the ABOVE sorts of commands.


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

$   ot -?

For this first rev, here is the command-line output when you type:   ot -?


Server default: 8dlRJnGCjqU5jw7bZaw2AF112UrCZiFfBS9CnJrMWSp
MyAcct default: sSBcoTlTkYY8pPv6vh2KD6mIVrRdIwodgsWDoJzIfpV
MyNym default: T1Q3wZWgeTUoaUvn9m1lzIK5tn5wITlzxzrGNI8qtaV
MyPurse default: lV6acfWoWKB7BcuIXCzvS4aSiqUOjlGgVTyepg1aAsa

OT CLI Usage:

ot  --stat            (Prints the wallet contents)
ot  [-h|-?|--help]    (Prints this help)
The '|' symbol means use --balance or -b, use --withdraw or -w, etc.
The brackets '[]' show required arguments, where default values are
normally expected to be found in:   ~/.ot/command-line-ot.opt
ot  --balance  | -b          [--myacct <acct_id>]   (Display account
balance)
ot  --withdraw | -w <amount> [--myacct <acct_id>]   (Withdraw as CASH)
ot  --transfer | -t <amount> [--myacct <acct_id>] [--hisacct <acct_id>]
ot  --cheque   | -c <amount> [--myacct <acct_id>] [--hisnym  <nym_id> ]
ot  --voucher  | -v <amount> [--myacct <acct_id>] [--hisnym  <nym_id> ]
ot  --depositcheque  [--myacct <acct_id>]   (Deposit a cheque.)
ot  --depositpurse   [--myacct <acct_id>]   (Deposit a cash purse.)
ot  --deposittokens  [--myacct <acct_id>]   (Deposit individual cash
tokens.)
ot  --inbox    | -i  [--myacct <acct_id>]   (Display the inbox.)
ot  --sign     | -s  [--mynym  <nym_id> ]   (Sign a contract.)
ot  --verify         [--mynym  <nym_id> ]   (Verify a signature.)
ot  --purse    | -p   <arguments>           (Display a purse.)
  Arguments:     [--mynym  <nym_id> ] [--mypurse <asset_type_id>]
ot  --refresh  | -r  [--myacct <acct_id>]    (Download account files
from server.)
ot  --refreshnym     [--mynym  <nym_id> ]    (Download nym files from
server.)
ot  --marketoffer    [--mynym  <nym_id> ]    (Place an offer on a market.)
Also, [--server <server_id>] will work with all of the above.

Recurring payments:
ot --proposeplan  <arguments>   (Merchant)
  Arguments: [--mynym  <nym_id> ] [--myacct  <acct_id>]  (continued.)
  Continued: [--hisnym <nym_id> ] [--hisacct <acct_id> ]
ot --confirmplan  <arguments>   (Customer)
ot --activateplan <arguments>   (Customer again)
  Arguments: [--mynym  <nym_id> ] [--myacct  <acct_id>]





MORE soon.



-------

Whenever dealing with IDs at the command-line, specifically My Nym,
MyAccount, My Purse, etc…

** PARTIAL IDs ** are now accepted!  OT will try to find it first as a
complete ID, and if that fails, then it will re-search as a partial ID.
It is still case-sensitive, though.


--------


Most will continue to prefer the OT GUI over a command line utility:
https://github.com/FellowTraveler/Moneychanger


But a command-line is still a valuable tool, so…
** please send me any feedback based on YOUR NEEDS **
so we can shape it into the best tool it can be.



--------


FOR THOSE FASCINATED WITH TRIPLE-ENTRY ACCOUNTING.

(A description of the improvements made to receipts in the latest
release of OT.)

Warning:  boring accounting details below...





-- finalReceipt and basketReceipt are powerful additions to OT's receipt
system, which bring OT's recurring transactions, basket currencies, and
markets fully into compliance with the doctrine of "destruction of
account history".

BACKGROUND (using chequeReceipt as an example):


In order to perform any transaction, the OT client must use a
transaction number. These numbers are signed-for ON EVERY SINGLE RECEIPT
-- until they are closed.

For example, if you write a cheque, #47, then the #47 will appear on
every receipt going into the future, for *every* transaction that you
do, until that transaction #47 is closed.

When will it be closed? When the cheque is cashed, the chequeReceipt #47
will appear in your inbox.  YOU must accept it, before #47 will be
closed -- which removes it from your inbox, AND signs-off on the latest
account balance.

You see, since your balance is CHANGED whenever a cheque you wrote
CLEARS, the server is thus forced to keep a copy of that chequeReceipt
in your inbox, in order to prove the current balance, since that cheque
has your signature on it.  (The current balance, FYI, is your last
signed balance, which the server already has on the most receipt
receipt, minus the amount of the cheque, which also features #47 -- a
valid number -- and YOUR SIGNATURE.)


Once you sign to accept the chequeReceipt, it disappears from your
inbox, the latest balance is signed, and #47 disappears forever from
your list of "Issued Transaction Numbers". (That is, you no longer have
to sign for #47 on any of your future receipts, since #47 is now CLOSED.)


IN SUM: "To perform a transaction, you must burn up one of your
transaction numbers. And you need to sign for those in advance before
you can use them. AND you need to CONTINUE signing, on into the future,
for any transaction number that has been used, UNTIL YOU FINALLY SIGN TO
CLOSE it."


--------


NOW LET'S examine the latest updates to OT:


      FINAL RECEIPT and BASKET RECEIPT


All of the above still holds true; chequeReceipt still operates exactly
the same, as do the receipts for transfers, withdrawals, deposits, etc.
Those are the same.


===> But, for Markets…. (and other recurring transactions...)


-- When Alice places an offer on a market, the server saves a copy of
her signed offer. BUT THIS TIME, *THREE* transaction numbers are
provided instead of one: an opening number, and a closing number for
EACH asset account, of which there are two. (She is buying bushels of
wheat in return for dollars. Therefore she has a WHEAT account and a
DOLLAR account.)


-- As various trades process on the market over time (against her market
offer), marketReceipts will appear in Alice's inbox for her wheat
account, and her inbox for her dollar account. Each marketReceipt
contains a copy of Alice's ORIGINAL market offer, as well as an UPDATED
VERSION (showing the changes to her account balances as a result of each
trade.)

-- Remember that Alice has to sign for these 3 transaction numbers on
ALL of her future receipts, until they are closed out.  Let's say the
numbers are #9, #10, and #11.

-- marketReceipts will continue to appear in Alice's inboxes over time,
which she can remove by signing to accept them. This allows the server
to prove the latest balance for each account (as caused by each trade
and proven by each receipt.) So far, this much is similar to when you
sign for a normal chequeReceipt.


-- But now Alice cannot cancel her market offer!  Because what if new
marketReceipts are popping into her inbox from new trades so quickly,
that she is unable to do a new balance agreement before a new one comes
in? If she cannot sign a proper balance agreement, then she cannot
perform the transaction necessary to cancel the trading (nor can she
close out the numbers from her receipts, and out of her inbox!) She's
trapped.


===> THIS IS WHY there are now THREE transaction numbers for a market
offer (say #9, #10 and #11): Because when the "Cancel Market Offer"
message is sent, it requires no balance agreement at all! Instead, these
actions occur:

1) Transaction #9 is permanently closed, and will not appear on any
future receipts.
2) Transaction #10 appears as a FINAL RECEIPT in Alice's WHEAT inbox (in
reference to #9.)
3) Transaction #11 appears as a FINAL RECEIPT in Alice's DOLLAR inbox
(in reference to #9.)



===> Trans#'s 10 and 11 stay open. (For now.)

===> The finalReceipts in each inbox prove when the offer was officially
closed. (Whether by Alice, or by some other natural expiration. This is
where smart contracts will figure big, in the future.)

===> Alice's "last signed receipt" shows her inbox contents, and the
same receipt no longer shows #9 signed out -- she's not responsible for
#9 anymore. Thus any marketReceipt appearing AFTER would automatically
be INVALID. (No NEW balances changes are permitted, related to #9.)

===> This means that new marketReceipts can never be dumped onto Alice
AFTER she has closed a market offer (or payment plan.)



From there, Alice can accept the various receipts in her inbox at her
LEISURE--the trading has been stopped, no more recurring transactions
can occur, and the finalReceipt proves this.


THE TRICK IS:  #10 and #11 are still open, and they REFER to #9. In
order to finally CLOSE those finalReceipts for #10 and #11, which both
refer to #9 -- OT requires Alice to ALSO close any other marketReceipts
present in those inboxes, that ALSO refer to #9. (That is, the
finalReceipt cannot be removed until those related receipts are also
removed.)


===> This way, OT is guaranteed that all of Alice's WHEAT balance
changes (shown in the marketReceipts in the wheat inbox) will be
signed-for by the client and CLOSED OUT properly before finalReceipt#10
itself is closed out.

===> Similarly, all of Alice's DOLLAR balance changes (shown in the
marketReceipts for her dollar inbox) will also be signed for by the
client and CLOSED OUT properly before finalReceipt #11 itself is finally
closed.

===> Thus, by the time the finalReceipts #10 and #11 are finally closed,
ALL RECEIPTS will have been closed related to this market offer, and all
balances have been agreed, for Alice's wheat account AND her dollar account.



I find this very interesting because it takes the concept of
"Destruction of Account History" as pioneered by Bill St. Clair and
Patrick Chkeroff, and adapts it to recurring transactions such
as market offers and PAYMENT PLANS.



This innovation is unique to OT, as far as I know.



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



The same concept has also now been adapted for OT's BASKET CURRENCIES.



When you exchange into a [dollar/gold/bitcoin] basket, you must actually
supply your dollar account, your gold account, and your bitcoin account,
so that OT can remove the the appropriate amount of dollars, gold, and
bitcoins from those accounts, in order to credit you with the new basket
units during the exchange.

The OT client will now provide **4** transaction numbers in order to
perform the exchange:


#9  The main basket account's basketReceipt
#10 The dollar account's basketReceipt
#11 The gold account's basketReceipt
#12 The bitcoin account's basketReceipt

When the exchange occurs, the client does NOT have to sign any balance
agreements. Instead, a basketReceipt is dropped into EACH INBOX, and the
balance agreements can be signed later, whenever the client wants to
finally close out those receipts.

OTHERWISE, THE CLIENT WOULD HAVE TO PROVIDE a full balance agreement for
every single account, all at once, in order to perform the exchange! The
server would also have to verify all 4 of these balance agreements in
order to process it!


That would be unwieldy. What if there were 10 asset accounts in the
basket, or 50? Must I perform 50 balance agreements in order to do a
single transaction?


INSTEAD, THINGS ARE EASY: a basketReceipt is simply dropped into the
inbox for each constituent account, and the user can close those
receipts later, the same as he would close a chequeReceipt or
transferReceipt, signing the new balance at that time.



I find this very interesting because it takes the concept of
"Destruction of Account History" and adapts it to BASKET CURRENCIES.


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

This means:

===> finalReceipt means that OT can perform transactions that PROCESS
REPEATEDLY OVER TIME, even hundreds of times, yet it maintains the
secure paradigm of "destruction of account history."


===> basketReceipt means that OT can perform transactions that process
across ANY NUMBER OF ASSET ACCOUNTS -- even dozens of asset accounts in
a single transaction -- yet it still maintains the secure paradigm of
"destruction of account history."


===> This means that a new transaction type involving MULTIPLE TRADES
can be processed based on STANDING OFFERS, WITHOUT forcing a signature
from each client at each stop along the way.


This is awesome IMO!


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

I'm sure you can see where I'm going with all of this...



   **** RIPPLE ****



The latest changes to receipts are what will make it possible to
eventually add RIPPLE CREDIT LINES and RIPPLE FLOWS to OT!

Of course that will require a whole other set of code, which I will have
to get around to at some point when I can afford it, but it will someday
become possible to extend "credit lines" between Nyms, and then have
"Ripple Markets" where payments can flow p2p between the various credit
lines.

This is made possible by the new receipt code, since instead of having
to sign for each individual transaction during a "Ripple Flow", credit
lines will involve STANDING OFFERS, which will process according to
their terms as long as the transaction stays open! (The same way as
marketReceipts do now -- until the credit line is closed, and the
"finalReceipt" is thrown.)

So this release gets us closer to using OT as Ripple, although more
would still need to be coded, such as the CreditLine object itself, and
the RippleMarket, etc.


It will probably be months before any
of this actually gets coded, but you might enjoy the thoughts recorded.


Happy September!  And remember, the time is short.

Your friend,


-Fellow Traveler


PS NEED VOLUNTEERS:    iOS client, Mac client, Google Native Chrome,
Android client, Windows client, QT client, Bitcoin integration,
Bittorrent integration, TAHOE-LAFS integration, Freenet integration, i2p
integration, mixminion integration, Tor integration, Firefox
integration, Thunderbird integration...
356  Bitcoin / Bitcoin Discussion / Re: Open-Transactions: Video Walkthru! on: September 02, 2011, 03:26:39 AM
Quote
Is it possible to make a bitcoin transaction such that the voting pool can't spend the coin without an unused OT-reciept even if they decided to collude?

You will have to talk to your experts on the Bitcoin side of things. My initial impression would be, no. If you give the power to a voting pool, and the POOL ITSELF decides to collude, then I believe the security would break down at that point. Since the pool should always vote 100% in the same direction every time, you can require 90% or 95% votes, which IMO are safer than 51% (or worse: trusting the security of a single server, such as mtgox or mybitcoin, as everyone currently seems to do.)

Quote
Also, transaction-servers can't fake a transaction, but they can fake receipts, right? The goal is to dis-incentivize them to do this, through audits etc.

-- The transaction servers cannot forge a user's signature, therefore a transaction server can never fake YOUR receipts.

-- But the transaction server could potentially create a DUMMY account (where it controls the keys on BOTH sides), and then have the dummy account submit a false balance statement (showing a high balance), and then the server signs it. (While this doesn't allow the server to fake any of YOUR receipts, which is impossible, it DOES allow the server to inflate the currency as a whole.)

-- However, these illicit, inflationary funds cannot actually be spent without flowing into real accounts, where they will show up on an audit.

Quote
But what if they decide to anyway, is there any mechanism for the issuer to recognize the fake receipts from the real?

Yes, the mechanism is to have the registrations and receipts deposited into a DHT for the users to retrieve, and give the issuer a key to read them. (In the case of Bitcoin, a voting pool acts in the role of the issuer.) If the issuer performs real-time auditing, then he will catch problems the instant they occur. But if instead he audits once per day, then he will probably place a 36+ hour delay on out-exchanges.

-FT

357  Bitcoin / Project Development / Re: Coin Wars on: August 28, 2011, 01:39:54 AM
I still don't have market code for that though. I keep looking at Open Transactions but so far its client doesn't even seem to let its user specify which server (IP address and port, or hostname and port or whatever) to connect to so it doesn't seem much use yet even for games.

Hi,

The connection info for the server is stored in the SERVER CONTRACT.

The user doesn't work with a server address, he works with a contract ID. (The ID is a hash of the contract.) OT is smart enough to load up the appropriate contract, based on its ID, and find the connection info inside.

This way, you can store connection info for Tor, I2P, Freenet, etc, and since the contract is signed, you don't have to worry about getting a bad address to a malicious server.

Presumably if you were using OT to handle the monetary system of a game, then you would be running your own transaction server, and you'd make your server contract available to your players, or have it built into the client, or whatever.

I suggest you watch the OT walkthru video, and market video, to get a better understanding of how it all works:
https://bitcointalk.org/index.php?topic=39255.msg479354

-Fellow Traveler
358  Bitcoin / Development & Technical Discussion / Re: A proposal for fast POS transactions with Bitcoin on: August 27, 2011, 08:21:45 AM
About Open Transactions
I think that Open Transactions is a much broader concept than my payment system. It seems to have more features, but having more features also has a disadvantage: if it also makes the software more complex, this makes it more difficult to have the source code reviewed by independent parties. I believe that having independent code reviews, and hence having clear, simple, publicly available source code are very important for building trust in software.

Maybe OT solves certain problems in a different way than the concept described by me. In that case: please point me to the disadvantages / flaws in my approach, and explain me how to do better.

Maybe OT can solve certain problems in the same way as I do. In other words: maybe my concepts can be implemented on top of OT. Even if that is the case, I will initially not use OT, for the sake of simplicity (see above reasoning). However, I will make the software layered in such a way that the top-level layer can easily be re-used on top of another bottom-layer. For instance, if an implementation on top of OT turns out to be a popular request from the community, I might decide to add that, or to switch to OT in the future.

FYI, I just posted a video walkthru of OT, which will probably help you a lot in understanding the concepts, and what it actually does.

Check it out here: http://vimeo.com/28141679
359  Bitcoin / Bitcoin Discussion / Re: Open-Transactions: Video Walkthru! on: August 26, 2011, 12:35:44 AM
I'm trying to get my head around this so I have some questions to you. I'm really intrigued by the whole thing though.

As I've understood it, the transaction servers could make money from transaction fees. Is there a similar mechanism for the issuing pools?

On OT, the issuers must be trusted with the reserve assets. For example, if the issuer was Pecunix, even perfect fidelity on the part of OT software doesn't change the fact that they are holding your physical gold (or paying someone to do so), and therefore you must trust them--you must choose your issuers wisely, and be selective based on audit procedures, separation of powers, local jurisdiction, bonding, reputation, etc etc.

When using OT to issue Bitcoin, you would similarly have to trust the issuer not to take off with your Bitcoins. MY PROPOSED SOLUTION FOR THIS is to exchange-in by transferring the Bitcoins to a list of Bitcoin addresses (instead of to a single one), each controlled by a different trustee. (Most likely each trustee is just another OT server. Their motive for participating is to become more competitive in their own businesses through engendering trust by using a respected pool.) This way, you don't have to worry about a single server stealing your Bitcoins, even if it gets hacked. (Because it can't out-exchange any coins without the approval of the other trustees in the pool.)

There's more description of how it would work here: https://bitcointalk.org/index.php?topic=28565.msg363945#msg363945

Quote
Also, how would the issuing pools work if they started to get shut down by governments? Say you need 9 out of 10 pools to vote yes in order to accept a transaction and 2 out of 10 servers get shutdown. Would the bitcoins be lost in the ether forever?

On the Open-Transactions side of this proposed protocol, signed receipts are employed. (The user's out-exchange is signed, then the OT server countersigns it, then it is sent to the pool for a vote.)

The RULES of that vote (whether it is a majority vote, or 2/3rds, or 3/4s, or 9/10s) will be up to the pool members to decide. They might also have rules about each pool member identifying itself and its country of origin to the other pool members, or whatever.  Most of the time, the pool members will vote 100% in the same direction for every out-exchange. It's only in the rare case that a server disappears, that you need some wiggle-room in the vote (9 out of 10, instead of 10 out of 10.)  So you have to leave yourself enough room for that, but otherwise make the vote as strict as possible.

The rules themselves will be coded in the BITCOIN BLOCKCHAIN, using the existing Bitcoin script language. So really you can set it up however you want to, within the confines of that environment. (To answer your question: If you don't want the Bitcoins to be "lost in the ether" then maybe you would set a timeout process on the bitcoin escrow, or maybe you would change it to 7 out of 10 instead of 9 out of 10. Etc. You do all of that in the Bitcoin blockchain.)

-FT
360  Bitcoin / Bitcoin Discussion / Re: Open-Transactions: Video Walkthru! on: August 25, 2011, 06:59:51 PM
Is there a white paper that describes the core protocols of OT in a very simple and straightforward manner?  I imagine at it's core, OT is very simple...but videos of GUIs and interviews obscure that simplicity.  Satoshi's white paper gave me that clarity about bitcoin...is there something similar for OT?

Unfortunately I haven't written up an official white paper yet, but there are some resources to understand the concepts...

Open-Transactions is comparable to Ricardo, which is described at the high level, plus diagrams here:
http://www.systemics.com/docs/sox/overview.html

The core account system is designed around "destruction of account history", an idea that was pioneered by Truledger.
"Truledger in Plain English" is the best introduction: http://truledger.com/doc/plain-english.html

The untraceable cash instrument is implemented with the Lucre library.
White paper available here: http://anoncvs.aldigital.co.uk/lucre/

Instructions for using the OT API:  https://github.com/FellowTraveler/Open-Transactions/wiki/Use-Cases

I have written quite a few wiki articles, you can see the list here:
https://github.com/FellowTraveler/Open-Transactions/wiki/_pages

Some of the messaging / transaction protocol is explained here:
https://github.com/FellowTraveler/Open-Transactions/wiki/Messaging

Quote
So under the MAIN window and "Account list" i assume those are all just your own accounts on your computer?

The accounts are displayed for whatever server they are on.

In the case of the video walkthru, I'm using a test server that is running on my own machine. (Via the "localhost" server contract, a test contract that comes with OT.) So yes, those accounts are "on my computer".

Quote
If you issued something like stock. Is there any way to know exactly how many stock someone else has?

Currently there is not a message that allows you to look up someone else's account and view the balance. (Of course, people are free to show you their last receipt.) It wouldn't be hard to add an API call that verifies such receipts, or that downloads the current balance for certain types of accounts.

Quote
I like the idea that this can make bitcoin truly anonymous (and that's just one small piece of OT!)

I think the main benefits that OT gives to Bitcoin are:
1) Instant finality of settlement (instead of waiting for the 6 confirmations...)
2) Untraceable and anonymous cash.
3) Convertibility to other asset types on OT markets.
4) (Soon) Safe storage of Bitcoins on OT servers, via voting pools on the Bitcoin blockchain. (To prevent incidents like happened at MtGox and MyBitcoin...)

The benefits that Bitcoin gives OT:
1) A universal medium between OT servers, with no 3rd parties necessary.
2) A publicly-auditable reserve that cannot be confiscated or shut down.
3) A network of existing exchangers and businesses who crave more functionality and safety for their Bitcoin.


-Fellow Traveler

Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 [18] 19 20 21 22 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!