Dfinity(ICP)とは

# Dfinity(ICP)とは

- （前提）今までのサービス基盤の歴史概要
    1. オンプレミス
        
        ハードウェアを自社で保有し管理する運用方法
        
    2. クラウド (PaaS, IaaS)
        
        インターネット経由でコンピューティング、データベース、ストレージ、アプリケーションをはじめとした、さまざまな IT リソースをオンデマンドで利用することができるサービス
        
        ex) AWS, GCP
        
    3. ブロックチェーン
        
        世界中に存在するノードをブロックチェーンネットワークで繋いでデータを管理する方法
        
- 非営利団体のDFINITY財団によって開発が進められているEthereumやBitcoinなどと同じパブリックブロックチェーンプロジェクト。
- PaaS, IaaSをブロックチェーンの技術を使ってバージョンアップしたもの。
    
    以下のようなアプリが将来簡単にブロックチェーンを使って提供できるようになる。
    
    ![WhatIs_Dfinity1.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2987391/e03f0431-eb8f-6b54-c40a-1bf248ef7625.jpeg)

    

# アーキテクチャ

![WhatIs_Dfinity4.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2987391/7c054a1e-fa44-7dd0-d636-163ea794b689.jpeg)


### 構成要素

1. Internet Computer
    
    ウェブサイトやアプリなどが提供されるネットワーク空間。
    
2. **ICP Protocol**
    
    世界中の独立したデータセンターが提供するコンピューティングリソースとストレージを一つにまとめることでインターネット上にインターネットコンピュータを構築し、開発者が分散化されたクラウドにソフトウェアをデプロイするためのプロトコル。
    
3. Internet
    
    TCP/IPプロトコルを使用し、複数のコンピュータを相互接続した情報通信網。
    
4. Data Centers
    
    世界中に点在していいて、データの処理・保管を行う。
    

# ICP Protocol

**Network Nervous System (NNS)** と呼ばれる分散型ガバナンスシステムによって管理され、そのアーキテクチャによって耐障害性と改ざん耐性を持ったオープンなプラットフォームを実現します。これにより、インターネットコンピュータ上に構築されるソフトウェアは、Ethereumなどのスマートコントラクトと同様のセキュリティ保証で実行されます。

# NNS

インターネットコンピュータのトークノミクスからそのネットワーク構造までを管理するソフトウェア。

### 構成

![a995f8972e5d6d5993e5c77cbd8550c80b3681f3919a95feea65027a8c801bf6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2987391/b6813e54-b10a-9d03-5681-c009d985cad8.png)


- 単語説明
    - ノード
        
        一つ一つのコンピュータのこと。
        
    - サブネット
        
        ノードが複数個集まって構成されるネットワーク。ネットワーク全体を日本に例えるとサブネットはそれぞれの都道府県。
        
    - キャニスター
        
        スマートコントラクトなどのプログラムとステート（状態）を集めたもの。
        

### 機能

- ICP上のトランザクションを検証するための公開鍵を持つメインのブロックチェーンとして機能する
- オンチェーンガバナンス機能を持ち、Subnetを管理する。
    - 新しいノードマシンをネットワークに追加するなどの提案を投票にかける
- Canisterと呼ばれるソフトウェアの単位をホストし管理する
- ネットワーク全体の負荷のバランスをとるために、Subnetを分割したりマージしたりする
- ノードマシンを監視し、性能不足や不具合を示す可能性のある動作を検知して対処する
- 正しく動いているノードマシンやネットワークの成長に貢献したユーザーに報酬を支払う

# トークンの循環

![WhatIs_Dfinity5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2987391/a9310134-7438-322e-07a4-8401eb4a9f31.png)


1. ネットワークにデータセンターとして参加している人にICPトークンが払われる。
2. ICPトークンを売り、利益を得る。
3. Dfinityを利用するためにICPトークンを買う。（悪意持ってる人が容易に使用することを防止）
4. ICPトークンを「サイクル（イーサリウムのガスに相当）」に変換。
5. 取引などのさまざまな処理にサイクルは使用されバーンする。

### ポイント

処理のためにサイクルを払うのはエンドユーザーではなく、**Dfinityのネットワークを利用してサービスを提供する人**。←他のブロックチェーンとの大きな違い！！

# 応用：実際のプロダクト例

[CanCan](https://medium.com/dfinity/cancan-the-internet-computers-decentralized-tiktok-is-now-open-source-5eed04547aa1)

参考

- [https://coinpost.jp/?p=282558](https://coinpost.jp/?p=282558)
- [https://hashhub-research.com/articles/2021-04-13-about-dfinity](https://hashhub-research.com/articles/2021-04-13-about-dfinity)
- [https://medium.com/dfinity/cancan-the-internet-computers-decentralized-tiktok-is-now-open-source-5eed04547aa1](https://medium.com/dfinity/cancan-the-internet-computers-decentralized-tiktok-is-now-open-source-5eed04547aa1)

# 最後に
![Frame 9 (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/672609/87f2a488-c5cd-549d-f07f-01b44a1317b8.png)
<b>Veroo</b>は、Blockchain技術を活用した「想いの巡るグルメSNSアプリ」です。食に対する熱量、例えばラーメンがめちゃくちゃ好きで年間400杯食べているとか、変態的に具材にこだわった中華料理を作っているなどのような、今まで直接お金にはならなかった食に対する情熱や熱量、その裏側にある想いがトークンを使うことで巡る世界。自分のラーメンに費やす熱量がコミュニティに承認される。自分がほんとにいいと思って作った食べ物がコミュニティで広まる。Verooは単なるSNSアプリではなく、クリエイターたちの想いが紡がれるソーシャルグルメアプリです。

##### Homepage: https://veroo.xyz/
##### Discord URL：https://t.co/VoT0gpsflA