Sunday, April 2, 2023

Cardano Daily Discussion - April 03, 2023

Hello everyone,

Welcome to the Cardano Daily Discussion!

The standard sub rules apply here (see sidebar), with the exception that price discussion is allowed in this thread, though we encourage you to try not to make this the focus and talk about the project itself. Please ask questions, help others and be civil - be sure to get involved in Project Catalyst too!

If you're new, please make sure you're read through the newbies guide and share it with others (use the ?newbies comment command to reference it).

⚠️ Scam Warning ⚠️

Please read the Cybersecurity guidelines for Cardano Users.

There are ongoing giveaway scams on youtube and many scammers lurking in Cardano's social channels impersonating ambassadors/moderators/official staff contacting users via direct messages.

For example, searching 'cardano' on youtube and sorting by most recent upload date shows several giveaway scams running (all videos in screenshot are scams):

Ongoing 'giveaway' scams on Youtube

The youtube scams are automated; use stolen footage usually of Charles Hoskinson and are restreamed so to appear to be 'live'; appear to have many watchers (which are bots); use bought hacked channels and are edited to appear like official channels.

See this post for more examples of what they look like

Do not be fooled!

To be clear:

  • ⚠️ There is no such thing as a Cardano giveaway
  • ⚠️ Never share your seed phrase with ANYONE
  • ⚠️ Never send ADA to someone promising to send you more ADA back
  • ⚠️ You will never be contacted by ambassadors/moderators/staff

Please report scams on the Cardano Fraud Detection Bureau.

⚠️ Scam Warning ⚠️

https://preview.redd.it/60ofludzpq8a1.png?width=284&format=png&auto=webp&v=enabled&s=7d58fc8aaa2eb5f125624608b97bdd7b943a1111

Midnight Subreddit

In anticipation of Input Output's new data protection blockchain 'Midnight', I've managed to acquire r/Midnight through some negotiation and repurpose it for the Cardano Community (the sub was created for a card game back in 2011 but was mostly unused).

I decided to do this as I thought the project will eventually need a home on reddit and best to setup now before any scammers do. Obviously there's not much to post about on there right now as it's early days as the project is yet to be released, but if you'd like to be kept up to date on the project please feel free to join the new subreddit if the project interests you and I'll be sure to post updates as and when they become available.

Right now the sub is mostly a carbon copy of r/cardano, I've copied most of the automod and rules over, so certain aspects may seem a little incongruent atm, but I'll tailor and tweak the sub as we go. Feel free to send me or post any input if you want stuff to change.

Cheers all


Do exchanges owe any duty to customers in the event of an emergency? (x-post from /r/Bitcoin)

https://www.reddit.com/r/Bitcoin/comments/12a8ory/do_exchanges_owe_any_duty_to_customers_in_the/

Bitcoin Olympics Hackathon: Boost Innovation on Bitcoin

This event is held to boost innovations on Bitcoin and I feel this is a great opportunity for all Bitcoin enthusiasts, maxis, engineers and developers to cooperate to achieve a Web3 user-owned internet on Bitcoin.

Hope this opportunity could help more people who want to contribute to the Bitcoin economy.

Here are more details:

Over 20 speakers, mentors & judges:

  • Muneeb Ali: CEO of Trust Machines, Founder of Stacks
  • Albert Liang: CEO & Co-founder of BTC Startup Lab
  • Trevor Owens: Managing partner of Bitcoin Frontier Fund, author, investor
  • Tycho Onnasch: Managing Partner of Trust Machines, co-founder of zest protocol, Forbes 30 Under 30
  • Tom Giles: Founder of Megatron Ventures, Co-founder of Awesimo & Stacculents.
  • Emil E.: CTO of zest protocol, BTC defi innovator
  • Ken Liao: CEO of XVerse, BTC, STX, and Ordinals Mobile Wallet
  • Grace Ng: Venture Partner at Stacks Accelerator, founder of crashpunks, artist
  • John Ennis: CEO of NeoSwap, NFT and AI trading & Auctions
  • Jamil Dhanani: CEO of Gamma, Ordinals Movement Leader

6 Prizes to Boost Innovation

  • Best Technical
  • Best Originality
  • Highest Potential to be a Startup
  • Most Users Onboarded
  • Ordinals
  • Public Voting

Rundown of Online Hackathon:

  • April 5: kickoff, orientation, team formation, rules & prizes
  • April 6: masterclasses on new tech to build BTC products - Bitcoin Defi (speakers&mentors share insights, use cases & tech tools)
  • April 7: masterclasses on new tech to build BTC products - Ordinals & BTC innovations (speakers/mentors share insights, use cases & tech tools)
  • April 8-12: get to work!
  • April 13 - 14: judges review videos and code
  • April 17: Announce winners + keynote talks from prize sponsors
  • April 20: What's next: Post-Bitcoin Olympics panel discussion
  • Signup: https://btcolympics.devpost.com/
    Registration Deadline: March 31

List of 44 FREE and Best Selling Discounted Courses

Courses for 03 April 2023

Note : Coupons might expire anytime, so enroll as soon as possible to get the courses for FREE.

GET MORE FREE ONLINE COURSES WITH CERTIFICATE – CLICK HERE


List of 44 FREE and Best Selling Discounted Courses

Courses for 03 April 2023

Note : Coupons might expire anytime, so enroll as soon as possible to get the courses for FREE.

GET MORE FREE ONLINE COURSES WITH CERTIFICATE – CLICK HERE


Crypto evangelists enter the Bukele government: The Salvadoran president has appointed two U.S. crypto investors to lead the country’s National Bitcoin Office, as the IMF issues more warnings about the country’s so-called volcano bonds

This is the best tl;dr I could make, original reduced by 79%. (I'm a bot)


American crypto evangelist Max Keizer has compared Salvadoran President Nayib Bukele to John F. Kennedy and El Salvador to the kingdom of Camelot, describing it as a kind of promised land for bitcoin where taxes and central banks are sleighed like dragons.

Until a few months ago, Keizer - an American former stockbroker and reporter close to Russian propaganda sites - was just another one of the many outlandish characters who began to arrive in the country in 2021, after Bukele announced that El Salvador would be the first in the world to accept bitcoin as legal currency.

Bitcoin City In June 2021, Bukele announced that bitcoin would be the official currency in his country, along with the dollar.

At the end of 2021, Bukele hosted Bitcoin Week in El Salvador - an event that tried to emulate the vibe of the Miami conference.

At the party to celebrate the end of the event, Bukele took to the main stage, at the foot of the beach, while a giant screen projected in neon blue letters: "The President." Laser lights, smoke cannons and fireworks went off as the president took the microphone: "When Alexander the Great was conquering the world, he decided to establish 20 Alexandrias throughout his empire. These cities were beacons of hope for the rest of the planet. We must establish our first Alexandria here, in El Salvador. Let's build Bitcoin City.".

Bukele said his Bitcoin City would be powered by geothermal energy from a nearby volcano, and that the money to set up schools, hospitals and the rest of the services needed would come from so-called volcano bonds or bitcoin bonds: new Salvadoran public debt securities backed by bitcoin.


Summary Source | FAQ | Feedback | Top keywords: bitcoin#1 Bukele#2 Salvador#3 country#4 Herbert#5

Post found in /r/worldnews.

NOTICE: This thread is for discussing the submission topic. Please do not discuss the concept of the autotldr bot here.


Disambiguating Decentralization - The untold truth about how things actually work

Originally Published: https://medium.com/coinmonks/disambiguating-decentralization-3d49c3e911fb

Tl;dr
Decentralization is a process not an event.
True decentralization exists on multiple levels.
Decentralization is something that is applicable & useful only at scale.
Not everything needs to be decentralized.
Crypto is a great tool to achieve decentralization.

https://preview.redd.it/d4xhdkbx6jra1.jpg?width=620&format=pjpg&auto=webp&v=enabled&s=6c9d454b2b3444f7f10cd92e66b839fe2ed3d2ce

The most used & abused buzzword of the entire crypto industry has been decentralization.

Many people assume that by default if a project is in the crypto space then it is/must be decentralized.

As history would show us, that is absurd & untrue.

Moreover, it does not have to be.

Everything under the sun starts off centralized. (Yes, even bitcoin started with one node).

Decentralization is a complex subject.

While it does represent the noble mission of displacing rent-seeking middlemen & nosey governments, it’s actual meaning has gotten lost in all the chaos of ICO’s, memecoins, gigachads & NFTs.

Intuitively, most people understand the premise of decentralization, the diffusion of power from a single source to many. However, what is commonly overlooked is that decentralization is a subjective spectrum not a definitive end.

If a network has 1,000 nodes is it decentralized?

If a company has 300 owners/shareholders is it decentralized?

If a government has 3 cabinets is it decentralized?

Somebody will say yes.
Some will say no.
Majority will say they don’t know.

The truth here is that everyone is right!

Decentralization is a matter of perspective & design.

If a network started with 10 nodes and over the course of a year scaled to 1,000 nodes, then relative to its humble beginnings, it becomes much more decentralized. However, if we ask people that are involved in a network with 15,000 nodes they might say that they don’t agree.

Of course, things get more complicated when we factor in the separation of roles for nodes, where the 10 original nodes retain 50% control & 990 new nodes have the other 50%; then obviously this is not a decentralized network.

Now let’s say that the network has a system whereby over the course of the next few years, the original nodes spread out their control throughout all new nodes; then its a decentralizing network.

This is a matter that is best explained by the example of DEFI.

Whenever a project is getting started, it should be centralized. Typically, projects will provide a roadmap or in some way address the topic of decentralization. If they do not, then by default they intend on being centralized… And there is nothing wrong with that!

So many individual projects get unfair hatred because they have a small group of owners.

What people miss here is the bigger picture!

Decentralizing a project too early will result in failure. A “faithful” community of people will not have the same vision or technical capabilities that a founder & their team would.

Think about it, who would you rather have build a lending protocol, a team of 10 expert engineers or a group of 2500 scrambled Twitter tweeters? Where would you feel more comfortable putting your money?

Here is the caveat that goes over many people’s heads.

Sure, if a protocol has 5 owners, it is centralized…

HOWEVER!

If there are 5,000 protocols with 5 owners each, guess what… the projects may not be decentralized, but the industry is!

https://i.redd.it/jzeln2407jra1.gif

Decentralization, just like anything else in life, comes with its own set of tradeoffs. In return for having more owners, things get more disorganized, inconsistent & chaotic.

The biggest problem of decentralization is coordination.

Trying to coordinate 5 people is easily doable. Trying to coordinate 15,000 people becomes insanely complex. The amount of communication needed is mind-boggling, there will be people that are unavailable, people that miss the message or those that just forget. Then those that show up are upset they are forced to be doing all the work, but wait, those that forget to show up get mad that a decision was made without them. This is a never-ending cycle of inefficiency.

Three Phases of Decentralization in Crypto Projects

Centralized.

The starting point of any idea. Here is where all of the most difficult planning, technical & ideological development takes place. It is very easy to identify if a project is centralized based on the activity that is taking place. If it is fundraising, it is centralized. If the code is only partially open, it is centralized. If the top 100 addresses own >90% of the tokens, it is centralized.

Decentralizing

This is when a project starts to hand over control from the founding team to its community. Code slowly becomes open source, token balances are more distributed (hello airdrops), & a DAO is established. Typically this is a prolonged process that requires a lot of activity on behalf of interested users. This is not as simple as an airdrop. This requires time, evaluation & proofs of commitment. In spite of everything seeming right, bad actors will always show up & try to take over the network or squeeze out all the profit from the hard-earning community members.

Decentralized.

Full decentralization exists only when every element of the project is out of the hands of the original team/founders & the government cannot blame any single party for what happens. We have actually not had a chance to experience this with anything except Bitcoin thus far & have much to learn about how real decentralization will actually materialize itself.

Where to find decentralization in Crypto?

There are 4 general touchpoints that dictate true decentralization:
1) the network (consensus mechanism + node count)
2) the governance model (DAO voting or CPU/machine node-based?)
3) the code (is it private or open source)
4) the tokens (allocation/balance held by accounts)

Just because there are 10,000 nodes on a network, it does not mean the project is decentralized. Here the important factor of a consensus mechanism comes into play. In a Proof-of-work model, where anybody can join or leave at will, 10,000 nodes can be considered decentralized. On the other hand, if it is a delegated proof of stake model, then the node count won’t really matter, because ultimately only a small group of delegates will control the network anyway.

Governance is another slippery subject. While DAO’s are supposed to represent the be-all-end-all structure of organizations, on-chain activity is easy to fake. DAO voting is a mechanism based on token holders, where usually, a 1-to-1 system (one token equals one vote) is implemented. Single entities with huge holdings (whales) can spoof accounts & split up their tokens across a bunch of smaller wallets; ultimately tilting all decisions in their favor. A prominent example of this happened with UniSwap’s UNI token. They leverage a sly weighted delegation that prioritizes the wealthy.
Moreover, it has become public knowledge that the prominent VC firm a16z owns a huge portion of the tokens & yes, they split them up across multiple wallets.

Things quickly get even more complicated with the introduction of specialized machines. Bitcoin’s POW started off as a simple 1CPU-1Vote system. This system is still in place. However, savvy technologists have found other loopholes by which to break this system & take over control. Hello ASIC (Application-Specific-Integrated-Circuit) miners. While previously it was possible to mine with a simple laptop, now in order to join the network people must acquire expensive machinery. Moreover, they must acquire A LOT of these machines. This is not to say things are good or bad; stronger machines means more robust network security; it just also means that it becomes more difficult for average people to join the network.

As it pertains to the code, it is not as straightforward as it may seem. Yes, it is binary in the sense of whether code is open-sourced or not. Surely, it is important to understand that not just a portion of the code, but all of it must be put into the public domain… But, there is the greater nuance of the ability to push updates. Small groups of developers become gatekeepers to the code. This is important because they serve the important function of protecting the protocols from malicious actors; however, they also cause a bottleneck for testing & innovation. Not bad, just fact.

Tokens are a concept that has existed in computer science & distributed systems LONG before the arrival of crypto. In crypto, they are the units of account in a ledger that represent ownership of something. We’ve already spoken that tokens are used for the allocation of voting in DAO functions; but in the economic sense, basic distribution of token balance among wallets is (for now) the best & only way to gauge decentralization. Still, as with the DAO voting, this is almost always spoofed. Not necessarily by whales as an attempt to fake out the community, but as a means to protect themselves in the event of losing wallet access or robbery.

First, somebody has an idea. They share this idea with other people. Then those people tell even more people. As network effect would have it, by the time the 1,000,000th person hears the idea, nobody owns it. It belongs to the ethers of society (no pun intended).

I am very pro decentralization, after all, this is how we circumvent shadowy government operations. At the same time, I strongly support the development of new projects that are centralized; that is where the innovation happens.

Stay sharp friends
&
Always remember

“Nothing is either good or bad, but our thinking makes it so” — William Shakespeare

Originally Published: https://medium.com/coinmonks/disambiguating-decentralization-3d49c3e911fb


How Client Architecture applies to decentralization & security in Crypto

Originally published: https://medium.com/the-crypto-masters-guide-tcmg/how-client-architecture-applies-to-decentralization-security-in-crypto-231971519466

https://preview.redd.it/353tbgux8jra1.png?width=1024&format=png&auto=webp&v=enabled&s=c83c431c1862de8a3648acbc1c23b9334e647d63

Whenever the topics of security & decentralization around blockchain come up, the discussion tends to fall into one of two camps, consensus mechanisms or hardware.

Certainly, these are both valid & important points to address, however, there is another vector that is hidden from plain sight.

That is the node client.

What is a Client

In the context of blockchain/DLTs, a client is a piece of software that connects a node to the network & allows its user to read/write information to/from the blockchain. So, a miner would need to install a software client on their hardware device in order to join & participate in the network.

Blockchain = Server
Node = hardware w/ client
Client = software

Clients provide key network operational functionality including: an execution environment for processing transactions, storage of transactional data, P2P networking tools, and APIs for interfacing with the network directly.

Every blockchain must have its own client software that complies with the protocol/consensus rules of that specific chain. Ethereum clients do not work in Bitcoin & a Bitcoin client does not work on Solana.

Each client will vary based on the language that it is written in & their own unique operational specifications (some might be focused on memory optimization while others focus on performance optimization through consensus modularity for launching side-chain).

Types of Clients

Generally speaking, clients are categorized by their node application type. Typically, there are four (3 + 1) types of node clients for a blockchain; full nodes, archival nodes, lite nodes & miner nodes.

Full Nodes/Clients:

The most common type of node on a network that contributes to network security/consensus & stores the most recent state of the chain. They act as the main carriers of information that validate blocks, verify transactions & serve data to other nodes. These node types do not provide any incentive for being operated but do act as a means of direct connection to a chain.

Archival Nodes/Clients:

The most demanding, in terms of memory, of all node types, archival nodes store the entire history of a blockchain. In order to run an archival node, an immense amount of storage space is required; therefore, these are rarely, if ever, run by individuals. Once a chain reaches a certain stage, server farms or enterprise-grade clusters of machines are required. These nodes are for providing strong network security & data-rich services such as explorers or on-chain data analytics.

Lite Nodes/Clients:

Sometimes also called SPV (simplified payment verification) node, this version of clients only contain a tiny sliver of the state & only store data relevant to a specific set of information. Lite nodes connect to a full node in order to get access to on-chain data. A good example of a lite node is a wallet. Wallets only require information that is related to a certain account & have no desire/need to participate in network operations. These are clients for most of the basic user applications.

Miner Nodes/Clients (+1):

The reason this is a +1 is because this variation of a node client does not apply to all blockchains; it does not exist in staking networks & is only applicable to POW chains. As the name might suggest, miner nodes have a single function, to mine. These client types have evolved to become suited for single-purpose equipment such as ASICs in Bitcoin. Sometimes, this function meshes with full node operations, but the vast majority of the time it will be a separate function.

The Single Client Dilemma & Common Concerns

Whenever a blockchain network has only one client, it is a double-edged sword that can serve as a security issue. If there is only one implementation of the protocol, any bug or vulnerability in that implementation can potentially compromise the entire network.

Question: What happens whenever/if ever there is a bug found in the client?

side 1: Then the whole network is at risk.

side 2: if all developer efforts are allocated to a single purpose, then the bug risk is lower to begin with.

Question: What happens if/whenever a hacker finds a vulnerability in a client?

side 1: Then the whole network & its participants are at risk.

side 2: no comment…

Question: What if the client was designed in such a way that it keeps new developers out from joining & requires a strict set of specially trained developers?

side 1: This then creates a bottleneck that stifles innovation.

side 2: This then creates higher quality special purpose developers.

MCA — Multi-Client Architecture

Multi-Client Architecture refers to a software design principle where there are multiple independent implementations of a client for a given blockchain protocol.

There are four prominent reasons that MCA improves the overall health & well-being of a blockchain network:

  1. Fault tolerance:
    The risk of a single bug or vulnerability affecting the entire network is reduced. As an example, let’s take a network with 1,000 nodes and 4 clients. In the event that a single client malfunctions & takes down 25% of all the network nodes, the network will be able to operate uninterrupted. If there had only been that one corrupt client then the whole network would have halted.

  2. Resilience against attacks:
    With multiple independent implementations, an attacker would need to discover and exploit vulnerabilities in multiple implementations to have a significant impact on the network. The increased surface area of raw code & individual complexity that a hacker/bad actor would need to go through in order to break a network increases dramatically with each new client.

  3. Decentralization:
    MCA reduces the overcast of any single client dominating the network because multiple clients have to abide by protocol consensus to agree on the state of the blockchain before any new transactions can be added.

  4. Openness and transparency:
    Multi-Client Architecture promotes openness and transparency by allowing anyone to contribute to the development of a client implementation. It minimizes the reliance & need to trust a single team to produce honest products. Instead, it increased competition between developer teams to drive adoption. Additionally, multiple parties working on the development of a blockchain protocol can in turn help prevent the development of hidden vulnerabilities or backdoors. (unless they are all corrupt & colluding against the public)

#The current state of MCA in Crypto

The vast majority of projects only have one client version & rarely mention the introduction of any new ones (after all developing clients requires funding).

However, a few technology-focused OG projects such as Ethereum, Polkadot & (recently in development) Solana, have taken this subject matter seriously & are leading the implementation of MCA.

Massive credit must be given to Ethereum for always having the most diverse set of client software. As of this writing, there are 4 major active implementations:

— Geth ***(~70.1% of all clients)***The most robust protocol client that allows users the flexibility to run any version of a node. Implementation of Ethereum in the GO programming language.

— Nethermind ***(~13.6% of all clients)***Implemented in the .NET programming language, Nethermind is a protocol execution client that optimizes operations for Full nodes.

— Erigon ***(~10.8% of all clients)***A fork of Geth client (also in the GO programming language) that is focused on maximizing the efficiency of storage for archive nodes.

— Besu ***(~5.5% of all clients)***Enterprise-focused client in the JAVA language. Created & open-sourced by the hyperledger foundation, Besu provides the extended modularity to swap out the consensus mechanisms for private implementations.

Ultimately there is no perfect solution.

I am personally very supportive of having a diverse set of clients but am very aware of the possibility that even with more clients available it is not guaranteed that they will attract enough attention to displace older, original clients that are already battle tested.

Thank you for reading;

I hope this serves you well on your journey through the blockchain

See you all on the other side 🥂

Originally published: https://medium.com/the-crypto-masters-guide-tcmg/how-client-architecture-applies-to-decentralization-security-in-crypto-231971519466