Here are the results from my testing of the 75op/sec nFast device on a Sun Ultra 2 (2x167Mhz, 500MB memory). What you see is the time to generate 10 1024 bit keys, followed by the time to do 1000 encrypt-decrypt-compare operations on random plaintext. The compare ensures we got the same thing we sent in, of course. The set of keys used was rotated every pass, modulo 10, to eliminate possible cacheing or skewed results based on the particular characteristics of one set of keys. Note that included in the times for the encrypt-decrypt-compare operations is a call to Crypto_PRNG to generate 128 random bytes, each iteration. Thus we can be fairly sure the numbers aren't skewed by the particular characteristics of one plaintext block. Average performance of the nFast was 27.27 encrypt-decrypt-compares per second. Average performance of SSLeay was 1.36 encrypt-decrypt-compares per second. The speed of key generation should vary widely, and did. The nFast was obviously faster, but only by an average factor of 3.28. Software RSA (no nFast, SSLeay): Trial 1: 10 keys took 332 seconds. 1000 encrypt/decrypts took 730 seconds. Trial 2: 10 keys took 236 seconds. 1000 encrypt/decrypts took 740 seconds. Trial 3: 10 keys took 444 seconds. 1000 encrypt/decrypts took 735 seconds. nFast RSA: Trial 1: 10 keys took 81 seconds. 1000 encrypt/decrypts took 37 seconds. Trial 2: 10 keys took 134 seconds. 1000 encrypt/decrypts took 36 seconds. Trial 3: 10 keys took 94 seconds. 1000 encrypt/decrypts took 37 seconds. Some data on simple nFast ops... all of these are 1024-bit keys, random plaintext, with a 0 first bit, except the signatures. The signatures are PKCS signatures (private encrypts) of a 20-byte value. This obviously had no effect on the device, it was quite consistent. 10000 encrypts took 64 seconds. 10000 decrypts took 307 seconds. 10000 signatures took 307 seconds. i.e. 156.25 public ops/sec, and 32.57 private ops/sec.