Jeans & Development:2007年 11月の記事
PHP 5.2.4 [プログラミング]
2007年11月27日
Zend による PHP4 のサポートが年内で終了することに伴い、このサイト(kandk.cafe.coocan)で使用している PHP のバージョンを、5.2.4 に上げました。問題なく動くと思いますが、もし不具合を発見されましたら、e-mail か、Nucleus フォーラムのプライベートメッセージで連絡いただければ、嬉しいです。
CSRFとリファラについて [プログラミング]
2007年11月26日
ちょっと遅い情報なのだけれど。以前は多くのサイトで、リファラ(PHPでは、$_SERVER['HTTP_REFERER'])を利用したCSRF対策について有効とされていた。ところが最近(1年ほど前から)では、これが使えないということになっているようだ。
理由としては、Flashを用いると、リファラを偽装してサーバにアクセスできるため。Flashのどのバージョンからそうなのかは、調べていないので不明。いずれにせよ、リファラのみでのCSRF対策は出来ない。
当然であるが、リファラを調べたほうが、調べないよりもよっぽど良いのは確か。
自戒の意味で、メモ。
理由としては、Flashを用いると、リファラを偽装してサーバにアクセスできるため。Flashのどのバージョンからそうなのかは、調べていないので不明。いずれにせよ、リファラのみでのCSRF対策は出来ない。
当然であるが、リファラを調べたほうが、調べないよりもよっぽど良いのは確か。
自戒の意味で、メモ。
PHPでのコールバック関数の呼び出し [プログラミング]
2007年11月21日
PHP から SFC mini を使うハック(コールバック関数の実装)のためのメモ。
PHP extension からコールバックで hello, world を表示する
PHP Extension を作ろう第1回 - まずは Hello World
Google 検索
PHP extension からコールバックで hello, world を表示する
PHP Extension を作ろう第1回 - まずは Hello World
Google 検索
NP_R2Referer [Nucleus]
2007年11月19日
正規表現でHTMLコメントを取り除くには [プログラミング]
2007年11月19日
HTMLコメントを削除する方法
2008/02/19 改定
2008/02/19 改定
<pre><?php $html='outside <!--[inside]--> outside <!--[inside]--> outside'; echo htmlspecialchars(preg_replace('/<!--[\s\S]*-->/','',$html)); // 1) echo '<br />-----<br />'; echo htmlspecialchars(preg_replace('/<!--([^-]|-[^-]|--[^>])*-->/','',$html)); // 2) echo '<br />-----<br />'; echo htmlspecialchars(preg_replace('/<!--(([^-]|-[^-]|--[^>])*)-->/','$1',$html)); // 3) echo '<br />-----<br />'; echo htmlspecialchars(preg_replace('/<!--(([^-]|-[^-]|--[^>])*)-->/','$2',$html)); // 4) echo '<br />-----<br />'; echo htmlspecialchars(preg_replace('/<!--[\s\S]*?-->/','',$html)); // 5)
NP_Multilingual [Nucleus]
2007年11月18日
多国語表示プラグインがどうやら出来たみたいだ。50行に満たない長さだけれど、予定していた機能は一通り実装している。
始めは、どのような言語を使うかというところについて、プラグインオプションで設定できるようにしようかと考えたけれど、PHPファイルを直接書き換えて設定するようにした。自分自身で使う場合は日本語(ja)と英語(en)だけだし(デフォルトの状態)、他の人が使う場合でもインストールの際に一度きり設定するだけだろうから、これでよいだろう。
とりあえずこのブログにインストールして、少し使用した後に、公式サイトのWikiに上げる予定。
始めは、どのような言語を使うかというところについて、プラグインオプションで設定できるようにしようかと考えたけれど、PHPファイルを直接書き換えて設定するようにした。自分自身で使う場合は日本語(ja)と英語(en)だけだし(デフォルトの状態)、他の人が使う場合でもインストールの際に一度きり設定するだけだろうから、これでよいだろう。
とりあえずこのブログにインストールして、少し使用した後に、公式サイトのWikiに上げる予定。
多国語表示プラグイン [Nucleus]
2007年11月18日
MakeExeと暗号化について [プログラミング]
2007年11月16日
Vectorから配布されているMakeExeと暗号化技術の関連について。
e-mailで質問がありましたので、標記の件についてこちらにも掲載しておきます。以前書いたこととも関連しますが、MakeExe で作成したファイルに含まれるコードの暗号化についてです。
MakeExeには、暗号化の技術はまったく含まれていません。これは、現在までに配布した全バージョン(0.2.1 とそれ以前)に当てはまることですし、今後のバージョンでも暗号化技術を導入する予定はありません。ですので、MakeExe及びこれを用いて作成したexeファイルについて、例えばアメリカ合衆国が定めている128ビット長以上の暗号化技術に対する輸出入規制などには制約されません。
何らかの理由でソースコードを隠蔽したいときは、マイクロソフトが配布しているスクリプトエンコーダを使ってください。VBEもしくはJSEにファイル変換した後にMakeExeを利用すると、これを行うことが出来ます。このような方法で作成したexeファイルを輸出入する場合は、スクリプトエンコーダの暗号方式のビット長を参考にして、各国の法律に注意して行ってください。
MakeExeはLGPLのライセンスの元で配布していますので、改変して暗号化機能を持たせることは可能です。そういった場合は、当たり前のことですが、改変したソフトウエアに関する責任の所在をはっきりと表示していただければと思います。改変したソフトウエアを公開する場合は、LGPLもしくはGPLライセンスを適用する必要があります。詳しくは、MakeExeに同封しているライセンス関連の文書をご覧ください。
e-mailで質問がありましたので、標記の件についてこちらにも掲載しておきます。以前書いたこととも関連しますが、MakeExe で作成したファイルに含まれるコードの暗号化についてです。
MakeExeには、暗号化の技術はまったく含まれていません。これは、現在までに配布した全バージョン(0.2.1 とそれ以前)に当てはまることですし、今後のバージョンでも暗号化技術を導入する予定はありません。ですので、MakeExe及びこれを用いて作成したexeファイルについて、例えばアメリカ合衆国が定めている128ビット長以上の暗号化技術に対する輸出入規制などには制約されません。
何らかの理由でソースコードを隠蔽したいときは、マイクロソフトが配布しているスクリプトエンコーダを使ってください。VBEもしくはJSEにファイル変換した後にMakeExeを利用すると、これを行うことが出来ます。このような方法で作成したexeファイルを輸出入する場合は、スクリプトエンコーダの暗号方式のビット長を参考にして、各国の法律に注意して行ってください。
MakeExeはLGPLのライセンスの元で配布していますので、改変して暗号化機能を持たせることは可能です。そういった場合は、当たり前のことですが、改変したソフトウエアに関する責任の所在をはっきりと表示していただければと思います。改変したソフトウエアを公開する場合は、LGPLもしくはGPLライセンスを適用する必要があります。詳しくは、MakeExeに同封しているライセンス関連の文書をご覧ください。