<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wiki.owasp.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Abhishek+Das</id>
		<title>OWASP - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.owasp.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Abhishek+Das"/>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php/Special:Contributions/Abhishek_Das"/>
		<updated>2026-05-05T21:21:59Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.27.2</generator>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_PHP_Security_Project/Roadmap&amp;diff=156205</id>
		<title>Projects/OWASP PHP Security Project/Roadmap</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_PHP_Security_Project/Roadmap&amp;diff=156205"/>
				<updated>2013-07-29T16:57:52Z</updated>
		
		<summary type="html">&lt;p&gt;Abhishek Das: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;OWASP PHP Security project’s objective is to secure PHP libraries, and provide a full featured framework of standalone libraries for secure web applications in PHP, releasing them both as separate decoupled libraries and as a whole secure web application framework; where sample configuration and usage can be observed. Many aspects of this project are already handled, and are either added or being added to OWASP.&lt;br /&gt;
&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== At present following libraries are supported (In alphabetical order): ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Access Control Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; RBAC Library.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Database Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[Phpsec/Secure Database Library|Secure Database Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Exception and Error Control Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Error Handler Library.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
'''HTTP Protocol Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[Phpsec/HTTP Request Handling Library|HTTP Request Handling Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[HTTP Response Handling Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Sensitive Date Protection Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[Secure Application Configuration and State Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Session Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[Session Management Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Time and Randomness Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[Time and Randomness Management Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
'''User Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[User Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[User Management Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[Basic Password Management Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[Advanced Password Management Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Abhishek Das</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Phpsec/HTTP_Request_Handling_Library&amp;diff=156204</id>
		<title>Phpsec/HTTP Request Handling Library</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Phpsec/HTTP_Request_Handling_Library&amp;diff=156204"/>
				<updated>2013-07-29T16:57:34Z</updated>
		
		<summary type="html">&lt;p&gt;Abhishek Das: Created page with &amp;quot;&amp;lt;h4&amp;gt;Introduction&amp;lt;/h4&amp;gt;  HTTP Request is user input. Many developers forget this fact and tend to rely on it as a trustworthy source and configure many aspects of their applicat...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h4&amp;gt;Introduction&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
HTTP Request is user input. Many developers forget this fact and tend to rely on it as a trustworthy source and configure many aspects of their applications based on values of &amp;lt;code&amp;gt;$_SERVER&amp;lt;/code&amp;gt; (most of which are set using HTTP request). While not all values under &amp;lt;code&amp;gt;$_SERVER&amp;lt;/code&amp;gt; are unreliable, some of the values such as 'QUERY_STRING', 'HTTP_REFERRER' etc are entirely arbitrary information sent by the client. This library provides wrappers which securely process these data and hand them to user, and replaces the &amp;lt;code&amp;gt;$_SERVER&amp;lt;/code&amp;gt; values that are insecure with objects that throw exceptions when cast to string (e.g. in HTTP_HOST), so that developers can no longer directly access them.&lt;/div&gt;</summary>
		<author><name>Abhishek Das</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Phpsec/Secure_Database_Library&amp;diff=156203</id>
		<title>Phpsec/Secure Database Library</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Phpsec/Secure_Database_Library&amp;diff=156203"/>
				<updated>2013-07-29T16:40:51Z</updated>
		
		<summary type="html">&lt;p&gt;Abhishek Das: Created page with &amp;quot;&amp;lt;h4&amp;gt;Introduction&amp;lt;/h4&amp;gt;  This library is compatible with PHP PDO, but doesn't allow insecure operations (such as concatenation of values in any form) with it. We have enforced p...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h4&amp;gt;Introduction&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This library is compatible with PHP PDO, but doesn't allow insecure operations (such as concatenation of values in any form) with it. We have enforced prepared statements for all data that is to be sent to the database engine, and will enforce whitelisting (via taint tracking) of all SQL parameters (such as limit and order by) where prepared data are not supported by the back-end engine.&lt;br /&gt;
A base library provides all these features abstracted from database engines, and derived libraries for each common database engine.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h4&amp;gt;Usage&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Include the required database adapter wrapper class. For example, in case of PDO_MYSQL&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
require ('phpsec/libs/db/adapter/pdo_mysql.php');&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Set up a database connection&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$a = new \phpsec\Database_pdo_mysql ('DATABASE_NAME', 'DATABASE_USER', 'DATABASE_PASSWORD');&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In case you already have a connection made, you can pass the object directly to the constructor&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$pdo = new \PDO (&amp;quot;mysql:dbname=DATABASE_NAME;host=localhost;&amp;quot;,'DATABASE_USER','DATABASE_PASSWORD');&amp;lt;br&amp;gt;&lt;br /&gt;
$a = new \phpsec\Database_pdo_mysql ($pdo);&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Execute queries. Parameters can be passed as arrays or expanded lists.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$b = $a-&amp;gt;SQL(&amp;quot;SELECT * FROM users WHERE username = ? AND dob = ?&amp;quot;, &amp;quot;abc&amp;quot;, &amp;quot;09/10/1991&amp;quot;);&amp;lt;br&amp;gt;&lt;br /&gt;
$b = $a-&amp;gt;SQL(&amp;quot;SELECT * FROM users WHERE username = ? AND dob = ?&amp;quot;, array(&amp;quot;abc&amp;quot;,&amp;quot;09/10/1991&amp;quot;));&amp;lt;br&amp;gt;&lt;br /&gt;
$b = $a-&amp;gt;SQL(&amp;quot;SELECT * FROM users WHERE username = :username AND dob = :dob&amp;quot;, array(':username' =&amp;gt; 'abc',':dob' =&amp;gt; '09/10/1991'));&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;h4&amp;gt;Files&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/base.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseConfig class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A single wrapper object for all database configuration options. Easier to pass around a single object to functions than an expanded list.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseModel class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parent class for all database wrapper classes. Provides most of the PDO compatible interface functions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatementModel class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parent class for all database prepared statements. Contains methods to actually perform queries and fetch data.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/pdo_mysql.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;Database_pdo_mysql class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_MySQL wrapper class. Extends the DatabaseModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatement_pdo_mysql&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_MySQL prepared statement wrapper class. Extends the DatabaseStatementModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/pdo_pgsql.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;Database_pdo_pgsql class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_PostgreSQL wrapper class. Extends the DatabaseModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatement_pdo_pgsql&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_PostgreSQL prepared statement wrapper class. Extends the DatabaseStatementModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/pdo_sqlite.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;Database_pdo_sqlite class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_SQLite wrapper class. Extends the DatabaseModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatement_pdo_sqlite class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_SQLite prepared statement wrapper class. Extends the DatabaseStatementModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;dbmanager.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseManager class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is not being used at the moment. It might be needed later for when the set of libraries would be incorporated in a framework. Leaving it for legacy purposes.&lt;/div&gt;</summary>
		<author><name>Abhishek Das</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=HTTP_Request_Handling_Library&amp;diff=156172</id>
		<title>HTTP Request Handling Library</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=HTTP_Request_Handling_Library&amp;diff=156172"/>
				<updated>2013-07-28T16:36:31Z</updated>
		
		<summary type="html">&lt;p&gt;Abhishek Das: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h4&amp;gt;Introduction&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
HTTP Request is user input. Many developers forget this fact and tend to rely on it as a trustworthy source and configure many aspects of their applications based on values of &amp;lt;code&amp;gt;$_SERVER&amp;lt;/code&amp;gt; (most of which are set using HTTP request). While not all values under &amp;lt;code&amp;gt;$_SERVER&amp;lt;/code&amp;gt; are unreliable, some of the values such as 'QUERY_STRING', 'HTTP_REFERRER' etc are entirely arbitrary information sent by the client. This library provides wrappers which securely process these data and hand them to user, and replaces the &amp;lt;code&amp;gt;$_SERVER&amp;lt;/code&amp;gt; values that are insecure with objects that throw exceptions when cast to string (e.g. in HTTP_HOST), so that developers can no longer directly access them.&lt;/div&gt;</summary>
		<author><name>Abhishek Das</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=HTTP_Request_Handling_Library&amp;diff=156171</id>
		<title>HTTP Request Handling Library</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=HTTP_Request_Handling_Library&amp;diff=156171"/>
				<updated>2013-07-28T16:33:41Z</updated>
		
		<summary type="html">&lt;p&gt;Abhishek Das: Created page with &amp;quot;&amp;lt;h4&amp;gt;Introduction&amp;lt;/h4&amp;gt;  HTTP Request is user input. Many developers forget this fact and tend to rely on it as a trustworthy source and configure many aspects of their applicat...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h4&amp;gt;Introduction&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
HTTP Request is user input. Many developers forget this fact and tend to rely on it as a trustworthy source and configure many aspects of their applications based on values of $_SERVER (most of which are set using HTTP request). While not all values under $_SERVER are unreliable, some of the values such as ‘QUERY_STRING’, ‘HTTP_REFERRER’ etc are entirely arbitrary information sent by the client. This library provides wrappers which securely process these data and hand them to user, and replaces the $_SERVER values that are insecure with objects that throw exceptions when cast to string (e.g. in HTTP_HOST), so that developers can no longer directly access them.&lt;/div&gt;</summary>
		<author><name>Abhishek Das</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Secure_Database_Library&amp;diff=156170</id>
		<title>Secure Database Library</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Secure_Database_Library&amp;diff=156170"/>
				<updated>2013-07-28T16:32:13Z</updated>
		
		<summary type="html">&lt;p&gt;Abhishek Das: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h4&amp;gt;Introduction&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This library is compatible with PHP PDO, but doesn't allow insecure operations (such as concatenation of values in any form) with it. We have enforced prepared statements for all data that is to be sent to the database engine, and will enforce whitelisting (via taint tracking) of all SQL parameters (such as limit and order by) where prepared data are not supported by the back-end engine.&lt;br /&gt;
A base library provides all these features abstracted from database engines, and derived libraries for each common database engine.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h4&amp;gt;Usage&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Include the required database adapter wrapper class. For example, in case of PDO_MYSQL&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
require ('phpsec/libs/db/adapter/pdo_mysql.php');&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Set up a database connection&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$a = new \phpsec\Database_pdo_mysql ('DATABASE_NAME', 'DATABASE_USER', 'DATABASE_PASSWORD');&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In case you already have a connection made, you can pass the object directly to the constructor&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$pdo = new \PDO (&amp;quot;mysql:dbname=DATABASE_NAME;host=localhost;&amp;quot;,'DATABASE_USER','DATABASE_PASSWORD');&amp;lt;br&amp;gt;&lt;br /&gt;
$a = new \phpsec\Database_pdo_mysql ($pdo);&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Execute queries. Parameters can be passed as arrays or expanded lists.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$b = $a-&amp;gt;SQL(&amp;quot;SELECT * FROM users WHERE username = ? AND dob = ?&amp;quot;, &amp;quot;abc&amp;quot;, &amp;quot;09/10/1991&amp;quot;);&amp;lt;br&amp;gt;&lt;br /&gt;
$b = $a-&amp;gt;SQL(&amp;quot;SELECT * FROM users WHERE username = ? AND dob = ?&amp;quot;, array(&amp;quot;abc&amp;quot;,&amp;quot;09/10/1991&amp;quot;));&amp;lt;br&amp;gt;&lt;br /&gt;
$b = $a-&amp;gt;SQL(&amp;quot;SELECT * FROM users WHERE username = :username AND dob = :dob&amp;quot;, array(':username' =&amp;gt; 'abc',':dob' =&amp;gt; '09/10/1991'));&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;h4&amp;gt;Files&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/base.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseConfig class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A single wrapper object for all database configuration options. Easier to pass around a single object to functions than an expanded list.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseModel class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parent class for all database wrapper classes. Provides most of the PDO compatible interface functions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatementModel class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parent class for all database prepared statements. Contains methods to actually perform queries and fetch data.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/pdo_mysql.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;Database_pdo_mysql class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_MySQL wrapper class. Extends the DatabaseModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatement_pdo_mysql&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_MySQL prepared statement wrapper class. Extends the DatabaseStatementModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/pdo_pgsql.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;Database_pdo_pgsql class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_PostgreSQL wrapper class. Extends the DatabaseModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatement_pdo_pgsql&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_PostgreSQL prepared statement wrapper class. Extends the DatabaseStatementModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/pdo_sqlite.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;Database_pdo_sqlite class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_SQLite wrapper class. Extends the DatabaseModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatement_pdo_sqlite class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_SQLite prepared statement wrapper class. Extends the DatabaseStatementModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;dbmanager.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseManager class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is not being used at the moment. It might be needed later for when the set of libraries would be incorporated in a framework. Leaving it for legacy purposes.&lt;/div&gt;</summary>
		<author><name>Abhishek Das</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Secure_Database_Library&amp;diff=156122</id>
		<title>Secure Database Library</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Secure_Database_Library&amp;diff=156122"/>
				<updated>2013-07-28T08:09:06Z</updated>
		
		<summary type="html">&lt;p&gt;Abhishek Das: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h4&amp;gt;Introduction&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This library is compatible with PHP PDO, but doesn't allow insecure operations (such as concatenation of values in any form) with it. We have enforced prepared statements for all data that is to be sent to the database engine, and will enforce whitelisting (via taint tracking) of all SQL parameters (such as limit and order by) where prepared data are not supported by the back-end engine.&lt;br /&gt;
A base library provides all these features abstracted from database engines, and derived libraries for each common database engine.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h4&amp;gt;Usage&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Include the required database adapter wrapper class. For example, in case of PDO_MYSQL&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
require ('phpsec/libs/db/adapter/pdo_mysql.php');&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Set up a database connection&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$a = new \phpsec\Database_pdo_mysql ('DATABASE_NAME', 'DATABASE_USER', 'DATABASE_PASSWORD');&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In case you already have a connection made, you can pass the object directly to the constructor&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$pdo = new \PDO (&amp;quot;mysql:dbname=DATABASE_NAME;host=localhost;&amp;quot;,'DATABASE_USER','DATABASE_PASSWORD');&amp;lt;br&amp;gt;&lt;br /&gt;
$a = new \phpsec\Database_pdo_mysql ($pdo);&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Execute queries. Parameters can be passed as arrays or expanded lists.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$b = $a-&amp;gt;SQL(&amp;quot;SELECT * FROM users WHERE username = ? AND dob = ?&amp;quot;, &amp;quot;abc&amp;quot;, &amp;quot;09/10/1991&amp;quot;);&amp;lt;br&amp;gt;&lt;br /&gt;
$b = $a-&amp;gt;SQL(&amp;quot;SELECT * FROM users WHERE username = ? AND dob = ?&amp;quot;, array(&amp;quot;abc&amp;quot;,&amp;quot;09/10/1991&amp;quot;));&amp;lt;br&amp;gt;&lt;br /&gt;
$b = $a-&amp;gt;SQL(&amp;quot;SELECT * FROM users WHERE username = :username AND dob = :dob&amp;quot;, array(':username' =&amp;gt; 'abc',':dob' =&amp;gt; '09/10/1991'));&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h4&amp;gt;Files&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/base.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseConfig class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A single wrapper object for all database configuration options. Easier to pass around a single object to functions than an expanded list.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseModel class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parent class for all database wrapper classes. Provides most of the PDO compatible interface functions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatementModel class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parent class for all database prepared statements. Contains methods to actually perform queries and fetch data.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/pdo_mysql.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;Database_pdo_mysql class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_MySQL wrapper class. Extends the DatabaseModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatement_pdo_mysql&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_MySQL prepared statement wrapper class. Extends the DatabaseStatementModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/pdo_pgsql.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;Database_pdo_pgsql class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_PostgreSQL wrapper class. Extends the DatabaseModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatement_pdo_pgsql&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_PostgreSQL prepared statement wrapper class. Extends the DatabaseStatementModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/pdo_sqlite.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;Database_pdo_sqlite class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_SQLite wrapper class. Extends the DatabaseModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatement_pdo_sqlite class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_SQLite prepared statement wrapper class. Extends the DatabaseStatementModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;dbmanager.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseManager class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is not being used at the moment. It might be needed later for when the set of libraries would be incorporated in a framework. Leaving it for legacy purposes.&lt;/div&gt;</summary>
		<author><name>Abhishek Das</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Secure_Database_Library&amp;diff=156121</id>
		<title>Secure Database Library</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Secure_Database_Library&amp;diff=156121"/>
				<updated>2013-07-28T08:07:22Z</updated>
		
		<summary type="html">&lt;p&gt;Abhishek Das: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h4&amp;gt;Introduction&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This library is compatible with PHP PDO, but doesn't allow insecure operations (such as concatenation of values in any form) with it. We have enforced prepared statements for all data that is to be sent to the database engine, and will enforce whitelisting (via taint tracking) of all SQL parameters (such as limit and order by) where prepared data are not supported by the back-end engine.&lt;br /&gt;
A base library provides all these features abstracted from database engines, and derived libraries for each common databas engine.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h4&amp;gt;Usage&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Include the required database adapter wrapper class. For example, in case of PDO_MYSQL&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
require ('phpsec/libs/db/adapter/pdo_mysql.php');&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Set up a database connection&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$a = new \phpsec\Database_pdo_mysql ('DATABASE_NAME', 'DATABASE_USER', 'DATABASE_PASSWORD');&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In case you already have a connection made, you can pass the object directly to the constructor&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$pdo = new \PDO (&amp;quot;mysql:dbname=DATABASE_NAME;host=localhost;&amp;quot;,'DATABASE_USER','DATABASE_PASSWORD');&amp;lt;br&amp;gt;&lt;br /&gt;
$a = new \phpsec\Database_pdo_mysql ($pdo);&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Execute queries. Parameters can be passed as arrays or expanded lists.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
$b = $a-&amp;gt;SQL(&amp;quot;SELECT * FROM users WHERE username = ? AND dob = ?&amp;quot;, &amp;quot;abc&amp;quot;, &amp;quot;09/10/1991&amp;quot;);&amp;lt;br&amp;gt;&lt;br /&gt;
$b = $a-&amp;gt;SQL(&amp;quot;SELECT * FROM users WHERE username = ? AND dob = ?&amp;quot;, array(&amp;quot;abc&amp;quot;,&amp;quot;09/10/1991&amp;quot;));&amp;lt;br&amp;gt;&lt;br /&gt;
$b = $a-&amp;gt;SQL(&amp;quot;SELECT * FROM users WHERE username = :username AND dob = :dob&amp;quot;, array(':username' =&amp;gt; 'abc',':dob' =&amp;gt; '09/10/1991'));&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h4&amp;gt;Files&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/base.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseConfig class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A single wrapper object for all database configuration options. Easier to pass around a single object to functions than an expanded list.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseModel class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parent class for all database wrapper classes. Provides most of the PDO compatible interface functions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatementModel class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parent class for all database prepared statements. Contains methods to actually perform queries and fetch data.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/pdo_mysql.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;Database_pdo_mysql class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_MySQL wrapper class. Extends the DatabaseModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatement_pdo_mysql&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_MySQL prepared statement wrapper class. Extends the DatabaseStatementModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/pdo_pgsql.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;Database_pdo_pgsql class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_PostgreSQL wrapper class. Extends the DatabaseModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatement_pdo_pgsql&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_PostgreSQL prepared statement wrapper class. Extends the DatabaseStatementModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/pdo_sqlite.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;Database_pdo_sqlite class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_SQLite wrapper class. Extends the DatabaseModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatement_pdo_sqlite class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_SQLite prepared statement wrapper class. Extends the DatabaseStatementModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;dbmanager.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseManager class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is not being used at the moment. It might be needed later for when the set of libraries would be incorporated in a framework. Leaving it for legacy purposes.&lt;/div&gt;</summary>
		<author><name>Abhishek Das</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Secure_Database_Library&amp;diff=156120</id>
		<title>Secure Database Library</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Secure_Database_Library&amp;diff=156120"/>
				<updated>2013-07-28T07:48:23Z</updated>
		
		<summary type="html">&lt;p&gt;Abhishek Das: First draft of Secure DB library wiki&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h4&amp;gt;Introduction&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This library is compatible with PHP PDO, but doesn't allow insecure operations (such as concatenation of values in any form) with it. We have enforced prepared statements for all data that is to be sent to the database engine, and will enforce whitelisting (via taint tracking) of all SQL parameters (such as limit and order by) where prepared data are not supported by the back-end engine.&lt;br /&gt;
A base library provides all these features abstracted from database engines, and derived libraries for each common databas engine.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h4&amp;gt;Usage&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Include the required database adapter wrapper class. For example, in case of PDO_MYSQL&lt;br /&gt;
{{{&lt;br /&gt;
    require ('phpsec/libs/db/adapter/pdo_mysql.php');&lt;br /&gt;
}}}&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Set up a database connection&lt;br /&gt;
{{{&lt;br /&gt;
    $a = new \phpsec\Database_pdo_mysql ('DATABASE_NAME', 'DATABASE_USER', 'DATABASE_PASSWORD');&lt;br /&gt;
}}}&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In case you already have a connection made, you can pass the object directly to the constructor&lt;br /&gt;
{{{&lt;br /&gt;
    $pdo = new \PDO (&amp;quot;mysql:dbname=DATABASE_NAME;host=localhost;&amp;quot;,'DATABASE_USER','DATABASE_PASSWORD');&lt;br /&gt;
    $a = new \phpsec\Database_pdo_mysql ($pdo);&lt;br /&gt;
}}}&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Execute queries. Parameters can be passed as arrays or expanded lists.&lt;br /&gt;
{{{&lt;br /&gt;
    $b = $a-&amp;gt;SQL(&amp;quot;SELECT * FROM users WHERE username = ? AND dob = ?&amp;quot;, &amp;quot;abc&amp;quot;, &amp;quot;09/10/1991&amp;quot;);&lt;br /&gt;
    $b = $a-&amp;gt;SQL(&amp;quot;SELECT * FROM users WHERE username = ? AND dob = ?&amp;quot;, array(&amp;quot;abc&amp;quot;,&amp;quot;09/10/1991&amp;quot;));&lt;br /&gt;
    $b = $a-&amp;gt;SQL(&amp;quot;SELECT * FROM users WHERE username = :username AND dob = :dob&amp;quot;, array(':username' =&amp;gt; 'abc',':dob' =&amp;gt; '09/10/1991'));&lt;br /&gt;
}}}&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h4&amp;gt;Files&amp;lt;/h4&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/base.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseConfig class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A single wrapper object for all database configuration options. Easier to pass around a single object to functions than an expanded list.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseModel class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parent class for all database wrapper classes. Provides most of the PDO compatible interface functions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatementModel class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parent class for all database prepared statements. Contains methods to actually perform queries and fetch data.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/pdo_mysql.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;Database_pdo_mysql class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_MySQL wrapper class. Extends the DatabaseModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatement_pdo_mysql&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_MySQL prepared statement wrapper class. Extends the DatabaseStatementModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/pdo_pgsql.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;Database_pdo_pgsql class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_PostgreSQL wrapper class. Extends the DatabaseModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatement_pdo_pgsql&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_PostgreSQL prepared statement wrapper class. Extends the DatabaseStatementModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;adapter/pdo_sqlite.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;Database_pdo_sqlite class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_SQLite wrapper class. Extends the DatabaseModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseStatement_pdo_sqlite class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PDO_SQLite prepared statement wrapper class. Extends the DatabaseStatementModel class.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h5&amp;gt;dbmanager.php&amp;lt;/h5&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h6&amp;gt;DatabaseManager class&amp;lt;/h6&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is not being used at the moment. It might be needed later for when the set of libraries would be incorporated in a framework. Leaving it for legacy purposes.&lt;/div&gt;</summary>
		<author><name>Abhishek Das</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=Projects/OWASP_PHP_Security_Project/Roadmap&amp;diff=156119</id>
		<title>Projects/OWASP PHP Security Project/Roadmap</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=Projects/OWASP_PHP_Security_Project/Roadmap&amp;diff=156119"/>
				<updated>2013-07-28T07:35:14Z</updated>
		
		<summary type="html">&lt;p&gt;Abhishek Das: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;OWASP PHP Security project’s objective is to secure PHP libraries, and provide a full featured framework of standalone libraries for secure web applications in PHP, releasing them both as separate decoupled libraries and as a whole secure web application framework; where sample configuration and usage can be observed. Many aspects of this project are already handled, and are either added or being added to OWASP.&lt;br /&gt;
&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== At present following libraries are supported (In alphabetical order): ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Access Control Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; RBAC Library.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Database Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[Secure Database Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Exception and Error Control Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Error Handler Library.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
'''HTTP Protocol Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[HTTP Request Handling Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[HTTP Response Handling Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Sensitive Date Protection Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[Secure Application Configuration and State Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Session Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[Session Management Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Time and Randomness Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[Time and Randomness Management Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
'''User Related Libraries:'''&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[User Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[User Management Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[Basic Password Management Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; [[Advanced Password Management Library]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Abhishek Das</name></author>	</entry>

	</feed>