HTC CustomerID (CID)

Die CustomerID[1] (kurz CID) ist eine allgemeine Identifikationsnummer bei einem HTC Android Smartphone und gibt Auskunft √ľber die Herkunft oder die "Bestimmung" des Smartphones, ob dieses bei einem Netzbetreiber vermarktet wird oder auf dem freien Markt zu kaufen ist. Die CID ist au√üerdem das Identifikationsmerkmal, ob und welches Branding auf dem Ger√§t installiert ist.

Bedeutung der CIDEdit

Die CID sagt im großen und ganzen nur aus, welche Herkunft das Smartphone hat und ob dieses "gebrandet" ist oder nicht. Die CID ist 8 Bytes lang und kann somit eine Reihe von verschiedenen Werten annehmen.

Gespeichert wird die CID an zwei Stellen bei einem HTC Ger√§t. Ein mal im Bootloader, diese kann man als "feste" CID bezeichnen, da sich diese nicht durch das Installieren eines anderen ROM's √§ndert. Der zweite Speicherort ist das ROM selbst als Einstellung, welche im System √ľber den Property Service bekanntgeben wird. Hier ist verbirgt sich die CID als value hinter dem key ro.cid.

Die CID ist werksm√§√üig voreingestellt und l√§sst sich nur √ľber einen fastboot-Befehl √§ndern (Speicherort 1 Bootloader) oder √ľber den Property Service Befehl setprop in einer Shell √§ndern. Alternativ kann man den Wert in der ROM √ľber normale Programmierschnittstellen √§ndern[2].

Auswirkungen der CIDEdit

Die 8 Bytes der CID hindern die meisten Smartphone-Besitzer daran ein Brandingfreies Rom zu flashen. Wenn der Bootloader S-ON ist sind nur signierte Rom's durch ein RUU zur Installation geeignet. In den offiziellen, signierten Rom's von HTC ist immer eine Datei namens android-info.txt enthalten, die unter anderem die neue Versionsnummer und eine Liste von CID's enthält. Ist die eigene CID nicht in der Liste enthalten, so verweigert der Bootloader die Installation des Rom's und gibt folgenden Fehler aus:

CID error

Dadurch wird sichergestellt, das nur RUU's der jeweiligen Netzbetreiber auf das entsprechende Gerät installiert werden können.

Umgehen der CIDEdit

Ist es dem User nicht möglich seine CID zu ändern (S-OFF benötigt), so kann man den Check der CID bei älteren Geräten (wie dem HTC Wildfire) durch eine Goldcard umgehen.

√Ąndern der CIDEdit

Das √Ąndern der CID ben√∂tigt zwingend S-OFF, ein unlocked Bootloader (http://htcdev.com) sperrt weiterhin den Zugriff auf den Befehl. Die CID l√§sst sich nur im fastboot mit folgendem Code √§ndern:

fastboot oem writecid {cid}

Sollte man eine ung√ľltige oder zu kurze/lange CID mit dem Befehl senden, so kann das Telefon danach nicht mehr funktionieren. Nachdem der Befehl positiv quittiert wurde, startet man den Bootloader ein mal neu:

fastboot reboot-bootloader

Nun kann man bereits eine RUU installieren, die f√ľr die neue CID gedacht ist. Unter Umst√§nden kann es n√∂tig sein, die CID des ROM's zu √§ndern. Dies geschieht am einfachsten mit einem Befehl im Terminal Emulator ¬† oder mit der ADB.

Terminal EmulatorEdit

Um die CID in der ROM im Terminal Emulator zu ändern installiert man die App und startet diese. Man gelangt zu einem Kommandozeilenfenster und gibt nun diesen Befehl ein:

setprop ro.cid {cid}

{cid} ist dabei die neue CID. Wird lediglich eine leere Zeile zur√ľckgegeben, ist die CID nach einem Neustart ge√§ndert.

ADBEdit

Das √Ąndern der CID in der ROM mit der ADB funktioniert wie folgt. Man √∂ffnet ein Kommandozeilenfenster ([WINDOWS] + [R] -> ''cmd'' -> Enter) und navigiert zu dem Ordner, an dem die adb.exe gespeichert ist. Anschlie√üend gibt man diesen Befehl ein und best√§tigt diesen mit Enter:

adb shell setprop ro.cid {cid}

{cid} ist dabei die neue CID. Wird lediglich eine leere Zeile zur√ľckgegeben, ist die CID nach einem Neustart ge√§ndert.

Auslesen der CIDEdit

Das Auslesen der CID ist mit dem fastboot-Befehl:

fastboot oem readcid

oder im ROM mit folgendem Befehl:

adb shell getprop ro.cid

m√∂glich. Der Befehl getprop ro.cid l√§sst sich auch im Terminal Emulator ¬† ausf√ľhren und liefert das selbe Ergebnis.

CID-ListeEdit

In der folgenden Tabelle findet ihr einige der CID's, die verwendet werden:

Betreibername CustomerID
SuperCID 11111111
AirTel-India ????????
Asia-HK-CHT HTC__622
ATT CWS__001
BM BM___001
Bouygues-Telecom BOUYG201
Brightstar-PTB BSTAR502
Brightstar-SPA BSTAR301
Chunghwa-Taiwan CHT__601
CT HTCCN702
CU HTCCN703
DCM DOCOM801
DOPOD DOPOD701
Era T-MOB009
Fastweb-IT FASTW401
GOOGLE GOOGL001
H3G-DAN H3G__F05
H3G-Italy H3G__402
H3G-ROI H3G__003
H3G-SWE H3G__G04
H3G-UK H3G__001
HTC-Asia-SEA HTC__037
HTC-Asia-SEA-WWE HTC__044
HTC-Australia HTC__023
HTC-BE HTC__E41
HTC-Czech HTC__C24
HTC-Denmark HTC__F08
HTC-Dutch HTC__E11
HTC-EastEurope HTC__032
HTC-Europe HTC__034[3]
HTC-ELL HTC__N34
HTC-FRA HTC__203
HTC-FRA-Bouygues HTC__247
HTC-GCC HTC__J15
HTC-GER HTC__102
HTC-India HTC__038
HTC-ITA HTC__405
HTC-Nor HTC__Y13
HTC-Norway HTC__H10
HTC-Poland HTC__B25
HTC-PTG HTC__506
HTC-Russia HTC__A07
HTC-Singapore StarHub-Singapore(HTC__044)
HTC-SPA HTC__304
HTC-Sweden HTC__G09
HTC-Turkey HTC__M27
HTC-WWE HTC__001
Hutch-Australia HUTCH001
O2-DE O2___102
O2-UK O2___001
Open-Channel HTCCN701
Optus-Australia OPTUS001
ORANGE-AT ORANG113
ORANGE-BE ORANG012
ORANGE-CH-FRA ORANG203
ORANGE-CH-GER ORANG104
ORANGE-ES ORANG309
ORANGE-French ORANG202
ORANGE-PL ORANGB10
ORANGE-PO ORANG008
ORANGE-SK ORANG006
ORANGE-UK ORANG001
Rogers ROGER001
SMC-Voda-HK SMCVD001
StarHub-Singapore ????????
TELEF-Spain TELEF301
Telstra TELST001
TELUS TELUS001
TIM-Italy TIM__401
TMA T-MOB102
TMCZ T-MOB004
TMD T-MOB101
TMH T-MOB007
TMHR T-MOB006
TMMK T-MOBL11
TMNL T-MOB003
TMSK T-MOB008
TMUK T-MOB005
TMUS T-MOB010
TWM-TW HTC__621
VIRGIN-UK VIRGI001
VODA-Africa-South HTC__016
VODA-Australia VODAP021
VODA-Germany VODAP102
VODA-Greece VODAP006
VODA-Ireland VODAP019
VODA-Italy VODAP405
VODA-Mobilkom VODAP120
VODA-Netherland VODAPE17
VODA-New-Zealand VODAP022
VODA-Portugal VODAPD18
VODA-Proximus VODAP024
VODA-SA VODAP026
VODA-SFR VODAP203
VODA-Spain VODAP304
VODA-Swisscom-DE VODAP110
VODA-Swisscom-FR VODAP212
VODA-Swisscom-IT VODAP416
VODA-Swisscom-WWE VODAP015
VODA-TR VODAPM27
VODA-UK VODAP001

SuperCIDEdit

Die SuperCID ist praktisch der beste Wert, den man als CID haben kann. Die SuperCID erlaubt es einem Nutzer jedes ROM mit jeder RUU zu installieren. Die SuperCID ist immer in allen offiziellen ROM's von HTC enthalten. Das bedeutet, das man unabhängig von der Bestimmung einer RUU diese auf jeden Fall installieren, wenn man die SuperCID gesetzt hat. Allerdings lassen sich OTAs nicht installieren, solange die SuperCID gesetzt ist.

Die SuperCID ist immer acht mal die 1 (11111111) und l√§sst sich wie eine andere CID auch √ľber den Fastboot zu setzen.

EinzelnachweiseEdit