Difference between revisions of "ESAPI Roadmap"

From OWASP
Jump to: navigation, search
m (Q3 2009)
 
(6 intermediate revisions by one user not shown)
Line 1: Line 1:
== Priorities ==
 
 
Focus on project charter...
 
Volunteers get to work on what they want...
 
 
 
 
== ESAPI 2.1 ==
 
== ESAPI 2.1 ==
  
Line 11: Line 5:
 
* Support for persist asymmetric key pairs in either Java or PKCS#12 key stores.
 
* Support for persist asymmetric key pairs in either Java or PKCS#12 key stores.
 
* Separate out crypto properties from rest of ESAPI.propertie. (i.e., Google Issue #48).
 
* Separate out crypto properties from rest of ESAPI.propertie. (i.e., Google Issue #48).
 
+
* Componentization
 
+
** Create ESAPI-Core project
 +
*** Deprecate the HttpUtilities interface and break up into logical utility classes
 +
*** Break interfaces out from the rest of the RI code to be considered *core*
 +
*** Redesign of the Locator to act more as a Service Registry and true Service Locator
 +
*** Redesign of the ESAPI Configuration ([https://code.google.com/p/owasp-esapi-java/issues/detail?id=93 Issue 93] and [https://code.google.com/p/owasp-esapi-java/issues/detail?id=86 Issue 86])
 +
*** Design and implement component registration into Service Registry
 +
** Break Reference Implementations into Components
 +
*** ESAPI-Logger-Log4J, ESAPI-Logger-Apache, ESAPI-Crypto-JavaEncryptor, ESAPI-IDS-AppSensor, etc.
 +
 
== ESAPI 3.0 ==
 
== ESAPI 3.0 ==
  
 
*  Add support for / integration with some key management system.
 
*  Add support for / integration with some key management system.
  
== Q4 2009 ==
+
== Future Plans ==
* Documentation - Installation Guide
+
* Reference Implementation - Encryption Refactor
+
* Ensure Thread-Safety
+
* Resolve Fortify and FindBugs issues
+
* Release ESAPI 2.0
+
 
+
 
+
== Other Improvements ==
+
  
 +
* Crypto
 +
** Provide tamper-evident logging using cryptographic primitives
 +
** File-based encryption
 
* Internationalization
 
* Internationalization
* ESAPI Scala Edition
 
* ESAPI PHP Edition
 
* ESAPI .NET Edition
 
 
 
* Documentation
 
* Documentation
 
** Guide to fixing specific vulnerabilities with ESAPI
 
** Guide to fixing specific vulnerabilities with ESAPI
 
** How to integrate into existing app
 
** How to integrate into existing app
** Marketing pages to "sell" ESAPI
 
 
** Threat Model for each control (assumptions and coverage)
 
** Threat Model for each control (assumptions and coverage)
 
* Filter to do intrusion detection and/or virtual patching (WAF?)
 
* Real example Struts application showing before and after security problems
 
* Easy and efficient dev environment and install w/ clear documentation
 
* Framework layer integration features (bridges?)
 
* Threat Model - SRA of encryption implementation
 
* Separate "day-to-day" calls from "admin-like" calls
 
  
 
__NOTOC__
 
__NOTOC__

Latest revision as of 14:52, 23 November 2010

ESAPI 2.1

  • Remove JavaEncryptor as singleton (required so we can use persistent asymmetric key pairs and create dsigs that persist across a JVM instance).
  • Add simpler means to use different cipher algorithms and/or key sizes. (Requires a major kludge today, which is not really thread-safe.
  • Support for persist asymmetric key pairs in either Java or PKCS#12 key stores.
  • Separate out crypto properties from rest of ESAPI.propertie. (i.e., Google Issue #48).
  • Componentization
    • Create ESAPI-Core project
      • Deprecate the HttpUtilities interface and break up into logical utility classes
      • Break interfaces out from the rest of the RI code to be considered *core*
      • Redesign of the Locator to act more as a Service Registry and true Service Locator
      • Redesign of the ESAPI Configuration (Issue 93 and Issue 86)
      • Design and implement component registration into Service Registry
    • Break Reference Implementations into Components
      • ESAPI-Logger-Log4J, ESAPI-Logger-Apache, ESAPI-Crypto-JavaEncryptor, ESAPI-IDS-AppSensor, etc.

ESAPI 3.0

  • Add support for / integration with some key management system.

Future Plans

  • Crypto
    • Provide tamper-evident logging using cryptographic primitives
    • File-based encryption
  • Internationalization
  • Documentation
    • Guide to fixing specific vulnerabilities with ESAPI
    • How to integrate into existing app
    • Threat Model for each control (assumptions and coverage)