Comments (97)
Maybe change to "will"
from btcgpu.
Bounty for a critical feature opened 4 days before the planned fork.
What could possibly go wrong?
😇
from btcgpu.
from btcgpu.
I don't think you guys going to launch the fork on time, this 2 way replay protection must be done before launch.
I think the whole project is scam, its goal is just to manipulate the market, and it did the goal!
from btcgpu.
This is a scam. Their website claims replay protection as already implemented. Their argument of: "If it was scam none of the people will work nonstop for this.", doesn't hold water. People may be working nonstop with a hidden agenda or simply being fooled by this.
from btcgpu.
If all the people that has spend that many times in writing all the posts has focused to write just 1 line of code for each sentence of hate, we would have replay protection, unique address format, Lightning network and
What...?
Do you think this is how development process works, on complex tricky distributed crypto projects?
from btcgpu.
from btcgpu.
What a scam party, now ZCL/ZEN scammers joined the train.
from btcgpu.
@StarbuckBG I'm not picking a fight but replay protection is a deal breaker, a must have, a critical function. It puts everyone at ease, increases trust and mitigates risk, yet its been left for the last minute.
I know you are asking for people to contribute, I'm not a coder so I can't offer my help, however you need to learn how to better handle criticisms and not think everyone is out to hate you.
In this instance, you guys left a pretty big deal for very late in the game - but you sure as heck have had it on the website for as long as the website exists yet you only posted the bounty and request 3 days ago? SURELY you can see the error in that and that this should have been something that was thought about in July, not 3 days before the fork.
//just my 2 cents
from btcgpu.
I'm glued to this like it's the final episode of Game of Thrones season 8.
from btcgpu.
for i = 1 to 1000;
^ can I get 1/250th of the bounty for my one line of code?
from btcgpu.
Please see the pull request at #83.
This should be the completion of this bounty. Without a running node system some of the automated tests might fail, but the entire implementation is there and very likely correct:
DISCLAIMER: Should you choose to use it: none of this code has any warrantee, express or implied, usability for a particular purpose,etc blah blah
The pull request also fixes the vast majority of the warnings reported in #47
The task includes updating the test suite to use SIGHASH_FORKID, is clear and readable code, and the task is finished before 25.10.2017 12:00 UTC. It uses a FORKID=79, for the atomic number for gold.
Please review and let me know how to recieve the 300 BTG. We can make arrangements via PM.
EDIT: Due to the relative difficulty of making an account to exchange BTG for BTC, and the fact that no wallets exist yet, and the presumption that you already have such an account, I prefer to receive the equivalent value in BTC at the address 1Nphe82XxmoJSyWa5KgzsDEHV328oWWzxP using a market BTG/BTC exchange rate selected within 24 hours of the date the pull request is merged.
Presumably, if BTG both 1) has value, 2) is available to you on an exchange and 3) the value will increase, honoring this request will actually save you money by allowing you to keep your BTG tokens, so I would appreciate it.
from btcgpu.
from btcgpu.
Your project has devs savvy enough to change PoW algo and to premine, but not to code replay protection?! What gives? You knew the replay protection is a MUST, knew it before any other decisions about the alt coin were made. Please explain.
from btcgpu.
It is scam because this method did not implement but the website noticed that it has implemented. Please remove the feature
from btcgpu.
I was the one that came up with the idea initially for the SIGHASH_FORKID
Just make sure to use a different forkid and also different default ports will simplify people running both BTC and BTG at the same time.
Let me know if you need help
from btcgpu.
I wanted to write here (and on the PR page) to confirm that with the code implemented and the bounty completed, the BTG team has followed through with payment of the bounty in full, on time, in the manner that I preferred. This instills a significant amount of faith (to me) that the project is being run by people who have a deep sense of professionalism, and I am grateful to them for the opportunity.
Thank you very much.
from btcgpu.
连重放保护都不会做的垃圾币,**廖翔,自己偷摸挖了这么多币只拿出这点来,下次麻烦多那点钱给搬砖的。
from btcgpu.
I think you are not answering my question.
Where will you get 250+50 BTG to pay me?
from btcgpu.
@StarbuckBG we don't hate. we actually liked the GPU idea, it might be the relief from all the ETH hashrate. it's really needed. but, the way you guys communicate with us is a joke. the way you hide the premine and don't talk about it is a joke. i still might throw all my 155 k/sol towards you, but i doubt it every day more.
from btcgpu.
Parody shit coin, take this coin and throw to the dumpster :)
from btcgpu.
Just cherry-pick it from bitcoin-abc what a problem.
from btcgpu.
The code compiles on Arch Linux just fine. Posting a "Replay protection bounty" just a few days before the fork is a bad joke. Seriously, given all the premined coins you reserve for yourself, you could not handle this on time?
If you cannot compile the code, refer to issue #60, don't post it here.
Cheers,
Ethan
from btcgpu.
@ICPPDS , what I think people don't realize is the SIGHASH_FORK_ID implementation of replay protection is complicated. It was implemented on Bitcoin Cash where there is no SegWit. Bitcoin Gold also has SegWit, so it is different.
The solution I proposed is very simple, very strong, works with SegWit or legacy transactions, and is endorsed by Greg Maxwell (at least the method, he has not reviewed my code).
I am going back to work on a SIGHASH_FORK_ID implementation though, because I think people want that just because it worked well in Bitcoin Cash.
I agree, we want very strong replay protection, audited and reviewed by everyone. When people say, "just take it from Bitcoin Cash", I think they have not looked at the code.
Here is one of the commits for Bitcoin Cash's SIGHASH_FORK_ID implementation. Do people really think this is a better option? Everyone who does, please seriously look at the complexity of this code:
Bitcoin-ABC/bitcoin-abc@e49826c
from btcgpu.
Why would anybody be working on this now? The scam is over. The bitcoin gold site is down. Money was made speculating on btc gaining against the alts before the forking block and the alts getting their value back after the forking block.
from btcgpu.
@heyrhett
were you able to get it to compile yet?
If something smells like shit, you dont have to taste it. (c) FYMIYWF
At least not until there is a functional testnet.
from btcgpu.
Oh look... 35 blocks to go - scammers.
from btcgpu.
from btcgpu.
@EliasZ mechanism is easy to explain. they promise us to keep the funds.
how dare you questioning this? ;)
from btcgpu.
from btcgpu.
What is this ? Killing all the crypto markets! Biggest meme of the century
from btcgpu.
Bitcoin Gold is not launching today.
I know they are calling it a "fork", and many people are expecting it to be similar to the Bitcoin Cash fork (where the snapshot and launch occurred simultaneously), but the only thing happening today is they are making a copy of the Bitcoin blockchain for future use with Bitcoin Gold.
Nothing is going live today. You will not be able to mine, send, receive or do anything else with Bitcoin Gold other than trade it on the few exchanges currently supporting it.
See #39 -- The Bitcoin Gold team has advised that the testnet and mainnet have not been coded yet and they will be reopening a bounty ticket soon with details for anyone who wants to create it for them. I'm sure replay protection will be included during the development of Bitcoin Gold and will be ready by launch, but that is not today and I have not seen an ETA for the actual launch.
from btcgpu.
Well, first of all, im bored at work, that's why i asked.
But most important is because if the wallet and the mainnet are released without Replay protection, and this is a scam, people could rob BTCs just asking some BTG. Which is much worse than just price speculation.
from btcgpu.
from btcgpu.
@mjoh090 I hope your right. - since I feel like its a scam - The point is they are offering a bounty in BTG for replay protection when they already sold BTG as having replay protection. I do hope things go well, but this bounty is scam/clownish. If you don't know how to make the signatures exclusive in your crypto you should slow way the heck down.
from btcgpu.
Then, if I solve this I will be payed with 250 BTG locked for the next 3 years? Sounds great!
from btcgpu.
working on this
from btcgpu.
@nisenbaum protip: it's a scam. carry on.
from btcgpu.
from btcgpu.
😂
from btcgpu.
200k premine, that's lots of bounty hunting :>
from btcgpu.
Replay protection has todo with time()
Note that's GNU specific. date +%s%6N for microseconds.
from btcgpu.
@krtschmr
cd depends; make ; <wait 30 minutes>
cd ..
./autogen.sh; ./configure --prefix=/home/username/BTCGPU/depends/x86_64-pc-linux-gnu
make
from btcgpu.
from btcgpu.
from btcgpu.
:)). Do you receive the BTG,@ileathan. I also think it is the scam because the main feature does not complete but they report on the website that it "has implemented".
from btcgpu.
Closed my pull request as it did not provide adequate replay protection.
Bitcoin blocks do not currently enforce that a tx version number must be > 0, even though the mempool will reject txns with versions less than 0.
An attacker could therefore mine a block on bitcoin with a txn that has a negative version number, so the simple method implemented in my pull request is not adequate and I closed the pull request.
I believe a SIGHASH_FORKID method is the best approach, though it will require careful review and testing.
from btcgpu.
@jb55 - Let's not be so judgmental. :) Can we call it "ForkDrop"TM? Innovation sometimes hides in the most unlikely places. I liken this to bacteria in the early moments of life on earth. Endless copying and reproducing, rapid decay and occasional viable mutation. There is a downside of course, as the name of bitcoin gets purposely attached to an alt coin, but that's a price of open source freedom.
from btcgpu.
Let's call your 'pre_fork_wallet' X and your 'btc_wallet' Y. What we want to do is transfer value X->Y in such a way that no attacker can rebroadcast the valid transaction from one chain onto another and steal (or strand) our value on the other chain. We call this 'replay protection.'
In the example you gave, value is transferred X->Y and Y->Z, where X and Y are locally controlled wallets and Z may be controlled by a third-party (like an exchange). Your assumption is that, because addresses in Y have not existed on the BTG blockchain, this protocol would provide replay protection. However, an attacker who rebroadcasts the valid transaction X->Y on the other chain introduces those addresses to that chain. By itself, this is a mere inconvenience. Provided they possess the seed, one could recreate Y later in a client and regain their value. However, a valid transaction Y->Z that were rebroadcast, where Z is third-party controlled, runs a real risk of stranding value or facilitating its theft.
For this reason, your protocol does not provide replay protection.
from btcgpu.
@ileathan I think it is more the case of ambition exceeding ability. While the launch of this project has been shambolic, their engagement at times with the community is abysmal.
I was on the slack channel before, and the question was asked about when BTG will be added to the Bittrex Exchange. Someone said "Never" at which point the founder Jack Liao jumps in with following response:
" suppprt or not, its up to exchange.but they need to give btg to their client.this is bottom"
I know English is not his first language, but there is still an astonishing lack of care in his response.
He was provided with context and therefore with opportunity to remind the community of the particular issues prohibiting uptake by Bittrex and the other major Exchanges, and how they were addressing those issues to win their confidence and encourage future uptake by those major Exchanges. Instead he writes something tonally belligerent that borders on unintelligible.
For such a high profile new coin release, the seeming lack of organisation (Martin indicated elsewhere that he hardly communicates with Jack) and professionalism of the team behind this coin is surprising, and alarming.
from btcgpu.
I'll take a stab at this, even though someone with more BTC experience will probably stomp me. Building project now.
from btcgpu.
Great! We also have one person working on this and maybe we can collaborate to speed up the progress. (All the bounty belongs to you.)
from btcgpu.
Collab == good. I'm on Bitcoin Gold slack as LxF77.
from btcgpu.
I thought this was a "work in progress" for the last 2+ weeks?
#18 (comment)
If that's the case, share the branch for bounty hunters to have a starting point.
from btcgpu.
@StarbuckBG where will you get the 250+50 BTG? If you fork the BTC blockchain, you need that amount in BTC today.
from btcgpu.
from btcgpu.
paid whit BTG? ok, where do you get it? you need to make a transaction to my wallet. and the inputs came from another wallet. these 250+50 can not "appear magically", thay need to exists in the BTG blockchain.
from btcgpu.
from btcgpu.
from btcgpu.
ok, thanks for your answer.
from btcgpu.
from btcgpu.
So the premine is not time locked after all? Because otherwise you would need 250 BTC right now.
from btcgpu.
mainnet will not launch without 2way replay protection, it's cooking, so is implementing
is better
from btcgpu.
What mechanism is used for timelocking the funds?
from btcgpu.
Hi @sammy007 , nice to see you, were you able to get it to compile yet?
from btcgpu.
nobody were able. not even the fix compile errors commit fixed that shit.
from btcgpu.
Please review my pull request: #62
from btcgpu.
I neither see funds/premine time locking nor replay protection implemented yet, can someone point me to that code ?! It seems I can just mine blocks like on every other (bitcoin-) fork.
from btcgpu.
Is someone working on implementing replay protection using SIGHASH_FORK and would like some help?
from btcgpu.
any news?
from btcgpu.
Since there is no replay protection yet, see #66
from btcgpu.
They know what there are doing. They have just what is necessary, the minimal to launch their fork . And their need to launch quickly is understandable.
Replay protection unavailable: It's a bad point ! Really But they have mesured the the risk in term of timing before they do it. What I don't like is that they launch making the people money at risk.
You all criticized their premining, but I find it reasonable. when you understand that it's their project
and their work that will build a good part of the value of their exit (say half of the value, probably more after, the other is inherited of bitcoin and people investment) . And if you are so irritated is because you believe in their project...
If they succeed in the next day, I think we could applaud this dream team !
Hey the team ? I have only an ATI Radeon 3600 HD ! When your receive your fat money, please send me 1 btg to thank me for the support so I can mine on one of your pool. I will post my address . We never know.
Support them ! for what they bring
from btcgpu.
from btcgpu.
@StarbuckBG Did you find my post as a hate post ?
from btcgpu.
@StarbuckBG Because I tried to support!
from btcgpu.
@StarbuckBG Edited but it's just because I'm not sure that people read it as I wanted to express it.
from btcgpu.
from btcgpu.
@StarbuckBG You say help but If you created a small fund for small bounty 1,13,10,20 btg. You will have a lot of helper. What you and your team have done is offering hundred of btg for building very big part of your work . There is no helper when you are you are so closed and you are premining. If there are no money or the coin is already launched then we are opensource minded. Otherwise no ! 4 block left Good Luck !!! :) :)
from btcgpu.
@StarbuckBG
I came into this project just 2 weeks ago
I did not know that. But thank you for working hard to fix this.
from btcgpu.
interesting
from btcgpu.
On it.
from btcgpu.
@heyrhett I hope they pay you well (I see no bounty information). Or I guess you have alot of btc like them or the premine IDK... but by definition this is a scam now that it is trading and the information on their website has been shown to be flat dishonest. Wish I held my btc on yobit or bleutrade right now.
from btcgpu.
Isn't this called a "forward looking statement"? There should be a disclaimer, something like: "This website and other items we publish, including through social media outlets, may contain forward-looking statements, the achievement or success of which involves risks, uncertainties, and assumptions. If any such risks or uncertainties materialize or if any of the assumptions proves incorrect, the results of Bitcoin Gold could differ materially from the results expressed or implied by the forward-looking statements we make." (copied from Salesforce.com)
from btcgpu.
So there's no one working on this right now?
from btcgpu.
from btcgpu.
@StarbuckBG I know that the fork is not yet released that was i asked if someone was working on this.
from btcgpu.
Ok, I am working on this part, we can share our code, this is only a small part of the code
from btcgpu.
Is BTG developers don't know how do it? o_O
from btcgpu.
too shame on BTG team.hope the BTC core dev team will help you secretly.
from btcgpu.
(updated 3. below with suggestion from bit79 below)
Any possibility one of the devs who understands the tech can comment on whether the following strategy would work for splitting coins currently in an exchange (or a local wallet) into separate wallets for each of BTC and BTG? I am a newbie to cryptocurrencies but this seems to me to be a valid strategy for avoiding the whole replay issue altogether:
- Before or after Oct 25 / block 491407 (note, this has already passed, so not useful unless you had a local wallet before this time)
-
if you don't have a local wallet, create one with a client such as electrum (or, other people seem to be suggesting coinomi?). give it a name something like for example "pre_fork_wallet"
-
withdraw BTC from any exchanges into an address from your 'pre_fork_wallet' local wallet file
- After Oct 25,26 / block 491407, but BEFORE Nov 1
-
open pre_fork_wallet and use your client to export the addresses/private keys into a text format that will be able to be loaded into a BTG client at a later date. This will be used to create/import addresses into the BTG wallet after the BTG network launches on Nov 1. (The addresses in this wallet had BTC associated with them at the time of the fork, and will have BTG associated with them when the new network is operating). (and if the client uses a deterministic wallet with a seed and reproducible addresses, perhaps it is enough to simply have a very accurate record of this seed, noting that it will, later, be the seed to use for the BTG wallet?)
-
create a new local wallet file, naming it something like "btc_wallet". (This will be your BTC wallet which will contain addresses with BTC only and which do not have any BTG associated).
-
open pre_fork_wallet, and btc_wallet
-
use your local client to perform transactions/transfers to transfer all BTC from the addresses in pre_fork_wallet, to new address(es) in the new "btc_wallet" wallet.
-
now you can use 'btc_wallet' for BTC only transactions, without concern for using them on the wrong network. (The addresses in this wallet never existed on the BTG blockchain because this wallet was created after the snapshot, and your BTC balances were transferred to these addresses only after the snapshot, and before the BTG network was operating).
- After the BTG network launches (approx Nov 1)
- use 'btg_wallet' (or address/private-key combinations exported from it) with a (new?) client that supports BTG, for BTG transactions only. (The addresses in this wallet were those which had a balance associated at the time of the blockchain snapshort/fork, and hence do have a BTG balance after the new network launched.
Does this sound reasonable? Any mistakes in the suggested strategy above? Publicising some simple strategy like this (if it would do the trick) that users can take themselves would assist in stopping people worrying too much about the replay stuff. But the strategy above relies on steps being taken between Oct 25 and Nov 1, which is coming up pretty quickly.
from btcgpu.
You don't really need a copy of the wallet - just the private key of your address of step 2. After block 491407 (already happened), move your bitcoins to another address, and never reuse the address of step 2. When (if) BTG releases a wallet, import the private key of step 2.
from btcgpu.
yeah I thought that was likely the case however as I'm not aware of the binary format for the wallet files of any of the clients, I thought it's possible they might store cached balances and such in a binary format, so after the transfer from one wallet to another, the client might think the wallet is empty unless it is a full node that checks the actual blockchain? So thought it safest to just take a copy before the transfer. But yeah that would be unnecessary if the addresses/keys are being imported into a new btg-supporting client app anyway. I'll edit the above to add that simplification.
from btcgpu.
Total scam.
from btcgpu.
@jl777 I guess you have the btc so i understand your help, but they are by definition dishonest and have continued to be so for many weeks now. If you actually help them, tell them to atleast make some sort of apology, I wanted to keep my BTG but i was forced to sell out when I saw a public bounty like that (in the coin sold as having the protection), just banking off some btc whale like you saving them.
I mean am I the only one who noticed (BTG) Bitgem was the better buy out of this btc gold news...
from btcgpu.
@BTCGReplayUS Thanks for the update, and congratulations on your windfall.
I for one never doubted that they would follow through on paying the bounty - it would have been 'lights-out' if they didn't.
Your comment's inclusion of 'to me' qualifies your graciousness and gratitude with an awareness that this payment in reality does not invalidate persistent concerns for the rest of us, and therefore does not diminish the need for continued vigilance.
from btcgpu.
#109 Close?
from btcgpu.
Sure.
from btcgpu.
Related Issues (20)
- Potential Wallet Address Book Info Leakage
- Upgrade to upstream v0.21 HOT 2
- Vulnerable Settings for DoS Attack
- Privacy Enhancement
- Enhancements for Preventing Two Kinds of Attacks HOT 1
- Backports from Bitcoin HOT 3
- Cámbio
- Depositar
- Yo
- T
- Lid BTC
- U
- Enhancing-Bitcoin Gold-Privacy-Protocol-Bip-Proposal HOT 1
- Make has errors with Qt and crashes. The following report is for v163928af05b09a20efe330157fd0dc8a5211e286 but similar/same happened now with 0.17.3 (didn't in the past.) Compiling with Qt was expected. Make crashed with Qt errors. It happened after autogen.sh, configure, make. I used v163928af05b09a20efe330157fd0dc8a5211e286 (latest git as of an hour ago) from here. I used KDE Neon 5.23 (Kubuntu 20.04 with the only difference being a newer KDE on top) on i7 w/NVME/SSD. HOT 2
- chain.cpp error when starting app. HOT 6
- 12
- 33
- wallet: wallet unload race condition
- net: Direct fixes for CVE-2013-5700
- wallet: Problems with scriptPubKey in CRecipient
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from btcgpu.