Question:
Can SSL be combined with RSA Encryption?
jentesh24
2012-02-04 00:17:33 UTC
Trying to code SSL with RSA encryption combined in it in Java. Any algorithms or source codes I can refer to?
Three answers:
ʄaçade
2012-02-04 00:44:21 UTC
NAME

openssl - OpenSSL command line tool



SYNOPSIS

openssl command [ command_opts ] [ command_args ]



openssl [ list-standard-commands | list-message-digest-commands | list-cipher-commands | list-cipher-

algorithms | list-message-digest-algorithms | list-public-key-algorithms]



openssl no-XXX [ arbitrary options ]



DESCRIPTION

OpenSSL is a cryptography toolkit implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) network protocols and related cryptography standards required by them.



The openssl program is a command line tool for using the various cryptography functions of OpenSSL's crypto library from the shell. It can be used for



o Creation and management of private keys, public keys and parameters

o Public key cryptographic operations

o Creation of X.509 certificates, CSRs and CRLs

o Calculation of Message Digests

o Encryption and Decryption with Ciphers

o SSL/TLS Client and Server Tests

o Handling of S/MIME signed or encrypted mail

o Time Stamp requests, generation and verification



...



(... later ...)



genrsa Generation of RSA Private Key. Superceded by genpkey.

rsa RSA key management.

rsautl RSA utility for signing, verification, encryption, and decryption. Superseded by pkeyutl

rand(1), req(1), rsa(1), rsautl(1), s_client(1), s_server(1), s_time(1), smime(1), spkac(1), verify(1)





Just enter "man openssl" and read all about it. It is quite long and involved though.

In short, yes, you can use RSA with openssl.
Lisa
2016-05-16 02:42:14 UTC
1
mdigitale
2012-02-04 16:45:27 UTC
I wrote an SSL/TLS library in C (for a micro-controller with only 128K of memory) that supported the RSA Algorithm. Of course that required me to also write an arbitrary precision math library to handle the calculations. If you have the luxury, an open source approach like OpenSSL will definitely be easiest, fastest and most secure for a beginner to implement.



If you want to take the long route, Java also supports the BigInteger class which will save you a lot of work.



Good luck.


This content was originally posted on Y! Answers, a Q&A website that shut down in 2021.
Loading...