Multi-OTP is a PHP class that can be used to authenticate and manage OTP user tokens for strong two-factor authentication. It can create, update, and delete tokens to authenticate users with one time passwords (OTP). The users' data are stored in files. The class can also check the user token using several algorithms: Mobile OTP (MOTP), OATH/HOTP (RFC 4226), and OATH/TOTP HOTP Time Based (RFC 4226 extension). It works with compatible software tokens (iPhone, Android, PalmOS, Nokia, and other Java J2ME capable phones) and hardware tokens (such as Feitian, ZyXEL, Authenex, or Seamoon). The multiotp command line utility is also provided, both in "compiled" form (for Windows) and in source code (for Linux or educational purpose). The multiotp command line can be combined with FreeRADIUS (under Linux) or the free TekRADIUS LT (under Windows) in order to have a powerful radius strong authentication server.
TbsZip is a PHP class that enables you to read and write Zip archives. The class doesn't require PHP extensions or temporary files. TbsZip can read, add, delete, and modify files stored in an archive. It can even start with an empty archive. The original archive is not modified. The new archive can be saved in the server as a new file, or provided directly as an HTTP download, or even as a binary string. If the Zlib extension is activated in PHP, then TbsZip can automatically compress and uncompress files in the archive.
Redstart Templating implements a template engine which supports template inheritance. It can process templates based on PHP code loaded from given files. It can use class variables or local variables to define values for template placeholders. It supports template inheritance, including additional inline templates, and it can be extended with plugins.
FuzzyIndex indexes text for performing fuzzy searches using PHP and SQLite. It can process a list of text strings and build a database which indexes snippets of those strings and the locations where they appear. The class can also search for given keywords and returns the locations of the indexed strings where the best-matching text appears. It uses SQLite to store the indexed text database, but the class can be extended to use a different database type. It uses certain heuristics to extract the snippets from the indexed text. These heuristics are implemented as separate classes which can be used interchangeably.