J3A040 JCOP カードにアプレットをインストールしようとしています。
インストール方法として、次のものがあります。
protected MainApplet() {
try {
// CREATE RSA KEYS AND PAIR
m_keyPair = new KeyPair(KeyPair.ALG_RSA_CRT, KeyBuilder.LENGTH_RSA_2048);
// STARTS ON-CARD KEY GENERATION PROCESS
m_keyPair.genKeyPair();
// OBTAIN KEY REFERENCES
m_publicKey = (RSAPublicKey) m_keyPair.getPublic();
m_privateKey = (RSAPrivateKey) m_keyPair.getPrivate();
} catch (CryptoException c) {
//this line will give you the reason of problem
short reason = c.getReason();
ISOException.throwIt(reason); // for check
}
register();
}
インストールは常に次のエラーで失敗します。
pro.javacard.gp.GPException: Install for Install and make selectable failed SW: 6A80
at pro.javacard.gp.GlobalPlatform.check(GlobalPlatform.java:1092)
at pro.javacard.gp.GlobalPlatform.installAndMakeSelectable(GlobalPlatform.java:798)
at pro.javacard.gp.GPTool.main(GPTool.java:478)
ただし、キーペアの生成を削除すると、すべて正常に機能します。カードの仕様を読みましたが、次のとおりです。
. 暗号化/復号化および署名の生成と検証のための RSA および RSA CRT (最大 2048 ビットの 1280 キー) 1 d. 安全な環境での RSA CRT キー生成 (1280 ビット キーから 2048 ビット キーまで)
問題ないと思います。
推測はありますか?