propagate from branch 'i2p.i2p.zzz.test2' (head ee7dbea07e8ad7e01cb8012a1540aca8346ee7d2)

to branch 'i2p.i2p' (head 2cb447c64ae706c6cead619c9428083fce6f1d46)
This commit is contained in:
zzz
2016-06-11 13:47:12 +00:00
21 changed files with 434 additions and 210 deletions

View File

@ -41,6 +41,7 @@ public interface AMDCPUInfo extends CPUInfo {
public boolean IsAthlon64Compatible();
/**
* @return true if the CPU present in the machine is at least an 'k10' CPU
* @since 0.9.26
*/
public boolean IsK10Compatible();
/**
@ -49,6 +50,7 @@ public interface AMDCPUInfo extends CPUInfo {
public boolean IsBobcatCompatible();
/**
* @return true if the CPU present in the machine is at least an 'jaguar' CPU
* @since 0.9.26
*/
public boolean IsJaguarCompatible();
/**
@ -57,14 +59,17 @@ public interface AMDCPUInfo extends CPUInfo {
public boolean IsBulldozerCompatible();
/**
* @return true if the CPU present in the machine is at least a 'piledriver' CPU
* @since 0.9.26
*/
public boolean IsPiledriverCompatible();
/**
* @return true if the CPU present in the machine is at least a 'steamroller' CPU
* @since 0.9.26
*/
public boolean IsSteamrollerCompatible();
/**
* @return true if the CPU present in the machine is at least a 'excavator' CPU
* @since 0.9.26
*/
public boolean IsExcavatorCompatible();

View File

@ -376,27 +376,33 @@ public class CPUID {
System.out.println("CPU has ABM: " + c.hasABM());
if(c instanceof IntelCPUInfo){
System.out.println("\n **Intel-info**");
System.out.println("Is PII-compatible: "+((IntelCPUInfo)c).IsPentium2Compatible());
System.out.println("Is PIII-compatible: "+((IntelCPUInfo)c).IsPentium3Compatible());
System.out.println("Is PIV-compatible: "+((IntelCPUInfo)c).IsPentium4Compatible());
System.out.println("Is Atom-compatible: "+((IntelCPUInfo)c).IsAtomCompatible());
System.out.println("Is PII-compatible: "+((IntelCPUInfo)c).IsPentium2Compatible());
System.out.println("Is PIII-compatible: "+((IntelCPUInfo)c).IsPentium3Compatible());
System.out.println("Is PIV-compatible: "+((IntelCPUInfo)c).IsPentium4Compatible());
System.out.println("Is Atom-compatible: "+((IntelCPUInfo)c).IsAtomCompatible());
System.out.println("Is Pentium M compatible: "+((IntelCPUInfo)c).IsPentiumMCompatible());
System.out.println("Is Core2-compatible: "+((IntelCPUInfo)c).IsCore2Compatible());
System.out.println("Is Corei-compatible: "+((IntelCPUInfo)c).IsCoreiCompatible());
System.out.println("Is Sandy-compatible: "+((IntelCPUInfo)c).IsSandyCompatible());
System.out.println("Is Ivy-compatible: "+((IntelCPUInfo)c).IsIvyCompatible());
System.out.println("Is Haswell-compatible: "+((IntelCPUInfo)c).IsHaswellCompatible());
System.out.println("Is Core2-compatible: "+((IntelCPUInfo)c).IsCore2Compatible());
System.out.println("Is Corei-compatible: "+((IntelCPUInfo)c).IsCoreiCompatible());
System.out.println("Is Sandy-compatible: "+((IntelCPUInfo)c).IsSandyCompatible());
System.out.println("Is Ivy-compatible: "+((IntelCPUInfo)c).IsIvyCompatible());
System.out.println("Is Haswell-compatible: "+((IntelCPUInfo)c).IsHaswellCompatible());
System.out.println("Is Broadwell-compatible: "+((IntelCPUInfo)c).IsBroadwellCompatible());
}
if(c instanceof AMDCPUInfo){
System.out.println("\n **AMD-info**");
System.out.println("Is K6-compatible: "+((AMDCPUInfo)c).IsK6Compatible());
System.out.println("Is K6_2-compatible: "+((AMDCPUInfo)c).IsK6_2_Compatible());
System.out.println("Is K6_3-compatible: "+((AMDCPUInfo)c).IsK6_3_Compatible());
System.out.println("Is Geode-compatible: "+((AMDCPUInfo)c).IsGeodeCompatible());
System.out.println("Is Athlon-compatible: "+((AMDCPUInfo)c).IsAthlonCompatible());
System.out.println("Is Athlon64-compatible: "+((AMDCPUInfo)c).IsAthlon64Compatible());
System.out.println("Is Bobcat-compatible: "+((AMDCPUInfo)c).IsBobcatCompatible());
System.out.println("Is K6-compatible: "+((AMDCPUInfo)c).IsK6Compatible());
System.out.println("Is K6_2-compatible: "+((AMDCPUInfo)c).IsK6_2_Compatible());
System.out.println("Is K6_3-compatible: "+((AMDCPUInfo)c).IsK6_3_Compatible());
System.out.println("Is Geode-compatible: "+((AMDCPUInfo)c).IsGeodeCompatible());
System.out.println("Is Athlon-compatible: "+((AMDCPUInfo)c).IsAthlonCompatible());
System.out.println("Is Athlon64-compatible: "+((AMDCPUInfo)c).IsAthlon64Compatible());
System.out.println("Is Bobcat-compatible: "+((AMDCPUInfo)c).IsBobcatCompatible());
System.out.println("Is K10-compatible: "+((AMDCPUInfo)c).IsK10Compatible());
System.out.println("Is Jaguar-compatible: "+((AMDCPUInfo)c).IsJaguarCompatible());
System.out.println("Is Bulldozer-compatible: "+((AMDCPUInfo)c).IsBulldozerCompatible());
System.out.println("Is Piledriver-compatible: "+((AMDCPUInfo)c).IsPiledriverCompatible());
System.out.println("Is Steamroller-compatible: "+((AMDCPUInfo)c).IsSteamrollerCompatible());
System.out.println("Is Excavator-compatible: "+((AMDCPUInfo)c).IsExcavatorCompatible());
}
}

View File

@ -15,6 +15,7 @@ import java.security.InvalidKeyException;
import java.security.KeyFactory;
import java.security.KeyPair;
import java.security.KeyPairGenerator;
import java.security.MessageDigest;
import java.security.ProviderException;
import java.security.interfaces.ECPrivateKey;
import java.security.interfaces.ECPublicKey;
@ -416,19 +417,30 @@ public final class KeyGenerator {
else
System.out.println(type + " private-to-public test FAILED");
//System.out.println("privkey " + keys[1]);
MessageDigest md = type.getDigestInstance();
for (int i = 0; i < runs; i++) {
RandomSource.getInstance().nextBytes(src);
md.update(src);
byte[] sha = md.digest();
SimpleDataStructure hash = type.getHashInstance();
hash.setData(sha);
long start = System.nanoTime();
Signature sig = DSAEngine.getInstance().sign(src, privkey);
Signature sig2 = DSAEngine.getInstance().sign(hash, privkey);
if (sig == null)
throw new GeneralSecurityException("signature generation failed");
if (sig2 == null)
throw new GeneralSecurityException("signature generation (H) failed");
long mid = System.nanoTime();
boolean ok = DSAEngine.getInstance().verifySignature(sig, src, pubkey);
boolean ok2 = DSAEngine.getInstance().verifySignature(sig2, hash, pubkey);
long end = System.nanoTime();
stime += mid - start;
vtime += end - mid;
if (!ok)
throw new GeneralSecurityException(type + " V(S(data)) fail");
if (!ok2)
throw new GeneralSecurityException(type + " V(S(H(data))) fail");
}
stime /= 1000*1000;
vtime /= 1000*1000;