Java 中的 SecureRandom getInstance() 方法
SecureRandom 对象可以使用类 java.security.SecureRandom 中的 getInstance() 方法获取。这个 SecureRandom 对象有助于实现指定的随机数生成器 (RNG) 算法。
getInstance() 方法需要一个参数,即随机数生成器 (RNG) 算法,并返回 SecureRandom 对象。
下面给出了展示此方法的程序 −
范例
import java.security.*; import java.util.*; public class Demo { public static void main(String[] argv) { try { SecureRandom sRandom = SecureRandom.getInstance("SHA1PRNG"); String s = "Apple"; byte[] arrB = s.getBytes(); System.out.println("The Byte array before the operation is: " + Arrays.toString(arrB)); sRandom.nextBytes(arrB); System.out.println("The Byte array after the operation is: " + Arrays.toString(arrB)); } catch (NoSuchAlgorithmException e) { System.out.println("Error!!! NoSuchAlgorithmException"); } catch (ProviderException e) { System.out.println("Error!!! ProviderException"); } } }
输出
The Byte array before the operation is: [65, 112, 112, 108, 101] The Byte array after the operation is: [10, 60, 119, -12, -103]
现在让我们来理解一下上面的程序。
getInstance() 方法用于获取 SecureRandom 对象 sRandom。通过它,并在操作前后显示字节数组。下面给出了展示代码片段 −
try { SecureRandom sRandom = SecureRandom.getInstance("SHA1PRNG"); String s = "Apple"; byte[] arrB = s.getBytes(); System.out.println("The Byte array before the operation is: " + Arrays.toString(arrB)); sRandom.nextBytes(arrB); System.out.println("The Byte array after the operation is: " + Arrays.toString(arrB)); }
广告