Come “signare” applicazioni Symbian su GNU Linux

Errore di certificato

Errore di certificato

Molti di voi si saranno imbattuti in finestre di errore simili a quella qui a sinistra tentando di installare temi o programmi. Questi errori sono dovuti al fatto che Nokia rilascia dei certificati ai maggiori produttori software (pensiamo ad applicazioni come quelle rilasciate da Google) e questi vengono inclusi nei file di installazione e permettono al cellulare di avere i “permessi” per installare il tema o programma nelle cartelle del sistema.

In questo articolo vi spiegherò come certificare qualsiasi applicazione che non sia “ufficiale”, che altrimenti risulterebbe inutilizzabile: in particolare certificheremo i nostri file *.sis e *.sisx dal sistema operativo GNU Linux.

Per prima cosa registratevi su Nokioteca se ancora non lo avete fatto!

Subito dopo dovete:

1) Richiedere il certificato per il vostro IMEI > LINK
2) Scaricare l’ultimo hack disponibile (HelloOX) > LINK

Una volta completate queste operazioni passiamo alla guida vera e propria :

1) Scaricate l’ultima versione di Ensymble

2) Avrete un file chiamato “ensymble_python2.5-X.XX.py” dove le X indicano la versione. Rinominatelo in “ensymble.py” per semplificare i passaggi da terminale.

3) Spostate i 2 file *.key e *.cer nella stessa cartella in cui avete il file da certificare e il file precedentemente rinominato in ensymble.py

4) Aprite il terminale ed entrate nella cartella in questione utilizzando il comando “cd”

cd PERCORSO_CARTELLA

Diamo i permessi necessari al programma con chmod :

sudo chmod +x ./ensymble.py

5) Usate il comando sotto, nella sintassi che segue (sostituendo ovviamente a mycert.cer, mycert.key i nomi dei vostri file). Vi consiglio di certificare il file dell’hack scariacato in precedenza: installando quello sul vostro cellulare non avrete più necessità di certificare niente per installare programmi non certificati nel vostro cellulare!

python2.5 ./ensymble.py signsis --cert=mycert.cer --privkey=mycert.key --verbose INFILE OUTFILE

INFILE è il file *.sis che volete signare

OUTFILE è il nome, compreso di estensione *.sis da scrivere, del file finale (quello certificato)

5*) Se i file che usate per certificare contengono una password usate il comando con il parametro KEY_PASSWORD come sotto :

python2.5 ./ensymble.py signsis --cert=mycert.cer --privkey=mycert.key --passphrase=KEY_PASSWORD --verbose INFILE OUTFILE

KEY_PASSWORD è la password del certificato (solitamente non viene inserita potete cancellare tale parametro)

6) Ora vi mostro cosa dovrebbe comparire (se non avete password premete INVIO alla richiesta “Enter private key pass phrase:”)

Enter private key pass phrase:
Input SIS file /home/davide/Scaricati/devcert/HelloOXUnsigned.sis
Output SIS file /home/davide/Scaricati/devcert/HelloOX.sis
Certificate devcert.cer
Private key devcert.key
EXE capabilities
DLL capabilities
davide@desktop:~/Scaricati/devcert$


Tenete presente che io ho anteposto il comando python2.5 ogni volta perchè la mia versione di Ensymble era scritta per Python 2.5.2 e io avendo installato (come predefinito) la versione di python 2.6.4 sul mio Ubuntu, ho dovuto forzare all’uso di questa libreria più vecchia, ma magari a voi non serve se usate la 2.5 come predefinita !

Ensymble è un fantastico software che permette di creare, firmare, unire più file *.sis o *.sisx e di vedere e modificare le capabilities (cioè i permessi di sistema) di tutti i file EXE e DLL contenuti nel *.sis e *.sisx.



3 Commenti

  1. racks87
    4 Agosto 2010

Aggiungi un commento