Commit 2ff7a0ed authored by Ben Laurie's avatar Ben Laurie
Browse files

Make sure we detect corruption.

parent 442cbb06
Loading
Loading
Loading
Loading
+22 −4
Original line number Diff line number Diff line
@@ -219,6 +219,7 @@ int main(int argc, char *argv[])
    int plen;
    int clen = 0;
    int num;
    int n;

    CRYPTO_malloc_debug_init();
    CRYPTO_dbg_set_options(V_CRYPTO_MDEBUG_ALL);
@@ -287,10 +288,7 @@ int main(int argc, char *argv[])
	    err=1;
	    }
	else if (memcmp(ctext, ctext_ex, num) == 0)
	    {
	    printf("OAEP test vector %d passed!\n", v);
	    goto next;
	    }
    
	/* Different ciphertexts (rsa_oaep.c without -DPKCS_TESTVECT).
	   Try decrypting ctext_ex */
@@ -305,6 +303,26 @@ int main(int argc, char *argv[])
	    }
	else
	    printf("OAEP encryption/decryption ok\n");

	/* Try decrypting corrupted ciphertexts */
	for(n = 0 ; n < clen ; ++n)
	    {
	    int b;
	    unsigned char saved = ctext[n];
	    for(b = 0 ; b < 256 ; ++b)
		{
		if(b == saved)
		    continue;
		ctext[n] = b;
		num = RSA_private_decrypt(num, ctext, ptext, key,
					  RSA_PKCS1_OAEP_PADDING);
		if(num > 0)
		    {
		    printf("Corrupt data decrypted!\n");
		    err = 1;
		    }
		}
	    }
    next:
	RSA_free(key);
	}
+1 −1
Original line number Diff line number Diff line
@@ -199,7 +199,7 @@ test_x509:
	echo test second x509v3 certificate
	sh ./tx509 v3-cert2.pem 2>/dev/null

test_rsa:
test_rsa: $(RSATEST)$(EXE_EXT)
	@sh ./trsa 2>/dev/null
	../util/shlib_wrap.sh ./$(RSATEST)