From 32803d4577151e18252c7e2102738b544e99fcbc Mon Sep 17 00:00:00 2001 From: siddharth ravikumar Date: Mon, 14 Oct 2024 19:16:11 -0400 Subject: lib: update `RSAGenKey` Add `size` argument. --- lib/rsa.go | 7 ++++--- lib/rsa_test.go | 4 ++-- 2 files changed, 6 insertions(+), 5 deletions(-) (limited to 'lib') diff --git a/lib/rsa.go b/lib/rsa.go index 772b898..9353824 100644 --- a/lib/rsa.go +++ b/lib/rsa.go @@ -68,7 +68,8 @@ func InvMod(a, n *big.Int) (*big.Int, error) { return t0, nil } -func RSAGenKey() (*RSAPair, error) { +// RSAGenKey generates a rsa key pair with N equal to size bits. +func RSAGenKey(size int) (*RSAPair, error) { // Initialize. e := big.NewInt(3) d := big.NewInt(0) @@ -77,13 +78,13 @@ func RSAGenKey() (*RSAPair, error) { // Compute n and d. for { // Generate prime p. - p, err := rand.Prime(rand.Reader, 1024) + p, err := rand.Prime(rand.Reader, size/2) if err != nil { return nil, CPError{"unable to generate p"} } // Generate prime q. - q, err := rand.Prime(rand.Reader, 1024) + q, err := rand.Prime(rand.Reader, size/2) if err != nil { return nil, CPError{"unable to generate q"} } diff --git a/lib/rsa_test.go b/lib/rsa_test.go index d26ee2c..810d7cc 100644 --- a/lib/rsa_test.go +++ b/lib/rsa_test.go @@ -59,7 +59,7 @@ func TestInvMod(t *testing.T) { } func TestRSAGenKey(t *testing.T) { - pair, err := RSAGenKey() + pair, err := RSAGenKey(2048) if err != nil { t.Errorf("genkey: %v", err) return @@ -95,7 +95,7 @@ func TestRSAGenKey(t *testing.T) { } func TestRSAEncryptDecrypt(t *testing.T) { - pair, err := RSAGenKey() + pair, err := RSAGenKey(2048) if err != nil { t.Errorf("genkey: %v", err) return -- cgit v1.2.3