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
|
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.38.2.
.TH CPABE-KEYGEN "1" "March 2011" "SRI International" "User Commands"
.SH NAME
cpabe-keygen \- manual page for cpabe-keygen 0.11
.SH SYNOPSIS
.B cpabe-keygen
[\fIOPTION \fR...] \fIPUB_KEY MASTER_KEY ATTR \fR[\fIATTR \fR...]
.SH DESCRIPTION
Generate a key with the listed attributes using public key PUB_KEY and
master secret key MASTER_KEY. Output will be written to the file
"priv_key" unless the \fB\-o\fR option is specified.
.PP
Attributes come in two forms: non\-numerical and numerical. Non\-numerical
attributes are simply any string of letters, digits, and underscores
beginning with a letter.
.PP
Numerical attributes are specified as `attr = N', where N is a non\-negative
integer less than 2^64 and `attr' is another string. The whitespace around
the `=' is optional. One may specify an explicit length of k bits for the
integer by giving `attr = N#k'. Note that any comparisons in a policy given
to cpabe\-enc(1) must then specify the same number of bits, e.g.,
`attr > 5#12'.
.PP
The keywords `and', `or', and `of', are reserved for the policy language
of cpabe\-enc (1) and may not be used for either type of attribute.
.PP
Mandatory arguments to long options are mandatory for short options too.
.TP
\fB\-h\fR, \fB\-\-help\fR
print this message
.TP
\fB\-v\fR, \fB\-\-version\fR
print version information
.TP
\fB\-o\fR, \fB\-\-output\fR FILE
write resulting key to FILE
.TP
\fB\-d\fR, \fB\-\-deterministic\fR
use deterministic "random" numbers
(only for debugging)
.PP
Parts Copyright (C) 2006, 2007 John Bethencourt and SRI International.
This is free software released under the GPL, see the source for copying
conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE.
.SH EXAMPLES
Generating a key for a new employee Sara:
$ cpabe-keygen -o sara_priv_key pub_key master_key \\
.br
sysadmin it_department
Generating a key with more complicated attributes:
$ cpabe-keygen -o kevin_priv_key pub_key master_key \\
.br
business_staff strategy_team 'executive_level = 7#4' \\
.br
office=2362 'hire_date = '`date +%s`
Note the usage of date (1) as a convenient way of storing a time in a
numerical attribute.
.SH "REPORTING BUGS"
Report bugs to John Bethencourt <bethenco@cs.berkeley.edu>.
.SH "SEE ALSO"
.BR cpabe-setup (1),
.BR cpabe-enc (1),
.BR cpabe-dec (1)
|