Author

Topic: Can a service whose code is close sourced be regarded as decentralized? (Read 199 times)

legendary
Activity: 3472
Merit: 10611
When it comes to centralization you have to ask a pretty simple question: Is there a central authority that if removed would harm the system? If the answer is yes then that system is centralized.
So in case of a closed source project, if you remove the entity that has access to the source code then the system falls apart because it can no longer be updated, bugs stop being fixed, ... on the other hand in an open source project (like Electrum) even if you remove the head of the project (eg. Thomas. V.) the project can still be updated,... by other developers since the source was already available to everyone.

Of course it is not just about the entity "being removed", it is also about their influence on the whole project. For example Vitalik. B. has full control over ethereum which is one of many reasons why it is centralized, and if he were removed the project would turn into more chaos.
legendary
Activity: 3024
Merit: 2148
Centralization-decentralization can be viewed as a scale rather than a binary value. For example, lots of altcoins have very small node count, and not everyone can launch a node, and not everyone can contribute to their code, but many people still say that those coins are decentralized, because they have a blockchain, just like Bitcoin.

If a "service" is closed-source, it already means that the developers can make any changes they want, and the users might not even know which changes were made, as they can't see the code. And there's no freedom to fork the code, if you don't agree with new changes. So in regards of development, closed-source means total centralization.
member
Activity: 110
Merit: 11
At least we all have the free will to choose, if you don't like closed source projects then don't use them, its as simple as that, not all projects that goes closed source did that to hide something or hurt their investors.
legendary
Activity: 2212
Merit: 7064
Can a service like a wallet whose code is closed source be decentralized?
It depends what exactly you are talking about, but generally speaking, anything can be decentralized.
I can have decentralized power by splitting one county in several self-governed regions without strong centralized ruler, or I can have some closed source application running software nodes from their own computers running closed source windows os, and that makes this decentralized network.
I prefer having software written in open source code, butt let's be realistic and say this is nearly impossible to achieve for everything.

Does this mean any service that is noncustodial regardless of whether the source code is open or closed = Decentralized?
Something can be noncustodial and be both open source and closed source.
For example, you can have oen source Bitcoin Core or Electrum wallet on one side, and Exodus or Coinomi on the other side, but you are holding the keys for all this wallets.
mk4
legendary
Activity: 2870
Merit: 3873
Paldo.io 🤖
How about this question?

What gain is there for a project that plan to keep users assets safe decided to go closed source? 🤷‍♀️ I thought earning the public trust is the main target of any crypto project.

I'm pretty sure OP was just asking a theoretical question.

But to answer your question, sometimes a project in it's very early stages might want to have some testers but the product simply isn't ready(for multiple potential reason) for the team to open-source it early on(hence other people can fork it).
member
Activity: 130
Merit: 11
How about this question?

What gain is there for a project that plan to keep users assets safe decided to go closed source? 🤷‍♀️ I thought earning the public trust is the main target of any crypto project.
legendary
Activity: 2450
Merit: 4415
🔐BitcoinMessage.Tools🔑
It is still a group that make close source software, they limited it to just some developers, is that not centralized when the public can not see the source code used in the wallet makeup in a way the public can check for vulnerabilities.
Again, you are talking about a process. It can be said that the process of software development is decentralized when the code is open-source, and it is centralized when the code is closed-source. In the case of open-source, not only is it possible to verify everything for yourself, contribute to it or something like that, but also you can fork yourself away from the original implementation and start building your own version of a wallet. Essentially, open-source software allows for decentralized free markets for development. On the other hand, when software is closed-source, individuals can't follow and influence the course of development, nor can they run their own version of the same implementation, which makes them dependent on the decision of a small group of people. It is not a free market, but rather central planning, which bitcoin supporters should be squarely and totally against.

The bitcoin network is decentralized because the public can be able to participate in the network, anyone can be a miner, anyone can run a node and like that, but a wallet organization that deprive the public from view the source code of the wallet for fixing vulnerabilities and the likes, just having their own developers to view the code and check for vulnerabilities should be considered as centralized as wellet.

If a time will come a governmental body will secretly dialogue with close source wallet developer to include some malicious codes that can spy what the wallet users are using which something like that can happen. I think close source wallet should perfectly be considered as not decentralized.
You're absolutely right: even if it was possible to build a decentralized network on top of a closed-source foundation, those networks would be very fragile and wouldn't last. The variety of implementations wouldn't provide the same resilience as we have today in bitcoin, it would only postpone its inevitable demise. But anyway, in purely decentralized systems you can't prevent people from building closed-source software nor can you prevent them from running it.
legendary
Activity: 2912
Merit: 6403
Blackjack.fun
But I do often see people refer to closed source projects as decentralized, which brings me to the question;
1. Can a service like a wallet whose code is closed source be decentralized?
2. Does this mean any service that is noncustodial regardless of whether the source code is open or closed = Decentralized?

A wallet, an app, anything will neither be centralized nor decentralized, as witcher_sense mentioned, there is a clear difference between software and protocols, those can be centralized or decentralized.

If Coinbase makes the code for their app and exchange open source it will mean that the exchange becomes decentralized?

Open source means the source code is available to the public, if it is close source, the source code can only be seen by few developers. If it is few developers (not public) that the code is available to, for modifications and clarity, then it is not decentralized.

And if the developers do post the code but don't care at all about what people say and they release whatever they want, making obviously a centralized decision taken by a few people, how could you call it decentralized?
legendary
Activity: 2380
Merit: 5213
Some people may say that "Being able to spend the fund without any need to that particular wallet means that it's decentralized". Even if the wallet is open-source, this is not necessarily true. 
To me, being decentralized means that you can run the wallet from the source code and make transaction with that particular wallet without relying on a third party and a centralized server.

For example, trustwallet gives you a seed phrase which can be used for recovering all your private keys.
If trustwallet doesn't exist a day, you can import your seed phrase into another wallet and access your fund. This doesn't mean trustwallet is decentralized. Because whenever you use trustwallet, you have to connect to a centralized server. The server you connect to can know your IP address and hurt your privacy. As trustwallet is close-source, it's also possible that they have access to all your keys and are technically able to move all your fund even without your permission.


I would categorize the wallets into the following types.

1. Custodial: You give a third party full access to your fund and lose your own control. Example: Coinbase

2. Close-source, Centralized and non-custodial: You have control over your fund, but there is no guarantee that you are the only one who has access to the keys. There's also a centralized server which can hurt your privacy. Example: Trustwallet, blockchain.com

3. Open-source, Centralized and non-custodial: (Provided that the code has been reviewed) You are the only one who has full control over the fund, but you still connect to a centralized server which is not good for your privacy. Example: Mycelium

4. Open-source - Decentralized and non-custodial: (Provided that the code has been reviewed) You are the only one who has full control over the fund, there is no third party involved and you can protect your privacy. You can run the wallet without any need to a third party and a centralized server. Example:  Electrum (if you run your own server) and bitcoin core.

legendary
Activity: 2702
Merit: 4002
It depends Are all parts of the code closed source or some? Who is developer team developing this wallet? Can the seed be export? Extract the private key.

One of the examples is Blockchain.com wallet. We cannot describe them as DEXs wallet because there are not a single case of hacking has been recorded, and the platform cannot protect you if you lose your money, but at the same time we cannot consider it open source.

If the wallet is open source, you should not trust unless you check every line of the code yourself or trust a third party who has done so.
hero member
Activity: 812
Merit: 560
1. Can a service like a wallet whose code is closed source be decentralized?

In my own opinion, I don't regard any wallet with close source as a decentralized one, because that's the only reason that differentiate them from the hot wallet closed source in the centralized exchanges, why will they have in possession of it when it is said to be open source? something must be fishing.

2. Does this mean any service that is noncustodial regardless of whether the source code is open or closed = Decentralized?

No once it come to dealing with wallets but yes once it comes in other aspect of the economy, base on my understanding.
legendary
Activity: 2450
Merit: 4415
🔐BitcoinMessage.Tools🔑

1. Can a service like a wallet whose code is closed source be decentralized?
2. Does this mean any service that is noncustodial regardless of whether the source code is open or closed = Decentralized?

Decentralization, according to Wikipedia, is "the process by which the activities of an organization, particularly those regarding planning and decision making, are distributed or delegated away from a central, authoritative location or group." A wallet, be it closed-source or open-source, is not a process but a piece of software that basically is a set of instructions that tells your computer or smartphone what to do, particularly with your keys. In other words, a wallet per se can neither be decentralized nor centralized regardless of the type of code on which it is based.

The Bitcoin network, for example, is decentralized not because it consists of open-source wallets or full nodes but because the process of decision-making distributes among all participants. What's important here is that the participants of the network are free to decide which software implementation to run: as long as it strictly follows the rules, it works. This software shouldn't necessarily be open-source, but it is advisable to run open-source since it makes you less dependent on third-party. The variety of implementations makes the network stronger, even if the majority of implementations are of closed(open)-source nature, they should be from different providers (developers) that won't collude to attack the network.
hero member
Activity: 2156
Merit: 803
Top Crypto Casino
1. Closed source code doesn't mean decentralized as here the user has to trust the developer. The developer is controlling the app, which makes it centralized.

2. Non custodial as per my understanding is a decentralized feature provide by both open source and close source.

I still believe being closed source doesn't means that the wallet is bad and it cannot be trusted.
legendary
Activity: 2114
Merit: 2248
Playgram - The Telegram Casino
1. Can a service like a wallet whose code is closed source be decentralized?
The objective of being decentralized means that there is no central authority, anyone interested can see what's going on and contribute to it as well, creating a consensus. A closed source software cannot achieve these and users cannot verify the code.
With a cryptocurrency which is closed source, you have to trust the devs and Connor verify instead.

2. Does this mean any service that is noncustodial regardless of whether the source code is open or closed = Decentralized?
Imo, No. It can be non custodial and still be centralized.
legendary
Activity: 1512
Merit: 4795
Leading Crypto Sports Betting & Casino Platform
1. Can a service like a wallet whose code is closed source be decentralized?
Open source means the source code is available to the public, if it is close source, the source code can only be seen by few developers. If it is few developers (not public) that the code is available to, for modifications and clarity, then it is not decentralized.

2. Does this mean any service that is noncustodial regardless of whether the source code is open or closed = Decentralized?
Just like I meant above, taken a source code from the public to only be available to a central body which makes it close source means it is centralized.
mk4
legendary
Activity: 2870
Merit: 3873
Paldo.io 🤖
1. Not sure something can be decentralized if people in general can't see the source code. Can't see the source code = can't verify stuff and contribute effectively. As far as I know we can call it "distributed" like jackg said, but not necessarily decentralized. (e.g. the sort of "enterprise" blockchains)

2. No I don't think so.
copper member
Activity: 2856
Merit: 3071
https://bit.ly/387FXHi lightning theory
I think it depends on how resources are provided by the developers. If you have client and server software that can both be freely distributed and run then I think the network could still be considered decentralised.

If you had a closed source wallet that HAD to interact with select servers the team had control over or not many individuals could control them, that'd be the point where I'd consider the network centralised.

copper member
Activity: 2170
Merit: 1822
Top Crypto Casino
My idea of a service being decentralized is when the code if fully open source where anyone can independently verify it and also be able to contribute, plus everyone is able to use the service without the need for a third party or central authority.
But I do often see people refer to closed source projects as decentralized, which brings me to the question;

1. Can a service like a wallet whose code is closed source be decentralized?
2. Does this mean any service that is noncustodial regardless of whether the source code is open or closed = Decentralized?


Jump to: