mclear / OMNI-Ring

Quick setup tutorial on how to set up toolchain & build Javacard applets.
MIT License
35 stars 5 forks source link

Factory loaded applet cannot be deleted #11

Open benStre opened 1 year ago

benStre commented 1 year ago

Hi,

When trying to uninstall the default applet from my newly purchased ring using GlobalPlatformPro (./gp.exe -delete D276000085), I get the following error:

Could not delete D276000085. Some app still active?

Verbose output:

#
# gp -ldvi -delete D276000085
SCardConnect("SCM Microsystems SCL3711 reader & NFC device 0", T=*) -> T=1, 3B88800100000011778183006D
# GlobalPlatformPro 325fe84
# Running on Windows 10 10.0 amd64, Java 1.8.0_341 by Oracle Corporation
A>> T=1 (4+0000) 00A40400 00
A<< (0097+2) (31ms) 6F5F8408A000000151000000A553734906072A864886FC6B01600B06092A864886FC6B020202630906072A864886FC6B03640B06092A864886FC6B040215650B06092A864886FC6B020101660C060A2B060104012A026E01039F6E01019F6501FE 9000
[DEBUG] GPSession - Auto-detected ISD: A000000151000000
A>> T=1 (4+0000) 80CA9F7F 00
A<< (0045+2) (12ms) 9F7F2A40907805409120130110832928010A15B973409282974093829700000000000000000000000000000000 9000
CPLC: ICFabricator=4090
      ICType=7805
      OperatingSystemID=4091
      OperatingSystemReleaseDate=2013 (2012-01-13)
      OperatingSystemReleaseLevel=0110
      ICFabricationDate=8329 (2018-11-25)
      ICSerialNumber=28010A15
      ICBatchIdentifier=B973
      ICModuleFabricator=4092
      ICModulePackagingDate=8297 (2018-10-24)
      ICCManufacturer=4093
      ICEmbeddingDate=8297 (2018-10-24)
      ICPrePersonalizer=0000
      ICPrePersonalizationEquipmentDate=0000 (2010-01-01)
      ICPrePersonalizationEquipmentID=00000000
      ICPersonalizer=0000
      ICPersonalizationDate=0000 (2010-01-01)
      ICPersonalizationEquipmentID=00000000

A>> T=1 (4+0000) 80CA0042 00
A<< (0009+2) (9ms) 42074953445F49494E 9000
IIN: 42074953445F49494E
A>> T=1 (4+0000) 80CA0045 00
A<< (0009+2) (8ms) 45074953445F43494E 9000
CIN: 45074953445F43494E
Card Data:
A>> T=1 (4+0000) 80CA0066 00
A<< (0077+2) (27ms) 664B734906072A864886FC6B01600B06092A864886FC6B020202630906072A864886FC6B03640B06092A864886FC6B040215650B06092A864886FC6B020101660C060A2B060104012A026E0103 9000
Tag 6: 1.2.840.114283.1
-> Global Platform card
Tag 60: 1.2.840.114283.2.2.2
-> GP Version: 2.2
Tag 63: 1.2.840.114283.3
Tag 64: 1.2.840.114283.4.2.21
-> GP SCP02 i=15
Tag 65: 1.2.840.114283.2.1.1
-> GP Version: 1.1
Tag 66: 1.3.6.1.4.1.42.2.110.1.3
-> JavaCard v3
Card Capabilities:
A>> T=1 (4+0000) 80CA0067 00
A<< (0047+2) (17ms) 672DA00B8001038103102060820101A008800102810315551A8103FFFFC082031E8F00830101850101860105870101 9000
Supports SCP03 i=10 i=20 i=60 with AES-128
Supports SCP02 i=15 i=55 i=1A
Supported DOM privileges: SecurityDomain, DAPVerification, DelegatedManagement, CardLock, CardTerminate, CardReset, CVMManagement, MandatedDAPVerification, TrustedPath, AuthorizedManagement, TokenVerification, GlobalDelete, GlobalLock, GlobalRegistry, FinalApplication, GlobalService, ReceiptGeneration, CipheredLoadFileDataBlock
Supported APP privileges: CardLock, CardTerminate, CardReset, CVMManagement, TrustedPath, GlobalLock, GlobalRegistry, FinalApplication, GlobalService
Supported LFDB hash: SHA-1
Supported Token Verification ciphers: RSA1024_SHA1
Supported Receipt Generation ciphers: RSA1024_SHA1, DES_MAC
Supported DAP Verification ciphers: RSA1024_SHA1
A>> T=1 (4+0000) 80CA00E0 00
A<< (0020+2) (8ms) E012C00401018010C00402018010C00403018010 9000
Version:   1 (0x01) ID:   1 (0x01) type: DES3         length:  16
Version:   1 (0x01) ID:   2 (0x02) type: DES3         length:  16
Version:   1 (0x01) ID:   3 (0x03) type: DES3         length:  16
Warning: no keys given, defaulting to 404142434445464748494A4B4C4D4E4F
[INFO] GPSession - Using card master keys with version 0 for setting up session [MAC]
A>> T=1 (4+0008) 80500000 08 FE30403E953EF268 00
A<< (0028+2) (19ms) 0000832928010A15B9730102000D934871B45C40CD7E71292334E70A 9000
[DEBUG] GPSession - SSC: 000D
[DEBUG] GPSession - Host challenge: FE30403E953EF268
[DEBUG] GPSession - Card challenge: 000D934871B45C40
[DEBUG] GPSession - Card reports SCP02 with key version 1 (0x01)
[INFO] GPSession - Diversified card keys: ENC=404142434445464748494A4B4C4D4E4F (KCV: 8BAF47) MAC=404142434445464748494A4B4C4D4E4F (KCV: 8BAF47) DEK=404142434445464748494A4B4C4D4E4F (KCV: 8BAF47) for SCP02
[INFO] GPSession - Session keys: ENC=217ABF8CC47294B2411871F381D7534E MAC=07EFCCEB0BB0CC01A22E0CE1E1E395F8 RMAC=1AC383888CDEAF2F8EF67E16F815ACCB
[DEBUG] GPSession - Verified card cryptogram: CD7E71292334E70A
[DEBUG] GPSession - Calculated host cryptogram: B6C96C98A96965AB
A>> T=1 (4+0016) 84820100 10 B6C96C98A96965AB8B38ACB6AA38CDEC
A<< (0000+2) (22ms) 9000
A>> T=1 (4+0010) 84F28002 0A 4F007FA057ED1E469CEA 00
A<< (0021+2) (12ms) E3134F08A0000001510000009F700101C5039EFE80 9000
A>> T=1 (4+0010) 84F24002 0A 4F0076630EBCE7DB90F3 00
A<< (0020+2) (12ms) E3124F07D27600008501019F700107C503000000 9000
A>> T=1 (4+0010) 84F21002 0A 4F00F0F914E97EC66923 00
A<< (0022+2) (13ms) E3144F05D2760000859F7001018407D2760000850101 9000
A>> T=1 (4+0010) 84F22002 0A 4F0034C3F86775FD1A70 00
A<< (0013+2) (12ms) E30B4F05D2760000859F700101 9000
A>> T=1 (4+0015) 84E40000 0F 4F05D2760000855F32633EFAE6D919
A<< (0000+2) (13ms) 6985
Could not delete D276000085. Some app still active?
SCardDisconnect("SCM Microsystems SCL3711 reader & NFC device 0", true) tx:154/rx:436

The --uninstall commands seems to only work with .cap files...

When running the --list command, I get the exact same output as described in the tutorial. I am using the SCM SCL3711 Card Reader.

Is my ring broken or am I doing something wrong?

benStre commented 1 year ago

I could delete the applet successfully using an additional --force option.

The --uninstall commands seems to only work with .cap files...

I also realized that the --uninstall command was changed to --delete in the README file, but not in the wiki (https://github.com/mclear/OMNI-Ring/wiki/Loading-an-Applet-on-your-ring). Might be helpful to update that as well.