Forum: Ruby SSLSocket - where does the encryption happen?

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Bill Kelly (Guest)
on 2006-01-02 03:19
(Received via mailing list)
Howdy all, and Happy New Year.

I'm looking at OpenSSL::SSL::SSLSocket (openssl/ssl.rb), and
also the code in drb/ssl.rb and webrick/ssl.rb ... trying to
understand where the actual encryption/decryption takes place.

All three of these are pretty similar - they set up an
SSLContext, and they also wrap a plain ol' TCPSocket.  But I'm
having trouble locating any code that would be performing the
encryption/decryption on the actual I/O.

Is it right in front of my eyes and I'm not seeing it?  If
anyone could help shed some light on this I'd be grateful.


Thanks,

Regards,

Bill
Ilmari Heikkinen (Guest)
on 2006-01-02 07:20
(Received via mailing list)
On 1/2/06, Bill Kelly <billk@cts.com> wrote:
>
> Is it right in front of my eyes and I'm not seeing it?  If
> anyone could help shed some light on this I'd be grateful.
>

If I'm not terribly mistaken, all the actual work takes place in the C
extension.
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/e...
<- there's the SSLSocket functions at least
Bill Kelly (Guest)
on 2006-01-02 12:09
(Received via mailing list)
Hi Ilmari,

From: "Ilmari Heikkinen" <ilmari.heikkinen@gmail.com>
> On 1/2/06, Bill Kelly <billk@cts.com> wrote:
>>
>> I'm looking at OpenSSL::SSL::SSLSocket (openssl/ssl.rb), and
>> also the code in drb/ssl.rb and webrick/ssl.rb ... trying to
>> understand where the actual encryption/decryption takes place.
>
> If I'm not terribly mistaken, all the actual work takes place in the C
> extension.
> http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/e...
> <- there's the SSLSocket functions at least

Thanks much!  I should have realized... After all, the ruby-side
SSLSocket
class has no initialize()

    class SSLSocket
      include Buffering
      include SocketForwarder
    end


Thanks,

Bill
This topic is locked and can not be replied to.