ITエンジニア/デザイナ向けにオープンソースを毎日紹介

cryptico.jsはJavaScriptでRSA/AES暗号化/復号化を行うライブラリ。

cryptico.jsはJavaScript製のオープンソース・ソフトウェア。Webサイトで重要なデータを扱う場合、暗号化処理を行うのが一般的だ。SSLはもちろん、DBに入れるときも暗号化する。パスワードのように可逆変換を求めない場合はハッシュ値を保存するだろう。


画面下にてテスト中

それ以外のコンテンツであってもユーザだけが知っていれば良い、またはユーザだけが知るべきコンテンツであれば暗号化する方が良い。そんな時に使えそうなJavaScript暗号化ライブラリとしてcryptico.jsを紹介しよう。

cryptico.jsはJavaScriptによるRSA、AES暗号化ライブラリだ。ビット数も指定可能で、例えば1024bitでの暗号化も可能だ。キーフレーズも利用でき、まず秘密鍵を生成する。そしてその秘密鍵から公開鍵を生成し、その暗号鍵で暗号化したり、逆に復号化することができる。


復号化も行われた

署名を施す機能にも対応しており、公開鍵IDを使うことで復号化した時に署名されているかを取得することができる。暗号化されたデータと公開鍵をDBに入れてしまえば、暗号化はできても本人しか読めないコンテンツが出来上がる。セキュアなWebサービスを作る際に注目したいソフトウェアだ。


MOONGIFTはこう見る

この手の暗号化ライブラリの欠点としては検索に対応できないことかも知れない。しかしそれ以外はDBに万が一のことがあっても容易にはコンテンツを盗み見られることのない状態にできる。復号化はJavaScriptで行うので、表示上は問題なくネットワーク経路上は暗号化した状態にできる。

現在、サービスが大型になるとプライバシーの問題が必ず取沙汰される。それはFacebookやGoogleに限らず、メールやメッセージ等で個人の情報を扱っているサービスでは必ず発生する問題だ。クライアントの負荷が警備であれば積極的に取り入れていくべきサービスだろう。

cryptico.js - An easy-to-use strong encryption system utilizing RSA and AES for javascript.

cryptico - An easy-to-use strong encryption system utilizing RSA and AES for javascript. - Google Project Hosting

 

MOONGIFTの関連記事

コメント

  • DevRel
  • Com2