小编seb*_*zml的帖子

如何生成NONCE并在ANDROID的客户端打印它

我现在正在研究一个与IMS有关的Android程序.我希望服务器将一个随机数发送回客户端作为字符串并在客户端打印.为了生成nonce,我尝试使用此站点的代码.

http://www.exampledepot.com/egs/java.security/CreateSecureRandom.html

部分代码如下

public static String generateNonce() { 
  try {
   // Create a secure random number generator
   SecureRandom sr = SecureRandom.getInstance("SHA1PRNG");

   // Get 1024 random bits
   byte[] bytes = new byte[1024/8];
   sr.nextBytes(bytes);

   // Create two secure number generators with the same seed
   int seedByteCount = 10;
   byte[] seed = sr.generateSeed(seedByteCount);

   sr = SecureRandom.getInstance("SHA1PRNG");
   sr.setSeed(seed);
   SecureRandom sr2 = SecureRandom.getInstance("SHA1PRNG");
   sr2.setSeed(seed);
   } catch (NoSuchAlgorithmException e) {
  }
  //return NONCE;
  return null;
 }
Run Code Online (Sandbox Code Playgroud)

NONCE = generateNonce();在开始时宣布.但问题是不是获取nonce值,而是在客户端打印为null …

java android client-server

4
推荐指数
1
解决办法
2万
查看次数

如何将字节数组转换为键格式?

我想知道如何将字节数组转换为键.

我正在进行AES加密/解密.而不是生成一个键,我想使用我生成的字节数组.

byte[] clientCK = Milenage.f3(sharedSecret16, RANDbytes, opc);  
Run Code Online (Sandbox Code Playgroud)

假设我有一个名为clientCK的字节数组,如上所述.我想在AES加密中使用它,如下所示.

Cipher c = Cipher.getInstance("AES");
c.init(Cipher.ENCRYPT_MODE, key);
byte[] encValue = c.doFinal(valueToEnc.getBytes());
String encryptedValue = new BASE64Encoder().encode(encValue);
Run Code Online (Sandbox Code Playgroud)

因此,我需要将该字节数组clientCK转换为密钥格式.请帮忙.

java bytearray key aes

0
推荐指数
1
解决办法
7690
查看次数

标签 统计

java ×2

aes ×1

android ×1

bytearray ×1

client-server ×1

key ×1