微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java.security.SecureRandomSpi的实例源码

项目:crypto-gwt    文件SecureRandomSpiFactory.java   
public SecureRandomSpi create(Object constructorParam) {
    try {
        return Adaptor.adapt(type.newInstance(),SecureRandomSpi.class);
    } catch (Exception e) {
        throw new IllegalArgumentException("Invalid type: " + type,e);
    }
}
项目:freeVM    文件F_SecureRandomTest_04.java   
public int test() {
    if ("Failed".equalsIgnoreCase(Security.getProperty("policy.allowSystemProperty"))) {
        return error("An extra policy feature is disabled by default.");
    }

    System.setSecurityManager(new SecurityManager());       

    Provider p = new SecureRandomProvider(ProviderName,Version,Description);
    if (p == null) {
        return fail("Couldn't create secure random provider. Test Failed.");           
    }

    SecureRandomSpi secureRandomSpi = new SecureRandomSPImplementation();
    if (secureRandomSpi == null) {
        return fail("Couldn't create an instance of SecureRandomSPImplementation. Test Failed.");
    }

    Security.addProvider(p);
    SecureRandom random = new MySecureRandom(secureRandomSpi,p);        

    log.info("Generating seed...");
    byte[] seed = random.generateSeed(100);
    log.info("OK\nseeding pseudo-random number generator...");
    random.setSeed(seed);
    log.info("OK\nGetting pseudo-random numbers...");
    byte[] numbers = new byte[10];        
    random.nextBytes(numbers);
    log.info("OK");

    return pass("Test passed");
}
项目:ModifiableVariable    文件BadRandom.java   
public BadRandom(Random r,SecureRandomSpi secureRandomSpi,Provider provider) {
    this.r = r;
}
项目:PasswordSafe    文件EntropyGathererBase.java   
protected EntropyGathererBase(String name)
{
    jvmRandom = new SecureRandom();

    random = new DigestRandomGenerator(new SHA512Digest());

    spi = new SecureRandomSpi()
    {
        private boolean init = true;

        protected final void enginesetSeed(byte[] seed)
        {
            random.addSeedMaterial(seed);
        }

        protected final void engineNextBytes(byte[] bytes)
        {
            if(init)
            {
                // initialize generator with randomness from jvm
                random.addSeedMaterial(jvmRandom.generateSeed(256));
                init = false;
            }
            else
            {
                random.addSeedMaterial(jvmRandom.nextLong());                   
            }

            random.addSeedMaterial(System.currentTimeMillis());
            random.addSeedMaterial(Runtime.getRuntime().freeMemory());
            random.addSeedMaterial(System.nanoTime());

            random.nextBytes(bytes);
        }

        protected final byte[] engineGenerateSeed(int numBytes)
        {
            byte[] b = new byte[numBytes];
            engineNextBytes(b);
            return b;
        }
    };

    provider = new Provider(name,1.2,"andy goryachev") { };
}
项目:j2objc    文件SecureRandom2Test.java   
public MySecureRandom(SecureRandomSpi secureRandomSpi,Provider provider) {
    super(secureRandomSpi,provider);
}
项目:In-the-Box-Fork    文件SecureRandom2Test.java   
public MySecureRandom(SecureRandomSpi secureRandomSpi,provider);
}
项目:crypto-gwt    文件SecureRandomSpiFactory.java   
public SecureRandomSpiFactory(Class<? extends java.security.SecureRandomSpi> type) {
    this.type = type;
}
项目:cn1    文件SecureRandom2Test.java   
public MySecureRandom(SecureRandomSpi secureRandomSpi,provider);
}
项目:freeVM    文件SecureRandom2Test.java   
public MySecureRandom(SecureRandomSpi secureRandomSpi,provider);
}
项目:freeVM    文件F_SecureRandomTest_04.java   
public MySecureRandom(SecureRandomSpi secureRandomSpi,provider);
    log.info("MySecureRandom ctor has been called.");
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。