Some tools to play with GnuPG’s smartcard daemon and OpenPGP smartcards.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Damien Goutte-Gattat 890a132445 Decrement loop counter only when adding entropy 8 years ago
lib Initial commit 8 years ago
m4 Initial commit 8 years ago
man Add man page and README file 8 years ago
src Decrement loop counter only when adding entropy 8 years ago
.gitignore Initial commit 8 years ago
AUTHORS Distribute AUTHORS and COPYING files 8 years ago
COPYING Distribute AUTHORS and COPYING files 8 years ago
Makefile.am Add man page and README file 8 years ago
README Add man page and README file 8 years ago
configure.ac Add man page and README file 8 years ago

README

scdrand - Extract random numbers from a smartcard
=================================================

Description
-----------
scdrand obtains up to 256 bytes of random data from a ISO7816-compliant
smartcard and adds them to the kernel entropy pool.


Principles
----------
scdrand uses scdaemon, the smartcard daemon of the GnuPG project, to
send a GET CHALLENGE command to a smartcard. As per ISO 7816-4, the
smartcard replies with random bytes, which scdrand then sends to the
Linux kernel entropy pool through the RNDADDENTROPY ioctl call on
/dev/random.

Since that call requires root privileges, scdrand is installed with the
setuid bit set. To mitigate risks associated with running as root, the
program forks itself at startup and only the child retains the root
privileges needed to write to /dev/random. The parent process, in charge
of communicating with the smartcard, then runs with the privileges on
the calling user.


Copying
-------
scdrand is distributed under the terms of the GNU General Public
License, version 3 or higher. The full license is included in the
COPYING file of the source distribution.


Homepage and contact
--------------------
The project is located at <http://www.incenp.org/dvlpt/scdrand.html>.
The latest source code is available in a Git repository at
<git://git.incenp.org/scdrand.git> and may also be browsed at
<http://www.incenp.org/gitweb/?p=scdrand.git;a=summary>.

The author may be contact at the following address:
Damien Goutte-Gattat <dgouttegattat@incenp.org>