---
# System prepended metadata

title: ExperimentalネットワークのLN Walletについて

---

# ExperimentalネットワークのLN Walletについて

[Experimentalネットワーク](https://hackmd.io/GZb-nerRToif9YspTiTZcA) でユーザが扱うLN Walletについて記載します。

作成するLN Walletの条件として下記を考えています。

- Non-Custodial
- 複雑でない操作

これらを満たすLN Walletは、ローカルで動作するLN ノードを内包したものである必要があり展開できるプラットフォームとしては、以下が考えられる。

- デスクトップアプリ
- モバイルアプリ

**ブラウザ拡張では、実装がほぼ無理なので対象から除外します。**

参考にできるアーキテクチャは、[Breez](https://github.com/breez/breezmobile)のLnd+neutrinoかと思われます。

**デスクトップアプリとモバイルアプリの両方とも、アプリケーションにライトニングノード(LND)を同梱したクライアントを提供する。自分たちが用意したbitcoindで、neutorinoモードで接続する。**

クロスプラットフォーム対応のElectron、Flutterで構築しても今回の要件や動作的にも問題ないかと思います。

**MetaMask等のETHのウォレットを元に、LN機能を足す方が良さそう。**

ETH Walletの方が機能も実装も難しい。

# Question

- LN Walletの最初のチャネル作成はどうする？等
- どのくらいのsatshiを最初に入れてもらうか等

# 2022/01/04追記分

## LN Wallet側と話す際にあたり

達成したい世界観

- 個人個人が、LN Walletの鍵だけを持ってチャネル管理やinbound、outboundの処理は、意識せずアプリ側で自動でやってくれる世界観を目指したい。

## LN側の質問や留意点

- アプリ版(iOS、Android)を作成した時の審査について。どうすれば通るのか？Crypto Walletは審査についてここに注意する必要があるとかナレッジがあれば。
- ユーザ側にチャネルおよびチャネルの資金の管理や、バックアップ等について意識せずに使ってもらいたいがこれはどのようにすると満たすことができるのか？
- 今回はノンカストディアルとカストディアルのどちらが要件を満たすのか？

ウォッチタワー、バックアップ、オートパイロット、サブマリンスワップ等の機能が必要かと思うのですが、さらに最低限のLN Walletとしての機能を満たすために必要な機能や、実装方針等がありましたらお聞かせ願えますと幸いです。

## 現状の開発について

- デスクトップアプリに関しては、forkまたはコピーする良いものがないので自分で作成するしかなさそうで作成中になります。
- ETH側は、rainbow wallet、metamaskを参考にしながら作成している最中です。
- LN側は、zap、breezを参考にしています。
- デスクトップアプリ開発には、Electronを使用しています。

LN機能をこちらの開発Walletに追加してもらうことは可能でしょうか？
融合させるに当たって、初期画面でユーザがこれを設定する必要がある等の勧めがありますと助かります。

## 現状の方針について

現状のアーキテクチャを図解しました。

- LN Walletとして機能を持っている。
- Eth Walletとしての機能を持っている。
- Txは直接Ethノードに対して実行する。
- オペレータと対話してLN支払でETH satohiを購入できる。(単体のLN Walletと単体のEth Walletとの唯一違う点)

![](https://hackmd.io/_uploads/SyjBFfb3K.png)

## LN Walletの種類

自分たちが作りたいLN ETH Walletに近いものはPartial Nodeの**Breez**と思っています。

![](https://hackmd.io/_uploads/rkJjYMbnF.png)
