// ------------------------------------------------ public penCipher() { desEngine = Cipher.getInstance(Cipher.ALG_DES_ECB_NOPAD, false); desKey = KeyBuilder.buildKey(KeyBuilder.TYPE_DES, KeyBuilder.LENGTH_DES, false); des3Key = KeyBuilder.buildKey(KeyBuilder.TYPE_DES, KeyBuilder.LENGTH_DES3_2KEY, false); tbuf1 = JCSystem.makeTransientByteArray((short) 8, JCSystem.CLEAR_ON_DESELECT); tbuf2 = JCSystem.makeTransientByteArray((short) 8, JCSystem.CLEAR_ON_DESELECT); }
private PKIApplet() { pin = new OwnerPIN(PIN_TRIES, MAX_PIN_SIZE); puc = new OwnerPIN(PUC_TRIES, PUC_SIZE); rd = RandomData.getInstance(RandomData.ALG_SECURE_RANDOM); pkcs1Cipher = Cipher.getInstance(Cipher.ALG_RSA_PKCS1, false); nopadCipher = Cipher.getInstance(Cipher.ALG_RSA_NOPAD, false); md = MessageDigest.getInstance(MessageDigest.ALG_SHA, false); tmp = JCSystem.makeTransientByteArray(TMP_SIZE, JCSystem.CLEAR_ON_DESELECT); state = STATE_INITIAL; authKeyId = new byte[KEY_ID_SIZE]; signKeyId = new byte[KEY_ID_SIZE]; decKeyId = new byte[KEY_ID_SIZE]; authKeyPrivate = (RSAPrivateCrtKey) KeyBuilder.buildKey(KeyBuilder.TYPE_RSA_CRT_PRIVATE, KeyBuilder.LENGTH_RSA_1024, false); signKeyPrivate = (RSAPrivateCrtKey) KeyBuilder.buildKey(KeyBuilder.TYPE_RSA_CRT_PRIVATE, KeyBuilder.LENGTH_RSA_1024, false); decKeyPrivate = (RSAPrivateCrtKey) KeyBuilder.buildKey(KeyBuilder.TYPE_RSA_CRT_PRIVATE, KeyBuilder.LENGTH_RSA_1024, false); tempKeyPublic = (RSAPublicKey) KeyBuilder.buildKey(KeyBuilder.TYPE_RSA_PUBLIC, KeyBuilder.LENGTH_RSA_1024, false); currentPrivateKey = JCSystem.makeTransientObjectArray((short) 1, JCSystem.CLEAR_ON_DESELECT); expectedDecipherDataLength = JCSystem.makeTransientShortArray((short) 1, JCSystem.CLEAR_ON_DESELECT); fileSystem = new FileSystem((short) 16); }