:: 画像認証機能について | KENT WEB ::

Home > 画像認証機能について

画像認証機能について
- 画像認証機能について -


画像認証とは 画像認証とは
  • 画像認証とは、いわゆるスパム対策の一つで、掲示板などにおいて、悪意のある機械的な投稿を排除するための機能です。
  • 仕組みとしては、投稿フォームから送信するとき、画像に表示された文字を所定の入力フォームに入力してもらうことで、悪意のあるプログラムからの機械的な投稿を回避します。 これは、当然ながら自動投稿プログラムが、画像の中の文字を読めないであろうことを前提としています。

    【画像認証の例】

    画像認証の例
    (注記)画像認証の画像は、悪意のあるプログラムが自動的に判別しにくいように、背景に点や線を入れたり、文字の位置を変えるなどの工夫をすることもあります。

  • KENT-WEBの場合には、captcha.cgi(Ver.3) において、これを実現しています。 captcha.cgiでは、設定により次の2種類の認証画像を表示することができます。

    (1) ライブラリー版【簡易版】: PNG連結ライブラリー (pngren.pl) を利用したもの。
    (2) モジュール版【本格版】: GD::SecurityImage + Image::Magickモジュールを利用したもの。

pagetop


ライブラリー版【簡易版】 ライブラリー版【簡易版】について
  • ライブラリー版は、桜月氏(現在サイト閉鎖中)が開発したPNG画像連結ライブラリー(pngren.pl)を利用します。
  • 画像はあらかじめ次のものを用意しており、「binフォルダ」の中に格納しています。 なお、数字画像はすべて Digit Mania にて公開されているものを加工しています。
    ファイル名 画像
    bq.png bq.png
    br2.png br2.png
    br3.png br3.png
    casual.png casual.png
    cut.png cut.png
    japan.png japan.png
    jump.png jump.png
    kt012.png kt012.png
    lynz.png lynz.png
    small.png small.png
    stamp.png stamp.png
  • 画像を変更する場合には、設定ファイルである「init.cgi」の次の箇所を指定します。

    # [ライブラリ版] 画像ファイル [ ファイル名のみ ]
    $cf{si_png} = "jump.png"; # ←ファイル名のみを記述する

pagetop


モジュール版【本格版】 モジュール版【本格版】について
  • モジュール版は、GD::SecurityImage 及び Image::Magick モジュールを使用します。
  • GD::SecurityImageは、すでに「libフォルダ」の中に格納(同梱)していますので、サーバ側にインストールされていなくても構いません。 ただし、Image::Magickはあらかじめサーバ側にインストールされている必要があります。
  • ご使用のサーバにおいて、Image::Magickの利用可否を調べるには、サーバの仕様を確認する必要がありますが、「check.cgi」を実行することによっても、簡易的な診断(利用可否のチェック)を行います。
  • GD::SecurityImageを使った認証画像では、フォントファイル(TTFファイル)が必要で、現在以下のフォントファイルを「bin」フォルダに予め格納しています。
    フォント名 フォント画像 入手元 ライセンス
    army.ttf army.ttf Fonts2u.com フリーウェア
    redressed.ttf redressed.ttf Fonts2u.com フリーウェア
    tempest.ttf tempest.ttf Fonts2u.com 個人利用
  • フォントを変更する場合には、設定ファイルである「init.cgi」の次の箇所を指定します。

    # [モジュール版] 画像フォント [ ファイル名のみ ]
    $cf{font_ttl} = "tempest.ttf"; # ←ファイル名のみを記述する

  • フォントファイルは以下のようなサイトで自由にダウンロードすることができます。 ただし、それぞれライセンスの制約があるものがありますので、英語になりますが、確認しておくとよいでしょう。

    Fonts2u.com
    FONTS500

  • 認証画像のサイズや数字レイアウトをカスタマイズしたい方には、GD::SecurityImageでは、画像サイズ、フォントのレイアウト、背景の点や線などを自由に設定することもできます。あくまでも各自の責任の範囲内で行ってください。

    修正するファイル : lib/captsec.pl
    修正する箇所 : [ 以下のとおり ]

    my $image = GD::SecurityImage->new(
     scramble => 0, # スクランブルモードで「1」にすると各数字の角度を一文字毎に変更します。
     width => 90, # 画像の横サイズ
     height => 26, # 画像の縦サイズ
     lines => 8, # 画像全体にかける線の数
     font => $font, # フォントファイル(ここは絶対に変更しないこと)
     ptsize => 18, # 文字のポイント数
    );
    $image->random($captcha_str); # 指定する文字(ここは絶対に変更しないこと)
    $image->create("ttf", "ellipse"); # 画像全体にかかる線の種類
     # [ default : 格子状 + 斜め線 rect : 格子状の線 ]
     # [ box : 2つの塗りつぶされた四角 circle : 丸 ]
     # [ ellipse : 楕円 ec : 丸と楕円の線 ]
    $image->particle(100); # 背景に散りばめるドット数
    

    [ カスタマイズ例 ] scramble => 1 とし、サイズ等を調整

    カスタマイズ例

pagetop


line
| トップ | 掲示板 | ブログ・日記 | チャット | カウンタ | パスワード制限 | フォームメール | データ加工 | 買物カート | バラエティ | ユーティリティ |
| 新着情報 | 利用規定 | サポートコーナ | よく頂く質問(FAQ) | 過去ログ検索 | ダウンロードランク | サイト内検索 | 書籍執筆 | KENTプロフ |
| Perl基礎入門 | データベース入門 | 暗号入門 | 自宅マシンサーバ化 | favicon作成 | QRコード作成 | 郵便番号検索 |
| ゲストブック | リンクコーナ | 個別改造 | 国旗検索&クイズ | WEBクイズ | ブラックジャック | マジカルバナナ |

Copyright © KENT-WEB 1997-2023.

AltStyle によって変換されたページ (->オリジナル) /