SSブログ

Javascript小僧:鍵付き換字式+転置式暗号【目的編】 [コンピューター]

なぜ、Javascriptで暗号を作成することになったのか。。


仕様を説明する前に、そうなった経緯、目的を説明すべきだったのですが、
ご容赦下さい。

HTML+Javascriptで機密情報を渡す方法としては、

イヌでもわかるJavaScript講座
Step.15 - 入力ウィンドウを表示する
http://www.red.oit-net.jp/tatsuya/java/prompt.htm

にあるような方法があります。しかし、tatsuyaさんが述べているように
ブラウザでソースを見られてしまっては、パスワードは丸見えです。。

そこで、パスワードを暗号化しておきたいのです。

001.jpg

上記のようなHTMLを作成し、解錠ボタンを押して正しいパスワードを入力
したときのみ、「*******」の部分に機密情報を表示させることを考えます。

           
<html>
<title>機密情報</title>
<head lang="ja">
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<script type="text/javascript">
<!--
// 機密情報の開示
function myOpen01(){
var Ans1=prompt("パスワードを入力してください","");
var Pass1="cheese999";
if(Ans1==Pass1){
document.getElementById("IDKimitsu01").value="Mach55577";
}else{
document.getElementById("IDKimitsu01").value="*********";
alert( "パスワードが違います!" );
}
}
// -->
</script>
</head>
<body>
<h1>機密情報</h1>
<table border="0"><tr>
<td><form name="myF06"><input type="text" id="IDKimitsu01"
value="*********"></form></td>
</tr></table>
<br>
<div align="right">
<table border="0"><tr>
<td><form name="myB03" action="#">
<input type="button" value="解錠" onclick="myOpen01()">
</form></td>
</tr></table></div>
</body>
</html>


上記のコードでは、解錠ボタンを押して「cheese999」を入力すると、
機密情報として「Mach55577」が表示されます。

ブラウザでソースを見ることができる人なら、「cheese999」「Mach55577」
の情報は丸見えです。

「イヌでもわかるJavaScript講座」では、

Step.16 - パスワードを 暗号化!? する
http://www.red.oit-net.jp/tatsuya/java/prompt2.htm

Step.79 - 絶対にバレない パスワードリンク
http://www.red.oit-net.jp/tatsuya/java/prompt3.htm

で解決しています。しかし、ASCIIコード表があれば、Step.16は
突破できます。Step.79は、ディレクトリトラバーサルができない
Webサーバであれば突破できませんが、そうでなければ使えません。

そこで、「cheese999」「Mach55577」を暗号化しておき、ソースを見られても
暗号化アルゴリズムが分からない限り、情報が漏えいしないようにしたいのです。

http://cheese999.blog.so-net.ne.jp/2013-04-29

で紹介したアルゴリズムで「cheese999」「Mach55577」をあらかじめ暗号化
しておきます。

解錠ボタンを押して、入力された文字列と復号した「cheese999」が一致した
ときのみ、「Mach55577」を復号して表示させることにします。そのコードは
次回に紹介します。
ヤバイぜ!(6)  コメント(3)  トラックバック(0) 
共通テーマ:日記・雑感

ヤバイぜ! 6

コメント 3

alba0101

ご訪問&コメントありがとうございます^^

私には高度すぎて...(^^;)
さっぱり解りませんが...暗号ってワクワクしますよね(^^)
by alba0101 (2013-05-01 11:02) 

cheese999

alba0101さん、
コメントありがとうございます。
本当は暗号なんてなくてもいいのですが。。。悪意を持った人がいなければ。
そうしたら、私もセキュリティの勉強なんてしなくていいのですが。
[__猫]
by cheese999 (2013-05-01 15:24) 

いっぷく

ネットの向こうにはどんな人がいるかわかりませんからね。大変なお仕事だと思います。
by いっぷく (2013-05-02 23:00) 

Facebook コメント

トラックバック 0

トラックバックの受付は締め切りました

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。