It could be argued with overwhelming evidence that every software development project is characterized by underfunding, understaffing, and unrealistic deadlines. This state is dictated by the principles of organizations. If it were otherwise, an increase in executive bonuses and a redoubled effort to over-promise would quickly restore the natural state for developers. The sad part is that those who build the present state of systems chaos impose a hardship on those who come after. Our heartfelt apology goes out to the reader.
By way of partial atonement, this document records the pitfalls that are foreseeable during the continued progress of the Pygar Project. We have here a description of several kinds of problems:
The sole purpose of Demo0P is the proof that the library of software components necessary for Blind Encrypted Data Matching is sufficient to its announced purpose. The demonstration data was deliberately kept ridiculously simple because of a potential customer who asked for this specific data (matching text fragments) and would not allow access to realistic data. Anyhow it works as is but there were shortcuts detailed below. This demo is also useful because it runs easily on a small laptop.
Demo0G is more ambitious as software because it will be suited to run over a Java EE server and is therefore suitable for demonstrating the enterprise application of the software process. Although demo0G should be more advanced than demo0P, its software design takes a step back from the purity of the state-machine design model in demo0G. Furthermore, it replaces a shortcut in demo0G with what has become a workaround in demo0P due to apparent difficulties in the cryptographic libraries supplied with Java SE 6.0.
The software for both demonstrations leave room for further improvement!