What is the Internet Computer Token (ICP) ..?

Looking at the cryptocurrency market cap today, Internet computer token (ICP) suddenly ranked 8th.
Please tell us the difference between this and Made Safe…
I think this analysis can enrich the ecosystem of Made Safe.

— ICP —

  1. The scientific breakthrough called Chain Key Technology allows the Internet Computer to run at web speed — where query calls execute in milliseconds, and update calls take 1-2 seconds to finalize. More importantly, at Genesis, the Internet Computer will have a block rate of 2.5 blocks per second (bps), then quickly to an industry leading bps of 10.3 bps, and ~1,000 bps by end of the year.

  2. The Internet Computer launched with several high profile entrepreneurs and applications being built on it. These include:

2.1 DeFi

  • Enso Finance – Decentralized exchange that has raised $5mn
  • Tacen – A high-performance non-custodial exchange that has raised $2.5mn
  • SailFish – A gateway to open financial services

2.2 Social

  • Distrikt – A decentralized, professional social media network. It is the Open LinkedIn application shown off by DFINITY in Davos at WEF 2020 that is now being taken to market
  • OpenChat – An open version of your standard chat app that is not owned by a large tech corporation
  • CanCan – An open version of TikTok that shows the scalability and power of the Internet Computer
  • Capsule – A decentralized social media platform which is safe from censorship that has raised $1.5mn

2.3 Infrastructure

  • Fleek – Allows easy building of open web sites and applications. 14,000 websites already running Pan-Industry Platforms
  • Origyn – A pan-industry platform for tracking the provenance of luxury goods, starting with luxury watches
3 Likes

I like it, everything that draws more eyes to decentralization and our Privacy. Security. Freedom is a good thing for all of us.

You may think of ICP as a distant forerunner of Safe. It will certainly be interesting to see what the interest of users will be. I hope it’s many times more than FileCoin…


Privacy. Security. Freedom

1 Like

At a glance, compared to safe it seems to provide:

  • Decentralised applications.
  • Seems to use current security paradigms.
  • Seems to use typical methods of data storage.
  • Quick and dirty setup to get dApps and dInternet up and running.
  • May have more every day attack vectors as a result.

Whilst safe provodes:

  • No decentralised apps.
  • New paradigms for improved security and privacy.
  • New paradigms for improved data storage and security.
  • More elegant, but much harder to implement solution.
  • Should remove most major attack vectors.

An anyone else see any differences. Would be good to get a comprehensive list of differences.

3 Likes

Why do you say SAFE will provide no decentralised apps? Of course it will.

Very in-depth review of ICP

3 Likes

My understandong is that ICP is the provision of application and computing time, i.e. the running of scripts and programs. I am unclear on how storage works or if it is provided). The current safe implementation makes no provision for executing programs, it’s purely the allocation and management of data and storage.

So you can build apps that use safe as their storage, with all the privacy benefits that brings. But you cannot get safe to execute a program for you. At least that’s my understanding ATM.

There was provision for running code in some of the early design of safe, but when I asked the devs (c.2018) they said this was very much a work in progress and they hadn’t figure out even the basics of how to do this yet. So from what I understand it is arguably on the road map, but so far over the horizon no one yet knows how or if this will be possible.

Happy to be disabused.

I’m pretty sure you are wrong with this understanding.

The SAFE Network can host websites, apps, etc. And for them to function they have to use computational processing power from the nodes that are creating the network. Without the ability to execute code, the websites and apps will be useless.

@Dimitar @Traktion @happybeing can you please add to this / confirm it?

1 Like

The initial version is storage only, but not in a traditional sense.

Traditionally, you would have a server side app that would store data either locally or to a 3rd party host. The server side app would have access permissions to the data store. Data stored would be owned and managed by the app. This is also true for database access.

The client side app would then usually connect to the server side app. The server side app then acts as the gateway to access the data.

I understand this model persists with filecoin, storj, sia, ipfs, etc. They are essentially just file stores, much like s3 on aws.

On safe network, the architecture is different. Access to the data store is granted on a per end user basis. There is no central data store, managed by a server component. Instead the client app itself access the data for the specific user and only that user. The client app does not have the credentials to access other end user data, unless granted specifically by that user.

This means there is no middleman user holding all the data under a single account. There is no server app to be compromised, along with its associated data.

Can you have dapps on safe network? I’d argue yes, but it comes down to definitions. A client app which allows end users to run the app, share data and interact one another, all running client side, would seem very much like a decentralised and distributed app - there is no centralised server component.

What safe network won’t do in the first version is decentralised compute. You can’t ask a node to run some code. This is what the likes of ethereum does and probably ICP too. You can create an app which runs with no direct client interaction. Is this also a dapp? I would say so, as it clearly runs in a decentralised way.

So, it is a bit like comparing apples to oranges. Dapp can mean different things to different people, but decentralised is the key.

What about safe network in future? It should be able to go much further than the likes of ethereum and blockchains. Each section would be able to run code, without the entire network having to do the same (like blockchains). This opens the door for distributed compute. This would be relatively efficient and could process cpu intensive algorithms. In contrast smart contracts are incapable of doing this, as the overhead would be far, far too great and beyond their design parameters.

So, long term, safe network should offer the most complete solution. In the short term, it offers a different, but capable, approach due to the way the data is managed.

2 Likes

It isn’t necessary to run computation on nodes in order to deliver SN websites / web apps. This is called “static hosting” and the computation happens in the browser on your own computer rather than the nodes. A lot can be done without the nodes doing anything more than respond to requests to store and retrieve data so this is what Maxwell will provide. All the demos you’ve seen so far worked like this.

Computation would be an interesting addition later on but I think there may also be ways of adding compute like featuers by building on top of DBCs rather than using SN Elder consensus, but I’m reading between the lines and just making guesses there.

3 Likes

Ok thanks @Traktion @happybeing for your feedback.

I always thought the nodes / farmers were going to provide CPU power as well as storage. It sounds like websites and apps could be quite limited if we always need clients to execute the code?

So is there anything in the roadmap to add compute features, or is that a possible feature once we have the network launched?

If I wanted a website that updated itself on say the bitcoin price or some data from another app / website via an API, I would have to have a client online all the time to execute the code? Doesn’t that create centralisation and is it not similar to what we have now with current servers?

1 Like

It wouldn’t have to be online all the time. Indeed, having a client updating the data means a mobile phone could do the job a server might on the clear net. Of course, you could have a client running on a dedicated box to update the data too, but it isn’t required - nearly any device could do it. If they are small, frequent data changes, they won’t require large compute power.

However, if it is a genuine dapp, all users own their data. Me updating my news feed doesn’t require code to be run anywhere else (beyond data additions). Neither does someone reading my news feed. The same for a messaging app, an ecommerce app, photo sharing app, etc.

The clear net pushes almost all apps to a client/server architecture, as data cannot be directly accessed from the client. With safe network this limitation is removed, which allows the client to do much, much more directly.

Consider also that having the network access data has security concerns. It creates a persona that manages data access instead of the end users themselves.

The example you give doesn’t require any centralised code, like many things this can be done entirely in the client without centralisation (and no need for nodes to execute code).

There are things which may not be so easy, or at least obvious, to implement without decentralised compute. One example is a forum, or a blog with comments, but I’m also hopeful these can be done without node compute, we’ll have to see what smart coders can create. We might be amazed :sunglasses:

I think these will be straightforward enough. Sequence types should allow multiple people to append to them, allowing things like comments and forum posts. Even moderation should be fine too, as a sequence type can be used as a suggested list of messages to be filtered.

I suspect the genuine list of problems which require decentralised compute may be smaller than we expect.

Thanks again for the feedback. All very interesting.

What about a DEX? Will that not that require decentralized computation?

And to add to this. Does this mean ICP has some potential to provide some services SAFE will not (at least in the short term)?

Allowing anyone to append isn’t a solution. It may work for small sites that are unattractive to spammers, trolls and those wanting to make it unusable but you need something more complex to create robust sites.

I’m not saying this requires compute, I had some ideas how to do this with the earlier API but wasn’t convinced I’d got a usable approach.

So I look forward to being surprised by the innovative ways people find to use the first set of APIs, and gave this as an example of the kind of thing that is not trivial to do with Maxwell.

I think solving this is an important and priority challenge because forum and blog comment solutions crack an awful lot of useful applications.

1 Like

I don’t know ICP well enough to comment, but when I looked at it before, they seemed to have very different goals to safe network. It seemed like the owners were very keen to be the new gatekeepers of their decentralised walled garden, even to the extent of keeping some key code closed source and/or licensed to give them advantage. This is very much at odds with secure access for everyone which Maidsafe are pushing with safe network.

3 Likes

Yeah I agree, it does look like they are not open-sourcing everything, but many fans of the project talk about the computation part being a big element which SAFE doesn’t offer (yet).

As I understand it, sequences have permissions to allow one, multiple or all users to append, depending on how it is created. Moreover, there is a fee to append (or a data cap at least), which would deter pure spamming.

It is something I want to look at on IMIM blog, so hopefully I’ll have some experience from the coal face on this soon. I will be using sn_api or sn_client to work with sequences.

1 Like

The fees for this will deter some spam, but not trolls or motivated attacks. I’d love to see a solution though if one can be built on this foundation.

In case it’s of use my design for this was to have external posters write to their own storage and send a message request to the site owner for their contribution to be admitted.

The site owner could configure how this happens, and use white/black listing of IDs etc to create a moderated site that would include third party posts either only when approved or automatically (white listed) or ignore them (black listed).

I think that might work adequately for a large class of sites but was waiting for the new APIs to see what was possible. I don’t expect to proceed on this myself though.

2 Likes