How do I make a PATCH request in PHP using cURL? - Stack ...
How do I make a PATCH request in PHP using cURL? - Stack ...
Server Document Root Path in PHP - Stack Overflow
Cryptocurrency Mining Script – PHP Scripts Mall
Data directory - Bitcoin Wiki
BTC-Miner - Bitcoin mining in your browser
Bob The Magic Custodian
Summary: Everyone knows that when you give your assets to someone else, they always keep them safe. If this is true for individuals, it is certainly true for businesses. Custodians always tell the truth and manage funds properly. They won't have any interest in taking the assets as an exchange operator would. Auditors tell the truth and can't be misled. That's because organizations that are regulated are incapable of lying and don't make mistakes. First, some background. Here is a summary of how custodians make us more secure: Previously, we might give Alice our crypto assets to hold. There were risks:
Alice might take the assets and disappear.
Alice might spend the assets and pretend that she still has them (fractional model).
Alice might store the assets insecurely and they'll get stolen.
Alice might give the assets to someone else by mistake or by force.
Alice might lose access to the assets.
But "no worries", Alice has a custodian named Bob. Bob is dressed in a nice suit. He knows some politicians. And he drives a Porsche. "So you have nothing to worry about!". And look at all the benefits we get:
Alice can't take the assets and disappear (unless she asks Bob or never gives them to Bob).
Alice can't spend the assets and pretend that she still has them. (Unless she didn't give them to Bob or asks him for them.)
Alice can't store the assets insecurely so they get stolen. (After all - she doesn't have any control over the withdrawal process from any of Bob's systems, right?)
Alice can't give the assets to someone else by mistake or by force. (Bob will stop her, right Bob?)
Alice can't lose access to the funds. (She'll always be present, sane, and remember all secrets, right?)
See - all problems are solved! All we have to worry about now is:
Bob might take the assets and disappear.
Bob might spend the assets and pretend that he still has them (fractional model).
Bob might store the assets insecurely and they'll get stolen.
Bob might give the assets to someone else by mistake or by force.
Bob might lose access to the assets.
It's pretty simple. Before we had to trust Alice. Now we only have to trust Alice, Bob, and all the ways in which they communicate. Just think of how much more secure we are! "On top of that", Bob assures us, "we're using a special wallet structure". Bob shows Alice a diagram. "We've broken the balance up and store it in lots of smaller wallets. That way", he assures her, "a thief can't take it all at once". And he points to a historic case where a large sum was taken "because it was stored in a single wallet... how stupid". "Very early on, we used to have all the crypto in one wallet", he said, "and then one Christmas a hacker came and took it all. We call him the Grinch. Now we individually wrap each crypto and stick it under a binary search tree. The Grinch has never been back since." "As well", Bob continues, "even if someone were to get in, we've got insurance. It covers all thefts and even coercion, collusion, and misplaced keys - only subject to the policy terms and conditions." And with that, he pulls out a phone-book sized contract and slams it on the desk with a thud. "Yep", he continues, "we're paying top dollar for one of the best policies in the country!" "Can I read it?' Alice asks. "Sure," Bob says, "just as soon as our legal team is done with it. They're almost through the first chapter." He pauses, then continues. "And can you believe that sales guy Mike? He has the same year Porsche as me. I mean, what are the odds?" "Do you use multi-sig?", Alice asks. "Absolutely!" Bob replies. "All our engineers are fully trained in multi-sig. Whenever we want to set up a new wallet, we generate 2 separate keys in an air-gapped process and store them in this proprietary system here. Look, it even requires the biometric signature from one of our team members to initiate any withdrawal." He demonstrates by pressing his thumb into the display. "We use a third-party cloud validation API to match the thumbprint and authorize each withdrawal. The keys are also backed up daily to an off-site third-party." "Wow that's really impressive," Alice says, "but what if we need access for a withdrawal outside of office hours?" "Well that's no issue", Bob says, "just send us an email, call, or text message and we always have someone on staff to help out. Just another part of our strong commitment to all our customers!" "What about Proof of Reserve?", Alice asks. "Of course", Bob replies, "though rather than publish any blockchain addresses or signed transaction, for privacy we just do a SHA256 refactoring of the inverse hash modulus for each UTXO nonce and combine the smart contract coefficient consensus in our hyperledger lightning node. But it's really simple to use." He pushes a button and a large green checkmark appears on a screen. "See - the algorithm ran through and reserves are proven." "Wow", Alice says, "you really know your stuff! And that is easy to use! What about fiat balances?" "Yeah, we have an auditor too", Bob replies, "Been using him for a long time so we have quite a strong relationship going! We have special books we give him every year and he's very efficient! Checks the fiat, crypto, and everything all at once!" "We used to have a nice offline multi-sig setup we've been using without issue for the past 5 years, but I think we'll move all our funds over to your facility," Alice says. "Awesome", Bob replies, "Thanks so much! This is perfect timing too - my Porsche got a dent on it this morning. We have the paperwork right over here." "Great!", Alice replies. And with that, Alice gets out her pen and Bob gets the contract. "Don't worry", he says, "you can take your crypto-assets back anytime you like - just subject to our cancellation policy. Our annual management fees are also super low and we don't adjust them often". How many holes have to exist for your funds to get stolen? Just one. Why are we taking a powerful offline multi-sig setup, widely used globally in hundreds of different/lacking regulatory environments with 0 breaches to date, and circumventing it by a demonstrably weak third party layer? And paying a great expense to do so? If you go through the list of breaches in the past 2 years to highly credible organizations, you go through the list of major corporate frauds (only the ones we know about), you go through the list of all the times platforms have lost funds, you go through the list of times and ways that people have lost their crypto from identity theft, hot wallet exploits, extortion, etc... and then you go through this custodian with a fine-tooth comb and truly believe they have value to add far beyond what you could, sticking your funds in a wallet (or set of wallets) they control exclusively is the absolute worst possible way to take advantage of that security. The best way to add security for crypto-assets is to make a stronger multi-sig. With one custodian, what you are doing is giving them your cryptocurrency and hoping they're honest, competent, and flawlessly secure. It's no different than storing it on a really secure exchange. Maybe the insurance will cover you. Didn't work for Bitpay in 2015. Didn't work for Yapizon in 2017. Insurance has never paid a claim in the entire history of cryptocurrency. But maybe you'll get lucky. Maybe your exact scenario will buck the trend and be what they're willing to cover. After the large deductible and hopefully without a long and expensive court battle. And you want to advertise this increase in risk, the lapse of judgement, an accident waiting to happen, as though it's some kind of benefit to customers ("Free institutional-grade storage for your digital assets.")? And then some people are writing to the OSC that custodians should be mandatory for all funds on every exchange platform? That this somehow will make Canadians as a whole more secure or better protected compared with standard air-gapped multi-sig? On what planet? Most of the problems in Canada stemmed from one thing - a lack of transparency. If Canadians had known what a joke Quadriga was - it wouldn't have grown to lose $400m from hard-working Canadians from coast to coast to coast. And Gerald Cotten would be in jail, not wherever he is now (at best, rotting peacefully). EZ-BTC and mister Dave Smilie would have been a tiny little scam to his friends, not a multi-million dollar fraud. Einstein would have got their act together or been shut down BEFORE losing millions and millions more in people's funds generously donated to criminals. MapleChange wouldn't have even been a thing. And maybe we'd know a little more about CoinTradeNewNote - like how much was lost in there. Almost all of the major losses with cryptocurrency exchanges involve deception with unbacked funds. So it's great to see transparency reports from BitBuy and ShakePay where someone independently verified the backing. The only thing we don't have is:
ANY CERTAINTY BALANCES WEREN'T EXCLUDED. Quadriga's largest account was $70m. 80% of funds are in 20% of accounts (Pareto principle). All it takes is excluding a few really large accounts - and nobody's the wiser. A fractional platform can easily pass any audit this way.
ANY VISIBILITY WHATSOEVER INTO THE CUSTODIANS. BitBuy put out their report before moving all the funds to their custodian and ShakePay apparently can't even tell us who the custodian is. That's pretty important considering that basically all of the funds are now stored there.
ANY IDEA ABOUT THE OTHER EXCHANGES. In order for this to be effective, it has to be the norm. It needs to be "unusual" not to know. If obscurity is the norm, then it's super easy for people like Gerald Cotten and Dave Smilie to blend right in.
It's not complicated to validate cryptocurrency assets. They need to exist, they need to be spendable, and they need to cover the total balances. There are plenty of credible people and firms across the country that have the capacity to reasonably perform this validation. Having more frequent checks by different, independent, parties who publish transparent reports is far more valuable than an annual check by a single "more credible/official" party who does the exact same basic checks and may or may not publish anything. Here's an example set of requirements that could be mandated:
First report within 1 month of launching, another within 3 months, and further reports at minimum every 6 months thereafter.
No auditor can be repeated within a 12 month period.
All reports must be public, identifying the auditor and the full methodology used.
All auditors must be independent of the firm being audited with no conflict of interest.
Reports must include the percentage of each asset backed, and how it's backed.
The auditor publishes a hash list, which lists a hash of each customer's information and balances that were included. Hash is one-way encryption so privacy is fully preserved. Every customer can use this to have 100% confidence they were included.
If we want more extensive requirements on audits, these should scale upward based on the total assets at risk on the platform, and whether the platform has loaned their assets out.
There are ways to structure audits such that neither crypto assets nor customer information are ever put at risk, and both can still be properly validated and publicly verifiable. There are also ways to structure audits such that they are completely reasonable for small platforms and don't inhibit innovation in any way. By making the process as reasonable as possible, we can completely eliminate any reason/excuse that an honest platform would have for not being audited. That is arguable far more important than any incremental improvement we might get from mandating "the best of the best" accountants. Right now we have nothing mandated and tons of Canadians using offshore exchanges with no oversight whatsoever. Transparency does not prove crypto assets are safe. CoinTradeNewNote, Flexcoin ($600k), and Canadian Bitcoins ($100k) are examples where crypto-assets were breached from platforms in Canada. All of them were online wallets and used no multi-sig as far as any records show. This is consistent with what we see globally - air-gapped multi-sig wallets have an impeccable record, while other schemes tend to suffer breach after breach. We don't actually know how much CoinTrader lost because there was no visibility. Rather than publishing details of what happened, the co-founder of CoinTrader silently moved on to found another platform - the "most trusted way to buy and sell crypto" - a site that has no information whatsoever (that I could find) on the storage practices and a FAQ advising that “[t]rading cryptocurrency is completely safe” and that having your own wallet is “entirely up to you! You can certainly keep cryptocurrency, or fiat, or both, on the app.” Doesn't sound like much was learned here, which is really sad to see. It's not that complicated or unreasonable to set up a proper hardware wallet. Multi-sig can be learned in a single course. Something the equivalent complexity of a driver's license test could prevent all the cold storage exploits we've seen to date - even globally. Platform operators have a key advantage in detecting and preventing fraud - they know their customers far better than any custodian ever would. The best job that custodians can do is to find high integrity individuals and train them to form even better wallet signatories. Rather than mandating that all platforms expose themselves to arbitrary third party risks, regulations should center around ensuring that all signatories are background-checked, properly trained, and using proper procedures. We also need to make sure that signatories are empowered with rights and responsibilities to reject and report fraud. They need to know that they can safely challenge and delay a transaction - even if it turns out they made a mistake. We need to have an environment where mistakes are brought to the surface and dealt with. Not one where firms and people feel the need to hide what happened. In addition to a knowledge-based test, an auditor can privately interview each signatory to make sure they're not in coercive situations, and we should make sure they can freely and anonymously report any issues without threat of retaliation. A proper multi-sig has each signature held by a separate person and is governed by policies and mutual decisions instead of a hierarchy. It includes at least one redundant signature. For best results, 3of4, 3of5, 3of6, 4of5, 4of6, 4of7, 5of6, or 5of7. History has demonstrated over and over again the risk of hot wallets even to highly credible organizations. Nonetheless, many platforms have hot wallets for convenience. While such losses are generally compensated by platforms without issue (for example Poloniex, Bitstamp, Bitfinex, Gatecoin, Coincheck, Bithumb, Zaif, CoinBene, Binance, Bitrue, Bitpoint, Upbit, VinDAX, and now KuCoin), the public tends to focus more on cases that didn't end well. Regardless of what systems are employed, there is always some level of risk. For that reason, most members of the public would prefer to see third party insurance. Rather than trying to convince third party profit-seekers to provide comprehensive insurance and then relying on an expensive and slow legal system to enforce against whatever legal loopholes they manage to find each and every time something goes wrong, insurance could be run through multiple exchange operators and regulators, with the shared interest of having a reputable industry, keeping costs down, and taking care of Canadians. For example, a 4 of 7 multi-sig insurance fund held between 5 independent exchange operators and 2 regulatory bodies. All Canadian exchanges could pay premiums at a set rate based on their needed coverage, with a higher price paid for hot wallet coverage (anything not an air-gapped multi-sig cold wallet). Such a model would be much cheaper to manage, offer better coverage, and be much more reliable to payout when needed. The kind of coverage you could have under this model is unheard of. You could even create something like the CDIC to protect Canadians who get their trading accounts hacked if they can sufficiently prove the loss is legitimate. In cases of fraud, gross negligence, or insolvency, the fund can be used to pay affected users directly (utilizing the last transparent balance report in the worst case), something which private insurance would never touch. While it's recommended to have official policies for coverage, a model where members vote would fully cover edge cases. (Could be similar to the Supreme Court where justices vote based on case law.) Such a model could fully protect all Canadians across all platforms. You can have a fiat coverage governed by legal agreements, and crypto-asset coverage governed by both multi-sig and legal agreements. It could be practical, affordable, and inclusive. Now, we are at a crossroads. We can happily give up our freedom, our innovation, and our money. We can pay hefty expenses to auditors, lawyers, and regulators year after year (and make no mistake - this cost will grow to many millions or even billions as the industry grows - and it will be borne by all Canadians on every platform because platforms are not going to eat up these costs at a loss). We can make it nearly impossible for any new platform to enter the marketplace, forcing Canadians to use the same stagnant platforms year after year. We can centralize and consolidate the entire industry into 2 or 3 big players and have everyone else fail (possibly to heavy losses of users of those platforms). And when a flawed security model doesn't work and gets breached, we can make it even more complicated with even more people in suits making big money doing the job that blockchain was supposed to do in the first place. We can build a system which is so intertwined and dependent on big government, traditional finance, and central bankers that it's future depends entirely on that of the fiat system, of fractional banking, and of government bail-outs. If we choose this path, as history has shown us over and over again, we can not go back, save for revolution. Our children and grandchildren will still be paying the consequences of what we decided today. Or, we can find solutions that work. We can maintain an open and innovative environment while making the adjustments we need to make to fully protect Canadian investors and cryptocurrency users, giving easy and affordable access to cryptocurrency for all Canadians on the platform of their choice, and creating an environment in which entrepreneurs and problem solvers can bring those solutions forward easily. None of the above precludes innovation in any way, or adds any unreasonable cost - and these three policies would demonstrably eliminate or resolve all 109 historic cases as studied here - that's every single case researched so far going back to 2011. It includes every loss that was studied so far not just in Canada but globally as well. Unfortunately, finding answers is the least challenging part. Far more challenging is to get platform operators and regulators to agree on anything. My last post got no response whatsoever, and while the OSC has told me they're happy for industry feedback, I believe my opinion alone is fairly meaningless. This takes the whole community working together to solve. So please let me know your thoughts. Please take the time to upvote and share this with people. Please - let's get this solved and not leave it up to other people to do. Facts/background/sources (skip if you like):
The inspiration for the paragraph about splitting wallets was an actual quote from a Canadian company providing custodial services in response to the OSC consultation paper: "We believe that it will be in the in best interests of investors to prohibit pooled crypto assets or ‘floats’. Most Platforms pool assets, citing reasons of practicality and expense. The recent hack of the world’s largest Platform – Binance – demonstrates the vulnerability of participants’ assets when such concessions are made. In this instance, the Platform’s entire hot wallet of Bitcoins, worth over $40 million, was stolen, facilitated in part by the pooling of client crypto assets." "the maintenance of participants (and Platform) crypto assets across multiple wallets distributes the related risk and responsibility of security - reducing the amount of insurance coverage required and making insurance coverage more readily obtainable". For the record, their reply also said nothing whatsoever about multi-sig or offline storage.
In addition to the fact that the $40m hack represented only one "hot wallet" of Binance, and they actually had the vast majority of assets in other wallets (including mostly cold wallets), multiple real cases have clearly demonstrated that risk is still present with multiple wallets. Bitfinex, VinDAX, Bithumb, Altsbit, BitPoint, Cryptopia, and just recently KuCoin all had multiple wallets breached all at the same time, and may represent a significantly larger impact on customers than the Binance breach which was fully covered by Binance. To represent that simply having multiple separate wallets under the same security scheme is a comprehensive way to reduce risk is just not true.
Private insurance has historically never covered a single loss in the cryptocurrency space (at least, not one that I was able to find), and there are notable cases where massive losses were not covered by insurance. Bitpay in 2015 and Yapizon in 2017 both had insurance policies that didn't pay out during the breach, even after a lengthly court process. The same insurance that ShakePay is presently using (and announced to much fanfare) was describe by their CEO himself as covering “physical theft of the media where the private keys are held,” which is something that has never historically happened. As was said with regard to the same policy in 2018 - “I don’t find it surprising that Lloyd’s is in this space,” said Johnson, adding that to his mind the challenge for everybody is figuring out how to structure these policies so that they are actually protective. “You can create an insurance policy that protects no one – you know there are so many caveats to the policy that it’s not super protective.”
The most profitable policy for a private insurance company is one with the most expensive premiums that they never have to pay a claim on. They have no inherent incentive to take care of people who lost funds. It's "cheaper" to take the reputational hit and fight the claim in court. The more money at stake, the more the insurance provider is incentivized to avoid payout. They're not going to insure the assets unless they have reasonable certainty to make a profit by doing so, and they're not going to pay out a massive sum unless it's legally forced. Private insurance is always structured to be maximally profitable to the insurance provider.
The circumvention of multi-sig was a key factor in the massive Bitfinex hack of over $60m of bitcoin, which today still sits being slowly used and is worth over $3b. While Bitfinex used a qualified custodian Bitgo, which was and still is active and one of the industry leaders of custodians, and they set up 2 of 3 multi-sig wallets, the entire system was routed through Bitfinex, such that Bitfinex customers could initiate the withdrawals in a "hot" fashion. This feature was also a hit with the hacker. The multi-sig was fully circumvented.
Bitpay in 2015 was another example of a breach that stole 5,000 bitcoins. This happened not through the exploit of any system in Bitpay, but because the CEO of a company they worked with got their computer hacked and the hackers were able to request multiple bitcoin purchases, which Bitpay honoured because they came from the customer's computer legitimately. Impersonation is a very common tactic used by fraudsters, and methods get more extreme all the time.
A notable case in Canada was the Canadian Bitcoins exploit. Funds were stored on a server in a Rogers Data Center, and the attendee was successfully convinced to reboot the server "in safe mode" with a simple phone call, thus bypassing the extensive security and enabling the theft.
The very nature of custodians circumvents multi-sig. This is because custodians are not just having to secure the assets against some sort of physical breach but against any form of social engineering, modification of orders, fraudulent withdrawal attempts, etc... If the security practices of signatories in a multi-sig arrangement are such that the breach risk of one signatory is 1 in 100, the requirement of 3 independent signatures makes the risk of theft 1 in 1,000,000. Since hackers tend to exploit the weakest link, a comparable custodian has to make the entry and exit points of their platform 10,000 times more secure than one of those signatories to provide equivalent protection. And if the signatories beef up their security by only 10x, the risk is now 1 in 1,000,000,000. The custodian has to be 1,000,000 times more secure. The larger and more complex a system is, the more potential vulnerabilities exist in it, and the fewer people can understand how the system works when performing upgrades. Even if a system is completely secure today, one has to also consider how that system might evolve over time or work with different members.
By contrast, offline multi-signature solutions have an extremely solid record, and in the entire history of cryptocurrency exchange incidents which I've studied (listed here), there has only been one incident (796 exchange in 2015) involving an offline multi-signature wallet. It happened because the customer's bitcoin address was modified by hackers, and the amount that was stolen ($230k) was immediately covered by the exchange operators. Basically, the platform operators were tricked into sending a legitimate withdrawal request to the wrong address because hackers exploited their platform to change that address. Such an issue would not be prevented in any way by the use of a custodian, as that custodian has no oversight whatsoever to the exchange platform. It's practical for all exchange operators to test large withdrawal transactions as a general policy, regardless of what model is used, and general best practice is to diagnose and fix such an exploit as soon as it occurs.
False promises on the backing of funds played a huge role in the downfall of Quadriga, and it's been exposed over and over again (MyCoin, PlusToken, Bitsane, Bitmarket, EZBTC, IDAX). Even today, customers have extremely limited certainty on whether their funds in exchanges are actually being backed or how they're being backed. While this issue is not unique to cryptocurrency exchanges, the complexity of the technology and the lack of any regulation or standards makes problems more widespread, and there is no "central bank" to come to the rescue as in the 2008 financial crisis or during the great depression when "9,000 banks failed".
In addition to fraudulent operations, the industry is full of cases where operators have suffered breaches and not reported them. Most recently, Einstein was the largest case in Canada, where ongoing breaches and fraud were perpetrated against the platform for multiple years and nobody found out until the platform collapsed completely. While fraud and breaches suck to deal with, they suck even more when not dealt with. Lack of visibility played a role in the largest downfalls of Mt. Gox, Cryptsy, and Bitgrail. In some cases, platforms are alleged to have suffered a hack and keep operating without admitting it at all, such as CoinBene.
It surprises some to learn that a cryptographic solution has already existed since 2013, and gained widespread support in 2014 after Mt. Gox. Proof of Reserves is a full cryptographic proof that allows any customer using an exchange to have complete certainty that their crypto-assets are fully backed by the platform in real-time. This is accomplished by proving that assets exist on the blockchain, are spendable, and fully cover customer deposits. It does not prove safety of assets or backing of fiat assets.
If we didn't care about privacy at all, a platform could publish their wallet addresses, sign a partial transaction, and put the full list of customer information and balances out publicly. Customers can each check that they are on the list, that the balances are accurate, that the total adds up, and that it's backed and spendable on the blockchain. Platforms who exclude any customer take a risk because that customer can easily check and see they were excluded. So together with all customers checking, this forms a full proof of backing of all crypto assets.
However, obviously customers care about their private information being published. Therefore, a hash of the information can be provided instead. Hash is one-way encryption. The hash allows the customer to validate inclusion (by hashing their own known information), while anyone looking at the list of hashes cannot determine the private information of any other user. All other parts of the scheme remain fully intact. A model like this is in use on the exchange CoinFloor in the UK.
A Merkle tree can provide even greater privacy. Instead of a list of balances, the balances are arranged into a binary tree. A customer starts from their node, and works their way to the top of the tree. For example, they know they have 5 BTC, they plus 1 other customer hold 7 BTC, they plus 2-3 other customers hold 17 BTC, etc... until they reach the root where all the BTC are represented. Thus, there is no way to find the balances of other individual customers aside from one unidentified customer in this case.
Proposals such as this had the backing of leaders in the community including Nic Carter, Greg Maxwell, and Zak Wilcox. Substantial and significant effort started back in 2013, with massive popularity in 2014. But what became of that effort? Very little. Exchange operators continue to refuse to give visibility. Despite the fact this information can often be obtained through trivial blockchain analysis, no Canadian platform has ever provided any wallet addresses publicly. As described by the CEO of Newton "For us to implement some kind of realtime Proof of Reserves solution, which I'm not opposed to, it would have to ... Preserve our users' privacy, as well as our own. Some kind of zero-knowledge proof". Kraken describes here in more detail why they haven't implemented such a scheme. According to professor Eli Ben-Sasson, when he spoke with exchanges, none were interested in implementing Proof of Reserves.
And yet, Kraken's places their reasoning on a page called "Proof of Reserves". More recently, both BitBuy and ShakePay have released reports titled "Proof of Reserves and Security Audit". Both reports contain disclaimers against being audits. Both reports trust the customer list provided by the platform, leaving the open possibility that multiple large accounts could have been excluded from the process. Proof of Reserves is a blockchain validation where customers see the wallets on the blockchain. The report from Kraken is 5 years old, but they leave it described as though it was just done a few weeks ago. And look at what they expect customers to do for validation. When firms represent something being "Proof of Reserve" when it's not, this is like a farmer growing fruit with pesticides and selling it in a farmers market as organic produce - except that these are people's hard-earned life savings at risk here. Platforms are misrepresenting the level of visibility in place and deceiving the public by their misuse of this term. They haven't proven anything.
Fraud isn't a problem that is unique to cryptocurrency. Fraud happens all the time. Enron, WorldCom, Nortel, Bear Stearns, Wells Fargo, Moser Baer, Wirecard, Bre-X, and Nicola are just some of the cases where frauds became large enough to become a big deal (and there are so many countless others). These all happened on 100% reversible assets despite regulations being in place. In many of these cases, the problems happened due to the over-complexity of the financial instruments. For example, Enron had "complex financial statements [which] were confusing to shareholders and analysts", creating "off-balance-sheet vehicles, complex financing structures, and deals so bewildering that few people could understand them". In cryptocurrency, we are often combining complex financial products with complex technologies and verification processes. We are naïve if we think problems like this won't happen. It is awkward and uncomfortable for many people to admit that they don't know how something works. If we want "money of the people" to work, the solutions have to be simple enough that "the people" can understand them, not so confusing that financial professionals and technology experts struggle to use or understand them.
For those who question the extent to which an organization can fool their way into a security consultancy role, HB Gary should be a great example to look at. Prior to trying to out anonymous, HB Gary was being actively hired by multiple US government agencies and others in the private sector (with glowing testimonials). The published articles and hosted professional security conferences. One should also look at this list of data breaches from the past 2 years. Many of them are large corporations, government entities, and technology companies. These are the ones we know about. Undoubtedly, there are many more that we do not know about. If HB Gary hadn't been "outted" by anonymous, would we have known they were insecure? If the same breach had happened outside of the public spotlight, would it even have been reported? Or would HB Gary have just deleted the Twitter posts, brought their site back up, done a couple patches, and kept on operating as though nothing had happened?
In the case of Quadriga, the facts are clear. Despite past experience with platforms such as MapleChange in Canada and others around the world, no guidance or even the most basic of a framework was put in place by regulators. By not clarifying any sort of legal framework, regulators enabled a situation where a platform could be run by former criminal Mike Dhanini/Omar Patryn, and where funds could be held fully unchecked by one person. At the same time, the lack of regulation deterred legitimate entities from running competing platforms and Quadriga was granted a money services business license for multiple years of operation, which gave the firm the appearance of legitimacy. Regulators did little to protect Canadians despite Quadriga failing to file taxes from 2016 onward. The entire administrative team had resigned and this was public knowledge. Many people had suspicions of what was going on, including Ryan Mueller, who forwarded complaints to the authorities. These were ignored, giving Gerald Cotten the opportunity to escape without justice.
There are multiple issues with the SOC II model including the prohibitive cost (you have to find a third party accounting firm and the prices are not even listed publicly on any sites), the requirement of operating for a year (impossible for new platforms), and lack of any public visibility (SOC II are private reports that aren't shared outside the people in suits).
Securities frameworks are expensive. Sarbanes-Oxley is estimated to cost $5.1 million USD/yr for the average Fortune 500 company in the United States. Since "Fortune 500" represents the top 500 companies, that means well over $2.55 billion USD (~$3.4 billion CAD) is going to people in suits. Isn't the problem of trust and verification the exact problem that the blockchain is supposed to solve?
To use Quadriga as justification for why custodians or SOC II or other advanced schemes are needed for platforms is rather silly, when any framework or visibility at all, or even the most basic of storage policies, would have prevented the whole thing. It's just an embarrassment.
We are now seeing regulators take strong action. CoinSquare in Canada with multi-million dollar fines. BitMex from the US, criminal charges and arrests. OkEx, with full disregard of withdrawals and no communication. Who's next?
We have a unique window today where we can solve these problems, and not permanently destroy innovation with unreasonable expectations, but we need to act quickly. This is a unique historic time that will never come again.
Thai Nhat Minh | Stably: First of all, can you have a brief introduction about yourself as well as about Chromia? Henrik_hjelte, Sergelubkin Henrik Hjelte: Hello. My name is Henrik Hjelte. I am Co-Founder and CEO of Chromia. I have more than 30 years of experience in programming and a degree in Economics from Uppsala University. BTW economics and computers = blockchain, so finally found a job that fits me. I was introduced to the blockchain by the leader of the colored-coins project Alex Mizrahi in 2013 Colored coins project was a very influential thing It was the first way for user created tokens bolted on to the only blockchain at the time (almost) bitcoin We started ChromaWay 2014, with Or Perelman too, to explore if the world was interested in “tokens” and those kind of applications We worked with enterprise blockchain for some time, but now we are focused on Chromia, a new public platform for mainstream decentralized applications using relational blockchain technology. Ok, maybe I should tell something about Chromia and not myself too. Chromia is a better blockchain for building decentralized Apps. better because it follows the “normal worlds” way of managing data. A little history: I found a text/description to paste: Chromia is a brainchild of ChromaWay. ChromaWay has a long record of delivering pioneering projects around the world. We issued Euros on the Bitcoin blockchain with LHV bank, allowed investors to invest in startups in a wholly decentralized way with Funderbeam, digitized the title transfer process with the Swedish land registry, and mediated the green bond market. ChromaWay’s core team created the world’s first protocol to issue tokens already in 2012, when blockchain was called “bitcoin 2.0”. Then ChromaWay introduced the relational model to enterprise blockchains with a consortium database called Postchain. Now Postchain is going public as the foundation for Chromia, a better blockchain for building decentralised Apps. Chromia is a new public blockchain based on the idea of integrating traditional databases, Relational databases with blockchain security. Chromia is a general purpose blockchain with full smart contract capabilities, just that it is a lot easier to code, even complex applications. You code with an easy to learn new programming language that combines the power of SQL and normal languages but makes it secure in a blockchain context. Up to 1/10 the code-lines vs other blockchains. If you don’t believe me, check this blog (later, stay in the chat): https://blog.chromia.com/reasons-for-rell-compactness/ The aim of Chromia is to combine relational databases, which exist in every kind of organization, with blockchains. We want to provide a platform for our users to develop totally decentralized apps securely. Our goal is for Chromia to be seen as the number one infrastructure for decentralized applications. Think about it: blockchain is about managing data (in a shared context). And… What do we use to manage data? A Database! Serge: Sure! My name is Serge! And I work in Chromia marketing department. Also, I help coordinate various projects inside the company My background is in Economics and Marketing Thai Nhat Minh | Stably: Question 1️⃣ DApp is currently mainly concentrated in the field of games, and its life cycle is basically short, just like the Crypto Kitty is only hot for a while, how to dig the application of DApp in more fields and how to improve the utilization rate of DApp? u/henrik_hjelteu/sergelubkin Serge: Good one, let me answer Gaming is quite a challenging target because good UX is expected, it needs to be fast, responsive, etc. If we can do that, then we can also do all sorts of other stuff. Also, it lets us experiment with things without a lot of hassle, it’s easier to get users, and so on. It’s also a growing niche within blockchain. You can check our latest game, Mines of Dalarnia https://www.minesofdalarnia.com We also have Enterprise projects already, for example Green Assets Wallet https://greenassetswallet.org/about that already launched on the first Mainnet version called Bootstrap Net,we also have https://capchap.se built on our tech, more projects like non-profit review platform Impactoria, public land registries, medical projects and so on Also don’t forget about our fully decentralized social network/forum that is live already on the testnet https://testnet.chromunity.com. Thai Nhat Minh | Stably: Question 2️⃣ How will dapp face the world change after the epidemic? u/henrik_hjelteu/sergelubkin Henrik Hjelte: Nobody can say for sure, but maybe people will tend to be online more than offline, so demand on online products and dapps as well will increase. I just came in from an internal demo of a secret project we do, and it can be seen as a way to hang out online (a bit cryptic answer) There are also interesting use cases of dapps in the medical field. For example, we participated in the world-wide hackathon Hack for Sweden. Where our submission was to create an app on Chromia blockchain that increases the coordination between countries and hospitals especially during the hard time and COVID19. Chromia wants to help the European Union (and the world, but we saw problems in the EU…) and its citizens to provide transparency over the necessary medical and protective devices and appliances of which we see shortage during this emergency crisis. You can watch our promo here https://twitter.com/chromaway/status/1247557274337447938?s=20. For me it was a fun Hackathon too because for once I got the opportunity to code… I told everyone else I will not do any bossing… We try to continue this path on medical applications a bit. Thai Nhat Minh | Stably: Question 3️⃣ DApps are still not directly embedded in mobile phones like Apps at this moment, and DApps have also been flooded with bet content. How can guests increase the use of DApps and lower the threshold for using DApps? u/henrik_hjelteu/sergelubkin Serge: The answer is — better User Experience. We believe that in order for a DApp to be usable and become more widely accepted it has to feel like a normal App. A DApp needs to have quick transactions, scale well & shouldn’t require users to pay for each transaction. This is something that is possible now with using Chromia. It’s an extremely exciting time since we are going to see a new generation of DApps. On top of that, we think that we might have an ace coming up. We have built a game to demonstrate the powers and possibilities of Chromia. A little bit about the game: In Mines of Dalarnia (https://www.minesofdalarnia.com), players get to explore the vast expanses of interplanetary treasure mines. With an innovative Dalarnia Token system, players can purchase virtual mining plots, and put them up for rent into the community, allowing for real-estate tycoons to earn more Tokens. Mining plots can also undergo their own upgrades, making them more lucrative to explore, as well as a hot property for rental by miners. The game takes advantage of these NFT-based tokens to securely track exchanges, and provide a sense of ownership and wealth to players as they grow their mining and resource empire. Watch our trailer https://youtu.be/bDXKOp1Asqw and sign-up for the TestNet on the website! Thai Nhat Minh | Stably: Question 4️⃣ Many practitioners think that the main reason for restricting the development of DApp is “incomplete infrastructure”. How effective is the current “cross-chain” and “side-chain” solution? u/henrik_hjelteu/sergelubkin Serge: Our infrastructure resembles Alibaba Cloud, so a DApp developer just goes and deploys his DApp’s blockchain into it, it’s easy. Also our language Rell https://rell.chromia.com/en/maste is more robust than any other blockchain programming language.Or Azure or AWS Rell combines the following features:
Relational data modeling and queries similar to SQL. People familiar with SQL should feel at home once they learn the new syntax.
Normal programming constructs: variables, loops, functions, collections, etc.
Constructs which specifically target application backends and, in particular, blockchain-style programming including request routing, authorization, etc.
We want people to join our channels such as telegram, twitter, email also our decentralized forum https://testnet.chromunity.com and participate in discussions
We want people to try our dapps such as Mines of Dalarnia
We want to get feedback and understand the most important issues people care about Chromia and the blockchain industry in general
We want to get more developers building on top of Chromia
LBTS: What was your motivation for creating RELL and not use other languages? What benefits? Why name it RELL also? Henrik Hjelte: We have a private/federated relational blockchain called Postchain, and it allows SQL. But that can work in a small environment when you know all parties, and if you are really careful in checking code. But not for a more secure, distributed on the web setup, so we had to make it more secure (Deterministic, statically typed). In the process, we also took the opportunity to make it cool and nice. Also: it is simply not possibly to use evm, jvm, or web assembly. We need/want a database in the bottom. Postgresql is our virtual machine. You do not reimplement that…. 10+ years codebase…. Lee: Being part of the gamer community, I would like to know what you would think about collaborating with a MOBA, RPG or Arcade game or some kind of project? Henrik Hjelte: We are already collaborating with some smaller studios. For bigger fish, we want to show them what is completely unique and visionary with Chromia, and we think we need various examples. So, first arcade game MoD (linked above) is one example, it is not the full potential or anything but a start. In this summer, krystopia 2 a puzzle game from Antler Interactive will be released. What is even cooler is the “demo project” we do together with them, where we will show how a mutliplayer game with real blockchain features will work. I just saw it an hour ago and was blown away OH, and there is another studio releasing something very cool. Full logic on chain strategy game. Chain of Alliance. oyibo pepper: Do you encourage HACKATHON programs for intending Developers to test their skills and build on RELL Can you explain more about CHROMIA AMBASSADORS PROGRAM, CAN I BECOME AN AMBASSADOR Serge: Yes, you can, but you will need to change your avatar 🤣 Seriously, we are growing our Chromians community if you want to become one please ping our admins in Chromia telegram group. Also, we are planning virtual hackathons soon, please subscribe to stay updated Infinite Crypto: Since the Chromia project is currently working on the Ethereum blockchain ERC20 standard! But we know that there are a lot of scalability issues with Ethereum, so why would you choose the Ethereum blockchain over other scalable blockchains? Do you have any plans for Mainnet launch of Chromia? Henrik Hjelte: ETH is just used in a pre-phase for tokens. We will have our own mainnet tokens interchangable with ETH. Oyinbo pepper What’s CHROMIA SSO and SDK, how can I get started Henrik Hjelte Both are 3 letters. That is what they have in common. SDK = software development kit, check docs on https://rell.chromia.com SSO = single sign on. A unique UX improvement. You approve an app in your wallet (vault) with super ease. no need to remember codes sso: https://blog.chromia.com/chromia-sso-the-whys-and-the-whats/ We have a fundamentally different model from bitcoin and ethereum and the likes. The blockchain is not run by anonymous computers in basement and student dorms across the world. We have more of known identities, so 51% attacks is protected not by PoW/PoS but other consensus. Please see our whitepaper. Note that we are not noobs when it comes to this, our CTO Alex has published papers in academic journals on consensus etc. from 2013, and done several important ideas for blockchain. Sidechains we think he was first with, tokens too. Sheron Fernando: Is there any plan to makes partnership with local cryptocurrency developers from each country to make $CHR usage more worldwide? Serge: Yes, we are looking for cooperation with more external developers. Send me a message if you are interested in developing something on Chromia. Stella: What are the underlying problems in the Dapps today that can be solved with the Chromia protocol? Serge:
Scalability — on Chromia your dapp can have unlimited numbers of users thanks to parallel scaling
Easiness of use — you don’t need external wallets, no need to buy crypto to pay for gas etc
Cost — in general to deploy the dapp and to use the dapp
Marcel Lagacé: Why build this platform? What is Chromia mission? What are the most prominent features of the platform? Can you clarify the use case for this feature? Henrik Hjelte: We build the platform to fix the problems with blockchains, that we ourselves have experienced since 2014 (before ethereum existed). LBTS: Can you tell us about Chromia developers? How motivated and experienced are they to always deliver the best products? Henrik Hjelte: I can tell you that we recruit developers that are really good, from all parts of the world. Vietnam has been a hub because we found many good, so in Ukraine. How can we say “we have so good developers”? First one thing that is a bit different is that we are pretty experienced in leadership team of development. I do not code much anymore since I’m a CEO. But I do have now over 30 years of experience. Got published and was payed when I was 15. First full-time professional developer job at 18. Have released open-source projects used by 10: s of thousand developers. And Alex, our CTO is Extremely good. That is why I recruited him to my old startup 2006 or so… So: we have experience to sort out good developers from bad. Marcel Lagacé: Does Chromia staking model is different from other staking platform?? What are the beneficial advantages of chromia staking system? Serge: The main difference is that we have independent Providers, entities that are not connected. These serious players are exchanges, data centres, professional staking companies. They provide a backbone of the ecosystem and host dapps. Like Amazon servers in the cloud. They cannot have stake bigger than the maximum thus they can’t control the network. This is probably the main difference with classic DPoS networks Nguyen Duy Bao: A lot of people will want to know what the strength of Chromia is but I want to know the weaknesses and problems Chromia faces ? How do you plan to solve it? Henrik Hjelte: A weakness I guess is weak compared to “competition”. And there are some blockchain projects that got crazy amount of funding. So how can we compete with that, when they can hire more developers for example? Well here is what experience comes into play: More developers does not always increase productivity a lot, it is diminishing returns. You can see many large projects, with 100 of developers fail miserably with no results. And actually, sometimes true with marketing spend too. It is generally good with money, but if you are a bit clever you can compete also on marketing with less money than your competition. Please follow Chromia on Social Media: Website: https://www.chromia.com Twitter: https://twitter.com/chromia FaceBook: https://www.facebook.com/teamchromia LinkedIn: https://www.linkedin.com/company/chromia Telegram: https://t.me/hellochromia Decentralized Social network Chromunity: https://testnet.chromunity.com Free-to-Play Blockchain Game Mines of Dalarnia: https://www.minesofdalarnia.com
Spreading Crypto: In Search of the Killer Application
This is the second post of ourSpreading Cryptoseries where we take a deep dive into what it’ll take to help this technology reach broader adoption. Mick exploring the state of apps in crypto Our previous post explored the history of protocols and how they only become widely adopted when a compelling application makes them more accessible and easier to use. Crypto will be no different. Blockchain technology today is mostly all low-level protocols. As with the numerous protocols that came before, these new, decentralized protocols need killer applications. So, how’s that going? Where is crypto’s killer application? What’s the state of application development within our industry? Today we’ll try to answer those questions. We’ll also take a close look at decentralized applications — as that’s where a lot of the developer energy and focus currently is. Let’s dive in.
Beyond the fact that the most popular crypto applications are all used for speculation, another common thread is that they are all centralized.
A centralized application means that ultimate power and control rests with a centralized party (the company who built it). For example, if Coinbase or Binance wants to block you from withdrawing your funds for whatever reason (maybe for suspicious activity or fraud), they can do that. They have control of their servers so they have control of your funds. Most popular applications that we all use daily are centralized (Netflix, Facebook, Youtube, etc). That’s the standard for modern, world-class applications today.
Even though the most popular crypto applications are all centralized, most of the developer energy and focus in our industry is with decentralized applications (dApps) and non-custodial products. These are products where only the user can touch or move funds. Not even the company or developer who built the application can access or control or stop funds from being moved. Only the user has control.
These applications allow users to truly become their own bank and have absolute control of their money.
If the most popular applications tend to be centralized (inside and out of crypto), why is so much of our community focused on building decentralized applications (dApps)? For the casual observer, that’s a reasonable, valid question.
“Not your keys, not your coins.”
This meme is endlessly repeated among longtime crypto hodlers. If you’re not in complete control of your crypto (i.e. using non-custodial wallets or dApps), then it’s not really your crypto. Engrained in the early culture of Bitcoin has always been a strong distrust for centralized authority and power — including the too-big-to-fail government-backed financial system. In the midst of the Financial Crisis, Satoshi Nakamoto included this headline in Bitcoin’s genesis block: “Chancellor on brink of second bailout for banks.” There has always been a close connection between libertarianism & cryptocurrency. So it’s no surprise that much of the crypto developer community is spending their time building applications that are non-custodial or decentralized. It’s part of the DNA, the soul, the essence of our community. https://preview.redd.it/fy33zhkvdh551.png?width=1600&format=png&auto=webp&s=386c741f13e9119ecfcfffe1c781d09ce58704ed
When I was at Mainframe, we built Mainframe OS — a platform that developers use to build and launch decentralized applications (dApps). I’m deeply familiar with what’s possible and what’s not in the world of dApps. I have the battle scars and gray hair to prove it. We’ve hosted panels around the various challenges. We’ve even produced videos poking fun at how complicated it is for end-users to interact with.
After having spent three years in the trenches of this non-custodial world, I no longer believe that decentralized applications are capable of bringing crypto to the masses.
While I totally understand and appreciate the ethos of self-sovereignty, independence, and liberty… I think it’s a terrible mistake that as a community we are spending most of our time in this area of application development. Decentralized applications will not take crypto to the masses. Mainframe OS
The user friction that comes with decentralized applications is just too overwhelming. Let’s go through a few of the bigger points:
Knowledge & Education: Most non-custodial products do not abstract away any of the blockchain complexity. In fact, they often expose more of it because the most loyal users are crypto nerds. Imagine how a normie n00b feels when she starts seeing words like seed phrases, public & private keys, gas limits, transaction fees, blockchain explorers, hex addresses, and confirmation times. There is a lot for a user to learn and become educated on. That’s friction. The learning curve on this is just too damn high.
User Experience: It is currently impossible to create a smooth and performant user experience in non-custodial wallets or decentralized applications. Any interaction that requires a blockchain transaction will feel sluggish and slow. We built a messaging app on Ethereum and presented it at DevCon3 in Cancun. The technical constraints of blockchain technology were crushing to the user experience. We simply couldn’t create the real-time, modern messaging experience that users have come to expect from similar apps like Slack or WhatsApp. Until blockchains are closer in speed to web servers (which will be difficult given their decentralized nature), dApps will never be able to create the smooth user experience that the masses expect.
Loss of Funds Risk: There is no “Forgot Password” functionality when storing your own crypto in a non-custodial wallet. There is no customer support agent you can ping. There is no company behind it that can make you whole if you make a mistake and lose your money. You are on your own. One wrong move and your money is all gone. If you lose your private key, there is no way to recover your funds. This just isn’t the type of customer support experience people want or are used to.
Decentralized applications will always have a place in the market — especially among the most hardcore crypto people and parts of the world where these tools are essential. I’m personally an active user of many non-custodial products. I’m a blockchain early-adopter, I like to hold my own money, and I’m very forgiving of suboptimal UX.
However, I’m not afraid to say the poop stinks. Decentralized applications simply cannot produce the type of product experience that mainstream consumers expect.
If the goal is growth and adoption, as a community I believe we’re barking up the wrong tree. We are trying to make fetch happen. It isn’t gonna happen. Our Netscape Moment is unlikely to arrive as long as we’re focused on decentralized applications. \"Mean Girls\" movie There’s a reason why the most popular consumer applications are centralized (Spotify, Amazon, Instagram, etc). There’s a reason why the most popular crypto applications are centralized (Coinbase, Binance, etc). The frameworks, tooling, infrastructure, and services to support these modern, centralized applications are mature and well-established. It’s easier to build apps that are fast & performant. It’s easier to launch apps that are convenient and on all form-factors (especially mobile). It’s easier to distribute and promote via all the major app store channels (iOS/Android). It’s easier to patch, update, and upgrade. It’s easier to experiment and iterate.
It’s easier to design, build, and launch a world-class application when it is centralized! It is why we’ve chosen this path for Genesis Block.
We have a lot more content coming. Be sure to follow our channels: https://genesisblock.com/follow/ Have you already downloaded the app? We're Genesis Block, a new digital bank that's powered by crypto & decentralized protocols. The app is live in the App Store (iOS & Android). Get the link to download at https://genesisblock.com/download
Public CodeValley/Emergent Consensus questioning and investigation Thread. Ask your hard questions and dispel your doubts here.
What is going on here? I am asking some hard questions for the CodeValley Company, which recently proposed a new revolutionary software development paradigm called Emergent Coding at the latest big Bitcoin Cash conference in Australia. I am asking these questions because, as I (and ~150 people who agreed with me) noticed, there are stunning similarities between CodeValley and the companies who have tried and succeeded in crippling Peer-To-Peer Electronic Cash: nChain and Blockstream. According to me, as it looks now, similarities between these 3 companies (nChain, Blockstream, CodeValley) are the following: }- Sources of funding are extremely unclear or openly hostile to Bitcoin }- At first and even second glance, there is no product, no way to make money }- Whitepaper & Documentation is missing, hollow or total abstract bullshit, company has no logical sense of existence }- Detailed specifications or proofs of operation are not available }- Main products are closed-source patented blobs (BSV, Liquid, Emergent Coding) }- They have huge influences in the industry or try to establish themselves in such position to have the infuences I am here (and you are here, I assume) because we want to find out the truth, whatever the truth is. The point of this topic is to ask the hardest possible questions in order to estimate the probability of CodeValley company being legit. But this is also a chance for CodeValley to clear their name by providing sufficient information that proves that (after 4 years of having working company and 10+ years of having patents [Archived]) they actually have a working product and are a legit company, and not an infiltrator designed and paid by banks/TPTB in order to cripple and destroy Bitcoin Cash. Also if they truly are what they claim and they truly have such a revolutionary technology, this is a great opportunity for promotion. To show the world that the tech actually works. I will ask my questions and you can ask your questions as well. Don't make them easy. Don't have mercy (but these things work better when you are polite). Let's begin the trial by fire! Calling nlovisa My Questions/Tasks for CodeValley: [Of course you actually don't have to answer any of them or you can give us bullshit answers again, but in such case the community may conclude that you actually are next nChain/Blockstream and an enemy infiltrator, reject you and shoot down all your efforts. So the choice is yours] @@@@ 1. Please upload your actual businessplan which you presented to the people in power who gave you funding(VCs? Government?) to create $50 Million BCH tech park. A businessplan which is supposed to explain spending of $50 million AUD should have at least 7 pages (but more probably 20+). Some names and unimportant details (but NOT money/financial numbers) can be redacted. -- You have 6 hours to complete this task -- @@@@ 2. Please list your current VCs and >%5 shareholders, with CEO names and HQ locations of each of them. -- You have 4 hours to complete this task -- @@@@ 3. Few days ago you promised to upload freely-accessible documentation to https://codevalley.com/docs subpage which would describe emergent coding in greater details. @ - What happened to that promise? @@@@ 4. After I accused that your company is bullshit and your product is hollow, you immediately started to praise me and offered me a trip to Australia [Archived]. @ - So, do you always praise and offer a paid trip across the world to Australia to all people on the Internet who heavily criticize you? Is this a common practice in your company? @@@@ 5. A travel from Poland to Australia and back would cost something under $2000 AUD, counting buses, with hotels that would make something close to $2500 AUD even for few days. Based on this, I estimate your "invite random people from the internet to Australia in order to show them the product" budget has to consist of at least $50.000 AUD yearly (but $100.000 - $200.000 is more probable of course). @ A) In your financial books, what exactly is called the Excel position of your budget expenses under which would your secretary put my trip's expenses? @ B) How do you maintain such a large budget for such frivolous spending and how do you explain it to your shareholders/VCs? @@@@ 6. Few days ago you answered somebody a question: "The trust model is also different. The bulk of the testing happens before the project is designed not after. Emergent Coding produces a binary with very high integrity and arguably far more testing is done in emergent coding than in incumbent methods you are used to.". @ A) Who EXACTLY does the testing? People? Software? AI? Non-bullshit answer, please. @ B) Why exactly is there "more testing" in Emergent Coding than in normal software creation paradigm? Why is emergent coding different? Do the developers who work in this paradigm are somehow special? Are the programming languages magical? @ C) What are the specific software tools used for this "testing"? "Agents" is a non-answer, so don't even try. @@@@ 7. Please provide a simple demo binary of a simple program created completely using your "Emergent Coding" and also provide all the binary sub-component files that make up the final binary. Requirements: There has to be a minimum of 3 sub - binaries making up the final big binary for this to be valid. 2 or less does not count. None of the binaries can be obfuscated, they have to be clean X86/X86_64 machine code binaries. Notes: It should be incredibily simple, quick and easy task for you, since designing such a complex and apparently breakthough system must have required thousands, tens of thousands if not hundereds of thousands tests. All of these tests produced working binaries - after all you wouldn't claim you have a working marvellous revolutionary product without extensive testing, right? -- You have 18 hours for this task -- Of course, If you are saying the truth and have truly developed this revolutionary "emergent coding" binary-on-the-fly-merging technology, this should normally take you under 18 minutes to just find the test samples and upload them. @@@@ 8. Please construct a simple (binary or source) single-use-compiler demo that will combine 3 or more sub-binaries into final working product. Please upload the sub-binaries and the "single-use compiler" to publicly available site so people in our community can verify that your product is actually working. The single-use-compiler binary can be obfuscated with proper tool in order to hide your precious intellectual property. The 3 sample sub-binaries cannot be obfuscated. They have to be pure, clean, binary X86/X86_64 machine code. Everything has to be working and verifable of course. -- You have 72 hours to complete this task -- I understand all your technologies are patented with patents that basically predate Bitcoin and you are giving us obfuscated binaries, so you don't have to worry about anybody stealing your company's intellectual property, right? @@@@ 9. You mentioned the only application I need to create programs using Emergent Coding is the pilot app. @ - What programming language(s) is the pilot app written in? @@@@ 10. When you developed the Emerging Coding, before it started existing, you couldn't have used emergent coding to create the first (test & development) applications because it is a chicken and egg problem. @ - What programming language did you use to create first client/serveapi/daemon/tool used to merge multiple binaries into one in Emergent Coding? @@@@ 11. Please list all of your current programmers and programming language each of them is using next to their name. Also provide LinkedIn profiles if applicable. -- You have 18 hours to complete this task -- @@@@ 12. Please also list all Development Environments (IDEs) used by your current programmers next to their name. -- You have 18 hours to complete this task -- @@@@ 13. Please list all compilers used by your current programmers next to their name. -- You have 18 hours to complete this task -- @@@@ 14. So if I understand correctly CodeValley will be the company who runs $50 million BCH tech park and the tech will house multiple Bitcoin Cash-related startup and companies. Let's say I have a BCH startup and I would like to rent a loft/spot in your "tech park". A) Please provide a PDF of sample basic contract you have (hopefully) prepared for such startups. -- You have 4 hours to complete this task -- B) How much does the rent cost per a room (or m2/sqft) for a month and for a year? @@@@ 15. Please submit the list of compilers that produce X86/X86_64/ARM binaries compatibile with Emergent Coding "mash-it-together" "binary compiler". -- You have 4 hours to complete this task -- @@@@ 16. Is it possible for Emergent Coding to merge multiple non-binary applications (like Python or PHP programs) together? Or is it just binaries? Who are you? I am a freedom thinker and individual independent from all infuences who just does what he finds appropriate at the moment. Disclaimer to preempt questions: }- I do not work for anybody }- I do not have any hidden agenda }- I am only doing what I think is right }- I am a born revolutionist, this is why I am in Bitcoin Why are you doing this? }- Because I believe in truth above all. Truth will save us. }- Because I believe in Satoshi's peer-to-peer cash for the world vision and I will not stray from this path. }- Because most people are apparently missing psychological immune system which is why attempts like Blockstream, nChain appear and are repetedly [at least partially] successful. I have an anti-bullshit immune system that works great against this type of attacks. I was actually one of the first to be banned in /Bitcoin sub for pointing out their lies with manipulations and to spot Craig Wright's attempt to infiltrate and bend /btc sub to his will.. }- Because I was fooled twice by entities similar to CodeValley before (namingly nChain and Blockstream) and I will not be fooled again. Bitcoin Cash will not be co-opted easily as long as I am here. }- Because if Bitcoin Cash community is an organism, then I became a B lymphocyte cell. I produce antibodies. I show you how to defend yourself from bullshit, lies and manipulation. This is my basic function. }- Because I am here to kill the bank
Failed to load resource: the server responded with a status of 404 (Not Found) homepage03_comp.png:1 Failed to load resource: the server responded with a status of 404 (Not Found) logo_03c_small.png:1 Failed to load resource: the server responded with a status of 404 (Not Found) jquery.min.js:1 Failed to load resource: the server responded with a status of 404 (Not Found) bootstrap.min.js:1 Failed to load resource: the server responded with a status of 404 (Not Found) popper.min.js:1 Failed to load resource: the server responded with a status of 404 (Not Found) tiktok_col.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) instagram_col.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) twitch_col.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) twitter_col.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) youtube_col.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) facebook_col.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) bootstrap.min.js:1 Failed to load resource: the server responded with a status of 404 (Not Found) mobile_features_large_compressed.png:1 Failed to load resource: the server responded with a status of 404 (Not Found) creator_platforms_comp.png:1 Failed to load resource: the server responded with a status of 404 (Not Found) creator_sm_comp.png:1 Failed to load resource: the server responded with a status of 404 (Not Found) reoccuring_f.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) stripe_f.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) customerchat.php?app_id=&attribution=setup_tool&channel=https%3A%2F%2Fstaticxx.facebook.com%2Fconnect%2Fxd_arbiter.php%3Fversion%3D46%23cb%3Df2ca0722231e688%26domain%3D22.214.171.124%26origin%3Dhttp%3A%2F%2F126.96.36.199%2Ff167133a445f9a4%26relation%3Dparent.parent&container_width=0&locale=en_US&page_id=2172253486430236&sdk=joey:1 Failed to load resource: the server responded with a status of 500 () paypal_f.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) googleads1_f.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) googlepay_f.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) amazon_f.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) bitcoin_f.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) logo_02_Background.png:1 Failed to load resource: the server responded with a status of 404 (Not Found) shirts_f.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) message_f.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) sopnsor2_f.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) socialmedia_f.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) combinedbarnad_f.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) applepay_f.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) check.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) feature_description_laptop_cut.png:1 Failed to load resource: the server responded with a status of 404 (Not Found) self_image_comp.png:1 Failed to load resource: the server responded with a status of 404 (Not Found) reddit_col.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) linkedin_col.svg:1 Failed to load resource: the server responded with a status of 404 (Not Found) collie_2_comp.jpg:1 Failed to load resource: the server responded with a status of 404 (Not Found) bootstrap.min.css:1 Failed to load resource: the server responded with a status of 404 (Not Found) DevTools failed to parse SourceMap: chrome-extension://hnmpcagpplmpfojmgmnngilcnanddlhb/browser-polyfill.min.js.map DevTools failed to parse SourceMap: chrome-extension://gighmmpiobklfepjocnamgkkbiglidom/include.preload.js.map DevTools failed to parse SourceMap: chrome-extension://hnmpcagpplmpfojmgmnngilcnanddlhb/browser-polyfill.min.js.map DevTools failed to parse SourceMap: chrome-extension://gighmmpiobklfepjocnamgkkbiglidom/include.postload.js.map
- I had the same errors before going thru the guide and just haveing a basic pulled git version of it and running with ```python3 manage.py runserver``` it loads the site but not the css and the static elements - I have put the base ```/media``` and ```/static``` folders in to git ignore (these should be the one where collect static collets up the element). The original static is under the ```myowndjango-project/myowndjango/static``` and ```myowndjango-project/myowndjango/media``` - I have also set up the nginx as follows
What I have tried to solve it - look for server access log - run ```/valog/nginx/access.log``` result: ```-bash: /valog/nginx/access.log: Permission denied``` - run ```sudo /valog/nginx/access.log``` result: ```sudo: /valog/nginx/access.log: command not found``` - changing nginx file
Dear Groestlers, it goes without saying that 2020 has been a difficult time for millions of people worldwide. The groestlcoin team would like to take this opportunity to wish everyone our best to everyone coping with the direct and indirect effects of COVID-19. Let it bring out the best in us all and show that collectively, we can conquer anything. The centralised banks and our national governments are facing unprecedented times with interest rates worldwide dropping to record lows in places. Rest assured that this can only strengthen the fundamentals of all decentralised cryptocurrencies and the vision that was seeded with Satoshi's Bitcoin whitepaper over 10 years ago. Despite everything that has been thrown at us this year, the show must go on and the team will still progress and advance to continue the momentum that we have developed over the past 6 years. In addition to this, we'd like to remind you all that this is Groestlcoin's 6th Birthday release! In terms of price there have been some crazy highs and lows over the years (with highs of around $2.60 and lows of $0.000077!), but in terms of value– Groestlcoin just keeps getting more valuable! In these uncertain times, one thing remains clear – Groestlcoin will keep going and keep innovating regardless. On with what has been worked on and completed over the past few months.
UPDATED - Groestlcoin Core 2.18.2
This is a major release of Groestlcoin Core with many protocol level improvements and code optimizations, featuring the technical equivalent of Bitcoin v0.18.2 but with Groestlcoin-specific patches. On a general level, most of what is new is a new 'Groestlcoin-wallet' tool which is now distributed alongside Groestlcoin Core's other executables. NOTE: The 'Account' API has been removed from this version which was typically used in some tip bots. Please ensure you check the release notes from 2.17.2 for details on replacing this functionality.
Builds are now done through Gitian
Calls to getblocktemplate will fail if the segwit rule is not specified. Calling getblocktemplate without segwit specified is almost certainly a misconfiguration since doing so results in lower rewards for the miner. Failed calls will produce an error message describing how to enable the segwit rule.
A warning is printed if an unrecognized section name is used in the configuration file. Recognized sections are [test], [main], and [regtest].
Four new options are available for configuring the maximum number of messages that ZMQ will queue in memory (the "high water mark") before dropping additional messages. The default value is 1,000, the same as was used for previous releases.
The rpcallowip option can no longer be used to automatically listen on all network interfaces. Instead, the rpcbind parameter must be used to specify the IP addresses to listen on. Listening for RPC commands over a public network connection is insecure and should be disabled, so a warning is now printed if a user selects such a configuration. If you need to expose RPC in order to use a tool like Docker, ensure you only bind RPC to your localhost, e.g. docker run [...] -p 127.0.0.1:1441:1441 (this is an extra :1441 over the normal Docker port specification).
The rpcpassword option now causes a startup error if the password set in the configuration file contains a hash character (#), as it's ambiguous whether the hash character is meant for the password or as a comment.
The whitelistforcerelay option is used to relay transactions from whitelisted peers even when not accepted to the mempool. This option now defaults to being off, so that changes in policy and disconnect/ban behavior will not cause a node that is whitelisting another to be dropped by peers.
A new short about the JSON-RPC interface describes cases where the results of anRPC might contain inconsistencies between data sourced from differentsubsystems, such as wallet state and mempool state.
A new document introduces Groestlcoin Core's BIP174 interface, which is used to allow multiple programs to collaboratively work to create, sign, and broadcast new transactions. This is useful for offline (cold storage) wallets, multisig wallets, coinjoin implementations, and many other cases where two or more programs need to interact to generate a complete transaction.
The output script descriptor (https://github.com/groestlcoin/groestlcoin/blob/mastedoc/descriptors.md) documentation has been updated with information about new features in this still-developing language for describing the output scripts that a wallet or other program wants to receive notifications for, such as which addresses it wants to know received payments. The language is currently used in multiple new and updated RPCs described in these release notes and is expected to be adapted to other RPCs and to the underlying wallet structure.
A new --disable-bip70 option may be passed to ./configure to prevent Groestlcoin-Qt from being built with support for the BIP70 payment protocol or from linking libssl. As the payment protocol has exposed Groestlcoin Core to libssl vulnerabilities in the past, builders who don't need BIP70 support are encouraged to use this option to reduce their exposure to future vulnerabilities.
The minimum required version of Qt (when building the GUI) has been increased from 5.2 to 5.5.1 (the depends system provides 5.9.7)
getnodeaddresses returns peer addresses known to this node. It may be used to find nodes to connect to without using a DNS seeder.
listwalletdir returns a list of wallets in the wallet directory (either the default wallet directory or the directory configured bythe -walletdir parameter).
getrpcinfo returns runtime details of the RPC server. Currently, it returns an array of the currently active commands and how long they've been running.
deriveaddresses returns one or more addresses corresponding to an output descriptor.
getdescriptorinfo accepts a descriptor and returns information aboutit, including its computed checksum.
joinpsbts merges multiple distinct PSBTs into a single PSBT. The multiple PSBTs must have different inputs. The resulting PSBT will contain every input and output from all the PSBTs. Any signatures provided in any of the PSBTs will be dropped.
analyzepsbt examines a PSBT and provides information about what the PSBT contains and the next steps that need to be taken in order to complete the transaction. For each input of a PSBT, analyze psbt provides information about what information is missing for that input, including whether a UTXO needs to be provided, what pubkeys still need to be provided, which scripts need to be provided, and what signatures are still needed. Every input will also list which role is needed to complete that input, and analyzepsbt will also list the next role in general needed to complete the PSBT. analyzepsbt will also provide the estimated fee rate and estimated virtual size of the completed transaction if it has enough information to do so.
utxoupdatepsbt searches the set of Unspent Transaction Outputs (UTXOs) to find the outputs being spent by the partial transaction. PSBTs need to have the UTXOs being spent to be provided because the signing algorithm requires information from the UTXO being spent. For segwit inputs, only the UTXO itself is necessary. For non-segwit outputs, the entire previous transaction is needed so that signers can be sure that they are signing the correct thing. Unfortunately, because the UTXO set only contains UTXOs and not full transactions, utxoupdatepsbt will only add the UTXO for segwit inputs.
getpeerinfo now returns an additional minfeefilter field set to the peer's BIP133 fee filter. You can use this to detect that you have peers that are willing to accept transactions below the default minimum relay fee.
The mempool RPCs, such as getrawmempool with verbose=true, now return an additional "bip125-replaceable" value indicating whether thetransaction (or its unconfirmed ancestors) opts-in to asking nodes and miners to replace it with a higher-feerate transaction spending any of the same inputs.
settxfee previously silently ignored attempts to set the fee below the allowed minimums. It now prints a warning. The special value of"0" may still be used to request the minimum value.
getaddressinfo now provides an ischange field indicating whether the wallet used the address in a change output.
importmulti has been updated to support P2WSH, P2WPKH, P2SH-P2WPKH, and P2SH-P2WSH. Requests for P2WSH and P2SH-P2WSH accept an additional witnessscript parameter.
importmulti now returns an additional warnings field for each request with an array of strings explaining when fields are being ignored or are inconsistent, if there are any.
getaddressinfo now returns an additional solvable Boolean field when Groestlcoin Core knows enough about the address's scriptPubKey, optional redeemScript, and optional witnessScript for the wallet to be able to generate an unsigned input spending funds sent to that address.
The getaddressinfo, listunspent, and scantxoutset RPCs now return an additional desc field that contains an output descriptor containing all key paths and signing information for the address (except for the private key). The desc field is only returned for getaddressinfo and listunspent when the address is solvable.
importprivkey will preserve previously-set labels for addresses or public keys corresponding to the private key being imported. For example, if you imported a watch-only address with the label "coldwallet" in earlier releases of Groestlcoin Core, subsequently importing the private key would default to resetting the address's label to the default empty-string label (""). In this release, the previous label of "cold wallet" will be retained. If you optionally specify any label besides the default when calling importprivkey, the new label will be applied to the address.
getmininginfo now omits currentblockweight and currentblocktx when a block was never assembled via RPC on this node.
The getrawtransaction RPC & REST endpoints no longer check the unspent UTXO set for a transaction. The remaining behaviors are as follows:
If a blockhash is provided, check the corresponding block.
If no blockhash is provided, check the mempool.
If no blockhash is provided but txindex is enabled, also check txindex.
unloadwallet is now synchronous, meaning it will not return until the wallet is fully unloaded.
importmulti now supports importing of addresses from descriptors. A desc parameter can be provided instead of the "scriptPubKey" in are quest, as well as an optional range for ranged descriptors to specify the start and end of the range to import. Descriptors with key origin information imported through importmulti will have their key origin information stored in the wallet for use with creating PSBTs.
listunspent has been modified so that it also returns witnessScript, the witness script in the case of a P2WSH orP2SH-P2WSH output.
createwallet now has an optional blank argument that can be used to create a blank wallet. Blank wallets do not have any keys or HDseed. They cannot be opened in software older than 2.18.2. Once a blank wallet has a HD seed set (by using sethdseed) or private keys, scripts, addresses, and other watch only things have been imported, the wallet is no longer blank and can be opened in 2.17.2. Encrypting a blank wallet will also set a HD seed for it.
signrawtransaction is removed after being deprecated and hidden behind a special configuration option in version 2.17.2.
The 'account' API is removed after being deprecated in v2.17.2 The 'label' API was introduced in v2.17.2 as a replacement for accounts. See the release notes from v2.17.2 for a full description of the changes from the 'account' API to the 'label' API.
addwitnessaddress is removed after being deprecated in version 2.16.0.
generate is deprecated and will be fully removed in a subsequent major version. This RPC is only used for testing, but its implementation reached across multiple subsystems (wallet and mining), so it is being deprecated to simplify the wallet-node interface. Projects that are using generate for testing purposes should transition to using the generatetoaddress RPC, which does not require or use the wallet component. Calling generatetoaddress with an address returned by the getnewaddress RPC gives the same functionality as the old generate RPC. To continue using generate in this version, restart groestlcoind with the -deprecatedrpc=generate configuration option.
Be reminded that parts of the validateaddress command have been deprecated and moved to getaddressinfo. The following deprecated fields have moved to getaddressinfo: ismine, iswatchonly,script, hex, pubkeys, sigsrequired, pubkey, embedded,iscompressed, label, timestamp, hdkeypath, hdmasterkeyid.
The addresses field has been removed from the validateaddressand getaddressinfo RPC methods. This field was confusing since it referred to public keys using their P2PKH address. Clients should use the embedded.address field for P2SH or P2WSH wrapped addresses, and pubkeys for inspecting multisig participants.
A new /rest/blockhashbyheight/ endpoint is added for fetching the hash of the block in the current best blockchain based on its height (how many blocks it is after the Genesis Block).
A new Window menu is added alongside the existing File, Settings, and Help menus. Several items from the other menus that opened new windows have been moved to this new Window menu.
In the Send tab, the checkbox for "pay only the required fee" has been removed. Instead, the user can simply decrease the value in the Custom Fee rate field all the way down to the node's configured minimumrelay fee.
In the Overview tab, the watch-only balance will be the only balance shown if the wallet was created using the createwallet RPC and thedisable_private_keys parameter was set to true.
The launch-on-startup option is no longer available on macOS if compiled with macosx min version greater than 10.11 (useCXXFLAGS="-mmacosx-version-min=10.11" CFLAGS="-mmacosx-version-min=10.11" for setting the deployment sdkversion)
A new groestlcoin-wallet tool is now distributed alongside Groestlcoin Core's other executables. Without needing to use any RPCs, this tool can currently create a new wallet file or display some basic information about an existing wallet, such as whether the wallet is encrypted, whether it uses an HD seed, how many transactions it contains, and how many address book entries it has.
Since version 2.16.0, Groestlcoin Core's built-in wallet has defaulted to generating P2SH-wrapped segwit addresses when users want to receive payments. These addresses are backwards compatible with all widely used software. Starting with Groestlcoin Core 2.20.1 (expected about a year after 2.18.2), Groestlcoin Core will default to native segwitaddresses (bech32) that provide additional fee savings and other benefits. Currently, many wallets and services already support sending to bech32 addresses, and if the Groestlcoin Core project sees enough additional adoption, it will instead default to bech32 receiving addresses in Groestlcoin Core 2.19.1. P2SH-wrapped segwit addresses will continue to be provided if the user requests them in the GUI or by RPC, and anyone who doesn't want the update will be able to configure their default address type. (Similarly, pioneering users who want to change their default now may set the addresstype=bech32 configuration option in any Groestlcoin Core release from 2.16.0 up.)
BIP 61 reject messages are now deprecated. Reject messages have no use case on the P2P network and are only logged for debugging by most network nodes. Furthermore, they increase bandwidth and can be harmful for privacy and security. It has been possible to disable BIP 61 messages since v2.17.2 with the -enablebip61=0 option. BIP 61 messages will be disabled by default in a future version, before being removed entirely.
The submitblock RPC previously returned the reason a rejected block was invalid the first time it processed that block but returned a generic "duplicate" rejection message on subsequent occasions it processed the same block. It now always returns the fundamental reason for rejecting an invalid block and only returns "duplicate" for valid blocks it has already accepted.
A new submitheader RPC allows submitting block headers independently from their block. This is likely only useful for testing.
The signrawtransactionwithkey and signrawtransactionwithwallet RPCs have been modified so that they also optionally accept a witnessScript, the witness script in the case of a P2WSH orP2SH-P2WSH output. This is compatible with the change to listunspent.
For the walletprocesspsbt and walletcreatefundedpsbt RPCs, if thebip32derivs parameter is set to true but the key metadata for a public key has not been updated yet, then that key will have a derivation path as if it were just an independent key (i.e. no derivation path and its master fingerprint is itself).
The -usehd configuration option was removed in version 2.16.0 From that version onwards, all new wallets created are hierarchical deterministic wallets. This release makes specifying -usehd an invalid configuration option.
This release allows peers that your node automatically disconnected for misbehaviour (e.g. sending invalid data) to reconnect to your node if you have unused incoming connection slots. If your slots fill up, a misbehaving node will be disconnected to make room for nodes without a history of problems (unless the misbehaving node helps your node in some other way, such as by connecting to a part of the Internet from which you don't have many other peers). Previously, Groestlcoin Core banned the IP addresses of misbehaving peers for a period (default of 1 day); this was easily circumvented by attackers with multiple IP addresses. If you manually ban a peer, such as by using the setban RPC, all connections from that peer will still be rejected.
The key metadata will need to be upgraded the first time that the HDseed is available. For unencrypted wallets this will occur on wallet loading. For encrypted wallets this will occur the first time the wallet is unlocked.
Newly encrypted wallets will no longer require restarting the software. Instead such wallets will be completely unloaded and reloaded to achieve the same effect.
A sub-project of Bitcoin Core now provides Hardware Wallet Interaction (HWI) scripts that allow command-line users to use several popular hardware key management devices with Groestlcoin Core. See their project page for details.
This release changes the Random Number Generator (RNG) used from OpenSSL to Groestlcoin Core's own implementation, although entropy gathered by Groestlcoin Core is fed out to OpenSSL and then read back in when the program needs strong randomness. This moves Groestlcoin Core a little closer to no longer needing to depend on OpenSSL, a dependency that has caused security issues in the past. The new implementation gathers entropy from multiple sources, including from hardware supporting the rdseed CPU instruction.
On macOS, Groestlcoin Core now opts out of application CPU throttling ("app nap") during initial blockchain download, when catching up from over 100 blocks behind the current chain tip, or when reindexing chain data. This helps prevent these operations from taking an excessively long time because the operating system is attempting to conserve power.
How to Upgrade?
Windows If you are running an older version, shut it down. Wait until it has completely shut down (which might take a few minutes for older versions), then run the installer. OSX If you are running an older version, shut it down. Wait until it has completely shut down (which might take a few minutes for older versions), run the dmg and drag Groestlcoin Core to Applications. Ubuntu http://groestlcoin.org/forum/index.php?topic=441.0
ALL NEW - Groestlcoin Moonshine iOS/Android Wallet
Built with React Native, Moonshine utilizes Electrum-GRS's JSON-RPC methods to interact with the Groestlcoin network. GRS Moonshine's intended use is as a hot wallet. Meaning, your keys are only as safe as the device you install this wallet on. As with any hot wallet, please ensure that you keep only a small, responsible amount of Groestlcoin on it at any given time.
Groestlcoin Mainnet & Testnet supported
Multiple wallet support
Electrum - Support for both random and custom peers
Biometric + Pin authentication
Custom fee selection
Import mnemonic phrases via manual entry or scanning
BIP39 Passphrase functionality
Support for Segwit-compatible & legacy addresses in settings
Support individual private key sweeping
UTXO blacklisting - Accessible via the Transaction Detail view, this allows users to blacklist any utxo that they do not wish to include in their list of available utxo's when sending transactions. Blacklisting a utxo excludes its amount from the wallet's total balance.
Ability to Sign & Verify Messages
Support BitID for password-free authentication
Coin Control - This can be accessed from the Send Transaction view and basically allows users to select from a list of available UTXO's to include in their transaction.
HODL GRS connects directly to the Groestlcoin network using SPV mode and doesn't rely on servers that can be hacked or disabled. HODL GRS utilizes AES hardware encryption, app sandboxing, and the latest security features to protect users from malware, browser security holes, and even physical theft. Private keys are stored only in the secure enclave of the user's phone, inaccessible to anyone other than the user. Simplicity and ease-of-use is the core design principle of HODL GRS. A simple recovery phrase (which we call a Backup Recovery Key) is all that is needed to restore the user's wallet if they ever lose or replace their device. HODL GRS is deterministic, which means the user's balance and transaction history can be recovered just from the backup recovery key.
Simplified payment verification for fast mobile performance
Groestlcoin Seed Savior is a tool for recovering BIP39 seed phrases. This tool is meant to help users with recovering a slightly incorrect Groestlcoin mnemonic phrase (AKA backup or seed). You can enter an existing BIP39 mnemonic and get derived addresses in various formats. To find out if one of the suggested addresses is the right one, you can click on the suggested address to check the address' transaction history on a block explorer.
If a word is wrong, the tool will try to suggest the closest option.
If a word is missing or unknown, please type "?" instead and the tool will find all relevant options.
NOTE: NVidia GPU or any CPU only. AMD graphics cards will not work with this address generator. VanitySearch is a command-line Segwit-capable vanity Groestlcoin address generator. Add unique flair when you tell people to send Groestlcoin. Alternatively, VanitySearch can be used to generate random addresses offline. If you're tired of the random, cryptic addresses generated by regular groestlcoin clients, then VanitySearch is the right choice for you to create a more personalized address. VanitySearch is a groestlcoin address prefix finder. If you want to generate safe private keys, use the -s option to enter your passphrase which will be used for generating a base key as for BIP38 standard (VanitySearch.exe -s "My PassPhrase" FXPref). You can also use VanitySearch.exe -ps "My PassPhrase" which will add a crypto secure seed to your passphrase. VanitySearch may not compute a good grid size for your GPU, so try different values using -g option in order to get the best performances. If you want to use GPUs and CPUs together, you may have best performances by keeping one CPU core for handling GPU(s)/CPU exchanges (use -t option to set the number of CPU threads).
Fixed size arithmetic
Fast Modular Inversion (Delayed Right Shift 62 bits)
SecpK1 Fast modular multiplication (2 steps folding 512bits to 256bits using 64 bits digits)
Use some properties of elliptic curve to generate more keys
SSE Secure Hash Algorithm SHA256 and RIPEMD160 (CPU)
Groestlcoin EasyVanity 2020 is a windows app built from the ground-up and makes it easier than ever before to create your very own bespoke bech32 address(es) when whilst not connected to the internet. If you're tired of the random, cryptic bech32 addresses generated by regular Groestlcoin clients, then Groestlcoin EasyVanity2020 is the right choice for you to create a more personalised bech32 address. This 2020 version uses the new VanitySearch to generate not only legacy addresses (F prefix) but also Bech32 addresses (grs1 prefix).
Ability to continue finding keys after first one is found
Includes warning on start-up if connected to the internet
Ability to output keys to a text file (And shows button to open that directory)
Show and hide the private key with a simple toggle switch
Show full output of commands
Ability to choose between Processor (CPU) and Graphics Card (GPU) ( NVidia ONLY! )
Features both a Light and Dark Material Design-Style Themes
Free software - MIT. Anyone can audit the code.
Written in C# - The code is short, and easy to review.
Groestlcoin WPF is an alternative full node client with optional lightweight 'thin-client' mode based on WPF. Windows Presentation Foundation (WPF) is one of Microsoft's latest approaches to a GUI framework, used with the .NET framework. Its main advantages over the original Groestlcoin client include support for exporting blockchain.dat and including a lite wallet mode. This wallet was previously deprecated but has been brought back to life with modern standards.
Works via TOR or SOCKS5 proxy
Can use bootstrap.dat format as blockchain database
Import/Export blockchain to/from bootstrap.dat
Import wallet.dat from Groestlcoin-qt wallet
Export wallet to wallet.dat
Use both groestlcoin-wpf and groestlcoin-qt with the same addresses in parallel. When you send money from one program, the transaction will automatically be visible on the other wallet.
Rescan blockchain with a simple mouse click
Works as a full node and listens to port 1331 (listening port can be changed)
Fast Block verifying, parallel processing on multi-core CPUs
Mine Groestlcoins with your CPU by a simple mouse click
All private keys are kept encrypted on your local machine (or on a USB stick)
Lite - Has a lightweight "thin client" mode which does not require a new user to download the entire Groestlcoin chain and store it
Free and decentralised - Open Source under GNU license
Fixed Import/Export to wallet.dat
Rescan wallet option
Change wallet password option
Address type and Change type options through *.conf file
Import from bootstrap.dat - It is a flat, binary file containing Groestlcoin blockchain data, from the genesis block through a recent height. All versions automatically validate and import the file "grs.bootstrap.dat" in the GRS directory. Grs.bootstrap.dat is compatible with Qt wallet. GroestlCoin-Qt can load from it.
In Full mode file %APPDATA%\Groestlcoin-WPF\GRS\GRS.bootstrap.dat is full blockchain in standard bootstrap.dat format and can be used with other clients.
Groestlcoin Electrum Personal Server aims to make using Electrum Groestlcoin wallet more secure and more private. It makes it easy to connect your Electrum-GRS wallet to your own full node. It is an implementation of the Electrum-grs server protocol which fulfils the specific need of using the Electrum-grs wallet backed by a full node, but without the heavyweight server backend, for a single user. It allows the user to benefit from all Groestlcoin Core's resource-saving features like pruning, blocks only and disabled txindex. All Electrum-GRS's feature-richness like hardware wallet integration, multi-signature wallets, offline signing, seed recovery phrases, coin control and so on can still be used, but connected only to the user's own full node. Full node wallets are important in Groestlcoin because they are a big part of what makes the system be trust-less. No longer do people have to trust a financial institution like a bank or PayPal, they can run software on their own computers. If Groestlcoin is digital gold, then a full node wallet is your own personal goldsmith who checks for you that received payments are genuine. Full node wallets are also important for privacy. Using Electrum-GRS under default configuration requires it to send (hashes of) all your Groestlcoin addresses to some server. That server can then easily spy on your transactions. Full node wallets like Groestlcoin Electrum Personal Server would download the entire blockchain and scan it for the user's own addresses, and therefore don't reveal to anyone else which Groestlcoin addresses they are interested in. Groestlcoin Electrum Personal Server can also broadcast transactions through Tor which improves privacy by resisting traffic analysis for broadcasted transactions which can link the IP address of the user to the transaction. If enabled this would happen transparently whenever the user simply clicks "Send" on a transaction in Electrum-grs wallet. Note: Currently Groestlcoin Electrum Personal Server can only accept one connection at a time.
Use your own node
Uses less CPU and RAM than ElectrumX
Used intermittently rather than needing to be always-on
Doesn't require an index of every Groestlcoin address ever used like on ElectrumX
UPDATED – Android Wallet 7.38.1 - Main Net + Test Net
The app allows you to send and receive Groestlcoin on your device using QR codes and URI links. When using this app, please back up your wallet and email them to yourself! This will save your wallet in a password protected file. Then your coins can be retrieved even if you lose your phone.
Add confidence messages, helping users to understand the confidence state of their payments.
Handle edge case when restoring via an external app.
Count devices with a memory class of 128 MB as low ram.
Introduce dark mode on Android 10 devices.
Reduce memory usage of PIN-protected wallets.
Tapping on the app's version will reveal a checksum of the APK that was installed.
Fix issue with confirmation of transactions that empty your wallet.
Groestlcoin Sentinel is a great solution for anyone who wants the convenience and utility of a hot wallet for receiving payments directly into their cold storage (or hardware wallets). Sentinel accepts XPUB's, YPUB'S, ZPUB's and individual Groestlcoin address. Once added you will be able to view balances, view transactions, and (in the case of XPUB's, YPUB's and ZPUB's) deterministically generate addresses for that wallet. Groestlcoin Sentinel is a fork of Groestlcoin Samourai Wallet with all spending and transaction building code removed.
Lastupdated2018-01-29 This post is a collaboration with the Bitcoin community to create a one-stop source for Lightning Network information. There are still questions in the FAQ that are unanswered, if you know the answer and can provide a source please do so!
Lightning Network White Paper - The protocol has changed since this original paper, but covers the mid-level mechanics of the Lightning Network with an emphasis on the smart contracts that make it trustless
If you can answer please PM me and include source if possible. Feel free to help keep these answers up to date and as brief but correct as possible
Is Lightning Bitcoin?
Yes. You pick a peer and after some setup, create a bitcoin transaction to fund the lightning channel; it’ll then take another transaction to close it and release your funds. You and your peer always hold a bitcoin transaction to get your funds whenever you want: just broadcast to the blockchain like normal. In other words, you and your peer create a shared account, and then use Lightning to securely negotiate who gets how much from that shared account, without waiting for the bitcoin blockchain.
Is the Lightning Network open source?
Yes, Lightning is open source. Anyone can review the code (in the same way as the bitcoin code)
Who owns and controls the Lightning Network?
Similar to the bitcoin network, no one will ever own or control the Lightning Network. The code is open source and free for anyone to download and review. Anyone can run a node and be part of the network.
I’ve heard that Lightning transactions are happening “off-chain”…Does that mean that my bitcoin will be removed from the blockchain?
No, your bitcoin will never leave the blockchain. Instead your bitcoin will be held in a multi-signature address as long as your channel stays open. When the channel is closed; the final transaction will be added to the blockchain. “Off-chain” is not a perfect term, but it is used due to the fact that the transfer of ownership is no longer reflected on the blockchain until the channel is closed.
Do I need a constant connection to run a lightning node?
Not necessarily, Example: A and B have a channel. 1 BTC each. A sends B 0.5 BTC. B sends back 0.25 BTC. Balance should be A = 0.75, B = 1.25. If A gets disconnected, B can publish the first Tx where the balance was A = 0.5 and B = 1.5. If the node B does in fact attempt to cheat by publishing an old state (such as the A=0.5 and B=1.5 state), this cheat can then be detected on-chain and used to steal the cheaters funds, i.e., A can see the closing transaction, notice it's an old one and grab all funds in the channel (A=2, B=0). The time that A has in order to react to the cheating counterparty is given by the CheckLockTimeVerify (CLTV) in the cheating transaction, which is adjustable. So if A foresees that it'll be able to check in about once every 24 hours it'll require that the CLTV is at least that large, if it's once a week then that's fine too. You definitely do not need to be online and watching the chain 24/7, just make sure to check in once in a while before the CLTV expires. Alternatively you can outsource the watch duties, in order to keep the CLTV timeouts low. This can be achieved both with trusted third parties or untrusted ones (watchtowers). In the case of a unilateral close, e.g., you just go offline and never come back, the other endpoint will have to wait for that timeout to expire to get its funds back. So peers might not accept channels with extremely high CLTV timeouts. -- Source
What Are Lightning’s Advantages?
Tiny payments are possible: since fees are proportional to the payment amount, you can pay a fraction of a cent; accounting is even done in thousandths of a satoshi. Payments are settled instantly: the money is sent in the time it takes to cross the network to your destination and back, typically a fraction of a second.
Does Lightning require Segregated Witness?
Yes, but not in theory. You could make a poorer lightning network without it, which has higher risks when establishing channels (you might have to wait a month if things go wrong!), has limited channel lifetime, longer minimum payment expiry times on each hop, is less efficient and has less robust outsourcing. The entire spec as written today assumes segregated witness, as it solves all these problems.
Can I Send Funds From Lightning to a Normal Bitcoin Address?
No, for now. For the first version of the protocol, if you wanted to send a normal bitcoin transaction using your channel, you have to close it, send the funds, then reopen the channel (3 transactions). In future versions, you and your peer would agree to spend out of your lightning channel funds just like a normal bitcoin payment, allowing you to use your lightning wallet like a normal bitcoin wallet.
Can I Make Money Running a Lightning Node?
Not really. Anyone can set up a node, and so it’s a race to the bottom on fees. In practice, we may see the network use a nominal fee and not change very much, which only provides an incremental incentive to route on a node you’re going to use yourself, and not enough to run one merely for fees. Having clients use criteria other than fees (e.g. randomness, diversity) in route selection will also help this.
What is the release date for Lightning on Mainnet?
Would there be any KYC/AML issues with certain nodes?
Nope, because there is no custody ever involved. It's just like forwarding packets. -- Source
What is the delay time for the recipient of a transaction receiving confirmation?
Furthermore, the Lightning Network scales not with the transaction throughput of the underlying blockchain, but with modern data processing and latency limits - payments can be made nearly as quickly as packets can be sent. -- Source
How does the lightning network prevent centralization?
How would the lightning network work between exchanges?
Each exchange will get to decide and need to implement the software into their system, but some ideas have been outlined here: Google Doc - Lightning Exchanges Note that by virtue of the usual benefits of cost-less, instantaneous transactions, lightning will make arbitrage between exchanges much more efficient and thus lead to consistent pricing across exchange that adopt it. -- Source
How do lightning nodes find other lightning nodes?
Does every user need to store the state of the complete Lightning Network?
According to Rusty's calculations we should be able to store 1 million nodes in about 100 MB, so that should work even for mobile phones. Beyond that we have some proposals ready to lighten the load on endpoints, but we'll cross that bridge when we get there. -- Source
Would I need to download the complete state every time I open the App and make a payment?
No you'd remember the information from the last time you started the app and only sync the differences. This is not yet implemented, but it shouldn't be too hard to get a preliminary protocol working if that turns out to be a problem. -- Source
What needs to happen for the Lightning Network to be deployed and what can I do as a user to help?
Lightning is based on participants in the network running lightning node software that enables them to interact with other nodes. This does not require being a full bitcoin node, but you will have to run "lnd", "eclair", or one of the other node softwares listed above. All lightning wallets have node software integrated into them, because that is necessary to create payment channels and conduct payments on the network, but you can also intentionally run lnd or similar for public benefit - e.g. you can hold open payment channels or channels with higher volume, than you need for your own transactions. You would be compensated in modest fees by those who transact across your node with multi-hop payments. -- Source
Is there anyway for someone who isn't a developer to meaningfully contribute?
Sure, you can help write up educational material. You can learn and read more about the tech at http://dev.lightning.community/resources. You can test the various desktop and mobile apps out there (Lightning Desktop, Zap, Eclair apps). -- Source
Do I need to be a miner to be a Lightning Network node?
Do I need to run a full Bitcoin node to run a lightning node?
lit doesn't depend on having your own full node -- it automatically connects to full nodes on the network. -- Source LND uses a light client mode, so it doesn't require a full node. The name of the light client it uses is called neutrino
How does the lightning network stop "Cheating" (Someone broadcasting an old transaction)?
Upon opening a channel, the two endpoints first agree on a reserve value, below which the channel balance may not drop. This is to make sure that both endpoints always have some skin in the game as rustyreddit puts it :-) For a cheat to become worth it, the opponent has to be absolutely sure that you cannot retaliate against him during the timeout. So he has to make sure you never ever get network connectivity during that time. Having someone else also watching for channel closures and notifying you, or releasing a canned retaliation, makes this even harder for the attacker. This is because if he misjudged you being truly offline you can retaliate by grabbing all of its funds. Spotty connections, DDoS, and similar will not provide the attacker the necessary guarantees to make cheating worthwhile. Any form of uncertainty about your online status acts as a deterrent to the other endpoint. -- Source
How many times would someone need to open and close their lightning channels?
You typically want to have more than one channel open at any given time for redundancy's sake. And we imagine open and close will probably be automated for the most part. In fact we already have a feature in LND called autopilot that can automatically open channels for a user. Frequency will depend whether the funds are needed on-chain or more useful on LN. -- Source
Will the lightning network reduce BTC Liquidity due to "locking-up" funds in channels?
When setting up a Lightning Network Node are fees set for the entire node, or each channel when opened?
You don't really set up a "node" in the sense that anyone with more than one channel can automatically be a node and route payments. Fees on LN can be set by the node, and can change dynamically on the network. -- Source
Can Lightning routing fees be changed dynamically, without closing channels?
Yes but it has to be implemented in the Lightning software being used. -- Source
How can you make sure that there will be routes with large enough balances to handle transactions?
You won't have to do anything. With autopilot enabled, it'll automatically open and close channels based on the availability of the network. -- Source
How does the Lightning Network stop flooding nodes (DDoS) with micro transactions? Is this even an issue?
I need to setup a path in my php but I currently don't know the path. I need to configure the paths to the uploads directory Should look like this below: /srv/www/uploads/ My uploads.php file is i... DDoS attack against Electrum BitCoin Wallet Update Server in order to replace it with malicious fake update server. 27.Apr.2019. Apps Android Smart Phone, CryptoCurrencies / Bitcoins / Ethereum, Cybercrime, CyberSec / ITSec / Sicherheit / Security / SPAM, Debian, hacking, hacktivism, internet. It is one of the most critical of digital infrastructures – update servers – thus vendors need to ... Install the Bitcoin PHP library. Go to your web server document root (a directory where your websites are stored) and create folders bitcoin/hdkeys. In my case, the document root is ~/Sites but it ... There are two variations of the original bitcoin program available; one with a graphical user interface (usually referred to as just “Bitcoin”), and a 'headless' version (called bitcoind).They are completely compatible with each other, and take the same command-line arguments, read the same configuration file, and read and write the same data files. Server Document Root Path in PHP [closed] Ask Question Asked 7 years, 7 months ago. Active 7 years, 7 months ago. Viewed 158k times 21. 4. This question is unlikely to help any future visitors; it is only relevant to a small geographic area, a specific moment in time, or an extraordinarily narrow situation that is not generally applicable to the worldwide audience of the internet. For help ...
How to setup Apache, MySql, and PHP on Ubuntu Linux - YouTube
How to Upload PHP Website On Server with Database Guys, In this Tutorial We Will Learn How to Upload PHP Website On Server with Database. Guys, If you have P... I read the Bitcoin whitepaper. I found it very interesting. To share my new knowledge, I’d like to create a cryptocurrency in PHP… with you. This session should be more than enough. Along the ... hello friends today we learn about blockchain mining /bitcoin . in this video we are reviewing a best tool to hack btc ! DISCLAIMER :we are not responsible for any crime and illegal activity ... Free Domain And hosting, Upload database and Php Script HOW TO Upload PHP WEBSITE on server HOW TO Upload PHP WEBSITE on cPanel How to host php and mySql pro... Zu Besuch in der Bitcoin-Mine: Hier fließt die virtuelle Währung in Millionenhöhe. Mehr Galileo: http://www.galileo.tv/ Galileo auf YouTube abonnieren: htt...