Internationalization Spoofchecker 클래스

(PHP 5 >= 5.4.0, PHP 7, PHP 8, PECL intl >= 2.0.0)


소개

이 클래스는 유니코드가 많은 수의 문자를 포함하고 세계의 다양한 쓰기 시스템을 통합하고 잘못된 사용으로 인해 프로그램이나 시스템이 문자 유사성을 사용하는 보안 공격에 노출될 수 있기 때문에 제공됩니다.

제공된 메소드를 사용하면 키릴 자모 'а' 문자로 철자된 "pаypаl"과 같이 개별 문자열이 판독기를 혼동시키려는 시도(위장 감지)인지 여부를 확인할 수 있습니다.


클래스 개요

class Spoofchecker {
  /* Constants */
  const int|float ASCII = 0x10000000;
  const int|float HIGHLY_RESTRICTIVE = 0x30000000;
  const int|float MODERATELY_RESTRICTIVE = 0x40000000;
  const int|float MINIMALLY_RESTRICTIVE = 0x50000000;
  const int|float UNRESTRICTIVE = 0x60000000;
  const int|float SINGLE_SCRIPT_RESTRICTIVE = 0x20000000;
  const int SINGLE_SCRIPT_CONFUSABLE = 1;
  const int MIXED_SCRIPT_CONFUSABLE = 2;
  const int WHOLE_SCRIPT_CONFUSABLE = 4;
  const int ANY_CASE = 8;
  const int SINGLE_SCRIPT = 16;
  const int INVISIBLE = 32;
  const int CHAR_LIMIT = 64;
  /* Methods */
  public __construct()
  public areConfusable(string $string1, string $string2, int &$errorCode = null): bool
  public isSuspicious(string $string, int &$errorCode = null): bool
  public setAllowedLocales(string $locales): void
  public setChecks(int $checks): void
}
                

미리 정의된 상수

Spoofchecker::ASCII
Spoofchecker::HIGHLY_RESTRICTIVE
Spoofchecker::MODERATELY_RESTRICTIVE
Spoofchecker::MINIMALLY_RESTRICTIVE
Spoofchecker::UNRESTRICTIVE
Spoofchecker::SINGLE_SCRIPT_RESTRICTIVE
Spoofchecker::SINGLE_SCRIPT_CONFUSABLE
Spoofchecker::MIXED_SCRIPT_CONFUSABLE
Spoofchecker::WHOLE_SCRIPT_CONFUSABLE
Spoofchecker::ANY_CASE
Spoofchecker::SINGLE_SCRIPT
Spoofchecker::INVISIBLE
Spoofchecker::CHAR_LIMIT

변경로그

버전 설명
7.3.0 Spoofchecker::ASCII, Spoofchecker::HIGHLY_RESTRICTIVE, Spoofchecker::MODERATELY_RESTRICTIVE, Spoofchecker::MINIMALLY_RESTRICTIVE, Spoofchecker::UNRESTRICTIVE와 같은 Spoofchecker::setRestrictionLevel()에서 사용하는 클래스 상수가 추가되었습니다.

목차