Smartcard Filesystem (SCFS) Version 2
Description
Smartcard Filesystem (SCFS) allows you to mount ISO 7816-4 smartcards
into UNIX file system. We have reimplemented it as a NFS V2 daemon
for better portability. This version is called SCFS_V2.
SCFS_V2 has been tested on Linux 2.2 and OpenBSD-2.7. (pwd does not
work on OpenBSD). It should run on any UNIX that supports
NFS (which most UNIX systems do). Supported
cards are Schlumberger's Cyberflex
Access, Multiflex, Payflex, and G&D STARCOS.
Download
Dependencies
Installation
- (If you are in CITI, all the software is in
/afs/citi.umich.edu/projects/smartcards/src/scfs_v2/i386_obsd27
or
/afs/citi.umich.edu/projects/smartcards/src/scfs_v2/i386_linux2
. So you can skip this section.)
- Install the sc7816 library in /usr/local/lib
- Compilation - Linux 2
- uncomment Linux part of Makefile
- remove -traditional
- make cfs. this will fail somewhere.
- in nfsproto_svr.c and admproto_svr.c, change
bool_t (*xdr_argument)(), (*xdr_result)();
to
bool_t (*_xdr_argument)(), (*_xdr_result)();
- then make cfs again.
- Compilation - OpenBSD 2.7
- uncomment OpenBSD part of Makefile
- make admproto_clnt.c
- make sure to include this line in make_with_bad_rpcgen
-Dadmproc_verify_2_svc=admproc_verify_2 \
- sh make_with_bad_rpcgen cfs
- Compilation - Solaris 2
- uncomment Solaris 2.3 part of Makefile
- make cfs
Usage
- mkdir /null
- chmod 0 /null
- mkdir /crypt
- add
/null localhost
in /etc/exports.
- Starting SCFS_V2 - Linux 2
- /usr/sbin/rpc.mountd
- cfsd
- mount -o port=3049,intr,rsize=16384,wsize=16384 localhost:/null /crypt
- cattach
- Starting SCFS_V2 - OpenBSD 2.7
- compile kernel with NFSCLIENT and NFSSERVER
- run portmapper
- run mountd
- run cfsd
- mount -o port=3049,nfsv2,intr localhost:/null /crypt
- cattach
- Use UNIX filesystem commands to access files in a smartcard. In
addition, use the following SCFS_V2 specific commands.
- sformat to format a smartcard.
- screat to create a file.
- smkdir to create a directory.
- sverify to verify a key (e.g., AUT0).
Comments, etc
Send them to
smartcards@umich.edu