Some basic questions

I’m a curious developer who just discovered this project but I have a couple of questions. Let’s assume for simplicity that I want to build a chat app.

I understand that I can host the website/frontend on the internet computer and that the language for the backend will be motoko. From what I can see this hosting is for free? Or am I missing something here?

The data from the chat app is of course confidential from a data privacy point of view, but I understand that this would work with “private canisters”? So the data generated by the users from the chat app lands in some datacenters around the world, but in the end anyone can apply to deploy a node if they meet the technical requirements. So wouldn’t it be easy for some data center operator to access this “confidential” data or is there some cryptography magic that I missed?

I understand that the data centers receive tokens for hosting, but I guess the total number of tokens is fixed, so what if all the tokens have been distributed at some point?

Hello there,

As fas as I’ve understood, after beta phase all data in the canisters and node providers will be encrypted. So yes, the chat information will be replicated and distributed but not freely accessible.

I let more expert colleagues answer the other parts of your post :slight_smile:


  1. Both front end and backend will be on IC.
  2. Backend can built in any language that can compile down to web assembly. Motoko is Dfinity’s own language that is designed specifically for the purpose. Dart (correction: rust) has the second highest support as of now, more “agents” are in the works for other languages. Same applies to front end.
  3. No they aren’t free, any form of computation, storage, etc will cost cycles that are converted from tokens.
  4. Global tokens aren’t fixed. Tokens are created on one side (inflationary) as rewards for members locking in their tokens for governance in the NNS, and deflationary on the other side when being converted to cycles and burned for computation.
  5. Cryptography magic is definitely involved, but I will let the wizards answer that one! :smiley:

To clarify point 2:

The best supported languages for the backend at the moment are Motoko and Rust, and as Rakesh says any language that compiles to WebAssembly could be used.

The frontend can be written using static html/css or any web framework including React/Vue/Dart etc. This is actually where the agent library comes in, it’s used by your web frontend to talk to the backend, dfx sets all this up for you in any new project.

1 Like

Thanks for the answers.

Ok that makes sense. Is there some way to estimate how high the costs are going to be in the end? And will they be pegged to some fiat currency like USD? Because otherwise if I basically have to pay in tokens and the price for computation is not pegged to USD, I would have to buy a lot of tokens at once in order to have some “price stability” for the future. Because if the token price increases (which is most probably the goal for a lot of people involved) the costs for computation would also increase dramatically if you have to convert USD to ICP at some feature time in order to pay for the servers?

Currently there are no indications of computation costs as far as I know, hoping Dfinity will announce that soon enough.

ICP tokens aren’t pegged. But cycles (much like gas in case of ether), the tokens used to pay for computation, are relatively fixed (to Swiss Franc I believe). Which means, if the price of ICP tokens increases, you will be able to exchange them for more cycles, and vice versa. The conversion ratio isn’t fixed.

ICP token current price $300,
Assuming 1 token gives 1m cycles right now,
If price reaches $600,
You can get the same 1m cycles with half an ICP token.

So you won’t need to hoard a lot of tokens now for future computation needs, though it would make sense to not convert to cycles unless you really need them for immediate usage. You can of course hoard them hoping for a nice capital gain! :slight_smile:

1 Like

ok I see, I am not too familiar with the whole crypto space so didn’t know how Ether gas works exactly, thanks!

1 Like


Correction: 1 trillion cycles is pegged to 1 SDR (special drawing rights, a basket of currencies)

Watch this for more detailed explanation: Talk | Internet Computer: Tokenomics (Dominic Williams) - YouTube

1 Like