Winseed was heavily inspired by a paper from Peter Gutmann which has the title "Software Generation of Practically Strong Random Numbers''. It is available through the homepage of the author (http://www.cs.auckland.ac.nz/~pgut001/) and also appeared in the proceedings of USENIX 98. The author describes in this paper an operating system independent approach for gathering cryptographic seed material from a computer system. The act of gathering seed material is called a randomness poll by the author.
He distinguishes between so called slow polls and fast polls. Winseed follows that concept, even though it does not implement all the features described in Gutman's paper. The most important difference is that Winseed is only concerned with gathering seed data from the machine, the randomness pool and mixing functionality described by Gutman is not implemented. Winseed makes use of all the entropy sources described in Gutman's paper, and in case of Windows NT also an additional one.
Winseed is implemented in C++ but the delivered makefile builds a DLL which offers an interface which can be called directly by C programs. Winseed can be built with version 5.0 and 6.0 of Microsoft's Visual C++ compiler. Earlier versions may work but this was not tested. It should not be too difficult to port the code and the makefile to other Windows compilers. Due to the implementation in form of a DLL, which uses the standard Windows calling convention, all compilers should be able to make use of the Winseed binary.
Winseed was developed under Windows 98 and Windows NT 4.0 but it also seems to run under Windows 95 and NT 3.51. In particular it worked in the following environments
Winseed is distributed under the terms of the GNU General Public License and therefore comes with full source code.