for (int ii = 0 ; ii < 200 ; ii++)
{
encrypt();
}
long start = System.currentTimeMillis();
for (int ii = 0 ; ii < 2000 ; ii++)
{
encrypt();
}
long elapsed = System.currentTimeMillis() - start;
for (int ii = 0 ; ii < 200 ; ii++)
{
decrypt();
}
long start = System.currentTimeMillis();
for (int ii = 0 ; ii < 2000 ; ii++)
{
decrypt();
}
long elapsed = System.currentTimeMillis() - start;
private void encrypt()
{
M = new BigInteger(64,random);
C = M.multiply(k).mod(N);
}
private void decrypt()
{
kk= k.modinverse(N);
Mp = kk.multiply(c).mod(N);
}
但是我觉得在netbeans平台上运行这个程序时结果不正确。 有没有办法在执行时比较任何两种算法密码学。 解密算法是否需要比加密算法长时间? 请有任何建议。如何计算经过时间的加密和解密算法?
我会忽略第一次10000测试的结果,并且在热身后至少运行它们2-10秒。 – 2013-02-14 18:31:57
值得记住的是,随机可能需要比您正在测试的东西更长的时间。我会尝试在开始计时之前构建随机数据。 – 2013-02-14 18:32:59