- 使用 Spring Initializr 创建 Spring Boot 应用程序
- 在Spring Boot中配置Cassandra
- 在 Spring Boot 上配置 Tomcat 连接池
- 将Camel消息路由到嵌入WildFly的Artemis上
本文整理了Java中freenet.crypt.Yarrow
类的一些代码示例,展示了Yarrow
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Yarrow
类的具体详情如下:
包路径:freenet.crypt.Yarrow
类名称:Yarrow
[英]An implementation of the Yarrow PRNG in Java.
This class implements Yarrow-160, a cryptraphically secure PRNG developed by John Kelsey, Bruce Schneier, and Neils Ferguson. It was designed to follow the specification (www.counterpane.com/labs) given in the paper by the same authors, with the following exceptions:
代码示例来源:origin: freenet/fred
@Override
public int acceptEntropy(EntropySource source, long data, int entropyGuess) {
return acceptEntropy(source, data, entropyGuess, 1.0);
}
代码示例来源:origin: freenet/fred
@Override
public int acceptTimerEntropy(EntropySource timer) {
return acceptTimerEntropy(timer, 1.0);
}
代码示例来源:origin: freenet/fred
private int acceptEntropy(
EntropySource source,
long data,
int entropyGuess,
double bias) {
return accept_entropy(
data,
source,
(int) (bias * Math.min(
32,
Math.min(estimateEntropy(source, data), entropyGuess))));
}
代码示例来源:origin: freenet/fred
private void generateOutput() {
counterInc();
output_buffer = new byte[counter.length];
cipher_ctx.encipher(counter, output_buffer);
if(output_count++ > Pg) {
output_count = 0;
nextBytes(tmp);
rekey(tmp);
}
}
代码示例来源:origin: freenet/fred
private void entropy_init(File seed, boolean reseedOnStartup) {
if(reseedOnStartup) {
Properties sys = System.getProperties();
EntropySource startupEntropy = new EntropySource();
// Consume the system properties list
for(Enumeration<?> enu = sys.propertyNames(); enu.hasMoreElements();) {
String key = (String) enu.nextElement();
consumeString(key);
consumeString(sys.getProperty(key));
}
// Consume the local IP address
try {
consumeString(InetAddress.getLocalHost().toString());
} catch(Exception e) {
// Ignore
}
readStartupEntropy(startupEntropy);
}
read_seed(seed);
}
代码示例来源:origin: freenet/fred
Yarrow r = new Yarrow(new File("/dev/urandom"), "SHA1", "Rijndael", true, false);
long start = System.currentTimeMillis();
for(int i = 0; i < 100; i++)
r.nextBytes(b);
System.out.println(
(double) (System.currentTimeMillis() - start) / (100 * b.length) * 1024 + " ms/k");
start = System.currentTimeMillis();
for(int i = 0; i < 1000; i++)
r.nextInt();
System.out.println(
(double) (System.currentTimeMillis() - start) / 1000 + " ms/int");
start = System.currentTimeMillis();
for(int i = 0; i < 1000; i++)
r.nextLong();
System.out.println(
(double) (System.currentTimeMillis() - start) / 1000 + " ms/long");
int kb = Integer.parseInt(args[1]);
for(int i = 0; i < kb; i++) {
r.nextBytes(b);
System.out.write(b);
long start = System.currentTimeMillis();
for(int i = 0; i < 100000; i++)
r.acceptEntropy(t, System.currentTimeMillis(), 32);
System.err.println(
(double) (System.currentTimeMillis() - start) / 100000);
代码示例来源:origin: freenet/fred
accumulator_init(digest);
reseed_init(digest);
generator_init(cipher);
} catch(NoSuchAlgorithmException e) {
Logger.error(this, "Could not init pools trying to getInstance(" + digest + "): " + e, e);
seedfile = null;
if(reseedOnStartup) {
entropy_init(seed, reseedOnStartup);
seedFromExternalStuff(canBlock);
fast_pool_reseed();
slow_pool_reseed();
} else {
read_seed(seed);
代码示例来源:origin: freenet/fred
public void testDouble() {
Yarrow y = new Yarrow(SEED_FILE, "SHA1", "Rijndael", false, false, false);
ScalarSampleStatistics sample = new ScalarSampleStatistics();
for(int i = 0; i < 10000; ++i) {
sample.add(y.nextDouble());
}
assertEquals(0.5, sample.getMean(), 0.02);
assertEquals(1.0 / (2.0 * Math.sqrt(3.0)), sample.getStandardDeviation(), 0.002);
}
代码示例来源:origin: freenet/fred
public void testNextBoolean() {
Yarrow y = new Yarrow(SEED_FILE, "SHA1", "Rijndael", false, false, false);
int[] results = new int[2];
int RUNS = 1000000;
for(int i=0; i<RUNS; i++) {
if(y.nextBoolean())
results[0]++;
else
results[1]++;
}
assertEquals(RUNS, results[0]+results[1]);
assertTrue(results[0] > RUNS/2 - RUNS/1000);
assertTrue(results[1] > RUNS/2 - RUNS/1000);
}
}
代码示例来源:origin: freenet/fred
RandomSource random = randomSource != null ? randomSource : new Yarrow();
代码示例来源:origin: freenet/fred
/**
* Seed handling
*/
private void read_seed(File filename) {
FileInputStream fis = null;
BufferedInputStream bis = null;
DataInputStream dis = null;
try {
fis = new FileInputStream(filename);
bis = new BufferedInputStream(fis);
dis = new DataInputStream(bis);
EntropySource seedFile = new EntropySource();
for(int i = 0; i < 32; i++)
acceptEntropy(seedFile, dis.readLong(), 64);
dis.close();
} catch(EOFException f) {
// Okay.
} catch(IOException e) {
Logger.error(this, "IOE trying to read the seedfile from disk : " + e.getMessage());
} finally {
Closer.close(dis);
Closer.close(bis);
Closer.close(fis);
}
fast_pool_reseed();
}
private long timeLastWroteSeed = -1;
代码示例来源:origin: freenet/fred
dis = new DataInputStream(fis);
dis.readFully(buf);
consumeBytes(buf);
dis.readFully(buf);
consumeBytes(buf);
dis.close();
} catch(Throwable t) {
dis = new DataInputStream(fis);
dis.readFully(buf);
consumeBytes(buf);
dis.readFully(buf);
consumeBytes(buf);
} catch(Throwable t) {
Logger.normal(this, "Can't read /dev/urandom: " + t, t);
dis = new DataInputStream(fis);
dis.readFully(buf);
consumeBytes(buf);
dis.readFully(buf);
consumeBytes(buf);
} catch(Throwable t) {
Logger.normal(this, "Can't read /dev/random: " + t, t);
consumeBytes(buf);
buf = sr.generateSeed(32);
consumeBytes(buf);
consumeString(Long.toHexString(Runtime.getRuntime().freeMemory()));
代码示例来源:origin: freenet/fred
private void consumeString(String str) {
byte[] b;
try {
b = str.getBytes("UTF-8");
} catch(UnsupportedEncodingException e) {
throw new Error("Impossible: JVM doesn't support UTF-8: " + e, e);
}
consumeBytes(b);
}
代码示例来源:origin: freenet/fred
entropyGatheringThread.start();
this.random = new Yarrow(seed);
代码示例来源:origin: freenet/fred
@Override
public int acceptTimerEntropy(EntropySource timer, double bias) {
long now = System.currentTimeMillis();
return acceptEntropy(timer, now - timer.lastVal, 32, bias);
}
代码示例来源:origin: freenet/fred
protected void readStartupEntropy(EntropySource startupEntropy) {
// Consume the current time
acceptEntropy(startupEntropy, System.currentTimeMillis(), 0);
acceptEntropy(startupEntropy, System.nanoTime(), 0);
// Free memory
acceptEntropy(startupEntropy, Runtime.getRuntime().freeMemory(), 0);
// Total memory
acceptEntropy(startupEntropy, Runtime.getRuntime().totalMemory(), 0);
}
代码示例来源:origin: freenet/fred
@Override
public int acceptEntropyBytes(EntropySource source, byte[] buf, int offset,
int length, double bias) {
int totalRealEntropy = 0;
for(int i = 0; i < length; i += 8) {
long thingy = 0;
int bytes = 0;
for(int j = 0; j < Math.min(length, i + 8); j++) {
thingy = (thingy << 8) + (buf[j] & 0xFF);
bytes++;
}
totalRealEntropy += acceptEntropy(source, thingy, bytes * 8, bias);
}
return totalRealEntropy;
}
我正在将一些 C 代码从 Linux 迁移到 Mac OSX (yosemite)。 Mac OSX crypt() 函数(在 unistd.h 中,正如我所确定的)与 Linux 中的 gcc/gn
我确实对 crypt() PHP 函数感到困惑。 当第二个 crypt 显然使用不同的第二个参数时,以下两个 crypt 函数如何给出相同的输出?差异盐意味着差异哈希对吗? echo crypt("p
我正在为 CS50 做第 2 周的 pset。 使用 crypt 函数时,指向任何字符串密文的 char 指针总是指向我加密的最后一个东西。 例如: char password[] = "AAAA";
我已经使用 c 中的 crypt 函数来加密给定的字符串。我写了下面的代码, #include #include int main() { printf("%s\n",crypt("passw
我正在比较 PHP 的 crypt() 与 Python 的 crypt()。来自阅读 Python 手册: http://docs.python.org/2/library/crypt.html P
我正在比较 PHP 的 crypt() 与 Python 的 crypt()。来自阅读 Python 手册: http://docs.python.org/2/library/crypt.html P
出于某种原因,无论我尝试什么,使用crypt模块都会使用13字符哈希而不是sha-512。我见过无数关于问题的问题,但没有一个符合我的。难道就没有办法改变 crypt 方法吗? >>> import
我想用 crypt 散列密码使用 blowfish 加密的模块。 在 Fedora 29 上我得到了正确的结果: $ python3.7 Python 3.7.2 (default, Jan 3 2
我目前正在研究 Violent Python 一书中的一个示例。你可以看到我的实现 here 我现在正尝试在 Go 中实现相同的脚本来比较性能,注意我是 Go 的新手。打开文件并遍历这些行很好,但是我
背景 crypt 有两个定义,from the docs, 其中一个使用 unistd.h #define _XOPEN_SOURCE /* See feature_test_macros
我使用 dovecot 作为我的邮件传输代理,我的目标是使用 strongest password scheme我的系统支持:SHA512-CRYPT 或 SHA256-CRYPT(BLF-CRYPT
我正在学习 Python。我不明白为什么 hashlib.sha512(salt + password).hexdigest() 没有给出预期的结果。 我正在寻找与 Ulrich Drepper 的
我正在使用 GCC 4.6.0(在一个其他身份不明的平台上)。 我正在使用 crypt() 函数来加密密码。 我以前从未使用过该功能,所以我查看了主页: man 3 crypt 它说要包含 unist
我正在为 Linux 上的 MD5 哈希方案编写一个基本的密码破解程序 /etc/shadow file 。当我使用commons.codec时的DigestUtils或Crypt库,它们的哈希长度是
我更喜欢在 php 中使用 crypt 函数来进行密码加密和其他单向加密要求。因为我可以使用任何受支持的加密算法,通过更改 salt 并且几乎没有其他优势。通常,我不使用任何盐,它使用随机的 MD5
我有点困惑。当我用盐和密码调用 crypt 时,返回的字符串称为哈希或摘要?我很困惑,因为我知道从加密函数返回的内容称为哈希。但是当我们调用crypt 我们也传递 salt 作为参数。我们可以这样说:
本文整理了Java中freenet.crypt.Yarrow类的一些代码示例,展示了Yarrow类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些
我正在做一个练习,其中我需要将字符串中的字母替换为另一个字母(字母表中它前面的第四个字母)。我还必须消除除空格之外的所有非字母字符(“”)。到目前为止,我能够完成第一步(消除字符),但我无法替换字母。
我正在为我的网站创建我的更改密码网站,我的代码有一些问题...... 出于某种原因,我很难在加密后在数据库中比较和替换密码。 我想要这个: 获取当前用户密码并将其与 $oldpass 的输入值进行比较
当我使用 MD5 时,我曾经在数据库中创建一个 varchar(32) 列。但是,我开始使用 crypt(),据我所知,输出长度是可变的。那么我应该为 varchar 设置哪个长度? 最佳答案 返回的
我是一名优秀的程序员,十分优秀!