Cardano 1.4: Daedalus 0.12.0とCardano SL 2.0.0


#1

Daedalus 0.12.0

新機能

新しい v1 API を使用した新しいウォレットバックエンド

Daedalusは、まったく新しいウォレットバックエンド実装を搭載することになりました。この実装は、Cardanoウォレットの正式仕様に基づき、信頼性とパフォーマンスを向上させ、ユーザーが以前のウォレットの実装で経験していた大多数の問題を取り除きます。 ウォレットバックエンドとの統合が完全に書き直され、Daedalusは今回、廃止予定の v0 APIではなく、Cardanoウォレット API v1を使用してバックエンドと通信しています。

ウォレットデータの移行

新しいウォレットの実装は、ウォレットのデータの保管と管理の方法を変更します。 ウォレットデータの移行は、次の自動プロセスで行われます。

  1.     変更についてユーザーに通知する
    
  2.     すべてのユーザーウォレットを復元する
    
  3.     ウォレットをCardanoブロックチェーンに同期する
    

Enterキーによるフォームの提出

ユーザーは、キーボードのEnterキーを使用した迅速かつ簡単な操作で、エイダ(Ada)を送信 のようなフォームを送信できるようになりました。

ネットワークごとに1つの実行インスタンス

Daedalusは、データ破損の問題を排除できるのは、ネットワークごとに実行中のインスタンス1つだけになりました。 インスタンスが異なるネットワークを使用している場合、例えば、Cardanoのメインネットを使用しているインスタンスとCardanoのテストネットを使用しているインスタンスがある場合、ユーザーにはまだ複数の実行中のDaedalusのインスタンスがあります。

変更された機能

改善されたプロセス管理

プロセス管理は完全に再設計されており、DaedalusはCardanoのノードプロセスを、特にCardanoノードの問題を検出してそれらから回復する場合に、より詳細に管理できるようになりました。 この変更で、ポートのダイナミック選択も導入され、これによって設定済みのポートがすでに使用されている場合にCardanoノードを起動する際の問題がなくなります。 この機能には、セキュリティの改善として、Cardanoノードとの通信で使用する双方向暗号化の動的TLS証明書の生成も含まれます。 この変更により、「ネットワークに接続中」というメッセージが表示され、Daedalusが読み込み画面でスタックするという問題が修正されます。

改善されたクロック同期チェック

Daedalusが動作し、Cardanoノードがブロックを処理し、ブロックチェーンと同期するためには、ユーザーのマシン上のクロックをグローバル時間と同期させる必要があります。 クロック同期のチェックが改善されました。 Daedalusを再起動せずに同期したり、または30分間ってもクロックがオフになっている場合、ユーザーはチェックを再トリガーできるようになりました。 これらのチェックではタイムサーバーとの通信障害も処理され、ユーザーはタイムサーバーが利用できなくてもDaedalusを使用できます。

既知の問題点

既知の問題はサポートポータルの記事に集められています。既知の問題へのリンクはDaedalusのサポートページで入手できます。

新たなプラットフォームのサポート

Linux

  • テスト対象:Ubuntu 18.04, Fedora 28
  • すべてのLinuxディストリビューションをサポート予定です。

MacOS Mojave サポート

Daedalusは、現在、Macオペレーティングシステムの最新版である macOS 10.14

Mojave をサポートしています。

Cardano SL 2.0.0

新機能

新しい v1 API を備えた新しいウォレットバックエンド

新しいウォレットバックエンドの実装は、Cardanoウォレットの正式仕様に基づいており、その正しさについて私たちにはるかに大きな自信を与えてくれます。 改善されたパフォーマンスと、入力の選択に関する新しいポリシーによって取引が便利になり、また、長期未使用のトランザクション出力(UTxO)にはるかに優れた管理を提供することにもなります。

最適化されたブロックストレージ

最適化されたブロックストレージは、ブロックチェーンデータを格納するためにユーザーのマシンに求められるファイル数とスペースを大幅に削減します。 ブロックごとに1つのファイル(ブロックチェーン履歴20秒ごとに1つのファイル)を使用する代わりに、ブロックはエポックごとに1つのファイル(ブロックチェーン履歴5日分ごとに1つのファイル)に格納されるようになりました。 ブロックチェーンの最新の履歴だけがブロックごとに1つのファイルを継続使用しますので、ブロックチェーンのロールバック処理が容易になります。 これにより、ブロックチェーンを格納するために必要なファイル数が、年間のブロックチェーン履歴約150万から73ファイルへと低減しますので、パフォーマンスは大幅に向上します。

APIの構成可能なスロットリング

エンタープライズユーザーや取引所用のウォレットサーバーの偶発的な過負荷を防止するために、APIに構成可能なスロットリングが導入されました。 APIリクエストの数が構成値を超えると、APIは、再試行まで待機するのに必要なミリ秒の数値を含んんだエラーを返します。

ウォレットのUTxO分散統計を取得するための新しいエンドポイント

新しいエンドポイント(/api/v1/wallets/{{walletId}}/statistics/utxos)をCardano APIに追加して、ウォレットのヒストグラムの形で基本的なUTxO分布統計を取得できるようにしました。

ノード情報APIエンドポイントのNTPチェックを強制するためのフラグ

NTPチェックは、ノード情報を取得する際に強制されるようになりました。/api/v1/node-infoエンドポイントを利用して情報をリフレッシュし、クロックの同期情報を再チェックします。

変更された機能

ロギング

ウォレットのロギングが完全に改良され、ログの形式が変わりました。 古い形式はプレーンテキストでしたが、新しいログ形式は JSON です。 また、これは構造化されたロギングをサポートしています。ハスケルのデータ構造が JSON 表現でログに入れられ、ハスケル構造としてリードバックされ、解釈されます。 さらに、特に、構造化された表現としてのロギングが使用された場合は、ツール(つまり「jq」)を使用してログファイルを照会できます。 また、古いファイルを削除し、ディスク使用量を通常の制限内に保つための改良されたログローテーションも設置されています。

解決済みの問題

インターネットの中断がブロックチェーンの同期が停止する原因となる

いくつかのケースで、インターネット接続が失われた後、リンクが再確立された際にブロックチェーンの同期が継続されませんでした。 この問題を経験したユーザーは、 「ネットワークに接続中」というメッセージが表示され、読み込み画面でスタックしていました。 この問題は修正されました。

APIの変更点を破る

アドレスがウォレットに属しているかを確認するエンドポイントの改善

/api/v1/addresses/{address}の動作は、アドレスに関するオーナーシップの意味をより正確に反映するよう調整されています。 このエンドポイントの以前のバージョンは、指定されたアドレスがウォレットに認識されていない場合、HTTPエラーとして失敗になっていました。 これは、ウォレットにとって未知のアドレスがまだ属している可能性があるため、誤解を招くものでした。 エンドポイントは、アドレスが認識されないために失敗になることはなくなりました。その代りに、アドレスが私たちのものか、「notRecognised」かを示す新しいフィールド「isOurs」を返します。

ウォレットを削除するためのエンドポイントの動作きの改善

/api/v1/wallets/{wallet}に対する削除リクエストは、ウォレットが存在しない場合、適切に 404 として失敗するようになりました。 以前は誤って 204 で対応していました。

システム要件

サポート対象のプラットフォーム

MacOS

MacOS 10.12、MacOS 10.13、MacOS 10.14

Windows

Windows 7、Windows 8、Windows 10(64ビットWindowsのみサポート)

Linux

  • テスト対象:
    • Ubuntu 18.04
    • Fedora 28
  • すべてのLinuxディストリビューションをサポート予定です。

推奨する最低ハードウェア要件

  • 64ビットデュアルコアプロセッサ
  • 4GBのRAM
  • 10GBの空きディスク容量
  • ブロードバンドインターネット接続

既知の問題点

ブロックチェーンの初期同期が進まなくなる現象が時おり発生する

場合によっては、インターネット接続の中断が起きた後、リンクが再設定され、ブロックチェーンの同期が止まることがあります。 この問題が発生した場合、ロード中の画面に「ネットワークに接続する」というメッセージが表示されます。 この問題を解決する唯一の方法は、Daedalusを再起動することです。この問題は次回のリリースで解決される予定です。

プログラムのアップデート時におけるインストール・エラー

ユーザーが「更新して再起動」をクリックした際にアップデートのインストールが開始されず にDaedalusがシャットダウンする場合があります。ユーザーが、シャット ダウン後60秒以内にDaedalusを起動させるとアップデートに失敗します。

これはDaedalusがシャットダウンした後、1分待って手動でDaedalusを起動することにより回 避できます。またこれによりインストールプロセスが開始されます。 別の解決策として、Daedalusのウェブサイトから最新のインストーラーをダウンロードして Daedalusの新バージョンを手動でインストールすることによってアップデートを行うことも できます。