GithubHelp home page GithubHelp logo

rodan / cwiticald Goto Github PK

View Code? Open in Web Editor NEW
2.0 3.0 0.0 112 KB

an EGD-compatible server that distributes a random stream over TCP

License: GNU General Public License v3.0

Makefile 8.12% C 74.42% Perl 12.93% Shell 4.53%
linux linux-application

cwiticald's Introduction

Coverity Scan Build Status

cwiticald

an Entropy Gathering Daemon that provides a random stream generated by a USB TrueRNG device via TCP

 source:       https://github.com/rodan/cwiticald
 author:       Petre Rodan <[email protected]>
 license:      GNU GPLv3

the included entropy tests are written by Philipp Rumpf and are part of the rng-tools-6.14 package.

Description

cwiticald reads blocks of 2500 bytes from /dev/truerng, verifies their compliance against FIPS 140-1 and FIPS 140-2 tests, fills up a large buffer and provides it to clients that connect to it via TCPv4 or TCPv6.

an ekey-egd-linux service can be used as client to cwiticald :

ekey-egd-linux -H cwiticald-server -p 41300 -b 2 -r 10

Build requirements

dependencies include a gcc-based linux toolchain, together with the pthread and libevent-2.* libraries

Build and install

if you're using gentoo, a portage overlay is provided. a simple

emerge cwiticald

will compile and install the application.

for any other distribution, you can use the following commands:

cd ./src
make
install -m 755 ./cwiticald /usr/sbin/
install -m 644 ../doc/cwiticald.1 /usr/share/man/man1/

Usage

a manual is provided

man ./doc/cwiticald.1

SYNOPSIS

cwiticald [-hv] [-d, --device NAME] [-4, --ipv4 IP] [-6, --ipv6 IP] [-p, --port NUM] [-b, --buffer-size NUM] [-t, --trigger NUM]

Testing

the application can be stress-tested with the tools present in the tests directory. the following command will do it's best to continually deplete cwiticald's entropy buffer:

perl tests/sucker.pl host:port

the code itself is static-scanned by llvm's scan-build, cppcheck and coverity. Dynamic memory allocation in the PC applications is checked with valgrind.

cwiticald's People

Contributors

rodan avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.