Chromium Code Reviews| Index: base/android/java/src/org/chromium/base/SecureRandomInitializer.java |
| diff --git a/remoting/android/java/src/org/chromium/chromoting/SecureRandomInitializer.java b/base/android/java/src/org/chromium/base/SecureRandomInitializer.java |
| similarity index 85% |
| rename from remoting/android/java/src/org/chromium/chromoting/SecureRandomInitializer.java |
| rename to base/android/java/src/org/chromium/base/SecureRandomInitializer.java |
| index cf731ed31054de66a661a015a008c036a8abe013..457e2ef8b913606fc71f3209a7e6ea6e0c95e405 100644 |
| --- a/remoting/android/java/src/org/chromium/chromoting/SecureRandomInitializer.java |
| +++ b/base/android/java/src/org/chromium/base/SecureRandomInitializer.java |
| @@ -2,7 +2,7 @@ |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| -package org.chromium.chromoting; |
| +package org.chromium.base; |
| import java.io.FileInputStream; |
| import java.io.IOException; |
| @@ -16,6 +16,8 @@ import java.security.SecureRandom; |
| public class SecureRandomInitializer { |
| private static final int NUM_RANDOM_BYTES = 16; |
| + private static byte[] sSeedBytes = new byte[NUM_RANDOM_BYTES]; |
|
palmer
2014/10/06 19:23:46
I suspect a method-scoped heap array has a greater
|
| + |
| /** |
| * Safely initializes the random number generator, by seeding it with data from /dev/urandom. |
| */ |
| @@ -23,11 +25,10 @@ public class SecureRandomInitializer { |
| FileInputStream fis = null; |
| try { |
| fis = new FileInputStream("/dev/urandom"); |
| - byte[] bytes = new byte[NUM_RANDOM_BYTES]; |
| - if (bytes.length != fis.read(bytes)) { |
| + if (fis.read(sSeedBytes) != sSeedBytes.length) { |
| throw new IOException("Failed to get enough random data."); |
| } |
| - generator.setSeed(bytes); |
| + generator.setSeed(sSeedBytes); |
| } finally { |
| try { |
| if (fis != null) { |