今回は、暗号化です。
なにげなく利用するメールですが、
インターネットではいろんなサーバを経由しています。
悪意のある人はメールを読むことができてしまいます。
PGPなど暗号化するものもありますが、
今回はColdFusionでやってみましょう。
大企業などでは管理職の人がメールチェックする
場合もあるそうなので、
こんなときはちょっと秘密のメールはどうでしょうか。
ちょっとワクワク(?)するかも!?
僕が小学生の時は暗号表を作ってスパイごっこをしたりしたよなぁ。
もちろん遊びなのでたいしたことないですけどね。
こちらをクリックしてください。
まず、左の入力欄に通常のメッセージをなにか入力してください。
そして「暗号化」ボタンを押すと、
右の入力欄に暗号化された文字列がでてきます。
今度は、暗号化された文字列は右の入力欄に入力してください。
指定のキーを入力し「暗号解除」ボタンを押すと、
左の入力欄にメッセージがでてきます。
※指定のキーはプログラム内に書いてあります。
<cfcomponent> <cfset this.name = "#hash(GetDirectoryFromPath(GetCurrentTemplatePath()))#"> <cfset request.key_20021223="maido_arigatou_gozaimasu"> </cfcomponent>
<cfinclude template="define.cfm"> <cfinclude template="header.cfm"> <cfinclude template="form.cfm"> <cfinclude template="footer.cfm">
<cfinclude template="define.cfm"> <cfinclude template="header.cfm"> <cfinclude template="chk_data.cfm"> <cfinclude template="form.cfm"> <cfinclude template="footer.cfm">
<cfparam name="form.mes1" default=""> <cfparam name="form.mes2" default=""> <cfparam name="form.key" default=""> <cfoutput> <h3>暗号に変換</h3> <table border="0"> <tr> <td> <form action="post.cfm" method="post"> <input type="Hidden" name="chk" value="1"> ●通常のメッセージを入力してください。<br> <textarea cols="50" rows="10" name="mes1">#form.mes1#</textarea><br><br> <input type="Submit" value="暗号化"> </form> </td> <td> <form action="post.cfm" method="post"> <input type="Hidden" name="chk" value="2"> ●暗号化されたメッセージを入力してください。<br> <textarea cols="50" rows="10" name="mes2">#form.mes2#</textarea><br> key:<input type="Text" name="key" size="40" value="#form.key#"><br> <input type="Submit" value="暗号解除"> </form> </td> </tr> </table> </cfoutput>
<cfparam name="form.chk" default=""> <cfparam name="form.mes1" default=""> <cfparam name="form.mes2" default=""> <cfparam name="form.key" default="正しいkeyを入力してください"> <cfparam name="form.mail" default=""> <cfparam name="form.k_mes" default=""> <cfswitch expression="#form.chk#"> <cfcase value="1"> <cfset form.mes2=Encrypt(form.mes1, request.key_20021223,"CFMX_COMPAT","Base64")> <!---解説 入力文字列を暗号化しています。 ---> </cfcase> <cfcase value="2"> <cfset form.mes1=Decrypt(form.mes2, form.key,"CFMX_COMPAT","Base64")> <!---解説 暗号化された入力文字列を解除しています。 ---> </cfcase> </cfswitch>