⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tjrandgenerator.java

📁 在java卡上实现的PBOC电子钱包应用
💻 JAVA
字号:
/**
 * Title:        random generator for smartpen
 * Description:
 * Copyright:    Copyright (c) 2004
 * Company:      Gemplus Goldpac Co., Limited
 *
 * @author       Meng Hongwen<alfredmeng@eastday.com>
 * @version 1.0
 */

package PbocEpSimpleVersion;

import javacard.framework.*;
import javacard.security.* ;

public final class tjrandgenerator {

   private boolean  bvaild;
   private byte    size;
   private byte[]   v;
   private RandomData rd;

   //------------------------------------------------
   public tjrandgenerator()
   {
       bvaild = false;
       size = (byte)4;
       v = JCSystem.makeTransientByteArray((short)32,   JCSystem.CLEAR_ON_DESELECT);
       rd = RandomData.getInstance(RandomData.ALG_SECURE_RANDOM);
   }
   //------------------------------------------------
   public final void generateSecureRnd(byte len)
   {
      if(len>=(byte)4 || len <=(byte)64 ) size = len;
      rd.generateData(v,(short)0 ,(short)size);
      bvaild = true;
   }
   //------------------------------------------------
   public final byte getRndValue(byte[] bf)
   {
      if(bvaild) {
         Util.arrayCopyNonAtomic(v,(short)0, bf, (short)0, (short)size);
         return size;
      } else return (byte)0;
   }
   //------------------------------------------------
   public final byte getRndValue(byte[] bf,short boff)
   {
      if(bvaild) {
         Util.arrayCopyNonAtomic(v,(short)0, bf, boff, (short)size);
         return size;
      } else return (byte)0;
   }
   //------------------------------------------------
   public final void revokeRnd()
   {
      bvaild = false;
   }
   //------------------------------------------------
   public final boolean isvaild()
   {
      return bvaild;
   }
   //------------------------------------------------
   public final byte sizeOfRnd()
   {
      return size;
   }
   //------------------------------------------------
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -