#kons_font 15;
#lappend auto_path ~/tcl/tls1.4; package re tls
#% 1.4
lappend auto_path ~/tcl/tls1.5; package re tls
#% 1.50
## klient
# + wykonac . e_tls przed uruchomieniem konsoli!
#
proc haslo {} {return "qwerty"}; # haslo do klucza pryw serwera
set s [tls::socket localhost 10000]
set s [tls::socket -password haslo \
-require 1 -cafile cacert.pem \
localhost 10000
]
# + "-require 1" klient ¿±da sprawdzenia certyfikatu serwera
# + "-cafile" certyfikat CA (chodzi m.in. o klucz publiczny CA w tym pliku
# dziêki któremu klient sprawdza podpis na certyfikacie serwera)
# + 2014; 1.4 nie dziala; 1.5 dziala ok !!!
# czyli trzeba uzywac 1.5 i dostarczonych bibl libcrypto libssl !!!
tls::handshake $s
puts $s "A ku ku !!!"; flush $s
close $s
tls::status -local $s
#% sbits 256 cipher DHE-RSA-AES256-SHA
tls::status $s
#% sha1_hash 9FA31985DFAF2227EC13D98CC07266D29C5CF548 subject {/C=AU/ST=Some-State/O=Internet Widgits Pty Ltd/CN=serwer} issuer {/C=AU/ST=Some-State/O=Internet Widgits Pty Ltd/CN=autorytet} notBefore {Mar 6 19:53:53 2014 GMT} notAfter {Mar 6 19:53:53 2015 GMT} serial 1 sbits 256 cipher DHE-RSA-AES256-SHA
info comm tls::*
#% ::tls::socket ::tls::import ::tls::password ::tls::init ::tls::ciphers ::tls::handshake ::tls::log ::tls::status ::tls::misc ::tls::callback ::tls::version ::tls::_accept ::tls::xhandshake
tls::version
#% OpenSSL 0.9.7c 30 Sep 2003