勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

HTMLとJavaScriptのソースコードの暗号化(難読化)

   2024/02/25  JavaScript HTML

サーバーサイドはソースを見られないけどクライアントサイドはソースを見られるので、簡易にでも暗号化できないのか? とふと思い調べたのでメモ。「クライアントサイドで実行可能ということは、クライアントは解釈可能な言語。よって完全に隠すのは無理」がまず結論。その上で簡易的な暗号化方法のメモ。

 

参考サイト

http://q.hatena.ne.jp/1177061214

まあ簡易でもいいので、と思って探したら楽なのがあった。

ソースの暗号化

http://jsajax.com/Articles/SourceCodeEncrypter/859

尚、出力されたソースを見たところunescapeという見たことの無い関数が。

参考サイト

https://developer.mozilla.org/ja/docs/JavaScript/Guide/Predefined_Functions/escape_and_unescape_Functions

16進エンコーディングの値を文字列にして返す関数とのこと。

どの道、暗号化しても解読は可能なのでどうしても内部の人間だけが見られるほうが良いのであれば、以下のようにPHPでコメント入れるとかのほうが良さそう。

<script>
  <?php $com = 'ここからコメント';?>
 /* javascriptの処理 */
  <?php $com = 'ここまでコメント';?>
</script>

 

2013/12/21追記

↓JSの難読化はここいいよ、と上司から教わったのでメモ。

http://dean.edwards.name/packer/

 - JavaScript HTML

  関連記事

HTML5のGeolocation APIで位置情報を取得してGoogleMapAPIで使用する方法

GPSみたいな位置情報を取得しGoogleMapAPIでその場所を反映させたかっ ...

input type="number"がFirefoxやSafariで正常に動作しない

input type="number"を設置したFormがFirefoxやiPh ...

htmlのarticle

コーダーさんから渡されたソースに<article>という 記述があり ...

mp3ファイルのアップロードと再生方法

mp3ファイルをformでアップロードしたかったのと、Webサイト上で再生したか ...

formでファイルを選択した際にファイル名やサイズ、形式を調べる方法

フォームで画像などをアップロードする際に「ファイルサイズが大きすぎないか?」「拡 ...