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

📄 tjrandgenerator.java

📁 智能卡多应用一直是业界的重要课题
💻 JAVA
字号:
/**
 *        Title:  Random generator
 *
 *      Project:  Universal Application Specification v1.0 for PBOCv2
 *
 *    Copyright:  Copyright (c) CUP 2005
 *      Company:  China Unionpay Co., Ltd
 *
 *  Platform   :  Java virtual machine
 *  Language   :  1.3.0-C
 *  Devl tool  :  Borland (c) JBuilder 4.0 *
 *  author     :  Meng Hongwen<hwmeng@chinaunionpay.com>
 *  version 1.0
 */

package cupUAPP;

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)64,   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 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 + -