Bitcoin Forum

Bitcoin => Project Development => Topic started by: CIYAM on October 17, 2014, 08:18:41 AM



Title: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 17, 2014, 08:18:41 AM
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

To win: Be the first Script (i.e. Bitcoin or Litecoin) clone to implement a *working version* of AT on mainnet which will be used to
perform a successful "atomic cross chain transfer" with Qora (which will be implementing AT soon).

This will need to be performed within 1 month of Qora going live with AT (and if that doesn't happen within 3 months then
this bounty will be called off).

Bounty Address: https://blockchain.info/address/1AKRYi1Q2LtEAnEYzjjZXkZRXL33RKA53e (this address is kept in cold storage)

I created AT (http://ciyam.org/at) in order to allow any blockchain to have "Turing complete" txs easily added and it will soon be appearing
on some non-Bitcoin based blockchains, however, one of the *killer apps* for AT (atomic cross-chain transfer - at least IMO) really needs to
work with Bitcoin/Litecoin clones as soon as possible (and down the track there might be bounties offered for other blockchain variations).

I am not really concerned if the coin is *popular* (use of some low value coin is okay as long as the network is stable enough to achieve the
desrired result) but it must be using its *mainnet* and it must successfully accomplish an "atomic cross chain transfer" between itself and Qora
using AT.

In order to help *get the ball rolling* I've already outlined a fairly simple approach that could be used to get AT working from Script
(http://ciyam.org/at/at_script.html) and I will offer my personal assistance (with technical questions) free of charge (assuming I have
the available time).

Note that the code for the AT and AT API implementation must be "open source" using the MIT license (even if the rest of the code is not) and the final
say over whether the result to collect the bounty has been achieved will be up to myself.

If others want to add to this bounty then please send your BTC donation to the above address (note the following signed message to prove
that I own it and the GPG sig for this announcement).

1AKRYi1Q2LtEAnEYzjjZXkZRXL33RKA53e
This address is under my control!
G3YRn7DmQF0Jf5nBaJiw3SfMVroQzFB4N6X1AmNGmUYEaTCbfTOoZExiE2qAqHLdnA4IgIx+D+ccwVsjF3CWCuI=


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (MingW32)

iEYEARECAAYFAlRk4YIACgkQZPzMrvJlEZATTgCghPw1X2sGRbXLxOlObggxjn2/
vFQAnj/xMMk5pXr1kXOJB8HfkGOEUCPL
=73Pq
-----END PGP SIGNATURE-----


Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 17, 2014, 08:28:10 AM
I reformatted the OP and made it clear that at least the AT and AT API part must be open source and that my judgement is final but I won't be changing it much again (so the *rules won't be changed from this point on*) apart from to fix any typos or clarify anything that is ambiguous.


Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 17, 2014, 01:35:54 PM
Note that this bounty is going to be added to (by myself if no-one else) as I am very keen to see this happen.

I have already been contacted by a few interested devs so those *waiting for the bounty to increase* might want to at least "get in contact" so they will still have a "chance at the bounty".

In any case *everybody wins* if AT appears on multiple chains as it means all those blockchains will be able to do things like "lotteries" and "auctions" as well as "atomic cross-chain transactions".


Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: rlh on October 17, 2014, 02:05:39 PM
I sooo want to go for this, but I don't think I have the time to start a project yet.

I've not dug into the AT code (yet), are Nxt-to-Qora transactions as plausible as btc-to-qora AT transactions?  I had an idea for an asset based project and this could help me immensely.

Hmm... The wheels in my head are rolling...


Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 17, 2014, 02:14:28 PM
Yes Nxt-to-Qora would of course be possible (assuming Nxt AT goes to *mainnet*) but understand that the bounty itself is only being offered for a Qora to a Bitcoin/Litecoin clone succeeding in performing an atomic cross-chain transfer/transaction via AT between them (as Qora have said they will take AT to *mainnet* first and I then want to see a "mainnet" version of a Bitcoin/Litecoin clone also).

Keeps those wheels in your head rolling - there are likely to be more bounties down the track!


Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: GrandpasNaked on October 17, 2014, 03:12:19 PM
Dzimbeck and BitHalo have something like that for release soon. you should tweet this to him  :)


Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 17, 2014, 03:17:13 PM
Dzimbeck and BitHalo have something like that for release soon. you should tweet this to him  :)

Sorry I don't use Twitter but feel free to do so yourself.


Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: SuperClam on October 17, 2014, 09:21:56 PM
Should go without saying, but on a sad note:
You may want to specify 'open source'.
There seems to be a disgraceful movement towards closed source in some communities.
Regardless, you hold the strings to the purse (and the ultimate decision) but I thought it might bear mentioning.


Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: sparta_cuss on October 17, 2014, 11:02:57 PM
Should go without saying, but on a sad note:
You may want to specify 'open source'.
There seems to be a disgraceful movement towards closed source in some communities.
Regardless, you hold the strings to the purse (and the ultimate decision) but I thought it might bear mentioning.

Right now Qora is closed source. Of course it will have to be open to Ian in order for him to do the Qora AT work, but I wouldn't assume he'd be against closed source. Ian, what do you say?


Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: Vrontis on October 17, 2014, 11:15:53 PM
Should go without saying, but on a sad note:
You may want to specify 'open source'.
There seems to be a disgraceful movement towards closed source in some communities.
Regardless, you hold the strings to the purse (and the ultimate decision) but I thought it might bear mentioning.

Right now Qora is closed source. Of course it will have to be open to Ian in order for him to do the Qora AT work, but I wouldn't assume he'd be against closed source. Ian, what do you say?

If close source projects want to use AT that is of no concern to me (license is MIT not GNU).

If they make their version of AT *incompatible* with others then it would basically just either make it harder or maybe even impossible for that blockchain to participate in atomic cross-chain transfers (which wouldn't be likely to help with making their blockchain very popular).



Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 18, 2014, 03:28:33 AM
I did state that I have the final decision and if I am unable to "see" the Script implementation (for the purposes of getting AT to work on other blockchains) then I would not be very happy.

I don't care if the majority of the coin is "closed-source" but I would be asking for the AT part (at least the Script changes) to be made public so that other blockchains can use AT.

As a general rule I don't support "closed source" and AT itself will always remain open but I am not going to dictate to others what to do with their source code.


Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 21, 2014, 09:05:26 AM
I have clarified that the AT and AT API implementation must be open source (the rest of the platform is not my concern) and I will be publishing an AT API specification document at the end of the week.

The "atomic cross-chain transfer" AT itself will be coded by myself and will simply require that the blockchain platform correctly implements AT and the "generic fuctions" for the AT API.

When I publish the AT API I am going to "up the bounty" so those interested might want to "get cracking real soon".

Let's see if we can get an atomic cross-chain transfer to occur between to different blockchain mainnets before the end of the year.


Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 23, 2014, 02:54:45 PM
So the AT API document is nearly complete (just getting some final reviewing).

Again - the bounty will be increased once I release the docco (in the next 24 hours) so those interested should be *watching this space*.

With the announcement of *side-chains* from Adam Beck and others I would guess a lot of alts now need to seriously consider their future. AT will give them a reason to exist (if they weren't just created for the purpose of *pumping and dumping*) with the ability to to "atomic cross-chain transfers" to other alts.

This is *evolution* at work!


Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: abramovich on October 23, 2014, 04:58:15 PM


Sorry I don't use Twitter but feel free to do so yourself.


well it is not needed


Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: criptix on October 23, 2014, 07:15:45 PM
Hi ciyam,

i think this project should interest you.

Atomic is developing a method for cross-blockchain transactions without the need of changing code for the respected coins.

/edit

sorry, didnt meant to hijack your thread for advertisment
i though it was related to your OP
if you have time you should read the documentation, there will be several steps to secure the system is trustless.


Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 24, 2014, 01:10:51 AM
@criptix - it really isn't very polite to post an "ad" in someone else's topic (your sig is noted).

And something that relies upon "gateways" is in no way *trustless* so we are not talking "apples and apples" here.


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 24, 2014, 02:31:03 AM
Bounty has been upped to 10 BTC and the AT API document has now been released: http://ciyam.org/at/at_api.html.

Work on creating the actual atomic cross-chain transfer AT has already begun (see next post) and will be completed after the API has been thoroughly reviewed and tested.

Devs should note that the four use cases documented do not use the portable functions listed in the AT API (those use "experimental" functions and should only be considered as illustrative examples for writing ATs).


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 24, 2014, 05:45:33 AM
In order to show clear progress of the atomic cross-chain transfer AT itself (and to ensure that no-one has any unfair advantage) I will be posting pieces of the machine code as it as being developed.

So here is the first portion which does the all important "refund" if too much time has elapsed (note that the @refund_minutes value would be part of the "initial data" when the AT is created):

Code:
Variables
--------
@00 ==> @refund_minutes
@01 ==> @refund_timestamp
@02 ==> @current_timestamp

Script Assembly
---------------
if @refund_timestamp not zero goto loop                  1e010000001c
set @refund_timestamp to AT creation time                35010301000000
add @refund_minutes to @refund_timestamp                 370604010000000100000000000000

:loop (0x1c)
set @current_timestamp to block timestamp                35000302000000
if @current_timestamp >= @refund_timestamp goto refund   2102000000010000002d

(add NOP padding to insert code later) 7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f

:refund (0x50)
set B to address of the AT creator                       320b03
send remaining balance to address in B                   320304

Assembly Code
-------------
00000000* BNZ $00000001 :0000001c
00000006  FUN @00000001 0x0301
0000000d  FUN @00000001 0x0406 $00000001 $00000000
0000001c  FUN @00000002 0x0300
00000023  BGE $00000002 $00000001 :00000050
0000002d  NOP
00000050  FUN 0x030b
00000053  FUN 0x0403

Machine Code
------------
1e010000001c35010301000000370604010000000100000000000000350003020000002102000000010000002d7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f320b03320304


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: HostFat on October 27, 2014, 01:41:28 AM
I've put this on Reddit:
https://www.reddit.com/r/Bitcoin/comments/2kf579/10_btc_bounty_for_first_at_atomic_crosschain/


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: maaku on October 27, 2014, 02:00:55 AM
You can do atomic trade with regular old bitcoin script. Would that qualify for this bounty?


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 27, 2014, 02:03:09 AM
You can do atomic trade with regular old bitcoin script. Would that qualify for this bounty?

The bounty is clearly for using an atomic cross-chain transfer *AT* to perform this between Qora and a Bitcoin clone.

And btw the atomic cross-chain transfer AT is actually *based* upon TierNolan's work (so I am of course well aware of its existence).


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: Velkro on October 27, 2014, 04:58:48 AM
Well thats generous bounty out there.
Thank you for supporting whole bitcoin community this way :)


Title: Re: 5 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: Come-from-Beyond on October 28, 2014, 08:06:29 AM
Yes Nxt-to-Qora would of course be possible (assuming Nxt AT goes to *mainnet*)...

I believe it's a wrong statement. I quote it to reserve a place for "Told Ya So" or "Sorry, I Was Wrong".


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: vbcs on October 28, 2014, 08:20:59 AM
The AT program which will enable atomic cross-chain transaction is ready. The machine code is less than 256 bytes, so you can see the power the AT can give to the underlying blockchain is huge and that is just a use case. When we have up and running 2 blockchains running AT the first atomic cross-chain tx will take place. So stay tuned.

Here is the full document with the description, the variables used, the script assembly, the assembly code and the machine code. Enjoy!

Code:
Use Case: Atomic Cross-Chain Transfer
-------------------------------------

An AT that enables an atomic cross-chain transfer to be executed by creating two separate instances of itself
on two seperate blockchains. When constructing the first instance a 32 byte secret needs to be "hashed" using
SHA256 and stored in the first 32 bytes of "initial data" followed by another 32 bytes for the address of the
other party, and then the number of minutes to wait until refunding the AT's balance back to its creator.

The initial creator would then wait for the other party to create a matching AT (with a significantly smaller
number of minutes for refund). The hash values would need to be identical. Once the initiator has seen enough
confirmations of the other AT then they will send the secret to the other AT as a message. This AT will first
copy this message into its data storage and then check if when hashed it matches the initial data values that
were provided when it was created. If they match then the funds are sent to the address stored in the initial
data.

Finally the creator of the second AT can now work out from checking their AT's state what the secret is. They
would then send a message to the originally created AT instance with the same secret and it would pay them so
the atomic cross-chain transfer will be completed.

Note that if the second party never actually creates their AT then the first party just needs to wait for the
refund to occur. Likewise once the second party has created their AT then if the first party fails to send it
the secret on time then a refund will occur (and the first party will also be refunded). The first party will
need to be careful not to send the secret too close to the deadline otherwise there is the possibility that a
refund will occur in the second AT but the secret will have already been seen in the message tx.

Another concern is possible attacks by "clogging the AT" up with tiny false message txs to try and prevent it
from paying out. This is perhaps best prevented by making sure that the minimum fee for the ATs is well above
anything that would permit such an attack to be economically beneficial.

Variables
---------

@00 ==> @hash_part1
@01 ==> @hash_part2
@02 ==> @hash_part3
@03 ==> @hash_part4
@04 ==> @address_part1
@05 ==> @address_part2
@06 ==> @address_part3
@07 ==> @address_part4
@08 ==> @refund_minutes
@09 ==> @refund_timestamp
@0a ==> @current_timestamp
@0b ==> @secret_part1
@0c ==> @secret_part2
@0d ==> @secret_part3
@0e ==> @secret_part4
@0f ==> @tx_type
@10 ==> @comparator
@11 ==> @secret_temp1
@12 ==> @secret_temp2
@13 ==> @secret_temp3
@14 ==> @secret_temp4

Script Assembly
---------------

if @refund_timestamp not zero goto loop                  1e0a0000001c
set @refund_timestamp to AT creation time                35010309000000
add @refund_minutes to @refund_timestamp                 370604090000000900000008000000

:loop (0x1c)
set @current_timestamp to block timestamp                3500030a000000
if @current_timestamp >= @refund_timestamp goto refund   210a00000009000000f0

:txloop (0x2d)
store tx after @current_timestamp in A                   3504030a000000
check if A is zero and store result to @comparator       35250110000000
if @comparator is zero finish                            2610000000
get type for tx in A and store in @tx_type               3505030f000000
if @tx_type is not 0 goto :check_message                 1b0f00000012      
get timestamp for tx in A and store in @current_timestamp3507030a000000
goto txloop                                              1a2d000000      

:check_message  (0x59)
store message of tx in A to B                            320903
swap A and B                                             322801
sha256 of A and store in B                               320402
set @secret_temp1 to A1                                  35000111000000
set @secret_temp2 to A2                                  35010112000000
set @secret_temp3 to A3                                  35020113000000
set @secret_temp4 to A4                                  35030114000000
set A1 to @hash_part1                                    33100100000000
set A2 to @hash_part2                                    33110101000000
set A3 to @hash_part3                                    33120102000000
set A4 to @hash_part4                                    33130103000000
check A equals to B and store in @comparator             35270110000000
if comparator is not 0 goto :payout                      1b100000000b    
goto :txloop                                             1a2d000000

:payout (0xa7)
set @secret_part1 to $secret_temp1                       020b00000011000000
set @secret_part2 to $secret_temp2                       020c00000012000000
set @secret_part3 to $secret_temp3                       020d00000013000000
set @secret_part4 to $secret_temp4                       020e00000014000000
set B1 to @address_part1                                 33160104000000
set B2 to @address_part2                                 33170105000000
set B3 to @address_part3                                 33180106000000
set B4 to @address_part4                                 33190107000000
send all to address in B                                 320304
finish                                                   28

:refund (0xf0)
set B to address of the AT creator                       320b03
send remaining balance to addres in B                    320304
finish                                                   28

Assembly Code
-------------

00000000* BNZ $0000000a :0000001c
00000006  FUN @00000009 0x0301
0000000d  FUN @00000009 0x0406 $00000009 $00000008
0000001c  FUN @0000000a 0x0300
00000023  BGE $0000000a $00000009 :00000013
0000002d  FUN @0000000a 0x0304
00000034  FUN @00000010 0x0125
0000003b  FIZ @00000010
00000040  FUN @0000000f 0x0305
00000047  BZR $0000000f :00000059
0000004d  FUN @0000000a 0x0307
00000054  JMP :0000002d
00000059  FUN 0x0309
0000005c  FUN 0x0128
0000005f  FUN 0x0204
00000062  FUN @00000011 0x0100
00000069  FUN @00000012 0x0101
00000070  FUN @00000013 0x0102
00000077  FUN @00000014 0x0103
0000007e  FUN 0x0110 $00000000
00000085  FUN 0x0111 $00000001
0000008c  FUN 0x0112 $00000002
00000093  FUN 0x0113 $00000003
0000009a  FUN @00000010 0x0127
000000a1  BZR $00000010 :000000ac
000000a7  JMP :0000002d
000000ac  SET @0000000b $00000011
000000b5  SET @0000000c $00000012
000000be  SET @0000000d $00000013
000000c7  SET @0000000e $00000014
000000d0  FUN 0x0116 $00000004
000000d7  FUN 0x0117 $00000005
000000de  FUN 0x0118 $00000006
000000e5  FUN 0x0119 $00000007
000000ec  FUN 0x0403
000000ef  FIN
000000f0  FUN 0x030b
000000f3  FUN 0x0403
000000f6  FIN



Machine Code
------------

1e0a0000001c350103090000003706040900000009000000080000003500030a000000210a00000009000000f03504030a0000003525011000000026100000003505030f0000001b0f000000123507030a0000001a2d0000003209033228013204023500011100000035010112000000350201130000003503011400000033100100000000331101010000003312010200000033130103000000352701100000001b100000000b1a2d000000020b00000011000000020c00000012000000020d00000013000000020e000000140000003316010400000033170105000000331801060000003319010700000032030428320b0332030428




Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 28, 2014, 08:33:42 AM
Great to see that the AT completed (next step is of course testing).

I have now uploaded the atomic use case http://ciyam.org/at/at_atomic.html.


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 28, 2014, 02:30:59 PM
Just to make things clear "atomic" does not imply ACID (http://en.wikipedia.org/wiki/ACID) as that *word* it is only *one part of the normal idea for RDMBS txs" (there are *four* words in the acronym for a reason).

The AT "atomic" transfer does satisfy the "atomic" requirement that a transfer should be *all or nothing* but of course this is a blockchain environment not a single server so some "edge cases" (clearly described in http://ciyam.org/at/at_atomic.html) do exist.

Transaction *malleability* (as mentioned by TierNolan) is not an issue when using AT as it doesn't not have "multisig addresses" but of course if the creator of the first AT sends the tx with the "secret" to the other chain and then "loses all connectivity to the internet for the timeout period" then they will end up losing their funds (same thing could happen with any other method of transfer if you don't decide to use a "trusted server").

This is the same problem that TierNolan's script would have also and compared to the problem of an *exchange collapsing* is IMO not an issue (provided the timeouts for refunds are sensible - say 24 and 12 hours per TierNolan's suggestion).

People demanding "perfection" should for a start realise that no PC is *perfect* and that the *internet is not perfect either* (both of these facts are very obvious when you use a cheap Chinese laptop from within China as my PC often crashes for no good reason and the internet here is always being blocked).


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: dzimbeck on October 28, 2014, 03:15:18 PM
How is malleability not an issue? TX2 is a refund of TX1... thus TX2 spends the hash of the raw TX1 (The TXID). That txid in TX1 can be changed by the miners thus invalidating the refund holding the funds permanently hostage. So TX2 is invalidated and the counterparty doesnt sign again. The funds are permanently stuck. If this is somehow not the case, can you please explain why? I'm familiar with atomic trades and always assumed that was their issue (unilateral hostage commitment)


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 28, 2014, 03:18:03 PM
How is malleability not an issue? TX2 is a refund of TX1... thus TX2 spends the hash of the raw TX1 (The TXID). That txid in TX1 can be changed by the miners thus invalidating the refund holding the funds permanently hostage. So TX2 is invalidated and the counterparty doesnt sign again. The funds are permanently stuck. If this is somehow not the case, can you please explain why? I'm familiar with atomic trades and always assumed that was their issue (unilateral hostage commitment)

The TierNolan approach uses a multi-sig address (which is what the malleability issues he describes are all about).

The AT solution does not need or use this (there is *no* multisig address involved at all). You might want to read the AT use case more carefully to understand it.


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: dzimbeck on October 28, 2014, 03:28:51 PM
malleability applies to any transaction, not just multisig. Because the miners can just slightly alter the tx without invalidating the script.


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 28, 2014, 03:32:29 PM
malleability applies to any transaction, not just multisig. Because the miners can just slightly alter the tx without invalidating the script.

You don't understand AT at all - it is not a Bitcoin script.

Please re-read TierNolan's post and review the AT use case and then *think again*.

All you can do with *malleability* is *change the sig* and that doesn't affect AT (as the atomic use case does not depend upon that at all).

For that to be an issue you'd need AT to *care about the sig* and *it simply doesn't* (the refund address is hard-coded and is not dependent upon the tx sig at all).

Fundamentally TierNolan's approach requires B to sign A's *refund* (and vice-versa) but AT's approach *does not* (so although the atomic AT was *based* upon TierNolan's idea it is not the same as it).


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: dzimbeck on October 28, 2014, 03:39:33 PM
I thought AT you were abbreviating Atomic transactions. Can you please send me a link?


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 28, 2014, 03:40:38 PM
I thought AT you were abbreviating Atomic transactions. Can you please send me a link?

You can see the entire docco from here: http://ciyam.org/at

and for the "atomic" use case in particular here: http://ciyam.org/at/at_atomic.html


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: dzimbeck on October 28, 2014, 03:51:42 PM
Ahh sorry I should have noticed some of the earlier comments. This is fantastic work. Congratulations. The only way I thought this was possible before was applying a malleability patch/some sort of fork or using refunds.

And this is being implemented in Quora?


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 28, 2014, 03:56:16 PM
And this is being implemented in Quora?

The Qora implementation will be happening very soon.

We might first prove the atomic use case just using some testnets though.


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: vbcs on October 28, 2014, 04:04:48 PM
There is also a working testnet nxt version using the old API. You can see some info here http://5.196.1.215:5876/ATs.html (it is just for testing purposes atm) and the testnet needs to be updated to comply with the new API


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: Come-from-Beyond on October 28, 2014, 08:12:13 PM
Just to make things clear "atomic" does not imply ACID (http://en.wikipedia.org/wiki/ACID) as that *word* it is only *one part of the normal idea for RDMBS txs" (there are *four* words in the acronym for a reason).

The AT "atomic" transfer does satisfy the "atomic" requirement that a transfer should be *all or nothing* but of course this is a blockchain environment not a single server so some "edge cases" (clearly described in http://ciyam.org/at/at_atomic.html) do exist.

Well, this makes my previous post irrelevant (https://bitcointalk.org/index.php?topic=826263.msg9354368#msg9354368).

On "atomicity" - a successful eclipse attack would lead to the money belonging to one of the parties only (it will get double amount while the counterparty will get none). This shows that the proposed scheme is not atomic.


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: Come-from-Beyond on October 29, 2014, 08:54:49 AM
Are you planning to look into whether AT works or not (as proposed) or is the debatable use of a single word your only concern?   :-\

Debatable use of a single word is my only concern because it (un)intentionally confuses people who know what "atomic" means. I'm not going to read AT paper because of a much weaker definition of "atomic". Codius already implemented such the scheme and AT doesn't offer anything above that.


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: wizzardTim on October 29, 2014, 02:42:58 PM
Did anyone express interest yet? e.g. an altcoin dev?


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 29, 2014, 02:44:40 PM
Did anyone express interest yet? e.g. an altcoin dev?

Yes - I have been contacted privately by a couple but no-one seems to have committed themselves to this yet - so you are welcome to join in if you are keen.


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: wizzardTim on October 29, 2014, 02:51:43 PM
Did anyone express interest yet? e.g. an altcoin dev?

Yes - I have been contacted privately by a couple but no-one seems to have committed themselves to this yet - so you are welcome to join in if you are keen.


I am keen on programming (Software Engineer) but I'm afraid I do not have the needed time available.. :(


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on October 29, 2014, 03:01:18 PM
I am keen on programming (Software Engineer) but I'm afraid I do not have the needed time available.. :(

Perhaps have a quick look at this: http://ciyam.org/at/at_script.html to gauge how difficult the task would be.


Title: Re: 10 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: wizzardTim on October 29, 2014, 03:02:33 PM
I am keen on programming (Software Engineer) but I'm afraid I do not have the needed time available.. :(

Perhaps have a quick look at this: http://ciyam.org/at/at_script.html to gauge how difficult the task would be.


Ok thanks  8)


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on November 06, 2014, 11:54:53 AM
Bounty has been upped to 20 BTC now.

Saffron has announced their interest to implement AT but not until next year so there is still a great opportunity for a talented dev to pick up this bounty before the end of this year!


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: rlh on November 06, 2014, 01:08:16 PM
Hey CIYAM, I would be very interested in attempting this bounty but I need a bit more info.  Specifically, do you have a simple (as can be) document that outlines how to get AT connected to BTC?

I understand what you are doing, but I haven't dug deep enough into the connecting end portion of BTC to know how to use this.

Bottom line, is there a barebones document that goes from setup to "Hello World" within AT and BTC?  I think something along those lines could help expedite the creation of services.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on November 06, 2014, 01:58:57 PM
Hey CIYAM, I would be very interested in attempting this bounty but I need a bit more info.  Specifically, do you have a simple (as can be) document that outlines how to get AT connected to BTC?

Okay - so the main document to help with the AT machine itself is http://ciyam.org/at/at.html and the C++ prototype is here: http://ciyam.org/at/_at.cpp.html.

For the Bitcoin "script" side of things I have come up with this: http://ciyam.org/at/at_script.html.

The other key document is the AT API which is here: http://ciyam.org/at/at_api.html.

Again I am happy to help explain things to interested parties and yourself or others are welcome to send me a PM to get my Skype id if you'd like to be able to chat with me directly.

Understand that the bounty is not there so that "I do all the work" so you are only going to get answers to relevant questions (rather than *code*). If I had the spare time I'd code this myself but I am working 14 hours per day currently on the CIYAM project (and not being so young I do need to get at least 8 hours of sleep and some exercise every day).


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: dansmith on November 13, 2014, 02:18:01 PM
I'm somewhat confused about this thread's title. The title makes it seem like all one has to do is to fork bitcoin/litecoin and start a new blockchain with AT bolted on on top of it. But reading the comments made me doubt that.
Is it correct that in order to claim the bounty, one not only has to come up with the code for atomic cross-chain transfer but also convince the existing coin's miners/nodes to adopt the changes?


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on November 13, 2014, 02:22:33 PM
Actually - it is about as simple as that - but it must be a mainnet that isn't so weak it just gets destroyed due to an ASIC attack or the like overnight (just because that would simply not look good and I do reserve the right to decide who gets the bounty).

Understand that the "atomic cross-chain transfer" needs to be done *using AT* (so you can't use any other method to do it) and also that the AT and AT-API source code created to accomplish this must be made open source (the rest of the coin's source code isn't really of any concern to me).

The point of the bounty is basically to get open source code that can be "easily dropped into any existing Bitcoin clone" for using AT (thus providing an easy to implement alternative to Ethereum or Codius).

If you want to do it with a complete crap coin then perhaps discuss it with me via PM (as maybe I can link things up with a better coin and the reward could be shared as I have been approached by some clones that have a decent rep but their devs are not likely to work on this until next year).


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: dexX7 on November 14, 2014, 09:28:46 PM
I started to run the samples and this is very interesting. :)

I can imagine to run the scripts and use the block chain as data source, and I can also imagine how "passive" data could be integrated, say for example it is observed that "A sends x BTC to B", thus function xyz is triggered (...), but I'm not really sure how AT would be able to do something else than "watch and observe"? A scheme that involves script and the revealing of secrets, as described by TierNolan, might somehow be combined with this, but let me rephrase:

The cross-chain document explicitly mentions "refunding the AT's balance", so I'm wondering: is it intended to trade "virtual" balances which represent Bitcoin within the scripting environment or real Bitcoin (or some-else-coin)? If it's the later, I'd be very curious and would be happy to hear more about it.

Quote
For the Bitcoin "script" side of things I have come up with this ...

To clarify: you are not talking about Bitcoin anymore, but Bitcoin + op_checkstate, correct?


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on November 15, 2014, 03:36:05 AM
To clarify: you are not talking about Bitcoin anymore, but Bitcoin + op_checkstate, correct?

Correct - it is only possible for AT to work with the new op code (but at least only the one is required).

AT can indeed "spend" its inputs as because they are OP_CHECKSTATE scripts such as this:

Code:
INPUT:
<state> hash160(1xxATxxYptzC5a7p9obc2SLMPS148G2Qxg) OP_CHECKSTATE (original 100)

Thus there is no signature required to be verified with OP_CHECKSTATE only the actual "state" of the AT VM needs to match each peers own calculated state (and outputs that are created by the AT are verified to match the same set of outputs that each peer determined).


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: dexX7 on November 15, 2014, 04:28:01 AM
Code:
<state> hash160(1xxATxxYptzC5a7p9obc2SLMPS148G2Qxg) OP_CHECKSTATE (original 100)

So what exactly does OP_CHECKSTATE?

Might it be possible to construct a transaction puzzle (https://en.bitcoin.it/wiki/Script#Transaction_puzzle) for this purpose where it can be solved by one who is able to provide certain information that should be in possession, if TA evaluated in this-or-that way?


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on November 15, 2014, 05:11:14 AM
So the idea behind OP_CHECKSTATE is that the AT is run at that point (no need for puzzles as running the AT *is the puzzle*).

Each block that has AT txs included will have at least one OP_CHECKSTATE output per AT executed (which will identify the hash of the AT state and the amount of funds it has left to keep running).

A peer can verify the block by running each AT and making sure that they come up with the exact same outputs (i.e. same state hash and same amount of funds left to keep running) as AT has been designed to be deterministic.

If a state hash does not match or one of the outputs does not match then the block is considered invalid.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: LuaPod on November 15, 2014, 09:21:41 AM
Perhaps I should have waited to post : https://bitcointalk.org/index.php?topic=852917.msg9489290#msg9489290

Though my idea was generating two private keys from many private parts generated on different sides and shared in certain steps so that they both reveal each others private keys at the same time. (while leaving proof that the transaction occured and both addresses in fact were derived from shared keyparts.)
A few public keys from the transaction along with signed transaction logs from all three parties would be added to the public ledger (for each node that can process the type of request ie: BTC - LTC | LTC - DOGE)


Since private keys are essentially large numbers there shouldn't be any problems using different ECC curves in generating keypairs from another curve when being used in split key generation.

Though the keys would appear different the math involved would never change the fact that we are just adding, subtracting, multiplying, and dividing large numbers on scalar charts. I don't believe there would be issues with prime number curves either.
Perhaps to add a type of miner to the system it could use a private key that is partially known with a range of numbers that could have been subtracted from it to give it a sort of difficulty and require the miners to find the missing keypart solution.

o.o I just read that stuff and my chart is almost exactly what that thing is.

Would a lite node.js p2p version of this win the bounty?



Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on November 15, 2014, 01:12:28 PM
The OP clearly points out that the bounty is for using *AT* to achieve the transfer (i.e. it is not and never was a general bounty for achieving a so-called "atomic cross-chain transfer").

So unless you are planning on implementing AT in node.js then clearly it wouldn't even be considered and even if you were going to write the whole AT machine in node.js you'd also have to implement Bitcoin Script in node.js to qualify. I would estimate that task taking some months (for an expert programmer who understands Bitcoin inside and out) - but go ahead and try that if you're still keen.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: dexX7 on November 15, 2014, 06:17:31 PM
If a state hash does not match or one of the outputs does not match then the block is considered invalid.

Thanks, this implies an altcoin context. I was in particular interested in the question, if TA could be used with Bitcoin directly where OP_CHECKSTATE might be expressed by something else. Anything that doesn't require moving Bitcoin seems very doable. Code, state, ... could easily be published on chain and markers or flags (in OP_RETURN or embedded in bare multisig/P2SH for longer messages) could be used to trigger "now evaluate the next instruction, this point marks a new step, therefore the block of this transaction represents the current context (...)".


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on November 16, 2014, 03:26:11 AM
Unfortunately if an AT can't receive and send funds then its uses are very limited. It could still be used to store some information and perform some basic tests (such as checking a hashed secret) but I think it really comes into its own when it can act as an escrow with the funds sent to it being under its control.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on November 21, 2014, 02:56:37 PM
With the announcement that Counterparty made in regards to Ethereum I am being asked whether AT is still a contender.

Firstly let's be clear that Counterparty do not have Ethereum on *mainnet* now and most likely won't have it on *mainnet* for at least a few months.

Secondly AT has been designed to be much more *low-level* which should make it much quicker to implement (especially as we have already created unit tests for all of the instruction codes except the API ones and we will be creating unit tests for those also).

As an added incentive - I am going to offer another 20 BTC if a Bitcoin clone can achieve the goal of this bounty before the end of 2014 (which would make AT the *first mainnet* Turing complete transaction system for blockchains).


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: bitspill on November 23, 2014, 11:03:04 AM
I've been working through this project however I just don't understand what the function_data struct and it's usage, could you clarify:

What is function_data storing, more so what is the intention of the data vector?

Where does a value get written to function_data.data?

Why does get_function_data only iterate g_function_data if it's not the first call?


Code:
struct function_data
{
   function_data( )
   {
      loop = false;
      offset = 0;
   }

   bool loop;
   size_t offset;

   vector< int64_t > data;
};

map< int32_t, function_data > g_function_data;

int64_t get_function_data( int32_t func_num )
{
   if( func_num == g_increment_func )
   {
      if( g_first_call )
         g_first_call = false;
      else
      {
         for( map< int32_t, function_data >::iterator i = g_function_data.begin( ); i != g_function_data.end( ); ++i )
         {
            if( ++( i->second.offset ) >= i->second.data.size( ) )
            {
               if( i->second.loop )
                  i->second.offset = 0;
               else
                  --( i->second.offset );
            }
         }
      }
   }

   int64_t rc = g_function_data[ func_num ].data[ g_function_data[ func_num ].offset ];

   return rc;
}


Edit: Before I get mistaken for an idiot let me clarify it is currently 5am ;)


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on November 23, 2014, 11:13:58 AM
I've been working through this project however I just don't understand what the function_data struct and it's usage, could you clarify:

What is function_data storing, more so what is the intention of the data vector?

The function_data stuff is only for testing purposes (it would not be included in any "real implementation"). Any real implementation would need to implement the AT API instead (http://ciyam.org/at/at_api.html).

Sorry for the confusion (understand that the C++ code published is a "prototype" that is useful for testing ATs and uses hard-coded pseudo API data rather than making real API calls).


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: bitspill on November 23, 2014, 11:18:19 AM
I've been working through this project however I just don't understand what the function_data struct and it's usage, could you clarify:

What is function_data storing, more so what is the intention of the data vector?

The function_data stuff is only for testing purposes (it would not be included in any "real implementation"). Any real implementation would need to implement the AT API instead (http://ciyam.org/at/at_api.html).

Sorry for the confusion (understand that the C++ code published is a "prototype" that is useful for testing ATs that uses hard-coded pseudo API data rather than making real API calls).

Ok, I was thinking it has something to do with testing.

That goes for all the g_XX, g_balance, etc as well, correct?

Code:
int32_t g_code_pages = 1;
int32_t g_data_pages = 1;

int32_t g_call_stack_pages = 1;
int32_t g_user_stack_pages = 1;

const int64_t c_default_balance = 100;

int64_t g_val = 0;
int64_t g_val1 = 0;

int64_t g_balance = c_default_balance;

bool g_first_call = true;

int32_t g_increment_func = 0;


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on November 23, 2014, 01:48:58 PM
That goes for all the g_XX, g_balance, etc as well, correct?

Yup - I use "g_" as a prefix for global variables and of course global variables should not be in a real version of AT (although some constants such as max. number of steps per AT and max. number of ATs per block would be expected to be provided).


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on November 25, 2014, 03:42:42 PM
Thanks to one of the devs working on implementing AT in another Java coin it was brought to our attention that our "indirect" and "indirect indexed" addressing ops needed two complimentary ops (so that fetching and storing via this approach is supported).

I have now updated the AT specification (http://ciyam.org/at/at.html) and the C++ prototype (http://ciyam.org/at/_at.cpp.html) to provide the new op codes.

(relevant op codes are IND_DAT, IDX_DAT, SET_IND and SET_IDX)

Note that this doesn't affect the atomic cross-chain transfer use-case as it doesn't use any of those op codes.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: rlh on November 25, 2014, 04:23:27 PM
Thanks, CIYAM for keeping this going.  If you wouldn't mind me askig, could you post and update one the Qora thread regarding the AT integration?  What percent are you guys complete?  Are we getting close to a release and, if no, can you give a reasonable ETA?

I hate to derail this topic but I did want to get your attention. ;)


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on November 25, 2014, 04:29:05 PM
I hate to derail this topic but I did want to get your attention. ;)

No problem although I am not directly involved with the Qora coding (also I believe that qora has been sick recently) - my understanding is that the development is going well and we should be ready to test in a few weeks.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: rlh on November 25, 2014, 04:40:31 PM
Great, thanks!  Yes, Qora tends to disappear and then magically appear weeks.  I hate to hear he's sick, bht that would explain his extended absense.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on November 25, 2014, 04:43:09 PM
We may also be *announced* at the next Bitcoin conference in Dubai (December 11th from memory) but that will be up to one of the teams that is looking into AT.

(unfortunately we don't have oodles of BTC to spend on marketing like the competition does)


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: DooMAD on November 30, 2014, 11:16:39 AM
Will be keeping an eye on this thread.  Hopefully there are some significant breakthroughs and hopping between coins and blockchains without using any centralised exchanges becomes the preferred method of trading.  I'm a little surprised there isn't more excitement about the potential of all this.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on December 06, 2014, 05:06:07 PM
I understand that the Qora AT implementation is now quite close to completion and Qora will be going open source in the next few days (AT will most likely not make the initial open source release but will be included in a follow up as some final tweaks and testing still needs to be performed).

There will be another non-Bitcoin clone that will be running live with AT very soon but we are still waiting to see if anyone is going to try and claim the 40 BTC possible before the end of the year for getting a Bitcoin clone to implement AT and do an atomic cross-chain transfer with Qora (or the other yet to be announced coin).


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on December 22, 2014, 04:23:57 AM
The first blockchain to go live with AT is Burst (https://bitcointalk.org/index.php?topic=731923.msg9910950#msg9910950) so to qualify for this script implementation of AT bounty the actual atomic cross-chain transfer can be done using Burst (although I am guessing that Qora will also be live before the end of the year).


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: HostFat on December 22, 2014, 04:34:32 AM
Great! I hope that this will become a function on every next alt-coin :)


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: xxxgoodgirls on December 22, 2014, 04:38:20 AM
Revolutionary.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: 548845 on December 22, 2014, 08:54:41 AM
Excellent job!!!!

It's a shame that most innovations happen on alt-coins rather than Bitcoin.

None the less great job guys!!!!


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: DooMAD on December 22, 2014, 03:08:33 PM
Fantastic work.  Well done to CIYAM, the Burst dev team and, hopefully soon, the Qora team as well.


Excellent job!!!!

It's a shame that most innovations happen on alt-coins rather than Bitcoin.

None the less great job guys!!!!

In a way it's for the best.  Test the experimental ideas elsewhere to make sure everything works as intended.  Then if it turns out to be a useful and worthwhile feature (which AT definitely is!   ;D ), it can then be incorporated into Bitcoin, or run above it on a higher layer.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on January 09, 2015, 03:37:50 PM
We will soon have a "trustless lottery" running for Burst (a world's first I think).

Although no-one managed to claim the possible 40 BTC bounty to get AT on a Bitcoin clone before the new year there is still 20 BTC available for those that are interested.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: rlh on January 09, 2015, 04:09:16 PM
How is the Qora implementation coming along?


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on January 09, 2015, 07:10:49 PM
How is the Qora implementation coming along?

I understand it is very near release but @qoradev seems to be on holidays still.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on January 26, 2015, 04:20:26 PM
So the first decentralised lottery (running on Burst and powered by AT) has now commenced.

Although it is perhaps going to take a while for the implications of this to sink in those that run "gambling for profit" businesses are now going to find themselves facing competition from programs that don't actually need to make a profit in order to continue operating (they just need players).

Those wanting to get attention for their alts might want to consider how offering something like a Satoshi Dice which works on *zero percent margin* might attract users to their coin.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: HostFat on January 26, 2015, 05:52:54 PM
So the first decentralised lottery (running on Burst and powered by AT) has now commenced.
Now that the search on the forum is disabled, can you give a link to it? Please :)

EDIT:
Ok, I've found it :)


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on January 31, 2015, 09:02:15 AM
http://www.theuknews.com/index.php/nav/newsr/5228

Please note that 20 BTC is still waiting for someone to "step up" and implement AT in a Bitcoin clone.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on March 02, 2015, 11:28:29 AM
Unfortunately still no altcoin devs have "stepped up" to implementing the Turing complete Automated Transactions system - so in order to provide a sense of urgency please note that I will be removing the bounty after the end of this month.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: DooMAD on March 02, 2015, 09:02:11 PM
It seems there's still a chance it might happen.  It sounds like Burst has their system pretty much ready to go and Qora isn't far behind:

AT team will proceed as normally with the integration of AT, create a new wallet version, test it first on a testnet and then release it.
If in the meanwhile, full source code get released, AT team will probably revised their integration to fit to the latest code and Qora will decide if he is going to compile a new wallet version at that specific moment.
If the source code released after the wallet provided by AT team, then again, it will be merged.

Whether it's ready in time for them to win the bounty or not is another matter entirely.  But mostly I just want to see this cross-chain system up and running.  Even if it takes a bit more time to get it 100% right, the potential of this is genuinely exciting.  It's times like this when I wish I had some coding knowledge to contribute and help speed things along, but I'll have to settle for cheering from the sidelines.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on March 03, 2015, 03:26:36 AM
The bounty is for a Bitcoin clone (which Qora is not) and actually it is the CIYAM Developers who have written the AT code for Qora. :)

Also if I see progress from an alt coin developer by the end of the month (in terms of actual code having been written) then I will extend the deadline for this bounty.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: true-asset on March 09, 2015, 08:43:31 PM
http://mercuryex.com/

Trades happen entirely on the blockchain, with no risk of the exchange getting hacked or greedy exchange operators running off with your money. Your private keys are only stored on your computer.

ATOMIC SWAP PROTOCOL

Mercury uses the cross-chain atomic swap protocol to facilitate fully trustless peer-to-peer trading, no trusted third party required.



Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: Come-from-Beyond on March 09, 2015, 09:06:52 PM
Mercury uses the cross-chain atomic swap protocol to facilitate fully trustless peer-to-peer trading, no trusted third party required.

How is it atomic?


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on March 10, 2015, 05:45:26 AM
Although off-topic (and that service is not running on any "mainnet" yet) it is using the same method that the AT atomic cross-chain transfer was based upon (that which was first described by forum member TierNolan).

Note that the "refund" txs are problematic on Bitcoin (and most alts also) as the nLockTime is non-standard unless already past (i.e. you can't broadcast the refund via any normal method). Presumably you'll need to use their website for this part as well as finding other "orders" (making it still fundamentally a centralised service).


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on April 04, 2015, 06:08:31 PM
Well the Qora implementation of AT is nearly complete (I expect it to be released in the next few weeks) and still unfortunately we have seemingly no Bitcoin clone coders "up to the task" of implementing AT.

Unless I hear from some keen devs I think we will use the bounty to instead seed more work with those blockchains that have already adopted AT (we are now working on turning the ACCT AT into something much more like a *true decentralised exchange*).


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: bitcreditscc on April 05, 2015, 04:35:38 PM
will be looking into this soon. not for the bounty, but for cross chain bank transactions.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on April 05, 2015, 04:40:45 PM
will be looking into this soon. not for the bounty, but for cross chain bank transactions.

Although unfortunately initially we will only have the two blockchains to demonstrate our ACCT AT but what you will find is that we will have created a way to do trustless exchanges across those two blockchains with no need for a separate application (i.e. the trading will be able to be done within the two wallets of those blockchains).

This will set it apart from projects like Mercury that rely upon a centralised website to organise the trades.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: bitcreditscc on April 05, 2015, 04:57:43 PM
will be looking into this soon. not for the bounty, but for cross chain bank transactions.

Although unfortunately initially we will only have the two blockchains to demonstrate our ACCT AT but what you will find is that we will have created a way to do trustless exchanges across those two blockchains with no need for a separate application (i.e. the trading will be able to be done within the two wallets of those blockchains).

This will set it apart from projects like Mercury that rely upon a centralised website to organise the trades.


great , that is exactly where i am heading with this. I am working on experimental blockchain banking using a 2 tier network. I want to use the second tier as a gateway to other blockchains.


Title: Re: 20 BTC bounty for first AT *atomic cross-chain transfer* with Script clone
Post by: CIYAM on May 17, 2015, 12:32:03 PM
Since no-one took up the offer to implement AT on a Bitcoin clone I have decided to redirect these funds towards trying to find an LLVM/GCC developer to implement AT for a C++ compiler.

https://bitcointalk.org/index.php?topic=1063376.msg11400417#msg11400417

If people are still interested in implementing AT on a Bitcoin clone you are welcome to contact me and the CIYAM Team will help.