Bundle of old SSLeay documentation files [OBSOLETE!]
*** WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! ***
OBSOLETE means that nothing in this document should be trusted. This
document is provided mostly for historical purposes (it wasn't even up
to date at the time SSLeay 0.8.1 was released) and as inspiration. If
you copy some snippet of code from this document, please _check_ that
it really is correct from all points of view. For example, you can
check with the other documents in this directory tree, or by comparing
with relevant parts of the include files.
People have done the mistake of trusting what's written here. Please
don't do that.
*** WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! ***
==== readme ========================================================
This is the old 0.6.6 docuementation. Most of the cipher stuff is still
relevent but I'm working (very slowly) on new documentation.
The current version can be found online at
http://www.cryptsoft.com/ssleay/doc
==== API.doc ========================================================
SSL - SSLv2/v3/v23 etc.
BIO - methods and how they plug together
MEM - memory allocation callback
CRYPTO - locking for threads
EVP - Ciphers/Digests/signatures
RSA - methods
X509 - certificate retrieval
X509 - validation
X509 - X509v3 extensions
Objects - adding object identifiers
ASN.1 - parsing
PEM - parsing
==== ssl/readme =====================================================
22 Jun 1996
This file belongs in ../apps, but I'll leave it here because it deals
with SSL :-) It is rather dated but it gives you an idea of how
things work.
===
17 Jul 1995
I have been changing things quite a bit and have not fully updated
this file, so take what you read with a grain of salt
eric
===
The s_client and s_server programs can be used to test SSL capable
IP/port addresses and the verification of the X509 certificates in use
by these services. I strongly advise having a look at the code to get
an idea of how to use the authentication under SSLeay. Any feedback
on changes and improvements would be greatly accepted.
This file will probably be gibberish unless you have read
rfc1421, rfc1422, rfc1423 and rfc1424 which describe PEM
authentication.
A Brief outline (and examples) how to use them to do so.
NOTE:
The environment variable SSL_CIPER is used to specify the prefered
cipher to use, play around with setting it's value to combinations of
RC4-MD5, EXP-RC4-MD5, CBC-DES-MD5, CBC3-DES-MD5, CFB-DES-NULL
in a : separated list.
This directory contains 3 X509 certificates which can be used by these programs.
client.pem: a file containing a certificate and private key to be used
by s_client.
server.pem :a file containing a certificate and private key to be used
by s_server.
eay1024.pem:the certificate used to sign client.pem and server.pem.
This would be your CA's certificate. There is also a link
from the file a8556381.0 to eay1024.PEM. The value a8556381
is returned by 'x509 -hash -noout <eay1024.pem' and is the
value used by X509 verification routines to 'find' this
certificte when search a directory for it.
[the above is not true any more, the CA cert is
../certs/testca.pem which is signed by ../certs/mincomca.pem]
When testing the s_server, you may get
bind: Address already in use
errors. These indicate the port is still being held by the unix
kernel and you are going to have to wait for it to let go of it. If
this is the case, remember to use the port commands on the s_server and
s_client to talk on an alternative port.
=====
s_client.
This program can be used to connect to any IP/hostname:port that is
talking SSL. Once connected, it will attempt to authenticate the
certificate it was passed and if everything works as expected, a 2
directional channel will be open. Any text typed will be sent to the
other end. type Q<cr> to exit. Flags are as follows.
-host arg : Arg is the host or IP address to connect to.
-port arg : Arg is the port to connect to (https is 443).
-verify arg : Turn on authentication of the server certificate.
: Arg specifies the 'depth', this will covered below.
-cert arg : The optional certificate to use. This certificate
: will be returned to the server if the server
: requests it for client authentication.
-key arg : The private key that matches the certificate
: specified by the -cert option. If this is not
: specified (but -cert is), the -cert file will be
: searched for the Private key. Both files are
: assumed to be in PEM format.
-CApath arg : When to look for certificates when 'verifying' the
: certificate from the server.
-CAfile arg : A file containing certificates to be used for
: 'verifying' the server certificate.
-reconnect : Once a connection has been made, drop it and
: reconnect with same session-id. This is for testing :-).
The '-verify n' parameter specifies not only to verify the servers
certificate but to also only take notice of 'n' levels. The best way
to explain is to show via examples.
Given
s_server -cert server.PEM is running.
s_client
CONNECTED
depth=0 /C=AU/SOP=QLD/O=Mincom Pty. Ltd./OU=CS/CN=SSLeay demo server
issuer= /C=AU/SOP=QLD/O=Mincom Pty. Ltd./OU=CS/CN=CA
verify error:num=1:unable to get issuer certificate
verify return:1
CIPHER is CBC-DES-MD5
What has happened is that the 'SSLeay demo server' certificate's
issuer ('CA') could not be found but because verify is not on, we
don't care and the connection has been made anyway. It is now 'up'
using CBC-DES-MD5 mode. This is an unauthenticate secure channel.
You may not be talking to the right person but the data going to them
is encrypted.
s_client -verify 0
CONNECTED
depth=0 /C=AU/SOP=QLD/O=Mincom Pty. Ltd./OU=CS/CN=SSLeay demo server
issuer= /C=AU/SOP=QLD/O=Mincom Pty. Ltd./OU=CS/CN=CA
verify error:num=1:unable to get issuer certificate
verify return:1
CIPHER is CBC-DES-MD5
We are 'verifying' but only to depth 0, so since the 'SSLeay demo server'
certificate passed the date and checksum, we are happy to proceed.
s_client -verify 1
CONNECTED
depth=0 /C=AU/SOP=QLD/O=Mincom Pty. Ltd./OU=CS/CN=SSLeay demo server
issuer= /C=AU/SOP=QLD/O=Mincom Pty. Ltd./OU=CS/CN=CA
verify error:num=1:unable to get issuer certificate
verify return:0
ERROR
verify error:unable to get issuer certificate
In this case we failed to make the connection because we could not
authenticate the certificate because we could not find the
'CA' certificate.
s_client -verify 1 -CAfile eay1024.PEM
CONNECTED
depth=0 /C=AU/SOP=QLD/O=Mincom Pty. Ltd./OU=CS/CN=SSLeay demo server
verify return:1
depth=1 /C=AU/SOP=QLD/O=Mincom Pty. Ltd./OU=CS/CN=CA
verify return:1
CIPHER is CBC-DES-MD5
We loaded the certificates from the file eay1024.PEM. Everything
checked out and so we made the connection.
s_client -verify 1 -CApath .
CONNECTED
depth=0 /C=AU/SOP=QLD/O=Mincom Pty. Ltd./OU=CS/CN=SSLeay demo server
verify return:1
depth=1 /C=AU/SOP=QLD/O=Mincom Pty. Ltd./OU=CS/CN=CA
verify return:1
CIPHER is CBC-DES-MD5
We looked in out local directory for issuer certificates and 'found'
a8556381.0 and so everything is ok.
It is worth noting that 'CA' is a self certified certificate. If you
are passed one of these, it will fail to 'verify' at depth 0 because
we need to lookup the certifier of a certificate from some information
that we trust and keep locally.
SSL_CIPHER=CBC3-DES-MD5:RC4-MD5
export SSL_CIPHER
s_client -verify 10 -CApath . -reconnect
CONNECTED
depth=0 /C=AU/SOP=QLD/O=Mincom Pty. Ltd./OU=CS/CN=SSLeay demo server
verify return:1
depth=1 /C=AU/SOP=QLD/O=Mincom Pty. Ltd./OU=CS/CN=CA
verify return:1
drop the connection and reconnect with the same session id
CIPHER is CBC3-DES-MD5
This has done a full connection and then re-estabished it with the
same session id but a new socket. No RSA stuff occures on the second
connection. Note that we said we would prefer to use CBC3-DES-MD5
encryption and so, since the server
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
openssl-1.0.2g源码 (3319个子文件)
VMSca-response.1 1B
VMSca-response.2 4B
ACKNOWLEDGMENTS 87B
Makefile.am 243B
README.ASN1 8KB
README.ASN1 206B
srp_verifier.txt.attr 21B
Makefile.bak 23KB
opensslconf.h.bak 7KB
testce.bat 7KB
build.bat 7KB
test.bat 4KB
set_env.bat 3KB
cpy_tests.bat 3KB
testssce.bat 3KB
testss.bat 2KB
netware.bat 2KB
mingw32.bat 2KB
testencce.bat 2KB
testenc.bat 1KB
speed32.bat 876B
x86asm.bat 854B
testpemce.bat 840B
tencce.bat 737B
mw.bat 733B
win32.bat 688B
testpem.bat 606B
win32dll.bat 577B
32all.bat 520B
do_win64a.bat 492B
tenc.bat 466B
do_ms.bat 357B
do_win64i.bat 288B
do_nasm.bat 261B
do_nt.bat 217B
tpemce.bat 195B
ptest.bat 116B
bcb4.bat 116B
win32.bat 113B
tpem.bat 87B
capierr.bat 78B
testce2.bat 71B
makefile.bc 1KB
bctest 4KB
ecp_nistz256_table.c 603KB
t1_lib.c 141KB
ec_curve.c 136KB
s3_clnt.c 125KB
s3_srvr.c 122KB
s_server.c 113KB
s3_lib.c 105KB
ssl_lib.c 103KB
ssltest.c 98KB
ca.c 93KB
speed.c 91KB
apps.c 88KB
s_client.c 78KB
kssl.c 75KB
ecp_nistp256.c 74KB
x509_vfy.c 73KB
gcm128.c 72KB
e_aes.c 71KB
ecp_nistp521.c 70KB
ssl_ciph.c 68KB
ecp_nistp224.c 62KB
d1_pkt.c 62KB
bss_dgram.c 62KB
aes_core.c 61KB
ectest.c 59KB
s3_pkt.c 58KB
bntest.c 55KB
req.c 55KB
e_capi.c 55KB
str_lib.c 54KB
d1_both.c 52KB
hw_zencod.c 51KB
ecp_nistz256.c 50KB
s_cb.c 49KB
bn_exp.c 48KB
cms.c 47KB
t1_enc.c 47KB
ssl_err.c 44KB
ocsp.c 44KB
x509.c 43KB
tunala.c 43KB
v3_addr.c 42KB
e_chil.c 42KB
t1_trce.c 42KB
ssl_sess.c 42KB
seed.c 41KB
eng_cryptodev.c 41KB
s2_srvr.c 40KB
aes_x86core.c 40KB
ec_asn1.c 40KB
tasn_dec.c 39KB
bn_nist.c 39KB
ecp_smpl.c 39KB
v3_utl.c 38KB
pk7_doit.c 38KB
e_sureware.c 38KB
共 3319 条
- 1
- 2
- 3
- 4
- 5
- 6
- 34
很强大很好
- 粉丝: 92
- 资源: 28
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页