italia / cie-middleware-macos

Middleware della CIE per MacOS (Carta di identità elettronica)
BSD 3-Clause "New" or "Revised" License
18 stars 3 forks source link

middleware Intel su M1 (ARM) e macOS 12.1 Monterey #52

Open tappoz opened 1 year ago

tappoz commented 1 year ago

Buongiorno, quando controllo i dettagli del lettore NFC con SmartCard CIE appoggiata via OpenSC con il comando pkcs11-tool mi viene notificato che il driver middleware della CIE è per architettura Intel invece che ARM.

$ /Library/OpenSC/bin/pkcs11-tool --show-info --list-slots --verbose --module /Library/ipzs/libcie-pkcs11.dylib
sc_dlopen failed: dlopen(/Library/ipzs/libcie-pkcs11.dylib, 0x0001): tried: '/Library/ipzs/libcie-pkcs11.dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64e')), '/usr/lib/libcie-pkcs11.dylib' (no such file)
error: Failed to load pkcs11 module
Aborting.

Se tralascio la CIE e controllo solo il lettore NFC allora viene rilevato correttamente:

$ /Library/OpenSC/bin/pkcs11-tool --show-info --list-slots --verbose
Cryptoki version 3.0
Manufacturer     OpenSC Project
Library          OpenSC smartcard framework (ver 0.23)
Available slots:
Slot 0 (0x0): BIT4ID miniLector AIR NFC v3
  manufacturer:  BIT4ID
  hardware ver:  3.83
  firmware ver:  0.0
  flags:         token present, removable device, hardware slot
  (token not recognized)
Using slot 0 with a present token (0x0)

Specifiche:

Come faccio a controllare i dettagli della CIE via riga di comando su un Macbook M1?

tappoz commented 1 year ago

Sembrano esserci errori simili anche per Linux con architettura ARM e.g. Raspberry PI postati qui: https://github.com/italia/cie-middleware-linux/issues/42 @aantetomaso mi permetto di taggare qualcuno che vedo attivo tra gli issue di questi 2 repository - c'è qualche piano di fare il porting di questo codice per architetture ARM? 🙏

asterbini commented 1 year ago

Ci sono notizie per chi ha un M1/M2?

aantetomaso commented 1 year ago

Ciao, il Software CIE è compilato su architettura Intel ma funziona perfettamente in compatibilità su processori ARM, a patto ovviamente di avere un lettore con driver compatibili con questa architettura. Abbiamo macchine di test Mac Mini con processore M1 dove il software viene testato con successo.

asterbini commented 1 year ago

Ciao, ho un lettore Elexlinco, che non viene riconosciuto dal CIE ID in MacOS Ventura su M2. Ma la cosa divertente è che se lo uso in una macchina virtuale Windows 11 Arm funziona perfettamente.

asterbini commented 1 year ago

Con lsusb ottengo queste info dal lettore

  Host Controller Driver: AppleT8112USBXHCI

    NC001:

      Product ID: 0x8001
      Vendor ID: 0xae68
      Version: 2.14
      Serial Number: 2019710
      Speed: Up to 12 Mb/s
      Manufacturer: GHI
      Location ID: 0x02100000 / 1
      Current Available (mA): 500
      Current Required (mA): 500
      Extra Operating Current (mA): 0