DEFINITION MODULE RSAGenerate;

        (********************************************************)
        (*                                                      *)
        (*                    RSA encryption                    *)
        (*                                                      *)
        (*  Programmer:         P. Moylan                       *)
        (*  Last edited:        31 March 2021                   *)
        (*  Status:             Working                         *)
        (*                                                      *)
        (*      In case you're wondering what RSA stands for,   *)
        (*      it's Rivest-Shamir-Adleman, after the           *)
        (*      inventors of the algorithm.                     *)
        (*                                                      *)
        (********************************************************)


FROM RSAKeys IMPORT (*type*) RSAKeyType;


PROCEDURE RSA_Generate (keylength: CARDINAL): RSAKeyType;

    (* Parameter keylength is the desired key length in bits.   *)
    (* For security, it should really be at least 1024, and     *)
    (* preferably 4096 bits.                                    *)

END RSAGenerate.

