The entropy-cl-server is a Windows based pipe server, that uses a duplex named pipe for distributing random bytes generated by two or more SwiftRNG devices (see ‘using clustered version of the entropy server on Windows’ for more information). With this, it is possible to use multiple SwiftRNG devices to additively increase the random number generation speed. Based on SwiftRNG Software API, the server will monitor the health of the cluster and will resize the cluster on-the-fly, allowing device swapping in real-time. Windows applications can concurrently access entropy-cl-server through provided SwiftRNG.dll. Applications written in languages such as C/C++, C#, Java can concurrently retrieve true random bytes generated by a cluster of SwiftRNG devices by connecting with the entropy-cl-server directly through the named pipe. For source code examples visit this address. Information on Entropy Server API can be found at this location.

The entropy-cl-server with four SwiftRNG devices can be started using the following command:

entropy-cl-server.exe -cs 4

Argument -cs indicates the preferred number of devices in a cluster.

For best performance, we recommend computer systems with multiple logical processors such as I7 or better.

By default, the entropy-cl-server can handle up to 10 concurrent connections. Beginning with SwiftRNG Software Kit version 4.5.3, the max number of concurrent connections can be increased using ‘-pi’ command line option. The following example demonstrates how to start the entropy-cl-server and allow up to 50 concurrent connections:

entropy-cl-server.exe -cs 4 -pi 50

The availability and performance of the entropy-cl-server can be verified with entropy-client-test utility using the following command:

entropy-client-test.exe

Pre-built versions of entropy-cl-server and entropy-client-test applications are already available in the latest release. Alternatively, the applications can be r e-built from sources with Visual Studio C++ 2015, Visual Studio 2017 or newer.