プルータス(Plutus)は、カルダノブロックチェーン上でスマートコントラクトおよびdAppsを開発するために、IOG(Input Output Global)が設計・開発したスマートコントラクトプラットフォームおよびプログラミング言語の総称。関数型プログラミング言語Haskellをベースとして構築されており、数学的に厳密な仕様と形式検証(Formal Verification)への対応が特徴。
背景と歴史
カルダノは当初、送金機能のみを持つバイロン(Byron)フェーズ、次いでシェリー(Shelley)フェーズでの分散化を経て、2021年9月のアロンゾ(Alonzo)ハードフォークによってスマートコントラクト機能を実装した。このとき導入されたのがプルータスである。IOGはスマートコントラクトの安全性を最優先とし、数十年の研究実績を持つHaskellを基盤言語として採用した。Haskellは金融・航空・防衛分野でも使用される高信頼性言語であり、バグの少ないコード記述と形式検証が可能な点がカルダノの設計思想と合致している。
構成要素
プルータスはオンチェーンとオフチェーンの2つのコンポーネントで構成される。
オンチェーン部分はプルータスコア(Plutus Core)と呼ばれるシンプルな低水準言語で、ブロックチェーン上で実際に実行されるバイトコードに相当する。開発者がHaskellのサブセットであるプルータスTx(Plutus Tx)でコードを記述すると、コンパイル時にプルータスコアへと変換される。
オフチェーン部分はウォレットやバックエンドとのやり取りを担い、かつてはプルータス・アプリケーション・バックエンド(PAB)として提供されていた。現在はエコシステムの成熟とともに、Lucid・MeshなどのサードパーティSDKがオフチェーン処理を担うケースが増えている。
EUTXOモデルとの関係
プルータスはカルダノ独自の拡張UTXO(EUTXO)モデル上で動作する。ビットコインのUTXOモデルを拡張したEUTXOでは、各UTXOにデータム(Datum)と呼ばれる任意のデータを付与でき、バリデータスクリプト(スマートコントラクト)がそのデータを検証することでロジックを実行する。イーサリアムのアカウントモデルと異なり、トランザクションの結果を送信前にオフチェーンでシミュレーションできるため、失敗トランザクションへの手数料ロスが発生しにくい設計となっている。
開発者エコシステム
プルータスの学習コストはHaskellの習熟が必要なため比較的高いとされる。これを補うため、IOGはカルダノ開発者向けにプルータス・パイオニア・プログラムと呼ばれる教育コースを複数期にわたって提供してきた。また、より平易な構文でスマートコントラクトを記述できるドメイン特化言語マーロウ(Marlowe)もプルータスの上位レイヤーとして提供されており、金融契約の記述に特化している。近年はAiken・Helios・OpShinなどのカルダノ向け代替言語も登場し、開発環境の多様化が進んでいる。
本稿はカルダノステークプール「CoffeePool☕️」「CardanoKissa☕️」が作成しました。
COFFEの活動を応援いただける方はぜひ、委任(Delegate)のご検討をお願いいたします😊
🗳️「DRep ID」もぜひご検討ください!(クリックでコピーできます↓)

CoffeePoolならびにKISSAは、5年以上の安定稼働と1万ブロック以上の生成実績を持つステークプールです。
初心者でも長期ホルダーでも、楽しくカルダノ について語り合える discordスペースを作りました😊☕️
・なりすましやscam対策のためXアカウント認証で運営😊
・初心者ホルダーさん大歓迎!☕️
SPOも続々参加しています! ぜひお気軽にお立ち寄りください。
参加方法は☟
discord.gg/TNy7QNua7c


