3.0投稿してMONAをもらおう。3.5447422MONA/6人モナコインを投げられる小説投稿サイトを作っています。イメージ的にはMonappyの小説版みたいなものを考えています。対応するコインはモナコインのみで、将来的にはモナパーティのトークンも利用できるようにしたいとは考えています。カストディ業者の規制対策として、ウォレットはユーザー側のブラウザ上で管理して、サーバー側には秘密鍵やニーモニックは保存しないようにしています。Electrum-monaで復元できるような互換性のあるウォレットで、Mpurseは使わない予定です。今のところ全体の進捗率は15%ぐらいで、完成までは半年〜1年程度かかりそうですが、少しずつ情報を発信していけたらなと思っています。ウォレット機能がは近いうちに完成する予定なので、それに合わせてテスト版を公開しようと考えています。今は出金機能を作成中で、近日中に完成予定です。小説関連の機能はまだ何もない状態です。0.0114114MONA/1人これは期待。https://twitter.com/odairoid_001/status/1167401670424158209↑これとネタは被るんだけど有料設定があるといいかも。モナコインを投げた人だけ読める、みたいな。その場合、どこまでは無料で読めてどこからは有料、みたいな設定があると良いと思う。あと小説サイトの場合投稿作品やユーザーの管理が肝になると思うのでそれをボランティアのメンバーができる仕組みにしておいた方が後々楽かも。0MONA/0人>>5今のところ有料設定は無しの方向です。いうのも他の小説投稿サイトだと全部無料で公開しているので、読者側から見た時に競争力的な意味で厳しそうかなぁと。いえ作者側が収益を得られるようにはしたいので、例えば電子書籍化機能を用意して、完全版を販売するようなことができればいいなぁと妄想中。あとボランティアのメンバーに手伝ってもらうのは面白いので、何らかの形で取り込みたい。個人的には削除権は強すぎるように思うので、削除依頼ぐらいが丁度良さそうな気がする。今の時点では運用回りは想像しづらいので、リリース後にまともに動き出してからちゃんと考えようと思ってる。・投稿作などコンテンツの管理をそれぞれ別の人(複数人)ができるように想定はしておいた方が良いと思うな。小説投稿サイトのようなコンシューマー・ジェネレイティッド・メディアは割と管理にマンパワーを使うから。思ったんだけどユーザー登録をするとウォレットも自動で作成されるのかな?必ずウォレットが絡むのなら仮想通貨に馴染みのない人にとってハードルが高くなるかも。0MONA/0人>>7なるほど、とりあえずユーザーやコンテンツの管理ができる画面は用意してシステム面の準備はしようと思います。ユーザー登録とウォレットの関係ですが、ユーザー登録が完了したユーザーが、好きなタイミングでウォレット作成することができるようになります。小説を投稿したいけどウォレットがよく分からない人は、登録だけして小説を投稿することもできます。その場合は投げ銭は受けられないです。読者側に関しては、ユーザー登録しなくても小説の閲覧と、サイト外のウォレットからの投げ銭のみ可能です。0MONA/0人ユーザー登録とウォレット作成の流れを画像で貼っておきます。ユーザー登録画面Google、Twitter、Facebookのアカウントのいずれかを使用して登録します。「ウォレットを作成」ボタンを押します。「スキップ」ボタンを押すとウォレットを作らずにトップ画面(未作成)に移動します。確認ポップアップが表示されるので、「ウォレットの情報を表示」ボタンを押しますウォレット作成画面ウォレットの復元キーワード(BIP39のMnemonic)をメモに取り、チェックを入れて「確認画面へ進む」ボタンを押します。ちなみに作られるウォレットは、SegwitをP2SHでラップしたアドレスを使用します。Electrum-monaで復元可能。0.114114MONA/1人ウォレット作成画面メモに取った復元キーワードを入力します。「ウォレット情報の再表示」ボタンを押すと、1つ上の画面に戻ります。「ウォレット情報の登録」ボタンを押します。入力が間違っている場合はエラーがでます。0MONA/0人もにゃはでは復元できないです。どちらもBIP39対応のウォレットではあるのだけど、もにゃの方は日本語のニーモニックに非対応なことと、BIP49のP2SHでネストしたSegwitのアカウントに非対応っぽいのでできない。0.114114MONA/1人モナストーリーをテスト公開します。https://www.monastory.jp以下の点について不具合や感想などをお待ちしています。9/21にサイトを閉鎖してデータを削除するので、必ずモナコインを引き出しておいてください。・大金を入れないでください。・紛失や盗難があった場合でも、こちらでは補償しません。自己責任で利用してください!!!・モナコインが取り出せなくなっても泣かないでください!!!・ウォレット以外の画面は未完成のため、リンクはトップページに繋がっています。0MONA/0人テストに参加して意見等をくれた方には、少額ですがモナコインをプレゼントします。良かったら参加してください。0MONA/0人さっそくアカウント作ってログインしてみました。「小説を書く」「本棚」「FAQ」がうまく遷移できません。(多分メニューのリンクが指定されていないだけかも)ブラウザはchromeです。0.0114114MONA/1人>>18を見逃してました、すいません...。お詫びに公開に備えて原稿100本書いておきます。0MONA/0人>>21テストの参加、ありがとうございます!すみません、ちょっと分かりにくかったかもしれません。入金したけど履歴表示機能はまだかな?復元キーワードの確認入力はスキップさせてほしいのと、登録後にウォレットで復元キーワードが再表示できるといいかな。3.9MONA/1人>>22少額ですが入金してみました。>>23でも書かれているとおり(着金は早いものの)履歴が表示されないっぽいですね。0MONA/0人ウォレットの中身はトップのメニューとかで常に見られるといいかもなあ。3.9MONA/1人1MONA送った後に1MONA送り返そうと思ったら「残高不足です」とメッセージが。MONAをモナストーリーから送金してみたら無事に着金した。MONAかかるという事はどこかに書いておいた方が良いかも。MONA引いた○○MONAを送金しますと確認画面を出すとか(こっちの方がスマートかな?)ウォレットに1MONA入っていてその1MONAを送金しようとしたら「残高不足です」と出るのはちょっと混乱を招くと思う。そこから0.999MONA送金しようとすると送金できるもの理屈が分かりにくいかな。0MONA/0人>>23,25テストの協力ありがとうございます!履歴表示はこれから作ります。復元キーワードの再表示は作る予定です。復元キーワードのスキップは検討してみます。残高はヘッダのウォレットに表示する予定です。複数ウォレットを持っている場合は、その端末でデフォルトで使用するウォレットの残高のみを表示します。デフォルトで使用するウォレットを設定する機能は今後作る予定です。メールアドレスの登録ですが、悪意ある第三者による成りすましログインを防ぐためというのが一番大きい理由です。仮にTwitterアカウントが盗まれた場合でも、今の仕様であれば、新しい端末でのログインに対してメールを送信して、メール内のリンクを踏まなければログインできない仕組みになっているので、不正ログインを防ぐことができます。(メールによる二段階認証)仮に不正ログインされてしまうと、投げ銭の受取用ウォレットを変更される可能性があります。25まとめると・Twitterのアカウントのみが盗まれた場合・・・不正ログインを防ぐことができる・メールアドレスのみが盗まれた場合・・・不正ログインを防ぐことができる・両方が盗まれた場合・・・不正ログインされて、今後の投げ銭の送金先が悪意ある第三者に変更されるまた、投げ銭を受け取ったときの着金通知のためにもメールアドレスを使用する予定です。説明したとおり、履歴の表示はこれから作る予定ですどんな履歴表示になるかは、いずれ完成した頃に公開します。・おつりトランザクションの発生の有無によって変わってきます。送金額が大きくなれば、使用するインプットの数が増え、手数料も大きくなっていきます。言えば、プライバシー考慮の代償として、使用するインプットをランダムに選択しているため、トランザクションを組み立てるたびに手数料が変わるという問題もあります。0MONA/0人>>27トランザクションを組み立てる前に、適切な金額の手数料を決定できないので、手数料を事前に表示しづらいという状況です。送金時のダイアログに合計の送金額も追加する、というのをやってみようと思います。アドレスや金額を入力したタイミングで、トランザクションを作成して手数料を表示する、という方法も試してみようと思います。説明したようにメールアドレスによる2段階認証を取り入れているので、他の端末でのログインを試してもらえると嬉しいです。(ウォレットの補足)ウォレットの復元キーワード(BIP39のニーモニック)は使用している端末に保存されます。他の端末でログインしても、ウォレットの復元キーワードが保存されていないので、ウォレットの残高等は表示されないし、送受信もできません。ウォレットを使用するには、ウォレットの復元機能を使って、復元キーワードを入力してもらう必要があります(未実装)。このような仕様にしているのは、カストディ業者になりたくない、というのもありますが、万が一不正ログインされた場合でも、既存のウォレットの中身を盗まれることを防ぐ意図もあります。0MONA/0人セキュリティとのトレードオフになるとは思うけど、使ったこともないうちに、どんなサイトかもわからないのにSMSアカウントだけではなくメールアドレスも取られるの...?とは思ったメールアドレスがあれば登録できるウェブウォレットが今はないので、モナッピーのかわりにあったら便利かもなあとは思う。0MONA/0人>>34ユーザー登録の敷居が高くなるというのは分かるけど、やっぱり不正ログインされたくないという気持ちが強いかなぁ。メールアドレス以外に、ユーザーへの負担が少なくて、セキュリティを高める良い方法が思いつかぬ。出金用のフォーム入力時に手数料と総額を表示するように修正しました!これでだいぶ使いやすくなったのではと思う。3.9MONA/1人>>33AndroidスマホからのTwitter認証のログイン、確認しました。現状スマホから繋ぐことを想定していないのならばスルーで大丈夫です。「連携アプリを認証~」と要求する際の権限が妥当なのか気になりました。入金済みのアカウントへログインしましたが、スマホからだと着金済みの残高が反映されてない模様です。*ウォレット情報QRコードは表示されますが、アドレス自体がテキスト表示されておりませぬ。0MONA/0人>>37Androidでの確認ありがとうございます!認証時の権限についてはTwitterの方にキャプチャ画像をお願いします。ウォレット残高とウォレット情報についてですが、ログインしただけだと表示されないという動作が正しい動作です。分かりにくいですが、ウォレットの情報はすべて端末側に保存されているので、同じアカウントでログインしたとしても端末が違うとウォレットの情報が見つからず表示はできない、となります。今後ウォレットの復元機能を実装すれば、メモに取った復元キーワードからウォレット情報を復元することができるようになります。QRコードだけ表示されていると思いますが、何の情報も含んでいないQRコードを表示しているだけですので、ウォレットがない場合は表示しないように修正しようと思います。対応しているブラウザについてPCではIE11以上とChrome系とFirefoxとSafariに対応しています。AndroidはChrome系ですので、相当古い端末でなければ対応しています。iPhoneもSafariなので対応しています。Android端末は持っていないので、対応しているはずですが確認できない状況です。テスト用に調達するかもしれません。0MONA/0人Twitterの権限の問題について権限が「読み込みと書き込み」になっていたので、「読み込み」に修正しました。1MONA/1人>>32個人的にはA)入力した金額+送金手数料を送金時に引かれるB)入力した金額から送金手数料分を引いた額が送金されるこの2パターンを選択(設定)できるのが理想だけど制作コストがかかるならA案で良いと思う。送金額で手数料も変わるなら尚の事送金前にその事を告知する必要はあると思うな。(少なくとも送金手数料は送金額によって変わるという事を)何も知らないユーザーからするとなんで前送金した時と手数料が違うんだ、という話になるから。最低送金手数料は0.001MONAからと決めてしまうのも手かも。0MONA/0人>>40確かにA案とB案が切り替えられれば便利そうね。外部のウォレットへの送金はそれほど頻繁に行われるわけでもないと思うので、将来的に対応するリストに入れておくことにする。手数料が変動することを明記することから始めようと思う。あと最低送金手数料を決め打ちする方法は、ユーザーからすると分かりやすいと思うので、将来的に対応するかもしれません。0MONA/0人テスト公開中のサイトを更新しました。0MONA/0人テスト公開中のサイトを更新しました。・復元キーワードの再表示機能を追加ウォレット画面に新しく「設定」タブを追加しています。そこから復元キーワードを再表示できるようになりました。1MONA/1人>>42>>43について、変更確認しました。同じ端末+同じブラウザに限り先日入金した履歴表示がされることを確認しました。別端末のchromeやFirefoxなど他のブラウザからだと表示されません。タブの箇所に追記を確認しました。控えてあるのでいつでも復元の実験台になれます。できないのは、デバイス認証というよりはカストディ業者規制への対策の意味合いが強いです。Chromeで作成したウォレットをサーバー側で預かって、Firefoxに渡すという仕組みにしてしまうと、サーバー側で復元キーワードを預かることになってしまいます。この方法では運営側がユーザーのモナコインを管理することになるので規制に引っかかると思われます。それに加えてブラックハッカーに狙われるリスクも高まるので、避けたいと考えています。そのため他のブラウザにウォレットを移すには、各ユーザーが復元キーワードを入力する、という方式を取っています。(まだないですが)ウォレットの復元機能は来週中には完成すると思います。1MONA/1人androidのchromeからログインしようとして認証メールを送信したと表示されたけどメールが届かないです。別のアドレスからそのアドレスにメールを送ったら届いたのでアドレス自体に問題はないしメーラー(Webメール)の問題でもないと思います。0MONA/0人>>46確認ありがとうございます。確認したところ、確かに錬金さんのアドレスへの送信が途中で止まっているみたいです。設定の誤りも見つかったので、修正後に直るかどうかを試してもらえると助かります。0MONA/0人>>46確認ありがとうございます。確認したところ、確かに錬金さんのアドレスへの送信が途中で止まっているみたいです。設定の誤りも見つかったので、修正後に直るかどうかを試してもらえると助かります。0MONA/0人>>46メールの設定を修正しました。0MONA/0人>>4930分ほど待ちましたがやっぱり届かないですね。ちなみにそのメールはAndroidではなくPCで受けています。0MONA/0人>>50うーん、ダメですか。ログを見る限りエラーはメールサーバー側で起こっているので、AndroidでもPCでも関係なさそうです。こちらで使っているメールサービスのログを確認すると、そちらの受信メールサーバーのスパムフィルターのようなもので弾かれているみたいです。ドメイン関連の設定ミスがあったので、スパムと判定されているのではと思います。エラーログのヘルプページには「エラーは一時的なものです。エラーが発生してから4時間後にメールの送信を再試行することをお勧めします。」と書かれているので、しばらくすると直る可能性もありそうです。試してもらえると助かります。今日は外出のため作業できないので調査は明日になります。0MONA/0人>>50こちらでも同じメールプロバイダを使ったところ同様の問題の再現が確認できました。続きは明日調査します。受信側のメールプロバイダにサポートメールを投げました。結果が分かり次第お知らせします。0MONA/0人>>53了解です。0MONA/0人>>54そうですね、アドレスは変更できるようにする予定です。0MONA/0人テスト公開中のサイトを更新しました。・復元キーワードによるウォレットの復元機能を追加ウォレット画面の「復元」リンクから飛べるようになっています。この機能は、PCやスマホで作成したウォレットを別の端末(ブラウザ)で復元して利用するためのものです。このサイト内で作成したウォレットのみに制限しているので、外部のウォレット(Electrum-monaなど)で作成したウォレットを復元できないことに注意してください。>>54メールが届かない件についてですが、返答がなく原因不明なままです。復元機能を試す場合は、新しいアカウントを別のメールアドレス(GmailやYahooなど)で作ってもらうしかありません...手順は以下の通りです。面倒でなければ試してみてください。試すものの送金額が不適切ですとの表示。ウォレットには確かに入金している。0MONA/0人>>57特にconfirmation待ちはしない仕様なのでそれが理由にはならないはずです。入金の反映はページのリロードが必要なので、もう一度確認してみてください。0MONA/0人>>56可能だったら今のアカウントを一旦削除できますか?ウォレットの残高は0なので仮に復元できなくなっても被害はないので。手間がかかるようだったら別のブラウザから登録し直すので大丈夫です。0MONA/0人>>59了解です!>>60分かりました!削除しますね。0MONA/0人>>61よろしくお願いいたします。0MONA/0人>>62削除しました。これでもう一度ユーザー登録できる思います。0MONA/0人>>63ありがとうございます。あとで確認してみます。以前から告知しているとおり、今回のテストは明日9/21で終了します。新しくアカウントを作り、別デバイスでのログインも成功しました。以前のアカウントで作ったウォレットを復元しようとしたら「別アカウントに紐づくウォレットは復元できません」というメッセージが。アプリ連携に使ったtwitterアカウントは同じなんだけど別物と認識されている?動きとしては理に適っているかもしれない(少なくとも自分はそう思う)けど、一旦アカウントを削除するとそのアカウントに紐づけられたウォレットはモナストーリーでは復元できないという仕様になるのならアカウント削除時にはその旨を告知した方が良いかも。そのウォレットを再利用できた方が便利だとも思う。0MONA/0人>>68-69ユーザー登録ごとに内部的なユーザーIDを発行しているので、削除したアカウントと再度新規登録したアカウントでは別アカウント扱いになっている。あと削除済みのユーザーのウォレットの復元はやりたくないかなー。それを認めてしまうと内部のデータの関連付けが複雑になるので、バグの温床になりそうな予感がする。できた方が便利なのは分かるんだけどね。1MONA/1人>>71ウォレットとアカウントはそれぞれ独立してて紐づけられてるだけかと思ったけどそうでもないのね。0MONA/0人>>72まずウォレットとアカウントについてだけど、ウォレットはアカウントに紐づいてます。紐づけを変えると過去の投げ銭相手から見た時に、投げた先のアカウント名が変わってしまい混乱すると思う。ならないようにするには内部のデータ構造を変える必要があったりプログラムも複雑になるのであまりやりたくないです。0MONA/0人ウォレットの復元についてモナストーリーで対応しているウォレットはBIP39+BIP49の規格に沿ったものだけです。そのため外部のウォレットで復元するには同じ規格に対応しているウォレットだけになります。現状自分が知っている範囲ではElectrum-monaだけなので、復元するにはElectrum-monaが必要なるということです。逆にElectrum-monaからモナストーリーへの復元は原理上可能だけど、禁止しています。0MONA/0人テストに参加してくれたみなさん、ありがとうございました。色々な感想や意見を反映させていければと思っているので、今後も協力してもらえると助かります!今回のテストはこれで終わりですが、次は小説が投稿できるようになったころに考えています。サイトは閉鎖しましたが、1週間程度はデータを保管しているので、もしもモナコインを取り忘れた方がいれば連絡してください。0MONA/0人>>73ああ、なるほど。投げ銭の履歴はブロックチェーンから取ってきてるからアカウントとの紐づけが変わるとアカウントに対する投げ銭の履歴が追えなくなるのか。なるとアカウントとウォレットは一意で変更できないというのはモナストーリーに限らず投げ銭機能のあるサービス全般の問題と言うか仕様になりそうね。0MONA/0人>>77そういうことです。アカウントとウォレットがあるサービスであれば基本的にそうなると思います。1MONA/1人>>78お疲れ様でした。投稿できるよう、書き物を何かしたためておきます。今やっていることと今後やることを軽く説明しておくよ。今はモナコインが着金したときにメール通知する機能を作っていて、設計が完了してプログラムを書いているところ。そのあとは、小説を投稿する機能や小説を読む機能、小説を管理する機能などを作っていく。それから、最近Bitbankのマストドンが閉鎖するというニュースがあったけれども、モナストーリーでは導入したいと思っている。小説関連の方が優先順位が高いので、初期リリースには含まれない予定。あとメールが届かない問題は返答がない。最終的にリリースする際には色々なプロバイダでテストしてみようと思ってる。0MONA/0人>>81乙。あのプロバイダーはドマイナーなんで返答が来ないのもしょうがないかも。日本で真面目にやる気がないと思うし。連載ものを簡単に投稿できる/読める機能があるといいかも(投稿予約とか末尾に次回へのリンクが自動でつくとか)ともあれ次のリリースを楽しみにしてます。0MONA/0人>>82了解です。その機能は便利だと思うので作ります。着金時のメール通知が完成したので次は着金時のWeb通知を作ります。ブラウザにピョコンってでてくるあれね。通知音の設定もできないか、少し調べてみたけどOS側の設定っぽいので「どんどこわっしょーい」は諦めた。0MONA/0人>>84モナッピーの着金通知はどうやってたんだろうなあ...。動画再生してたのかな。次はいよいよ新規作品の作成画面の制作を始める。タイトルやサムネを設定して作品の入れ物を作るというところまでです。作り込みも後回しです。次は自身が作成した作品の一覧を表示する機能を作ります。0.1255254MONA/2人あけましておめでとうございます!今年もよろしくお願いします。遅くなりましたが小説の一覧画面の見た目ができました。今年はもう少しスピードアップできたらいいなと思います。「エピソードの追加」ボタンが完成しましたこのボタンを押すと新しいエピソードが追加されて、エピソードの編集画面に移動します(する予定です)ボタンを何回か押すとこんな感じになります次はエピソードの編集画面を作りますお気に入りログインしてMONAをもらおうログインすると、投稿したり、MONAをもらったりすることができます。質問したり、答えたりしてMONAを手に入れてください。askmona.org@gmail.com。