summaryrefslogtreecommitdiff
path: root/doc/icastats.1
blob: cbd0b5d65b480de76964d9be75b4737fa2d9b859 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
.\" icastats man page source
.\"
.\" use
.\"   groff -man -Tutf8 icastats.1
.\" or
.\"   nroff -man icastats.1
.\" to process this source
.\"
.TH ICASTATS 1 2013-12-06 IBM "icaststats user manual"
.SH NAME
icastats \- display statistic data for the libica cryptographic functions
.SH SYNOPSIS
.B icastats
[-v | --version] [-h | --help] [--reset-all | -R] [--reset | -r]
[--delete-all |-D] [--delete | -d] [--all | -A] [--summary | -S] [[-U |
--user] <username>]
.SH DESCRIPTION
.B icastats
displays statistic data about the usage of cryptographic functions provided by
libica.
.br
Libica is a cryptographic library supporting SHA, RSA, DES and AES in
different modes of operations. The invocation of each call to all the
cryptographic functions is tracked with individual counters which can be
displayed and maintained with icastats.
.br
Here is a sample output:
.P
.nf
 function     |       # hardware      |      # software
--------------+-----------------------+-------------------------
              |     ENC   CRYPT   DEC |      ENC  CRYPT    DEC
--------------|-----------------------|-------------------------
        SHA-1 |             0         |             0
      SHA-224 |             0         |             0
      SHA-256 |             0         |             0
      SHA-384 |             0         |             0
      SHA-512 |             0         |             0
        GHASH |             0         |             0
        P_RNG |             0         |             0
 DRBG-SHA-512 |             0         |             0
       RSA-ME |             0         |             0
      RSA-CRT |             0         |             0
      DES ECB |       0             0 |       0            0
      DES CBC |       0             0 |       0            0
      DES OFB |       0             0 |       0            0
      DES CFB |       0             0 |       0            0
      DES CTR |       0             0 |       0            0
     DES CMAC |       0             0 |       0            0
     3DES ECB |       0             0 |       0            0
     3DES CBC |       0             0 |       0            0
     3DES OFB |       0             0 |       0            0
     3DES CFB |       0             0 |       0            0
     3DES CTR |       0             0 |       0            0
    3DES CMAC |       0             0 |       0            0
      AES ECB |       0             0 |       0            0
      AES CBC |       0             0 |       0            0
      AES OFB |       0             0 |       0            0
      AES CFB |       0             0 |       0            0
      AES CTR |       0             0 |       0            0
     AES CMAC |       0             0 |       0            0
      AES XTS |       0             0 |       0            0
.fi
.P
For each cryptographic function the table shows the number of invocations
where hardware support was involved or the libica fall back implementation
in software was used. For the ciphering methods the invocation counter is
further divided into encrypt and decrypt operation counter values.
.P
All the counter values are stored and maintained in one shared memory page
for each user. This memory area is created automatically with the first run
of icastats and persists until it is explicitly removed (see the -d option)
or system shut down. This also means that the statistical data shown with
icastats is on a per user base and only the root user is able to see and
maintain the collection of statistic data from libica at system scope.
.P
Newer operating systems might remove these shared memory segments
after the user has logged out from the system (systemd cleanup action).
In this case all collected statistic data are gone.
To prevent the statistic data from being removed you can configure the
systemd to keep all shared memory segments after session exit by
enabling the "RemoveIPC=no" paramater in "/etc/systemd/logind.conf".
Alternatively you can setup the systemd user manager to enable user
lingering by typing "loginctl enable-linger <user>".

.SH OPTIONS
.IP "-v or --version"
show libica version and copyright
.IP "-h or --help"
display this help and exit
.IP "-R or --reset-all"
reset the statistic data for each user that has a shared memory segment to
zero (only root user)
.IP "-r or --reset"
reset the statistic data for the current user to zero
.IP "-D or --delete-all"
delete all shared memory segments from all users who have an icastats shared
memory segment (only root user)
.IP "-d or --delete"
delete the libica shared memory area for the current user
.IP "-A or --all"
show libica statistic data for each user in the system where a shared
memory area exists in multiple tables (only root user)
.IP "-S or --summary"
show libica statistic data for each user in the system where a shared
memory area exists in one table accumulating all the per user counter
values (only root user)
.IP "-U <username> or --user <username>"
show statistic values from the given user (only root user)
.SH FILES
.nf
/shm/dev/icastats_<userid>
.fi
.SH RETURN VALUE
.IP 1
unsupported or unknown argument, argument which requires root privileges
given but not root user, failures at creating or attaching to the shared
memory area ...
.IP 0
normal and sucessful program execution
.SH SEE ALSO
icainfo (1)