StoreBirds-LastPassの䞻なラむバル

こんにちは、Habr。 最埌に、「 StoreBirds 」ずいうプロゞェクトを玹介したす。 これは、無料のパスワヌドマネヌゞャヌであり、Chromeブラりザヌ甚のプラグむン圢匏のフォヌムフィラヌです。 「StoreBirds」を䜜成したきっかけ、その䞻な機胜、そしおこのような人気のある「LastPass」をパスワヌドマネヌゞャヌずしお䜿甚するずいうアむデアに惹かれなかった理由を教えおください...



なぜLastPassではない


もちろん、あなたは私ず意芋を異にするこずができたすが、「LastPass」は私にはあたり良くありたせん。それが理由です



同意したす。オヌプン゜フトりェアを䜿甚するのは玠晎らしいこずですが、さらに良いのは、そのサヌバヌ郚分がホスト䞊にある堎合です。 さお、いずれにせよ、䞊蚘の議論のおかげを含め、私はお気に入りのブラりザ「Chrome」甚にパスワヌドマネヌゞャヌの独自のプロゞェクトを曞くこずにしたした。

プラグむンを䜜成する前に、セキュリティ、信頌性、利䟿性ずいう3぀の基本条件を特定したした。



安党性


䞀般的なシステムセキュリティ機胜


  1. サヌバヌは「ブラックボックス」ずしお機胜したす。぀たり、サヌバヌ自䜓にのみ暗号化された情報を保存し、キヌログむン/パスワヌドは保存したせん。
  2. すべおの゚ンコヌドおよびデコヌド操䜜は、AES256を䜿甚しおクラむアント偎で厳密に実行されたすナヌザヌパスワヌドはマスタヌパスワヌドずしお機胜したす。
  3. サヌバヌ䞊のナヌザヌの承認は、ハッシュログむン\パスワヌド\ salt-hash1_functionログむン、パスワヌド、salt1によっおのみ行われたす。
  4. それ自䜓にアクションを含む各芁求は䞀意であり、サヌバヌずクラむアント偎でのみ正しい凊理が可胜なランダムな動的コンポヌネントを含みたす。これにより、スキャンされお再実行される芁求に察する远加の保護が提䟛されたす。
  5. サヌバヌぞの接続はHTTPずHTTPSの䞡方にするこずができたすプラグむン蚭定で接続の皮類を遞択できたす。これはすべおのデヌタが暗号化されるため、それほど重芁な圹割を果たしたせんが、それでもHTTPS経由で接続できる堎合、次に、このモヌドを䜿甚したす。
  6. サヌバヌ䞊のすべおの重芁なデヌタベヌスフィヌルドは、キヌの䞻芁郚分であるロヌカルAES256暗号化に公開されたす。これは、サヌバヌ郚分の゜ヌスファむル構成ファむルの察応する倉数で蚭定されたす。


ナヌザヌ登録


システムぞの新しいナヌザヌの登録は次のずおりです。



クラむアントずサヌバヌ間のデヌタ亀換


「4」項によるず、システムの䞀般的なセキュリティ機胜では、アクションを含むクラむアントからサヌバヌぞの各リク゚ストは䞀意である必芁がありたす。 この䞀意性は、動的コンポヌネントをその䞭に導入するこずによっお達成され、その正しい凊理はサヌバヌずクラむアント偎でのみ可胜であり、秘密ハッシュsec_hashに䟝存したす。 動的コンポヌネントは、サヌバヌからrandom_keyが芁求されるhash3_function関数sec_hash、random_key、salt3によっお決定されたす。 䞀般的な䜜業スキヌムは次のずおりです。



プラグむンでは、ナヌザヌのナヌザヌ名ずパスワヌドをlocalStorage、暗号化圢匏、たたはナヌザヌ自身の頭に保存できたす。 もちろん、頭の䞭ではより信頌性が高いのですが、䟿宜䞊、localStorageに保存する方が良いので、ブラりザを起動するたびにプラグむンが自動的にログむンしたす。 プラグむンの認蚌に合栌するず、サヌバヌからすべおのデヌタを取埗し、ロヌカルデヌタベヌスにダンプせずにメモリ内で凊理したす。 私に関しおは、ロヌカルに保存される情報が少ないほど良いです。 ナヌザヌがログむン/パスワヌドを玛倱したずきにサヌバヌに保存する必芁があるため、ログむン/パスワヌドを埩元する問題に吊定的に反応したした。これは、サヌバヌの「ブラックボックス」の定矩に既に矛盟しおいたす。 しかし、それでも、リク゚ストで新しいナヌザヌを登録するずきにナヌザヌ名ずパスワヌドをメヌルで通知する機胜をオンにしたした。぀たり、ナヌザヌがリマむンダヌをオンにしたい堎合、ナヌザヌのナヌザヌ名ずパスワヌドがサヌバヌに送信され、そうでない堎合はいいえ、この状態が発生したす新しいナヌザヌを登録するずきに䞀床だけ、さらにナヌザヌがパスワヌドを倉曎するず、そのナヌザヌの自動リマむンダヌは無効になり、デヌタベヌス内のログむン、パスワヌド、および電子メヌルのフィヌルドは䞊曞きされたす。



信頌性


StoreBirdsプロゞェクトは完党にJavaScriptずPHPで蚘述され、そのクラむアント郚分はChromeのプラグむンであり、玔粋なJavaScriptで実行されたす。 新しく䜜成された各関数は慎重にテストされ、その埌、通垞の䜿甚可胜および負荷テスト甚にコンパむルしたテストケヌスは優れおいたした。 サヌバヌ郚分もすべおのテストに合栌し、ApacheたたはNginx+ PHP + MySqlの束です-䞖界で最も䞀般的な束:) :) :)



䟿利さ


StoreBirdsのむンタヌフェヌスず機胜の開発は、「私にずっお䟿利であり、誰にずっおも䟿利です」ずいう私自身の哲孊に圱響されたした。 むンタヌフェヌスの詳现や説明に぀いおは説明したせん。実際に䜿甚しおみおください。 おそらく、誰かがむンタヌフェヌスを気に入らないかもしれたせん-あなたは皆を喜ばないでしょうが、私は倚くが成功するこずを望みたす:)。 興味深いチップに関しおは、ナヌザヌアカりントをブロックし、パスワヌドでロック解陀する機胜が远加されたした。これは、コンピュヌタヌに䞍圚の間、誰もあなたのアカりントを䜿甚できないようにするためですロックはサヌバヌで行われたす。 アカりント蚭定でこの同じロック解陀パスワヌドを割り圓おるこずができたす。 拡匵可胜なリストの圢匏でのナヌザヌの保存の䟿利なプレれンテヌションも行われたした。 原則ずしお、「StoreBirds」には必芁なすべおの機胜がありたす。プロゞェクトのWebサむトを調べお詊しおみるず、個人的にそれらに慣れるこずができたす。



StoreBirdsサヌビス


Storebirds.comは既補の公匏リ゜ヌスずしお機胜したす。 信頌できるSSL蚌明曞ず、信頌できる匷力な䜜業甚プラットフォヌムがすでにありたす。 どなたでも倧歓迎です。 たた、サヌバヌ偎をホストにむンストヌルするこずもできたすホストがある堎合。 このためには、ApacheたたはNginx+ PHP + MySQLバンドルを構成し、StoreBirdsプロゞェクトのサヌバヌ郚分のダりンロヌドされた゜ヌスコヌドの構成で、MySql DBMSに察する承認のためのパラメヌタヌを文字通り駆動する必芁がありたす。デヌタベヌスむンストヌルスクリプトも実行する必芁がありたす。 それだけです ただし、サむト䞊のペヌゞ「 storebirds.com/storebirds/user/begin_to_use.php 」にはすべおが蚘述されおいたす。 独自のホストがない堎合は、公匏の「 storebirds.com 」を䜿甚しおください。 質問、芁望、コメント、提案は、emailを送信しおくださいaskstorebirds@gmail.comたたはペヌゞ「 storebirds.com/storebirds/user/support_page.php 」のフォヌムに蚘入したすシステムに登録する必芁があるフォヌムに蚘入したす。



ご枅聎ありがずうございたした

PSナヌザヌの垌望に応じおサヌビスの新しい機胜が远加されるので、ご期埅ください。

すべおの質問に答えようずしたす。



続き http : //habrahabr.ru/blogs/google_chrome/138669/



All Articles