SasakiYuki / RaccoonWallet

20 stars 5 forks source link

小さなミスが大きな問題にならないためのセキュリティにおける事前対策について。 #9

Closed Rhime-design closed 6 years ago

Rhime-design commented 6 years ago

しつこく言って申し訳ないのですが、なんだか※嫌な予感しかしないので蒸し返してしまいました。

基本的には第三者による基礎的な動作のコードレビューについてです。

結局公式使うやろ問題へのアプローチというよりは、ラクーンが爆死しないための備えと、おまじないの働きを期待。割と心配です。 ちなみに内部のことを疑っていることは毛ほどもなく、小さなミスが大きな問題になるような、そういうリスクの可能性を対象にしています。

ちなみに、なにをどうすれば安全になるのかが分からないので、具体案を示せません。


NEMに詳しくない人のレビューでも意味があるのか

プログラミングはまったく分からないので教えてもらう必要があるのですが、NEMに詳しくない人でもコードレビューに意味はあるんでしょうか。 →例えば一般のバグバウンティなど。 送受信が確実に行われて、秘密鍵やアドレスの生成が完璧、意図しないまずいコードが混入していない etc...、ということは、やはりNEMに詳しい人のほうがよい結果を得られますか?

NEMCONの賞金を使うなど

お願いするお金としてNEMCON賞金をちょっとずつ集めるか、あるいはワシのCOMSAをぶん投げても良いです。

一般:bugbounty.jpとか出てきた。よく知らん。 コミュニティで依頼できそうな人:Daokaさんぐらいしか思いつかん。

Aleixに頼むか??

というかもう、私が安心したいだけという感が出てきてしまいました。


:star: ※嫌な予感を生み出す数々 :star:


(一応、利用規約はちゃんとしている。)

だれも読んでないと思いますが、思いっきりGincoのをパク参考にしたRaccoonの利用規約には、

「4.開発者は提供するサービスの内容について、瑕疵(かし)やバグがないことは保証しておりません。」

「開発者は、本アプリに起因または関連して利用ユーザーが被った損害について、賠償責任を一切負わないものとします。なお、消費者契約法の適用その他の理由により、本条項その他開発者の損害賠償責任を免除する規定にもかかわらず開発者が利用ユーザーに対して損害賠償責任を負う場合においても、開発者は利用ユーザーに対する金銭的損害賠償責任を負わないものとし、被った損害についての対策についての助言等に留めることとします。」

「4. 開発者は、開発者による本アプリの提供の停止、中断、終了、利用不能または変更、本アプリの利用によるデータの消失または機器の故障もしくは損傷、その他本アプリに関連して利用ユーザーが被った損害につき、賠償する責任を一切負わないものとします。」

などを明記はしてあります。

SasakiYuki commented 6 years ago

正直言っちゃえば「オラ、これが最強のコードじゃ見とけボケカスコラ」というほど自信のあるコードではありませんが、そこまで心配しておりません。 僕が楽観的な性格なのももちろんありますが、まぁ基本的にはNEMのAPIを通している以上「そのウォレットでできる以上のこと」ができないからです

ほぼローカルのデータでは状態を判別せず(僕がアプリではデータは持つべきでない教であるため)、都度APIを叩いています それもあってNEMAPIの完成度が高ければ自然とNEM回りで事故は発生しないようになっています

完全に動いているとは言えないのが情けないですが、ちょっと心配しすぎかなとも思いました

コードベースでのレビューよりも段階的に動かしててここ変だぞーみたいな指摘が全然あると思うのでバグバウンティみたいなことならもうちょっと経ったらやってもいいかもなぁとも思いました というか実際誰かに会うたびに言われてる(nemdevのスラックでももらってる笑)ので僕としてもちょっとずつ潰していければいいかな、という風には思ってます。 なんかまぁじゃんじゃんissue立てちゃえばいいのかなぁと思ったり もちろん今後目指していく「公式よりRaccoon」を考えるならお金かけたりしてバグ発見したり。。とかもありかもですが、果たしてそこまで今そこまで来ているか?という気はしてます

Rhime-design commented 6 years ago

分かりました! 実際、私は楽観の対極にいるようなヤツなので、現在どういうふうに考えているのかを共有しておきたかっただけです。 ふたを開けてみて「あ~何もなかったよかった~」的な安心したいだけなので、そもそも構造的にミスが起こらないようになっているのであれば、安心できます。

私も「そこまで今そこまで来ているか?」という点については、子ダヌキもいいとこだと思います:feet:

ただ「今まで少人数で開発するアプリが扱ってこなかったような資産に直結する情報を扱う」という部分が、世界的にみても意識がまだ追いついていないのかなという気がしています。

ブロックチェーン以後[金融革命]だと、そのあたりに責任が生じてくるのではないかと思っています。 つまり、あまりにブロックチェーン以後は、お金を操作するソフトウェアを開発することが容易になったため、行動の対象(プロダクト)と実際の行動に差異が生じてきがちかな。 自分の作ってるモノがワカラナイ・ワカッテナイ的な。 (インターネット以後[情報革命]の話だと、それを意識せず突き進むと、フェイクニュースになる。たぶんブロックチェーン以後も、こうしたことを考える人は少ないと思うので”お金なんてぶっ飛んで当たり前だろ。ぐらいになってしまうかもしれない。)

また何かあれば、このissueを掘り起こしたりしてどういう対策をするのか決めましょう。 どうもです!