OLD | NEW |
| (Empty) |
1 <html> | |
2 <head> | |
3 <title>Trevor Perrin</title> | |
4 </head> | |
5 <body> | |
6 <H1>Trevor Perrin</H1> | |
7 <b>Email:</b> trevp at trevp.net<br> | |
8 <b>PGP Key:</b> <a href="pgp/key.asc">8035 47B9 D1F9 C148 619A 7948 D8C0 0F11 2
F2F F9E3</a> | |
9 <p>I'm a programmer, here are some projects I'm involved in. | |
10 | |
11 <p>My current interest is cryptographic key management and alternatives to PKI. | |
12 <p> | |
13 | |
14 <a name="cryptoID"> | |
15 <H2><a href="cryptoID/">CryptoIDs</a></H2> | |
16 <b>Paper 1:</b> Public Key Distribution through "cryptoIDs" (<a href="cryptoID/c
ryptoID.pdf">.pdf</a>, <a href="cryptoID/cryptoID.html">.html</a>) <i>(presented
at <a href="http://www.nspw.org/2003/">NSPW 2003</a>)</i><br> | |
17 <b>Paper 2:</b> The CryptoID Key Management Protocols (<a href="cryptoID/cryptoI
D2.pdf">.pdf</a>) <i>(the best introduction)</i><br> | |
18 <b>Schema:</b> XML Schema for <certChain> (<a href="cryptoID/cryptoID.xsd
">.xsd</a>)<br> | |
19 <b>Code:</b> CryptoIDlib Python and Java library and command-line tool v0.1.8 (
<a href="cryptoID/cryptoIDlib-0.1.8.zip">.zip</a>, <a href="cryptoID/readme.txt"
>readme.txt</a>) | |
20 <p>PKI isn't working for person-to-person communications. Few people use | |
21 secure email, voice, instant-messaging, or anything else. | |
22 <p>CryptoIDs are an alternative. The idea is for people to exchange small, | |
23 user-friendly fingerprints (aka "cryptoIDs") like 'cyhf4.9ajd8.kbdx4.rk98c'. | |
24 These could be passed around and stored in address books as if they were phone | |
25 numbers or postal addresses. | |
26 <p>The cryptoID for each user would correspond to that user's <i>root key</i>. | |
27 The user would keep his root key in a safe place - his employer or | |
28 some commercial service might hold it for him. The rootholder would operate | |
29 an online service which would issue short-lived <i>subkey certificates</i> or <i
>validation signatures</i> to the user. | |
30 <p>CryptoIDs, then, are about combining <i>fingerprint-based public-key distribu
tion</i> with | |
31 <i>certificate-based private-key management</i>. The first paper above presents
the | |
32 cryptoID fingerprint and certificate formats, which are designed specifically fo
r | |
33 this. CryptoIDlib lets you test-drive these formats. | |
34 <p>The second paper presents private-key management protocols for use with onlin
e servers. | |
35 Support for these is being added to cryptoIDlib. | |
36 | |
37 <a name="tls_lite"> | |
38 <H2><a href="tls_lite/">TLS Lite</a></H2> | |
39 <b>Code:</b> tls_lite python library v0.1.8 (<a href="tls_lite/tls_lite-0.1.8.zi
p">.zip</a>, <a href="tls_lite/readme.txt">readme.txt</a>)<br> | |
40 <p> | |
41 TLS Lite is a free python library that implements SSL 3.0 and <a href="http://ww
w.ietf.org/rfc/rfc2246.txt">TLS 1.0</a>. | |
42 TLS Lite supports non-traditional authentication methods such as <a href="http:/
/trevp.net/tls_srp/index.html">SRP</a>, | |
43 <a href="http://www.ietf.org/internet-drafts/draft-ietf-tls-sharedkeys-02.txt">s
hared keys</a>, | |
44 and <a href="http://trevp.net/cryptoID/index.html">cryptoIDs</a>, in addition to
X.509 certificates. TLS Lite is pure | |
45 <a href="http://www.python.org">Python</a>, however it can access <a href="http:
//www.openssl.org/">OpenSSL</a> or | |
46 <a href="http://www.cs.auckland.ac.nz/~pgut001/cryptlib/">cryptlib</a> for faste
r crypto operations. | |
47 | |
48 <a name="tlssrp"> | |
49 <H2><a href="tls_srp/">TLS/SRP</a></H2> | |
50 <b>Internet-Draft:</b> Using SRP for TLS Authentication (<a href="tls_srp/draft
-ietf-tls-srp-06.txt">.txt</a>, <a href="tls_srp/draft-ietf-tls-srp-06.html">.ht
ml</a>) | |
51 <p><a href="http://srp.stanford.edu">SRP</a> is the best way to do password auth
entication | |
52 across a network. <a href="http://www.ietf.org/html.charters/tls-charter.html">
TLS</a> (aka SSL v3.1) | |
53 is the best way to do channel security. What could go better together? | |
54 <p>This draft modifies the TLS handshake to use SRP. This combination of | |
55 password-based mutual authentication and the TLS record layer is | |
56 ideal for protecting protocols like POP3 and HTTP. | |
57 | |
58 <a name="dss"> | |
59 <H2>DSS</H2> | |
60 <b>Requirements:</b> DSS Use Case Requirements Analysis (<a href="dss/oasis-dss
-1.0-requirements-wd-12.pdf">.pdf</a>, <a href="dss/oasis-dss-1.0-requirements-w
d-12.doc">.doc</a>)<br> | |
61 <b>Specification Working Draft:</b> Digital Signature Service Core Protocol and
Elements (<a href="dss/oasis-dss-1.0-core-spec-wd-10.pdf">.pdf</a>, <a href="dss
/oasis-dss-1.0-core-spec-wd-10.doc">.doc</a>)<br> | |
62 <b>Schema Working Draft:</b> oasis-dss-1.0-core-schema-wd-10 (<a href="dss/oasis
-dss-1.0-core-schema-wd-10.xsd">.xsd</a>)<br> | |
63 <b>Somewhat Related Paper:</b> Delegated Cryptography, Online Trusted Third Part
ies, and PKI | |
64 (<a href="delegatedCrypto/delegatedCrypto.pdf">.pdf</a>, <a href="delegatedCrypt
o/delegatedCrypto.html">.html</a>)<br> | |
65 <i>(presented at the <a href="http://www.cs.dartmouth.edu/~pki02/">1st Annual PK
I Research Workshop</a>)</i> | |
66 <p>The <a href="http://www.oasis-open.org/">OASIS</a> <a href="http://www.oasis-
open.org/committees/dss/">Digital Signature Service Technical Committee</a> | |
67 is designing protocols for signing, verifying, and | |
68 time-stamping of XML documents and other data. The idea is to perform these | |
69 operations on servers, thus freeing clients from having to manage private | |
70 keys, calculate certificate paths, and so on. | |
71 <p>Also listed is a paper arguing for the server-based approach vs. client-side
PKI. | |
72 | |
73 <a name="cryptoURL"> | |
74 <H2>CryptoURLs</H2> | |
75 <b>Draft of potential Internet-Draft:</b> The "crypto" URL scheme (<a href="cryp
toURL/draft-ietf-cryptoURL-01.txt">.txt</a>, <a href="cryptoURL/draft-ietf-crypt
oURL-01.html">.html</a>)<br> | |
76 <p> | |
77 CryptoURLs add "crypto metadata" like content hashes and key fingerprints to nor
mal URLs. | |
78 The resulting URLs are <a href="http://zooko.com/distnames.html">self-authentica
ting</a>, | |
79 like <a href="http://citeseer.nj.nec.com/mazieres99separating.html">SFS file nam
es</a> or | |
80 <a href="http://research.microsoft.com/users/tuomaura/CGA/">Cryptographically Ge
nerated Addresses</a>. | |
81 These could be useful in: | |
82 <dir> | |
83 <LI>web pages: | |
84 <dir> | |
85 <LI>a page could link to software binaries and include their hash | |
86 <LI>a portal could provide secure introductions to a community of sites | |
87 </dir> | |
88 <LI>XML documents (e.g. extending an <a href="http://www.w3.org/TR/xmldsig-core/
">XML-DSIG</a> over external references) | |
89 <LI>protocols (e.g. HTTP Redirects or LDAP Referrals) | |
90 <LI>software configuration (you could configure a client with the address and fi
ngerprint of a server in one step) | |
91 </dir> | |
92 <a href="http://www.waterken.com/dev/YURL/">YURLs</a> are another approach to se
lf-authenticating URLs. | |
93 | |
94 <a name="cryptlibConverter"> | |
95 <H2><a href="cryptlibConverter/">CryptlibConverter</a></H2> | |
96 <b>Code:</b> Version 5 for cryptlib 3.1 (<a href="cryptlibConverter/cryptlibCon
verter5_cl31.zip">.zip</a>, <a href="cryptlibConverter/readme.txt">readme.txt</a
>) | |
97 <p>This is a python script that generates java, python, and C# wrappers for | |
98 <a href="http://www.cs.auckland.ac.nz/~pgut001/cryptlib/">cryptlib</a>. A set o
f wrappers for | |
99 cryptlib 3.1 is included in the .zip file. The python and C# wrappers are also
included in the latest cryptlib distribution. | |
100 <br> | |
101 <a name="cryptoID"> | |
102 <H2><a href="cryptoID/">CryptoIDs</a></H2> | |
103 <b>Paper 1:</b> Public Key Distribution through "cryptoIDs" (<a href="cryptoID/c
ryptoID.pdf">.pdf</a>, <a href="cryptoID/cryptoID.html">.html</a>) <i>(presented
at <a href="http://www.nspw.org/2003/">NSPW 2003</a>)</i><br> | |
104 <b>Paper 2:</b> The CryptoID Key Management Protocols (<a href="cryptoID/cryptoI
D2.pdf">.pdf</a>) <i>(the best introduction)</i><br> | |
105 <b>Schema:</b> XML Schema for <certChain> (<a href="cryptoID/cryptoID.xsd
">.xsd</a>)<br> | |
106 <b>Code:</b> CryptoIDlib Python and Java library and command-line tool v0.1.8 (
<a href="cryptoID/cryptoIDlib-0.1.8.zip">.zip</a>, <a href="cryptoID/readme.txt"
>readme.txt</a>) | |
107 <p>PKI isn't working for person-to-person communications. Few people use | |
108 secure email, voice, instant-messaging, or anything else. | |
109 <p>CryptoIDs are an alternative. The idea is for people to exchange small, | |
110 user-friendly fingerprints (aka "cryptoIDs") like 'cyhf4.9ajd8.kbdx4.rk98c'. | |
111 These could be passed around and stored in address books as if they were phone | |
112 numbers or postal addresses. | |
113 <p>The cryptoID for each user would correspond to that user's <i>root key</i>. | |
114 The user would keep his root key in a safe place - his employer or | |
115 some commercial service might hold it for him. The rootholder would operate | |
116 an online service which would issue short-lived <i>subkey certificates</i> or <i
>validation signatures</i> to the user. | |
117 <p>CryptoIDs, then, are about combining <i>fingerprint-based public-key distribu
tion</i> with | |
118 <i>certificate-based private-key management</i>. The first paper above presents
the | |
119 cryptoID fingerprint and certificate formats, which are designed specifically fo
r | |
120 this. CryptoIDlib lets you test-drive these formats. | |
121 <p>The second paper presents private-key management protocols for use with onlin
e servers. | |
122 Support for these is being added to cryptoIDlib. | |
123 | |
124 <a name="tls_lite"> | |
125 <H2><a href="tls_lite/">TLS Lite</a></H2> | |
126 <b>Code:</b> tls_lite python library v0.1.8 (<a href="tls_lite/tls_lite-0.1.8.zi
p">.zip</a>, <a href="tls_lite/readme.txt">readme.txt</a>)<br> | |
127 <p> | |
128 TLS Lite is a free python library that implements SSL 3.0 and <a href="http://ww
w.ietf.org/rfc/rfc2246.txt">TLS 1.0</a>. | |
129 TLS Lite supports non-traditional authentication methods such as <a href="http:/
/trevp.net/tls_srp/index.html">SRP</a>, | |
130 <a href="http://www.ietf.org/internet-drafts/draft-ietf-tls-sharedkeys-02.txt">s
hared keys</a>, | |
131 and <a href="http://trevp.net/cryptoID/index.html">cryptoIDs</a>, in addition to
X.509 certificates. TLS Lite is pure | |
132 <a href="http://www.python.org">Python</a>, however it can access <a href="http:
//www.openssl.org/">OpenSSL</a> or | |
133 <a href="http://www.cs.auckland.ac.nz/~pgut001/cryptlib/">cryptlib</a> for faste
r crypto operations. | |
134 | |
135 <a name="tlssrp"> | |
136 <H2><a href="tls_srp/">TLS/SRP</a></H2> | |
137 <b>Internet-Draft:</b> Using SRP for TLS Authentication (<a href="tls_srp/draft
-ietf-tls-srp-06.txt">.txt</a>, <a href="tls_srp/draft-ietf-tls-srp-06.html">.ht
ml</a>) | |
138 <p><a href="http://srp.stanford.edu">SRP</a> is the best way to do password auth
entication | |
139 across a network. <a href="http://www.ietf.org/html.charters/tls-charter.html">
TLS</a> (aka SSL v3.1) | |
140 is the best way to do channel security. What could go better together? | |
141 <p>This draft modifies the TLS handshake to use SRP. This combination of | |
142 password-based mutual authentication and the TLS record layer is | |
143 ideal for protecting protocols like POP3 and HTTP. | |
144 | |
145 <a name="dss"> | |
146 <H2>DSS</H2> | |
147 <b>Requirements:</b> DSS Use Case Requirements Analysis (<a href="dss/oasis-dss
-1.0-requirements-wd-12.pdf">.pdf</a>, <a href="dss/oasis-dss-1.0-requirements-w
d-12.doc">.doc</a>)<br> | |
148 <b>Specification Working Draft:</b> Digital Signature Service Core Protocol and
Elements (<a href="dss/oasis-dss-1.0-core-spec-wd-10.pdf">.pdf</a>, <a href="dss
/oasis-dss-1.0-core-spec-wd-10.doc">.doc</a>)<br> | |
149 <b>Schema Working Draft:</b> oasis-dss-1.0-core-schema-wd-10 (<a href="dss/oasis
-dss-1.0-core-schema-wd-10.xsd">.xsd</a>)<br> | |
150 <b>Somewhat Related Paper:</b> Delegated Cryptography, Online Trusted Third Part
ies, and PKI | |
151 (<a href="delegatedCrypto/delegatedCrypto.pdf">.pdf</a>, <a href="delegatedCrypt
o/delegatedCrypto.html">.html</a>)<br> | |
152 <i>(presented at the <a href="http://www.cs.dartmouth.edu/~pki02/">1st Annual PK
I Research Workshop</a>)</i> | |
153 <p>The <a href="http://www.oasis-open.org/">OASIS</a> <a href="http://www.oasis-
open.org/committees/dss/">Digital Signature Service Technical Committee</a> | |
154 is designing protocols for signing, verifying, and | |
155 time-stamping of XML documents and other data. The idea is to perform these | |
156 operations on servers, thus freeing clients from having to manage private | |
157 keys, calculate certificate paths, and so on. | |
158 <p>Also listed is a paper arguing for the server-based approach vs. client-side
PKI. | |
159 | |
160 <a name="cryptoURL"> | |
161 <H2>CryptoURLs</H2> | |
162 <b>Draft of potential Internet-Draft:</b> The "crypto" URL scheme (<a href="cryp
toURL/draft-ietf-cryptoURL-01.txt">.txt</a>, <a href="cryptoURL/draft-ietf-crypt
oURL-01.html">.html</a>)<br> | |
163 <p> | |
164 CryptoURLs add "crypto metadata" like content hashes and key fingerprints to nor
mal URLs. | |
165 The resulting URLs are <a href="http://zooko.com/distnames.html">self-authentica
ting</a>, | |
166 like <a href="http://citeseer.nj.nec.com/mazieres99separating.html">SFS file nam
es</a> or | |
167 <a href="http://research.microsoft.com/users/tuomaura/CGA/">Cryptographically Ge
nerated Addresses</a>. | |
168 These could be useful in: | |
169 <dir> | |
170 <LI>web pages: | |
171 <dir> | |
172 <LI>a page could link to software binaries and include their hash | |
173 <LI>a portal could provide secure introductions to a community of sites | |
174 </dir> | |
175 <LI>XML documents (e.g. extending an <a href="http://www.w3.org/TR/xmldsig-core/
">XML-DSIG</a> over external references) | |
176 <LI>protocols (e.g. HTTP Redirects or LDAP Referrals) | |
177 <LI>software configuration (you could configure a client with the address and fi
ngerprint of a server in one step) | |
178 </dir> | |
179 <a href="http://www.waterken.com/dev/YURL/">YURLs</a> are another approach to se
lf-authenticating URLs. | |
180 | |
181 <a name="cryptlibConverter"> | |
182 <H2><a href="cryptlibConverter/">CryptlibConverter</a></H2> | |
183 <b>Code:</b> Version 5 for cryptlib 3.1 (<a href="cryptlibConverter/cryptlibCon
verter5_cl31.zip">.zip</a>, <a href="cryptlibConverter/readme.txt">readme.txt</a
>) | |
184 <p>This is a python script that generates java, python, and C# wrappers for | |
185 <a href="http://www.cs.auckland.ac.nz/~pgut001/cryptlib/">cryptlib</a>. A set o
f wrappers for | |
186 cryptlib 3.1 is included in the .zip file. The python and C# wrappers are also
included in the latest cryptlib distribution. | |
187 <br> | |
188 <a name="cryptoID"> | |
189 <H2><a href="cryptoID/">CryptoIDs</a></H2> | |
190 <b>Paper 1:</b> Public Key Distribution through "cryptoIDs" (<a href="cryptoID/c
ryptoID.pdf">.pdf</a>, <a href="cryptoID/cryptoID.html">.html</a>) <i>(presented
at <a href="http://www.nspw.org/2003/">NSPW 2003</a>)</i><br> | |
191 <b>Paper 2:</b> The CryptoID Key Management Protocols (<a href="cryptoID/cryptoI
D2.pdf">.pdf</a>) <i>(the best introduction)</i><br> | |
192 <b>Schema:</b> XML Schema for <certChain> (<a href="cryptoID/cryptoID.xsd
">.xsd</a>)<br> | |
193 <b>Code:</b> CryptoIDlib Python and Java library and command-line tool v0.1.8 (
<a href="cryptoID/cryptoIDlib-0.1.8.zip">.zip</a>, <a href="cryptoID/readme.txt"
>readme.txt</a>) | |
194 <p>PKI isn't working for person-to-person communications. Few people use | |
195 secure email, voice, instant-messaging, or anything else. | |
196 <p>CryptoIDs are an alternative. The idea is for people to exchange small, | |
197 user-friendly fingerprints (aka "cryptoIDs") like 'cyhf4.9ajd8.kbdx4.rk98c'. | |
198 These could be passed around and stored in address books as if they were phone | |
199 numbers or postal addresses. | |
200 <p>The cryptoID for each user would correspond to that user's <i>root key</i>. | |
201 The user would keep his root key in a safe place - his employer or | |
202 some commercial service might hold it for him. The rootholder would operate | |
203 an online service which would issue short-lived <i>subkey certificates</i> or <i
>validation signatures</i> to the user. | |
204 <p>CryptoIDs, then, are about combining <i>fingerprint-based public-key distribu
tion</i> with | |
205 <i>certificate-based private-key management</i>. The first paper above presents
the | |
206 cryptoID fingerprint and certificate formats, which are designed specifically fo
r | |
207 this. CryptoIDlib lets you test-drive these formats. | |
208 <p>The second paper presents private-key management protocols for use with onlin
e servers. | |
209 Support for these is being added to cryptoIDlib. | |
210 | |
211 <a name="tls_lite"> | |
212 <H2><a href="tls_lite/">TLS Lite</a></H2> | |
213 <b>Code:</b> tls_lite python library v0.1.8 (<a href="tls_lite/tls_lite-0.1.8.zi
p">.zip</a>, <a href="tls_lite/readme.txt">readme.txt</a>)<br> | |
214 <p> | |
215 TLS Lite is a free python library that implements SSL 3.0 and <a href="http://ww
w.ietf.org/rfc/rfc2246.txt">TLS 1.0</a>. | |
216 TLS Lite supports non-traditional authentication methods such as <a href="http:/
/trevp.net/tls_srp/index.html">SRP</a>, | |
217 <a href="http://www.ietf.org/internet-drafts/draft-ietf-tls-sharedkeys-02.txt">s
hared keys</a>, | |
218 and <a href="http://trevp.net/cryptoID/index.html">cryptoIDs</a>, in addition to
X.509 certificates. TLS Lite is pure | |
219 <a href="http://www.python.org">Python</a>, however it can access <a href="http:
//www.openssl.org/">OpenSSL</a> or | |
220 <a href="http://www.cs.auckland.ac.nz/~pgut001/cryptlib/">cryptlib</a> for faste
r crypto operations. | |
221 | |
222 <a name="tlssrp"> | |
223 <H2><a href="tls_srp/">TLS/SRP</a></H2> | |
224 <b>Internet-Draft:</b> Using SRP for TLS Authentication (<a href="tls_srp/draft
-ietf-tls-srp-06.txt">.txt</a>, <a href="tls_srp/draft-ietf-tls-srp-06.html">.ht
ml</a>) | |
225 <p><a href="http://srp.stanford.edu">SRP</a> is the best way to do password auth
entication | |
226 across a network. <a href="http://www.ietf.org/html.charters/tls-charter.html">
TLS</a> (aka SSL v3.1) | |
227 is the best way to do channel security. What could go better together? | |
228 <p>This draft modifies the TLS handshake to use SRP. This combination of | |
229 password-based mutual authentication and the TLS record layer is | |
230 ideal for protecting protocols like POP3 and HTTP. | |
231 | |
232 <a name="dss"> | |
233 <H2>DSS</H2> | |
234 <b>Requirements:</b> DSS Use Case Requirements Analysis (<a href="dss/oasis-dss
-1.0-requirements-wd-12.pdf">.pdf</a>, <a href="dss/oasis-dss-1.0-requirements-w
d-12.doc">.doc</a>)<br> | |
235 <b>Specification Working Draft:</b> Digital Signature Service Core Protocol and
Elements (<a href="dss/oasis-dss-1.0-core-spec-wd-10.pdf">.pdf</a>, <a href="dss
/oasis-dss-1.0-core-spec-wd-10.doc">.doc</a>)<br> | |
236 <b>Schema Working Draft:</b> oasis-dss-1.0-core-schema-wd-10 (<a href="dss/oasis
-dss-1.0-core-schema-wd-10.xsd">.xsd</a>)<br> | |
237 <b>Somewhat Related Paper:</b> Delegated Cryptography, Online Trusted Third Part
ies, and PKI | |
238 (<a href="delegatedCrypto/delegatedCrypto.pdf">.pdf</a>, <a href="delegatedCrypt
o/delegatedCrypto.html">.html</a>)<br> | |
239 <i>(presented at the <a href="http://www.cs.dartmouth.edu/~pki02/">1st Annual PK
I Research Workshop</a>)</i> | |
240 <p>The <a href="http://www.oasis-open.org/">OASIS</a> <a href="http://www.oasis-
open.org/committees/dss/">Digital Signature Service Technical Committee</a> | |
241 is designing protocols for signing, verifying, and | |
242 time-stamping of XML documents and other data. The idea is to perform these | |
243 operations on servers, thus freeing clients from having to manage private | |
244 keys, calculate certificate paths, and so on. | |
245 <p>Also listed is a paper arguing for the server-based approach vs. client-side
PKI. | |
246 | |
247 <a name="cryptoURL"> | |
248 <H2>CryptoURLs</H2> | |
249 <b>Draft of potential Internet-Draft:</b> The "crypto" URL scheme (<a href="cryp
toURL/draft-ietf-cryptoURL-01.txt">.txt</a>, <a href="cryptoURL/draft-ietf-crypt
oURL-01.html">.html</a>)<br> | |
250 <p> | |
251 CryptoURLs add "crypto metadata" like content hashes and key fingerprints to nor
mal URLs. | |
252 The resulting URLs are <a href="http://zooko.com/distnames.html">self-authentica
ting</a>, | |
253 like <a href="http://citeseer.nj.nec.com/mazieres99separating.html">SFS file nam
es</a> or | |
254 <a href="http://research.microsoft.com/users/tuomaura/CGA/">Cryptographically Ge
nerated Addresses</a>. | |
255 These could be useful in: | |
256 <dir> | |
257 <LI>web pages: | |
258 <dir> | |
259 <LI>a page could link to software binaries and include their hash | |
260 <LI>a portal could provide secure introductions to a community of sites | |
261 </dir> | |
262 <LI>XML documents (e.g. extending an <a href="http://www.w3.org/TR/xmldsig-core/
">XML-DSIG</a> over external references) | |
263 <LI>protocols (e.g. HTTP Redirects or LDAP Referrals) | |
264 <LI>software configuration (you could configure a client with the address and fi
ngerprint of a server in one step) | |
265 </dir> | |
266 <a href="http://www.waterken.com/dev/YURL/">YURLs</a> are another approach to se
lf-authenticating URLs. | |
267 | |
268 <a name="cryptlibConverter"> | |
269 <H2><a href="cryptlibConverter/">CryptlibConverter</a></H2> | |
270 <b>Code:</b> Version 5 for cryptlib 3.1 (<a href="cryptlibConverter/cryptlibCon
verter5_cl31.zip">.zip</a>, <a href="cryptlibConverter/readme.txt">readme.txt</a
>) | |
271 <p>This is a python script that generates java, python, and C# wrappers for | |
272 <a href="http://www.cs.auckland.ac.nz/~pgut001/cryptlib/">cryptlib</a>. A set o
f wrappers for | |
273 cryptlib 3.1 is included in the .zip file. The python and C# wrappers are also
included in the latest cryptlib distribution. | |
274 <br> | |
275 <a name="cryptoID"> | |
276 <H2><a href="cryptoID/">CryptoIDs</a></H2> | |
277 <b>Paper 1:</b> Public Key Distribution through "cryptoIDs" (<a href="cryptoID/c
ryptoID.pdf">.pdf</a>, <a href="cryptoID/cryptoID.html">.html</a>) <i>(presented
at <a href="http://www.nspw.org/2003/">NSPW 2003</a>)</i><br> | |
278 <b>Paper 2:</b> The CryptoID Key Management Protocols (<a href="cryptoID/cryptoI
D2.pdf">.pdf</a>) <i>(the best introduction)</i><br> | |
279 <b>Schema:</b> XML Schema for <certChain> (<a href="cryptoID/cryptoID.xsd
">.xsd</a>)<br> | |
280 <b>Code:</b> CryptoIDlib Python and Java library and command-line tool v0.1.8 (
<a href="cryptoID/cryptoIDlib-0.1.8.zip">.zip</a>, <a href="cryptoID/readme.txt"
>readme.txt</a>) | |
281 <p>PKI isn't working for person-to-person communications. Few people use | |
282 secure email, voice, instant-messaging, or anything else. | |
283 <p>CryptoIDs are an alternative. The idea is for people to exchange small, | |
284 user-friendly fingerprints (aka "cryptoIDs") like 'cyhf4.9ajd8.kbdx4.rk98c'. | |
285 These could be passed around and stored in address books as if they were phone | |
286 numbers or postal addresses. | |
287 <p>The cryptoID for each user would correspond to that user's <i>root key</i>. | |
288 The user would keep his root key in a safe place - his employer or | |
289 some commercial service might hold it for him. The rootholder would operate | |
290 an online service which would issue short-lived <i>subkey certificates</i> or <i
>validation signatures</i> to the user. | |
291 <p>CryptoIDs, then, are about combining <i>fingerprint-based public-key distribu
tion</i> with | |
292 <i>certificate-based private-key management</i>. The first paper above presents
the | |
293 cryptoID fingerprint and certificate formats, which are designed specifically fo
r | |
294 this. CryptoIDlib lets you test-drive these formats. | |
295 <p>The second paper presents private-key management protocols for use with onlin
e servers. | |
296 Support for these is being added to cryptoIDlib. | |
297 | |
298 <a name="tls_lite"> | |
299 <H2><a href="tls_lite/">TLS Lite</a></H2> | |
300 <b>Code:</b> tls_lite python library v0.1.8 (<a href="tls_lite/tls_lite-0.1.8.zi
p">.zip</a>, <a href="tls_lite/readme.txt">readme.txt</a>)<br> | |
301 <p> | |
302 TLS Lite is a free python library that implements SSL 3.0 and <a href="http://ww
w.ietf.org/rfc/rfc2246.txt">TLS 1.0</a>. | |
303 TLS Lite supports non-traditional authentication methods such as <a href="http:/
/trevp.net/tls_srp/index.html">SRP</a>, | |
304 <a href="http://www.ietf.org/internet-drafts/draft-ietf-tls-sharedkeys-02.txt">s
hared keys</a>, | |
305 and <a href="http://trevp.net/cryptoID/index.html">cryptoIDs</a>, in addition to
X.509 certificates. TLS Lite is pure | |
306 <a href="http://www.python.org">Python</a>, however it can access <a href="http:
//www.openssl.org/">OpenSSL</a> or | |
307 <a href="http://www.cs.auckland.ac.nz/~pgut001/cryptlib/">cryptlib</a> for faste
r crypto operations. | |
308 | |
309 <a name="tlssrp"> | |
310 <H2><a href="tls_srp/">TLS/SRP</a></H2> | |
311 <b>Internet-Draft:</b> Using SRP for TLS Authentication (<a href="tls_srp/draft
-ietf-tls-srp-06.txt">.txt</a>, <a href="tls_srp/draft-ietf-tls-srp-06.html">.ht
ml</a>) | |
312 <p><a href="http://srp.stanford.edu">SRP</a> is the best way to do password auth
entication | |
313 across a network. <a href="http://www.ietf.org/html.charters/tls-charter.html">
TLS</a> (aka SSL v3.1) | |
314 is the best way to do channel security. What could go better together? | |
315 <p>This draft modifies the TLS handshake to use SRP. This combination of | |
316 password-based mutual authentication and the TLS record layer is | |
317 ideal for protecting protocols like POP3 and HTTP. | |
318 | |
319 <a name="dss"> | |
320 <H2>DSS</H2> | |
321 <b>Requirements:</b> DSS Use Case Requirements Analysis (<a href="dss/oasis-dss
-1.0-requirements-wd-12.pdf">.pdf</a>, <a href="dss/oasis-dss-1.0-requirements-w
d-12.doc">.doc</a>)<br> | |
322 <b>Specification Working Draft:</b> Digital Signature Service Core Protocol and
Elements (<a href="dss/oasis-dss-1.0-core-spec-wd-10.pdf">.pdf</a>, <a href="dss
/oasis-dss-1.0-core-spec-wd-10.doc">.doc</a>)<br> | |
323 <b>Schema Working Draft:</b> oasis-dss-1.0-core-schema-wd-10 (<a href="dss/oasis
-dss-1.0-core-schema-wd-10.xsd">.xsd</a>)<br> | |
324 <b>Somewhat Related Paper:</b> Delegated Cryptography, Online Trusted Third Part
ies, and PKI | |
325 (<a href="delegatedCrypto/delegatedCrypto.pdf">.pdf</a>, <a href="delegatedCrypt
o/delegatedCrypto.html">.html</a>)<br> | |
326 <i>(presented at the <a href="http://www.cs.dartmouth.edu/~pki02/">1st Annual PK
I Research Workshop</a>)</i> | |
327 <p>The <a href="http://www.oasis-open.org/">OASIS</a> <a href="http://www.oasis-
open.org/committees/dss/">Digital Signature Service Technical Committee</a> | |
328 is designing protocols for signing, verifying, and | |
329 time-stamping of XML documents and other data. The idea is to perform these | |
330 operations on servers, thus freeing clients from having to manage private | |
331 keys, calculate certificate paths, and so on. | |
332 <p>Also listed is a paper arguing for the server-based approach vs. client-side
PKI. | |
333 | |
334 <a name="cryptoURL"> | |
335 <H2>CryptoURLs</H2> | |
336 <b>Draft of potential Internet-Draft:</b> The "crypto" URL scheme (<a href="cryp
toURL/draft-ietf-cryptoURL-01.txt">.txt</a>, <a href="cryptoURL/draft-ietf-crypt
oURL-01.html">.html</a>)<br> | |
337 <p> | |
338 CryptoURLs add "crypto metadata" like content hashes and key fingerprints to nor
mal URLs. | |
339 The resulting URLs are <a href="http://zooko.com/distnames.html">self-authentica
ting</a>, | |
340 like <a href="http://citeseer.nj.nec.com/mazieres99separating.html">SFS file nam
es</a> or | |
341 <a href="http://research.microsoft.com/users/tuomaura/CGA/">Cryptographically Ge
nerated Addresses</a>. | |
342 These could be useful in: | |
343 <dir> | |
344 <LI>web pages: | |
345 <dir> | |
346 <LI>a page could link to software binaries and include their hash | |
347 <LI>a portal could provide secure introductions to a community of sites | |
348 </dir> | |
349 <LI>XML documents (e.g. extending an <a href="http://www.w3.org/TR/xmldsig-core/
">XML-DSIG</a> over external references) | |
350 <LI>protocols (e.g. HTTP Redirects or LDAP Referrals) | |
351 <LI>software configuration (you could configure a client with the address and fi
ngerprint of a server in one step) | |
352 </dir> | |
353 <a href="http://www.waterken.com/dev/YURL/">YURLs</a> are another approach to se
lf-authenticating URLs. | |
354 | |
355 <a name="cryptlibConverter"> | |
356 <H2><a href="cryptlibConverter/">CryptlibConverter</a></H2> | |
357 <b>Code:</b> Version 5 for cryptlib 3.1 (<a href="cryptlibConverter/cryptlibCon
verter5_cl31.zip">.zip</a>, <a href="cryptlibConverter/readme.txt">readme.txt</a
>) | |
358 <p>This is a python script that generates java, python, and C# wrappers for | |
359 <a href="http://www.cs.auckland.ac.nz/~pgut001/cryptlib/">cryptlib</a>. A set o
f wrappers for | |
360 cryptlib 3.1 is included in the .zip file. The python and C# wrappers are also
included in the latest cryptlib distribution. | |
361 <br> | |
362 <a name="cryptoID"> | |
363 <H2><a href="cryptoID/">CryptoIDs</a></H2> | |
364 <b>Paper 1:</b> Public Key Distribution through "cryptoIDs" (<a href="cryptoID/c
ryptoID.pdf">.pdf</a>, <a href="cryptoID/cryptoID.html">.html</a>) <i>(presented
at <a href="http://www.nspw.org/2003/">NSPW 2003</a>)</i><br> | |
365 <b>Paper 2:</b> The CryptoID Key Management Protocols (<a href="cryptoID/cryptoI
D2.pdf">.pdf</a>) <i>(the best introduction)</i><br> | |
366 <b>Schema:</b> XML Schema for <certChain> (<a href="cryptoID/cryptoID.xsd
">.xsd</a>)<br> | |
367 <b>Code:</b> CryptoIDlib Python and Java library and command-line tool v0.1.8 (
<a href="cryptoID/cryptoIDlib-0.1.8.zip">.zip</a>, <a href="cryptoID/readme.txt"
>readme.txt</a>) | |
368 <p>PKI isn't working for person-to-person communications. Few people use | |
369 secure email, voice, instant-messaging, or anything else. | |
370 <p>CryptoIDs are an alternative. The idea is for people to exchange small, | |
371 user-friendly fingerprints (aka "cryptoIDs") like 'cyhf4.9ajd8.kbdx4.rk98c'. | |
372 These could be passed around and stored in address books as if they were phone | |
373 numbers or postal addresses. | |
374 <p>The cryptoID for each user would correspond to that user's <i>root key</i>. | |
375 The user would keep his root key in a safe place - his employer or | |
376 some commercial service might hold it for him. The rootholder would operate | |
377 an online service which would issue short-lived <i>subkey certificates</i> or <i
>validation signatures</i> to the user. | |
378 <p>CryptoIDs, then, are about combining <i>fingerprint-based public-key distribu
tion</i> with | |
379 <i>certificate-based private-key management</i>. The first paper above presents
the | |
380 cryptoID fingerprint and certificate formats, which are designed specifically fo
r | |
381 this. CryptoIDlib lets you test-drive these formats. | |
382 <p>The second paper presents private-key management protocols for use with onlin
e servers. | |
383 Support for these is being added to cryptoIDlib. | |
384 | |
385 <a name="tls_lite"> | |
386 <H2><a href="tls_lite/">TLS Lite</a></H2> | |
387 <b>Code:</b> tls_lite python library v0.1.8 (<a href="tls_lite/tls_lite-0.1.8.zi
p">.zip</a>, <a href="tls_lite/readme.txt">readme.txt</a>)<br> | |
388 <p> | |
389 TLS Lite is a free python library that implements SSL 3.0 and <a href="http://ww
w.ietf.org/rfc/rfc2246.txt">TLS 1.0</a>. | |
390 TLS Lite supports non-traditional authentication methods such as <a href="http:/
/trevp.net/tls_srp/index.html">SRP</a>, | |
391 <a href="http://www.ietf.org/internet-drafts/draft-ietf-tls-sharedkeys-02.txt">s
hared keys</a>, | |
392 and <a href="http://trevp.net/cryptoID/index.html">cryptoIDs</a>, in addition to
X.509 certificates. TLS Lite is pure | |
393 <a href="http://www.python.org">Python</a>, however it can access <a href="http:
//www.openssl.org/">OpenSSL</a> or | |
394 <a href="http://www.cs.auckland.ac.nz/~pgut001/cryptlib/">cryptlib</a> for faste
r crypto operations. | |
395 | |
396 <a name="tlssrp"> | |
397 <H2><a href="tls_srp/">TLS/SRP</a></H2> | |
398 <b>Internet-Draft:</b> Using SRP for TLS Authentication (<a href="tls_srp/draft
-ietf-tls-srp-06.txt">.txt</a>, <a href="tls_srp/draft-ietf-tls-srp-06.html">.ht
ml</a>) | |
399 <p><a href="http://srp.stanford.edu">SRP</a> is the best way to do password auth
entication | |
400 across a network. <a href="http://www.ietf.org/html.charters/tls-charter.html">
TLS</a> (aka SSL v3.1) | |
401 is the best way to do channel security. What could go better together? | |
402 <p>This draft modifies the TLS handshake to use SRP. This combination of | |
403 password-based mutual authentication and the TLS record layer is | |
404 ideal for protecting protocols like POP3 and HTTP. | |
405 | |
406 <a name="dss"> | |
407 <H2>DSS</H2> | |
408 <b>Requirements:</b> DSS Use Case Requirements Analysis (<a href="dss/oasis-dss
-1.0-requirements-wd-12.pdf">.pdf</a>, <a href="dss/oasis-dss-1.0-requirements-w
d-12.doc">.doc</a>)<br> | |
409 <b>Specification Working Draft:</b> Digital Signature Service Core Protocol and
Elements (<a href="dss/oasis-dss-1.0-core-spec-wd-10.pdf">.pdf</a>, <a href="dss
/oasis-dss-1.0-core-spec-wd-10.doc">.doc</a>)<br> | |
410 <b>Schema Working Draft:</b> oasis-dss-1.0-core-schema-wd-10 (<a href="dss/oasis
-dss-1.0-core-schema-wd-10.xsd">.xsd</a>)<br> | |
411 <b>Somewhat Related Paper:</b> Delegated Cryptography, Online Trusted Third Part
ies, and PKI | |
412 (<a href="delegatedCrypto/delegatedCrypto.pdf">.pdf</a>, <a href="delegatedCrypt
o/delegatedCrypto.html">.html</a>)<br> | |
413 <i>(presented at the <a href="http://www.cs.dartmouth.edu/~pki02/">1st Annual PK
I Research Workshop</a>)</i> | |
414 <p>The <a href="http://www.oasis-open.org/">OASIS</a> <a href="http://www.oasis-
open.org/committees/dss/">Digital Signature Service Technical Committee</a> | |
415 is designing protocols for signing, verifying, and | |
416 time-stamping of XML documents and other data. The idea is to perform these | |
417 operations on servers, thus freeing clients from having to manage private | |
418 keys, calculate certificate paths, and so on. | |
419 <p>Also listed is a paper arguing for the server-based approach vs. client-side
PKI. | |
420 | |
421 <a name="cryptoURL"> | |
422 <H2>CryptoURLs</H2> | |
423 <b>Draft of potential Internet-Draft:</b> The "crypto" URL scheme (<a href="cryp
toURL/draft-ietf-cryptoURL-01.txt">.txt</a>, <a href="cryptoURL/draft-ietf-crypt
oURL-01.html">.html</a>)<br> | |
424 <p> | |
425 CryptoURLs add "crypto metadata" like content hashes and key fingerprints to nor
mal URLs. | |
426 The resulting URLs are <a href="http://zooko.com/distnames.html">self-authentica
ting</a>, | |
427 like <a href="http://citeseer.nj.nec.com/mazieres99separating.html">SFS file nam
es</a> or | |
428 <a href="http://research.microsoft.com/users/tuomaura/CGA/">Cryptographically Ge
nerated Addresses</a>. | |
429 These could be useful in: | |
430 <dir> | |
431 <LI>web pages: | |
432 <dir> | |
433 <LI>a page could link to software binaries and include their hash | |
434 <LI>a portal could provide secure introductions to a community of sites | |
435 </dir> | |
436 <LI>XML documents (e.g. extending an <a href="http://www.w3.org/TR/xmldsig-core/
">XML-DSIG</a> over external references) | |
437 <LI>protocols (e.g. HTTP Redirects or LDAP Referrals) | |
438 <LI>software configuration (you could configure a client with the address and fi
ngerprint of a server in one step) | |
439 </dir> | |
440 <a href="http://www.waterken.com/dev/YURL/">YURLs</a> are another approach to se
lf-authenticating URLs. | |
441 | |
442 <a name="cryptlibConverter"> | |
443 <H2><a href="cryptlibConverter/">CryptlibConverter</a></H2> | |
444 <b>Code:</b> Version 5 for cryptlib 3.1 (<a href="cryptlibConverter/cryptlibCon
verter5_cl31.zip">.zip</a>, <a href="cryptlibConverter/readme.txt">readme.txt</a
>) | |
445 <p>This is a python script that generates java, python, and C# wrappers for | |
446 <a href="http://www.cs.auckland.ac.nz/~pgut001/cryptlib/">cryptlib</a>. A set o
f wrappers for | |
447 cryptlib 3.1 is included in the .zip file. The python and C# wrappers are also
included in the latest cryptlib distribution. | |
448 <br> | |
449 <a name="cryptoID"> | |
450 <H2><a href="cryptoID/">CryptoIDs</a></H2> | |
451 <b>Paper 1:</b> Public Key Distribution through "cryptoIDs" (<a href="cryptoID/c
ryptoID.pdf">.pdf</a>, <a href="cryptoID/cryptoID.html">.html</a>) <i>(presented
at <a href="http://www.nspw.org/2003/">NSPW 2003</a>)</i><br> | |
452 <b>Paper 2:</b> The CryptoID Key Management Protocols (<a href="cryptoID/cryptoI
D2.pdf">.pdf</a>) <i>(the best introduction)</i><br> | |
453 <b>Schema:</b> XML Schema for <certChain> (<a href="cryptoID/cryptoID.xsd
">.xsd</a>)<br> | |
454 <b>Code:</b> CryptoIDlib Python and Java library and command-line tool v0.1.8 (
<a href="cryptoID/cryptoIDlib-0.1.8.zip">.zip</a>, <a href="cryptoID/readme.txt"
>readme.txt</a>) | |
455 <p>PKI isn't working for person-to-person communications. Few people use | |
456 secure email, voice, instant-messaging, or anything else. | |
457 <p>CryptoIDs are an alternative. The idea is for people to exchange small, | |
458 user-friendly fingerprints (aka "cryptoIDs") like 'cyhf4.9ajd8.kbdx4.rk98c'. | |
459 These could be passed around and stored in address books as if they were phone | |
460 numbers or postal addresses. | |
461 <p>The cryptoID for each user would correspond to that user's <i>root key</i>. | |
462 The user would keep his root key in a safe place - his employer or | |
463 some commercial service might hold it for him. The rootholder would operate | |
464 an online service which would issue short-lived <i>subkey certificates</i> or <i
>validation signatures</i> to the user. | |
465 <p>CryptoIDs, then, are about combining <i>fingerprint-based public-key distribu
tion</i> with | |
466 <i>certificate-based private-key management</i>. The first paper above presents
the | |
467 cryptoID fingerprint and certificate formats, which are designed specifically fo
r | |
468 this. CryptoIDlib lets you test-drive these formats. | |
469 <p>The second paper presents private-key management protocols for use with onlin
e servers. | |
470 Support for these is being added to cryptoIDlib. | |
471 | |
472 <a name="tls_lite"> | |
473 <H2><a href="tls_lite/">TLS Lite</a></H2> | |
474 <b>Code:</b> tls_lite python library v0.1.8 (<a href="tls_lite/tls_lite-0.1.8.zi
p">.zip</a>, <a href="tls_lite/readme.txt">readme.txt</a>)<br> | |
475 <p> | |
476 TLS Lite is a free python library that implements SSL 3.0 and <a href="http://ww
w.ietf.org/rfc/rfc2246.txt">TLS 1.0</a>. | |
477 TLS Lite supports non-traditional authentication methods such as <a href="http:/
/trevp.net/tls_srp/index.html">SRP</a>, | |
478 <a href="http://www.ietf.org/internet-drafts/draft-ietf-tls-sharedkeys-02.txt">s
hared keys</a>, | |
479 and <a href="http://trevp.net/cryptoID/index.html">cryptoIDs</a>, in addition to
X.509 certificates. TLS Lite is pure | |
480 <a href="http://www.python.org">Python</a>, however it can access <a href="http:
//www.openssl.org/">OpenSSL</a> or | |
481 <a href="http://www.cs.auckland.ac.nz/~pgut001/cryptlib/">cryptlib</a> for faste
r crypto operations. | |
482 | |
483 <a name="tlssrp"> | |
484 <H2><a href="tls_srp/">TLS/SRP</a></H2> | |
485 <b>Internet-Draft:</b> Using SRP for TLS Authentication (<a href="tls_srp/draft
-ietf-tls-srp-06.txt">.txt</a>, <a href="tls_srp/draft-ietf-tls-srp-06.html">.ht
ml</a>) | |
486 <p><a href="http://srp.stanford.edu">SRP</a> is the best way to do password auth
entication | |
487 across a network. <a href="http://www.ietf.org/html.charters/tls-charter.html">
TLS</a> (aka SSL v3.1) | |
488 is the best way to do channel security. What could go better together? | |
489 <p>This draft modifies the TLS handshake to use SRP. This combination of | |
490 password-based mutual authentication and the TLS record layer is | |
491 ideal for protecting protocols like POP3 and HTTP. | |
492 | |
493 <a name="dss"> | |
494 <H2>DSS</H2> | |
495 <b>Requirements:</b> DSS Use Case Requirements Analysis (<a href="dss/oasis-dss
-1.0-requirements-wd-12.pdf">.pdf</a>, <a href="dss/oasis-dss-1.0-requirements-w
d-12.doc">.doc</a>)<br> | |
496 <b>Specification Working Draft:</b> Digital Signature Service Core Protocol and
Elements (<a href="dss/oasis-dss-1.0-core-spec-wd-10.pdf">.pdf</a>, <a href="dss
/oasis-dss-1.0-core-spec-wd-10.doc">.doc</a>)<br> | |
497 <b>Schema Working Draft:</b> oasis-dss-1.0-core-schema-wd-10 (<a href="dss/oasis
-dss-1.0-core-schema-wd-10.xsd">.xsd</a>)<br> | |
498 <b>Somewhat Related Paper:</b> Delegated Cryptography, Online Trusted Third Part
ies, and PKI | |
499 (<a href="delegatedCrypto/delegatedCrypto.pdf">.pdf</a>, <a href="delegatedCrypt
o/delegatedCrypto.html">.html</a>)<br> | |
500 <i>(presented at the <a href="http://www.cs.dartmouth.edu/~pki02/">1st Annual PK
I Research Workshop</a>)</i> | |
501 <p>The <a href="http://www.oasis-open.org/">OASIS</a> <a href="http://www.oasis-
open.org/committees/dss/">Digital Signature Service Technical Committee</a> | |
502 is designing protocols for signing, verifying, and | |
503 time-stamping of XML documents and other data. The idea is to perform these | |
504 operations on servers, thus freeing clients from having to manage private | |
505 keys, calculate certificate paths, and so on. | |
506 <p>Also listed is a paper arguing for the server-based approach vs. client-side
PKI. | |
507 | |
508 <a name="cryptoURL"> | |
509 <H2>CryptoURLs</H2> | |
510 <b>Draft of potential Internet-Draft:</b> The "crypto" URL scheme (<a href="cryp
toURL/draft-ietf-cryptoURL-01.txt">.txt</a>, <a href="cryptoURL/draft-ietf-crypt
oURL-01.html">.html</a>)<br> | |
511 <p> | |
512 CryptoURLs add "crypto metadata" like content hashes and key fingerprints to nor
mal URLs. | |
513 The resulting URLs are <a href="http://zooko.com/distnames.html">self-authentica
ting</a>, | |
514 like <a href="http://citeseer.nj.nec.com/mazieres99separating.html">SFS file nam
es</a> or | |
515 <a href="http://research.microsoft.com/users/tuomaura/CGA/">Cryptographically Ge
nerated Addresses</a>. | |
516 These could be useful in: | |
517 <dir> | |
518 <LI>web pages: | |
519 <dir> | |
520 <LI>a page could link to software binaries and include their hash | |
521 <LI>a portal could provide secure introductions to a community of sites | |
522 </dir> | |
523 <LI>XML documents (e.g. extending an <a href="http://www.w3.org/TR/xmldsig-core/
">XML-DSIG</a> over external references) | |
524 <LI>protocols (e.g. HTTP Redirects or LDAP Referrals) | |
525 <LI>software configuration (you could configure a client with the address and fi
ngerprint of a server in one step) | |
526 </dir> | |
527 <a href="http://www.waterken.com/dev/YURL/">YURLs</a> are another approach to se
lf-authenticating URLs. | |
528 | |
529 <a name="cryptlibConverter"> | |
530 <H2><a href="cryptlibConverter/">CryptlibConverter</a></H2> | |
531 <b>Code:</b> Version 5 for cryptlib 3.1 (<a href="cryptlibConverter/cryptlibCon
verter5_cl31.zip">.zip</a>, <a href="cryptlibConverter/readme.txt">readme.txt</a
>) | |
532 <p>This is a python script that generates java, python, and C# wrappers for | |
533 <a href="http://www.cs.auckland.ac.nz/~pgut001/cryptlib/">cryptlib</a>. A set o
f wrappers for | |
534 cryptlib 3.1 is included in the .zip file. The python and C# wrappers are also
included in the latest cryptlib distribution. | |
535 <br> | |
536 <a name="cryptoID"> | |
537 <H2><a href="cryptoID/">CryptoIDs</a></H2> | |
538 <b>Paper 1:</b> Public Key Distribution through "cryptoIDs" (<a href="cryptoID/c
ryptoID.pdf">.pdf</a>, <a href="cryptoID/cryptoID.html">.html</a>) <i>(presented
at <a href="http://www.nspw.org/2003/">NSPW 2003</a>)</i><br> | |
539 <b>Paper 2:</b> The CryptoID Key Management Protocols (<a href="cryptoID/cryptoI
D2.pdf">.pdf</a>) <i>(the best introduction)</i><br> | |
540 <b>Schema:</b> XML Schema for <certChain> (<a href="cryptoID/cryptoID.xsd
">.xsd</a>)<br> | |
541 <b>Code:</b> CryptoIDlib Python and Java library and command-line tool v0.1.8 (
<a href="cryptoID/cryptoIDlib-0.1.8.zip">.zip</a>, <a href="cryptoID/readme.txt"
>readme.txt</a>) | |
542 <p>PKI isn't working for person-to-person communications. Few people use | |
543 secure email, voice, instant-messaging, or anything else. | |
544 <p>CryptoIDs are an alternative. The idea is for people to exchange small, | |
545 user-friendly fingerprints (aka "cryptoIDs") like 'cyhf4.9ajd8.kbdx4.rk98c'. | |
546 These could be passed around and stored in address books as if they were phone | |
547 numbers or postal addresses. | |
548 <p>The cryptoID for each user would correspond to that user's <i>root key</i>. | |
549 The user would keep his root key in a safe place - his employer or | |
550 some commercial service might hold it for him. The rootholder would operate | |
551 an online service which would issue short-lived <i>subkey certificates</i> or <i
>validation signatures</i> to the user. | |
552 <p>CryptoIDs, then, are about combining <i>fingerprint-based public-key distribu
tion</i> with | |
553 <i>certificate-based private-key management</i>. The first paper above presents
the | |
554 cryptoID fingerprint and certificate formats, which are designed specifically fo
r | |
555 this. CryptoIDlib lets you test-drive these formats. | |
556 <p>The second paper presents private-key management protocols for use with onlin
e servers. | |
557 Support for these is being added to cryptoIDlib. | |
558 | |
559 <a name="tls_lite"> | |
560 <H2><a href="tls_lite/">TLS Lite</a></H2> | |
561 <b>Code:</b> tls_lite python library v0.1.8 (<a href="tls_lite/tls_lite-0.1.8.zi
p">.zip</a>, <a href="tls_lite/readme.txt">readme.txt</a>)<br> | |
562 <p> | |
563 TLS Lite is a free python library that implements SSL 3.0 and <a href="http://ww
w.ietf.org/rfc/rfc2246.txt">TLS 1.0</a>. | |
564 TLS Lite supports non-traditional authentication methods such as <a href="http:/
/trevp.net/tls_srp/index.html">SRP</a>, | |
565 <a href="http://www.ietf.org/internet-drafts/draft-ietf-tls-sharedkeys-02.txt">s
hared keys</a>, | |
566 and <a href="http://trevp.net/cryptoID/index.html">cryptoIDs</a>, in addition to
X.509 certificates. TLS Lite is pure | |
567 <a href="http://www.python.org">Python</a>, however it can access <a href="http:
//www.openssl.org/">OpenSSL</a> or | |
568 <a href="http://www.cs.auckland.ac.nz/~pgut001/cryptlib/">cryptlib</a> for faste
r crypto operations. | |
569 | |
570 <a name="tlssrp"> | |
571 <H2><a href="tls_srp/">TLS/SRP</a></H2> | |
572 <b>Internet-Draft:</b> Using SRP for TLS Authentication (<a href="tls_srp/draft
-ietf-tls-srp-06.txt">.txt</a>, <a href="tls_srp/draft-ietf-tls-srp-06.html">.ht
ml</a>) | |
573 <p><a href="http://srp.stanford.edu">SRP</a> is the best way to do password auth
entication | |
574 across a network. <a href="http://www.ietf.org/html.charters/tls-charter.html">
TLS</a> (aka SSL v3.1) | |
575 is the best way to do channel security. What could go better together? | |
576 <p>This draft modifies the TLS handshake to use SRP. This combination of | |
577 password-based mutual authentication and the TLS record layer is | |
578 ideal for protecting protocols like POP3 and HTTP. | |
579 | |
580 <a name="dss"> | |
581 <H2>DSS</H2> | |
582 <b>Requirements:</b> DSS Use Case Requirements Analysis (<a href="dss/oasis-dss
-1.0-requirements-wd-12.pdf">.pdf</a>, <a href="dss/oasis-dss-1.0-requirements-w
d-12.doc">.doc</a>)<br> | |
583 <b>Specification Working Draft:</b> Digital Signature Service Core Protocol and
Elements (<a href="dss/oasis-dss-1.0-core-spec-wd-10.pdf">.pdf</a>, <a href="dss
/oasis-dss-1.0-core-spec-wd-10.doc">.doc</a>)<br> | |
584 <b>Schema Working Draft:</b> oasis-dss-1.0-core-schema-wd-10 (<a href="dss/oasis
-dss-1.0-core-schema-wd-10.xsd">.xsd</a>)<br> | |
585 <b>Somewhat Related Paper:</b> Delegated Cryptography, Online Trusted Third Part
ies, and PKI | |
586 (<a href="delegatedCrypto/delegatedCrypto.pdf">.pdf</a>, <a href="delegatedCrypt
o/delegatedCrypto.html">.html</a>)<br> | |
587 <i>(presented at the <a href="http://www.cs.dartmouth.edu/~pki02/">1st Annual PK
I Research Workshop</a>)</i> | |
588 <p>The <a href="http://www.oasis-open.org/">OASIS</a> <a href="http://www.oasis-
open.org/committees/dss/">Digital Signature Service Technical Committee</a> | |
589 is designing protocols for signing, verifying, and | |
590 time-stamping of XML documents and other data. The idea is to perform these | |
591 operations on servers, thus freeing clients from having to manage private | |
592 keys, calculate certificate paths, and so on. | |
593 <p>Also listed is a paper arguing for the server-based approach vs. client-side
PKI. | |
594 | |
595 <a name="cryptoURL"> | |
596 <H2>CryptoURLs</H2> | |
597 <b>Draft of potential Internet-Draft:</b> The "crypto" URL scheme (<a href="cryp
toURL/draft-ietf-cryptoURL-01.txt">.txt</a>, <a href="cryptoURL/draft-ietf-crypt
oURL-01.html">.html</a>)<br> | |
598 <p> | |
599 CryptoURLs add "crypto metadata" like content hashes and key fingerprints to nor
mal URLs. | |
600 The resulting URLs are <a href="http://zooko.com/distnames.html">self-authentica
ting</a>, | |
601 like <a href="http://citeseer.nj.nec.com/mazieres99separating.html">SFS file nam
es</a> or | |
602 <a href="http://research.microsoft.com/users/tuomaura/CGA/">Cryptographically Ge
nerated Addresses</a>. | |
603 These could be useful in: | |
604 <dir> | |
605 <LI>web pages: | |
606 <dir> | |
607 <LI>a page could link to software binaries and include their hash | |
608 <LI>a portal could provide secure introductions to a community of sites | |
609 </dir> | |
610 <LI>XML documents (e.g. extending an <a href="http://www.w3.org/TR/xmldsig-core/
">XML-DSIG</a> over external references) | |
611 <LI>protocols (e.g. HTTP Redirects or LDAP Referrals) | |
612 <LI>software configuration (you could configure a client with the address and fi
ngerprint of a server in one step) | |
613 </dir> | |
614 <a href="http://www.waterken.com/dev/YURL/">YURLs</a> are another approach to se
lf-authenticating URLs. | |
615 | |
616 <a name="cryptlibConverter"> | |
617 <H2><a href="cryptlibConverter/">CryptlibConverter</a></H2> | |
618 <b>Code:</b> Version 5 for cryptlib 3.1 (<a href="cryptlibConverter/cryptlibCon
verter5_cl31.zip">.zip</a>, <a href="cryptlibConverter/readme.txt">readme.txt</a
>) | |
619 <p>This is a python script that generates java, python, and C# wrappers for | |
620 <a href="http://www.cs.auckland.ac.nz/~pgut001/cryptlib/">cryptlib</a>. A set o
f wrappers for | |
621 cryptlib 3.1 is included in the .zip file. The python and C# wrappers are also
included in the latest cryptlib distribution. | |
622 <br> | |
623 <a name="cryptoID"> | |
624 <H2><a href="cryptoID/">CryptoIDs</a></H2> | |
625 <b>Paper 1:</b> Public Key Distribution through "cryptoIDs" (<a href="cryptoID/c
ryptoID.pdf">.pdf</a>, <a href="cryptoID/cryptoID.html">.html</a>) <i>(presented
at <a href="http://www.nspw.org/2003/">NSPW 2003</a>)</i><br> | |
626 <b>Paper 2:</b> The CryptoID Key Management Protocols (<a href="cryptoID/cryptoI
D2.pdf">.pdf</a>) <i>(the best introduction)</i><br> | |
627 <b>Schema:</b> XML Schema for <certChain> (<a href="cryptoID/cryptoID.xsd
">.xsd</a>)<br> | |
628 <b>Code:</b> CryptoIDlib Python and Java library and command-line tool v0.1.8 (
<a href="cryptoID/cryptoIDlib-0.1.8.zip">.zip</a>, <a href="cryptoID/readme.txt"
>readme.txt</a>) | |
629 <p>PKI isn't working for person-to-person communications. Few people use | |
630 secure email, voice, instant-messaging, or anything else. | |
631 <p>CryptoIDs are an alternative. The idea is for people to exchange small, | |
632 user-friendly fingerprints (aka "cryptoIDs") like 'cyhf4.9ajd8.kbdx4.rk98c'. | |
633 These could be passed around and stored in address books as if they were phone | |
634 numbers or postal addresses. | |
635 <p>The cryptoID for each user would correspond to that user's <i>root key</i>. | |
636 The user would keep his root key in a safe place - his employer or | |
637 some commercial service might hold it for him. The rootholder would operate | |
638 an online service which would issue short-lived <i>subkey certificates</i> or <i
>validation signatures</i> to the user. | |
639 <p>CryptoIDs, then, are about combining <i>fingerprint-based public-key distribu
tion</i> with | |
640 <i>certificate-based private-key management</i>. The first paper above presents
the | |
641 cryptoID fingerprint and certificate formats, which are designed specifically fo
r | |
642 this. CryptoIDlib lets you test-drive these formats. | |
643 <p>The second paper presents private-key management protocols for use with onlin
e servers. | |
644 Support for these is being added to cryptoIDlib. | |
645 | |
646 <br> | |
647 <br> | |
648 </body> | |
649 </html> | |
OLD | NEW |