Recent

Author Topic: FPC on Web3  (Read 6994 times)

Warfley

  • Hero Member
  • *****
  • Posts: 1663
Re: FPC on Web3
« Reply #60 on: October 13, 2024, 02:51:56 am »
    • Decentralization - it's great that you've come to an agreement with a hosting and domain name provider, but imagine that at some point you get information that, for example, their business is going bankrupt or has a failure of the main and emergency power supply at the same time (there are cases when someone does not check the installation surge protectors), a serious hack into the system, etc. Your service ceases to exist (at least for some time).
      In Web3 100% on-chain, such a situation does not exist.
    This would be true if 100% on chain would be possible, but it's not. First any program to be useful needs to react to inputs from the real world and produce output effecting the real world. For example, if I want to order something online, I need a way to place my order, and as a response to that, some machines or workers in a distribution center needs to start packing my order. It doesn't matter how long your "code" survives if the respective real world infrastructure is missing to make the code do anything, it will just be abandonware like any other software is.

    There is not a single online service that would benefit from being on the blockchain, because in the end they require some backend systems to feed in and outputs to the chain. And if you must host a backend service, you don't need to put parts on the blockchain.

    Even more so the blockchain itself is not decentralized. Technically it is, but logically the chain acts as one entity, so all the information is centralized. So for example if there is a vulnerability in the chain, everyone globally can exploit it. And this has happend multiple times. Whole chains broke down because through vulnerabilities attackers could completely exfiltrate all the funds stored in these chains.
    Even more so, we know that with ETH, the Ethereum Foundation has total control over the chain and can at any point in time do a rollback, which they have done in the past. So by putting your data on the ETH chain, you are completely exposed to them and their decisions. But if you put your app on your own systems, you are in control. Imagine having a buisness and you make a lot of money, then the Foundation decides to make a rollback and you just lost all your transactions for a month. Great prospects right?

    • The principle of necessary knowledge - during a coffee break, hosting service providers' technicians read the medical records of the patients of the medical entity stored on the servers. Just kidding! They are so swamped with work that they do not have time. But they can do it.
      In Web3 100% on-chain, such a situation does not exist. You and only you regulate the access rights to the data. There are no intermediaries or snoopers! The data is natively encrypted, and the consensus mechanism guards, among other things, the access rights to this data.

    All the data on the chain is public knowledge, you can't have access controls on data hosted on the chain. Any form of access control must per definition be performed off chain, e.g. by using end-to-end encrypted data and sharing the keys with other users. You could do the authentication of said users over the chain, but you could also do it using classical PKI or web of trust, or any other mechanism.
    There is nothing about blockchain that enhances privacy. To the contrary, the fact that every transaction is open is a huge privacy leak. E.g. you don't need to know my medical records, if you can see on chain that I regularly interact with the wallet of some cancer clinic you can deduce that I or someone I know might be suffering from cancer.

    So having transactions open to everyone is a huge privacy risk. Web3 is the absolute nightmare for anyone interested in privacy. This is why pretty much every european data protection supervisory bodies, like the BfDI here in germany advise against blockchain based solutions for personal data.

    • Exclusive rights to value - let's assume that you have written a great programming library, a piece of code, etc. If you want to distribute this piece of code, you create a repository, make it public, describe it with a license, or create an API through which there is access to the functionality of your code. A lot of work and guarding the space.
      In Web3 100% on-chain, such a situation does not exist. Of course, you can make the code repository public (and it is done), but why not embed this code in a blockchain canister and make its API available to other canisters? If the original Tetris code had been placed in Web3, Alexey Pajitnov could be in a completely different reality today.
    And who enforces these rights? If I just take some work thats not mine and put it on the chain, do I gain rights for it? You cannot infer ownership from technical association. You always need some authority that decides which chain, and which data on the chain is authentic. And if you have such an authority you can use different solutions like PKIs and have said auhtority issue certificates and keep a ledger.

    Conceptually blockchain does not add any value to any services except maybe financial transactions. And even this only to a very limited degree. Because besides the fact that Blockchain does not solve a single issue, not even the ones you outlined above, it creates a whole bunch of new issues. Inputs to the chain can only happen through transactions, and each transaction costs money. At the time of writing the gas fees for ETH are 24 USD. Meaning any time you interact with a program on the chain you have to pay 24 USD. Made a typo, easy correcting that typo just costs you another 24 USD. Just let me buy a pair of scissors of amazon for 5 USD and add 24 USD transaction costs on top... What a bargain.
    Second is the speed. ETH has an average speed of 15 transactions per second right now. With a maximum transaction size of around 1 MB meaning you have a whopping 15MB/s speed, for the whole Ethereum Network. The SSD in my PC can do 3000 MB/s so my PC can process 200x the amount of data locally than the Ethereum network can do globally. And it doesn't take 24 USD per input to do so.

    Lastly as I said the chain is logically not decentralized. All transactions need to go through the same chain, and eth gas prices are dependent on the total load of the chain. So transactioncosts here go up globally. Meaning if I want to buy a coffee here in Germany with eth, and there is some event in let's say Australia that causes an unusual load on the network, the transaction costs for my coffee go up even though it has nothing to do with the event in Australia.
    Because the chain is a central entity, your business on the chain is suddenly effected by completely unrelated events just because they share the same chain.
    On the other hand my hosting costs here in Germany don't go up because some hoster in Australia gets high demand

    Web3 does not work. Theres a reason why you can't buy any commodities with crypto currency, and why no major buisness has moved to chain. There are solutions to these problems, but they all include taking data off the chain, processing them by a third party and either having only trust anchors on the chain, or having the information being processed onto the chain. Which yes indeed solves these problems, but makes the whole idea of using the chain completele meaningless.
    My favorite term of 2021 was "private block chain" where companies would solve these issues by hosting their own private chain in their own data centers.

    For the chain to be useful, you need to not use the chain. So skip the middle man and just don't use the chain to begin with[/list]
    « Last Edit: October 13, 2024, 03:05:51 am by Warfley »

    Blacha

    • New Member
    • *
    • Posts: 46
    Re: FPC on Web3
    « Reply #61 on: October 13, 2024, 03:32:34 am »
    Everyone who's cloned the repo still has it, even if the world ends. "On-chain" systems rely on some DHT remaining accessible, which it isn't if your ISP fails. Single "decentralised" point of failure, versus git's truly distributed nature. Distributed > decentralised.........
    What you're describing cannot be achieved in Pascal, because it cannot be achieved. Either you misunderstand what "Web3" is, or "Web3" is vapourware.
    Damn, you've got it all mixed up. ;)
    Let's start with the fact that the concepts of Web1, Web2 and Web3 are closely related to the World Wide Web. I'm sorry, but I have the impression that you either didn't read or didn't understand the article I linked earlier.
    I also have the impression that you don't understand blockchain technology. Blockchain is not just decentralization. It's also (or maybe above all) encryption and a consensus mechanism. There are many more of these features, but for the purposes of our discussion these should be enough.
    The human factor has a key impact on all the Internet applications you mentioned, which is unfortunately unreliable. Blockchain with its features eliminates these imperfections.
    And the git you mentioned. I really appreciate this tool, I use it every day, but replication and code cloning have little to do with the decentralization that Web3 guarantees. Git decentralization ends on Friday with the project manager bombarded by young programmers with requests to approve the code to close the project milestone.
    If you have a git repository server at home and your ISP goes down due to a failure, no one will have access to that repository. OK, let's assume that your friend has previously cloned your repository and started working on that code. If you are working on the same project, someone has to approve the changes. No more decentralization.
    However, in the case of Web3, if the same ISP does not provide you with fiber optic internet at home, then everyone will have access to Web3 resources except you. But wait, wait! You still have internet on your phone! In that case, you also have access to Web3. Basically, you have access to Web3 everywhere, wherever you are online. You will not even know which node you have connected to (the closest one). Do you understand the difference now?
    Do the blockchain experiment I mentioned to you earlier, then you will know from practice how it works. Then you will also see how close this technology is to FPC/Lazarus in its capabilities.
    « Last Edit: October 13, 2024, 04:10:47 am by Blacha »

    Blacha

    • New Member
    • *
    • Posts: 46
    Re: FPC on Web3
    « Reply #62 on: October 13, 2024, 03:58:48 am »
    This would be true if 100% on chain would be possible, but it's not.
    This website/frontend is 100% on-chain: https://6ec2p-paaaa-aaaal-ai45q-cai.icp0.io/ We started the experiment a year ago. In Q2 2025, we will add active elements to this page, and then the backend to conduct further tests.
    The frontend and backend of the next dApp project are ready for a test upload to the blockchain. The code is currently being reviewed.
    I am tempted to prepare something in FPC and upload it to the blockchain. I have to think about it and find time. But it can be done.
    So please don't tell me it's impossible.
    The problems of some projects from the past that you mentioned were caused precisely by the fact that they consisted of on-chain and off-chain parts. It was this second element of the ecosystem that allowed for unauthorized management of value in the block. I reassure those reading for the second (probably third) time - such solutions do not interest me! If Web3 is only 100% on-chain.
    Let's do an experiment - I invite you to contact me via the decentralized OpenChat messenger, which is 100% on-chain. The task is as follows - extract files and photos from the blockchain that I keep there and to which only I have access. Wait! Extract a photo from the blockchain that I can send you in this messenger for testing. Let me know when you're done. ;)
    « Last Edit: October 13, 2024, 04:00:51 am by Blacha »

    Joanna from IRC

    • Hero Member
    • *****
    • Posts: 1173
    Re: FPC on Web3
    « Reply #63 on: October 13, 2024, 05:46:03 am »
    Warfley thanks for the informative post.  :)
    ✨ 🙋🏻‍♀️ More Pascal enthusiasts are needed on IRC .. https://libera.chat/guides/ IRC.LIBERA.CHAT  Ports [6667 plaintext ] or [6697 secure] channel #fpc  #pascal Please private Message me if you have any questions or need assistance. 💁🏻‍♀️

    Seenkao

    • Hero Member
    • *****
    • Posts: 608
      • New ZenGL.
    Re: FPC on Web3
    « Reply #64 on: October 13, 2024, 06:53:49 am »
    Почему эта тема ещё открыта?

    Если человеку интересно продвинуть Web3, то он не будет писать посты, а будет писать код.
    Данный человек не предоставил ни строчки кода.

    Либо закройте тему, либо просто не отвечайте ни чего ему.


    ---------------------------
    Google translate:
    Why is this thread still open?

    If a person is interested in promoting Web3, he won't write posts, he'll write code.
    This person hasn't provided a single line of code.

    Either close the thread or just don't respond to him.
    Rus: Стремлюсь к созданию минимальных и достаточно быстрых приложений.

    Eng: I strive to create applications that are minimal and reasonably fast.
    Working on ZenGL

    MarkMLl

    • Hero Member
    • *****
    • Posts: 7859
    Re: FPC on Web3
    « Reply #65 on: October 13, 2024, 09:27:09 am »
    Warfley thanks for the informative post.  :)

    I agree (rarely happens :-)

    The one situation where I've concluded that a blockchain can be useful is notarisation: a formal statement from somebody that they have witnessed something, for example a marriage.

    But "the map is not the territory", and in particular a record that somebody has transferred a certain amount of money to somebody else is meaningless without some way for money to actually be transferred: even the big banks shuffle a (relatively small) amount of actual cash around to keep their relative standing correct.

    And if we consider "Web3" for storage and processing: how do we connect to it? It is by no means unknown for the top-level DNS servers to get themselves in a screwed-up state, and if machines connect to each other purely on the basis of IP addresses they're vulnerable to those changing at arbitrary times: a particular risk for small businesses using relatively cheap routers and non-specialist ISPs.

    MarkMLl
    MT+86 & Turbo Pascal v1 on CCP/M-86, multitasking with LAN & graphics in 128Kb.
    Logitech, TopSpeed & FTL Modula-2 on bare metal (Z80, '286 protected mode).
    Pet hate: people who boast about the size and sophistication of their computer.
    GitHub repositories: https://github.com/MarkMLl?tab=repositories

    Warfley

    • Hero Member
    • *****
    • Posts: 1663
    Re: FPC on Web3
    « Reply #66 on: October 13, 2024, 11:17:54 am »
    This website/frontend is 100% on-chain: https://6ec2p-paaaa-aaaal-ai45q-cai.icp0.io/
    No it's not, the chain cannot provide an HTTP server. This website is hosted on some server in some datacenter. Whoever has access to the server can change the code of the website that is delivered to your browser without changing anything on the chain. This is a completely normal Web1 website (as it is completely non interactive) provided by a normal HTTP server read out by a normal HTTP client (the browser). Whoever controls either of these enteties controlls the website, and the chain does nothing to enhance or prevent this.

    There is no thing as a 100% on chain app, becuase to interact with the chain you always need an off chain mechanism. And who controls this mechanism controls the data in transit. The only way to not have this is if every user of this app would have a local copy of the whole chain to verify that they have the correct and most up to date version. The ETH chain is a few hundred GB if I remember correctly. Also you can't just fetch it from one place, you need to fetch it from different miners to verify the consensus, so to have a representative sample you'd need at least 10-30 copies of that chain.

    Personally I do not have e few terabytes to spare, so I do not see that as an option

    Blacha

    • New Member
    • *
    • Posts: 46
    Re: FPC on Web3
    « Reply #67 on: October 13, 2024, 11:51:36 am »
    The writer about ETH has worked hard writing, but unfortunately, he describes the prehistory of blockchain development. He doesn't know what he's writing, so he writes what he knows. ETH had a huge impact on progress, but today it's not worth analyzing it in the context of Web3. Let's not focus on prehistory, please, because evolution is ongoing, and the revolution is happening here and now.
    Let's understand this through an analogy - talking about ETH in the context of Web3 is like talking about spam problems while describing sendmail from the times when it was the only one available.
    Analyzing the speed of ETH and SSD is so incompatible that I'm surprised that someone wasted their time on it.
    I think the biggest problem with this discussion is its ideological nature. The matter would look completely different if the discussants knew what they were talking about. That's why I encourage you to test the latest possibilities and learn about modern technological solutions in the blockchain area yourself. It doesn't hurt.

    Blacha

    • New Member
    • *
    • Posts: 46
    Re: FPC on Web3
    « Reply #68 on: October 13, 2024, 12:21:43 pm »
    No it's not, the chain cannot provide an HTTP server.
    Are you 100% sure that this page is hosted on some server? :)
    If so, then you are passing judgement too easily, but if not, well, I'll explain. The domain address of this page consists of a part describing the location of the code in the chain (reference to the blockchain canister). All http traffic (in this technology, it is handled by so-called boundary nodes, whose task is to process, among others, http_request, domain analysis, etc.). This is a huge advantage of this solution, because thanks to it, the smart contract can use the API not only in the chain, but also outside of it. We use this in the application for tax settlements, asking the central bank about exchange rates. Over time, these boundary nodes will no longer be needed. In fact, DNSs will also no longer be useful, considering the dynamic development of browsing engines. But that's the future.
    You are not reading carefully what I wrote, so I will repeat - the page is just a frontend without active elements because it was launched for testing. If you would like to follow our activity in this blockchain canister, you can do so here: https://dashboard.internetcomputer.org/canister/6ec2p-paaaa-aaaal-ai45q-cai
    Don't be offended, but if you write about miners (PoW) in the context of Web3 technology and many, many other modern blockchain solutions, then you really have no idea what's going on now. You've stopped at some very distant stage of learning about this technology.
    « Last Edit: October 13, 2024, 12:27:29 pm by Blacha »

    VisualLab

    • Hero Member
    • *****
    • Posts: 518
    Re: FPC on Web3
    « Reply #69 on: October 13, 2024, 02:18:45 pm »
    The domain address of this page consists of a part describing the location of the code in the chain (reference to the blockchain canister). All http traffic (in this technology, it is handled by so-called boundary nodes, whose task is to process, among others, http_request, domain analysis, etc.). This is a huge advantage of this solution, because thanks to it, the smart contract can use the API not only in the chain, but also outside of it. We use this in the application for tax settlements, asking the central bank about exchange rates. Over time, these boundary nodes will no longer be needed. In fact, DNSs will also no longer be useful, considering the dynamic development of browsing engines. But that's the future.
    You are not reading carefully what I wrote, so I will repeat - the page is just a frontend without active elements because it was launched for testing. If you would like to follow our activity in this blockchain canister, you can do so here: https://dashboard.internetcomputer.org/canister/6ec2p-paaaa-aaaal-ai45q-cai
    Don't be offended, but if you write about miners (PoW) in the context of Web3 technology and many, many other modern blockchain solutions, then you really have no idea what's going on now. You've stopped at some very distant stage of learning about this technology.

    So I was right. You are incredibly fixated (obsessed) on blockchain (although maybe not necessarily cryptocurrencies) and you are promoting this solution (insistently). The problem is that you approach it with religious reverence. You need to have a certain distance and a bit of healthy skepticism towards all scientific/technical solutions. If only to be able to improve these solutions.

    Your insinuations that the participants of this forum are technologically backward are just nonsense and malice. Active participation of a given person in the development of blockchain technology does not indicate great computer knowledge. Blockchain is only a small part of computer science, not the most important one at all. There are more interesting, more serious and perhaps more future-oriented branches of computer science.

    Perhaps blockchain would be the number 1 topic in the media today, perhaps it would even be heavily financed by investors. But he was very unlucky that a few years ago, large corporations found a favorite: AI.

    Warfley

    • Hero Member
    • *****
    • Posts: 1663
    Re: FPC on Web3
    « Reply #70 on: October 13, 2024, 04:22:41 pm »
    Are you 100% sure that this page is hosted on some server? :)

    Yes it is, the domain resolves to the IP 2a00:fb01:400:200:5000:eeff:fe3d:aa0d which is pointing to a server or datacenter in Zurich Switzerland. I can put this address into an HTTP client which does not know anything about the blockchain like curl, to fetch the page.

    Meaning whoever is in control of that server in Switzerland can send any data to my browser. Chain or not.

    Also I love that you use HTTPs, which is a centralized trust root based on the certificate storage of your browser, probably chrome, and thereby curated by and under full control of Google.
    So much about decentrality.

    Imagine having a "decentralized" reliable root of trust, as blockchain people always claim, but needing to rely on a hierachical PKI to use it :j

    Blacha

    • New Member
    • *
    • Posts: 46
    Re: FPC on Web3
    « Reply #71 on: October 13, 2024, 05:26:37 pm »
    WOW! I really like your inquisitiveness. :)
    Let me ask you a question - how do you imagine the hidden form of the Web3 frontend (which you probably expect)? That's not what the frontend is for... Yes, you can look at the frontend code, but modifying and replacing it without a private key in Web3 is impossible. Try it.
    I'm not surprised that HTTP gateway works very well in Web3, because it is one of the fundamental elements of ICP. Canisters in the blockchain can be called in two ways: via HTTP request or API. And let's agree - as long as there is any piece of Web2 on the Internet, both ways will be valid. I think that in time API will dominate in Web3. But there is still a long way to go.
    Research the topic further, you are doing very well.  8)
    I will suggest two interesting materials to read as part of your research:
    Boundary Nodes (recently, as a result of the DAO community vote, the boundary node topology has become even more decentralized) and the HTTP gateway protocol specification.

    Blacha

    • New Member
    • *
    • Posts: 46
    Re: FPC on Web3
    « Reply #72 on: October 13, 2024, 06:10:32 pm »
    Also I love that you use HTTPs, which is a centralized trust root based on the certificate storage of your browser, probably chrome, and thereby curated by and under full control of Google.
    So much about decentrality.
    Please, don't write such nonsense in the "Networking and Web Programming" section... Read about Let's Encrypt, which is used by everyone who doesn't want to be screwed by the collusion of the largest certificate providers.
    « Last Edit: October 13, 2024, 06:27:47 pm by Blacha »

    wizzwizz4

    • New Member
    • *
    • Posts: 20
    Re: FPC on Web3
    « Reply #73 on: October 13, 2024, 07:10:18 pm »
    Git decentralization ends on Friday with the project manager bombarded by young programmers with requests to approve the code to close the project milestone. […] If you are working on the same project, someone has to approve the changes. No more decentralization.

    In blockchain jargon: git does not define a consensus protocol. You've picked a deliberately-centralised one (have one person decide what gets fetched / pushed), and are complaining that it involves centralisation. This is known as a "straw argument". Many alternative protocols are available. These can be implemented in "smart contracts", stored in the .git/hooks directory. You can even have "on-chain smart contracts", by setting the appropriate configuration to store the hooks in the repository, though this leaves you vulnerable to arbitrary code execution.

    You have not, so far, given an example of something that "Web3" can do, that cannot be done more cheaply and more easily using git, BitTorrent, a web server, and a mailing list. Nor have you described how "Web3" is meaningfully different from Web1 or Web2.

    The domain address of this page consists of a part describing the location of the code in the chain (reference to the blockchain canister). All http traffic (in this technology, it is handled by so-called boundary nodes, whose task is to process, among others, http_request, domain analysis, etc.).

    Does the blockchain guarantee that I've actually implemented this protocol, in any way? I don't see how it could. So if I can control (your view of) icp0.io.'s DNS responses, I can make its subdomains point to whatever servers I like, returning whatever pages I like. Ultimately, that's as easy as changing your router config. Failing that, I could just go to Zurich and give the datacentre a visit: this system's integrity depends on the physical security of that building.

    The human factor has a key impact on all the Internet applications you mentioned, which is unfortunately unreliable. Blockchain with its features eliminates these imperfections.

    No, it just ignores them, pretending the problems will go away if we just add enough automation – but they're not human problems: they're more fundamental than that. "Boundary nodes" blow a massive hole in the whole scheme, for example, and it's impossible to eliminate their ilk. (Even if I can't disrupt the integrity, I can always take out the availability – and I can usually subvert confidentiality, too, unless the message is physically kept away from me.) To the extent it ignores this reality, "Web3" is fundamentally non-serious.

    Read about Let's Encrypt, which is used by everyone who doesn't want to be screwed by the collusion of the largest certificate providers.

    Let's Encrypt is also centralised. That's quite fundamental to how Certificate Authorities work. (The underlying certificate system isn't centralised, but I'm not aware of any browsers that use Web of Trust or the like.)

    If you're going to say things like “He doesn't know what he's writing, so he writes what he knows.” and “you really have no idea what's going on now. You've stopped at some very distant stage of learning about this technology.”, my advice would be to make sure those criticisms don't apply to yourself.
    « Last Edit: October 13, 2024, 07:14:36 pm by wizzwizz4 »

    Warfley

    • Hero Member
    • *****
    • Posts: 1663
    Re: FPC on Web3
    « Reply #74 on: October 13, 2024, 07:21:31 pm »
    Please, don't write such nonsense in the "Networking and Web Programming" section... Read about Let's Encrypt, which is used by everyone who doesn't want to be screwed by the collusion of the largest certificate providers.
    I know exactly what Let's encrypt is, I use their certificates myself. But you know that the endpoint verification is made by the browser, using a set of self signed root certificates, which are provided by the browser vendors. So Google, Mozilla and Apple decide which CAs are trusted and which aren't. If Google decided today that they don't trust Let's Encrypt anymore, your TLS certificate is useless

    Blockchain is a trust infrastructure. The fact that you need another trust infrastructure on top of it to use it shows eveything you need to know about how well it works in establishing trust
    « Last Edit: October 13, 2024, 07:23:06 pm by Warfley »

     

    TinyPortal © 2005-2018