📄 tjrandgenerator.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 + -