]> pere.pagekite.me Git - homepage.git/commitdiff
New post.
authorPetter Reinholdtsen <pere@hungry.com>
Thu, 7 Jul 2016 09:26:03 +0000 (11:26 +0200)
committerPetter Reinholdtsen <pere@hungry.com>
Thu, 7 Jul 2016 09:26:03 +0000 (11:26 +0200)
blog/data/2016-07-07-htc-unlock.txt [new file with mode: 0644]

diff --git a/blog/data/2016-07-07-htc-unlock.txt b/blog/data/2016-07-07-htc-unlock.txt
new file mode 100644 (file)
index 0000000..050963e
--- /dev/null
@@ -0,0 +1,81 @@
+Title: Unlocking HTC Desire HD on Linux using unruu and fastboot
+Tags: english, debian, bootsystem, sikkerhet, opphavsrett
+Date: 2016-07-07 11:30
+
+<p>Yesterday, I tried to unlock a HTC Desire HD phone, and it proved
+to be a slight challenge.  Here is the recipe if I ever need to do it
+again.  It all started by me wanting to try the recipe to set up
+<a href="https://blog.torproject.org/blog/mission-impossible-hardening-android-security-and-privacy">an
+hardened Android installation</a> from the Tor project blog on a
+device I had access to.  It is a old mobile phone with a broken
+microphone The initial idea had been to just
+<a href="http://wiki.cyanogenmod.org/w/Install_CM_for_ace">install
+CyanogenMod on it</a>, but did not quite find time to start on it
+until a few days ago.</p>
+
+<p>The unlock process is supposed to be simple: (1) Boot into the boot
+loader (press volume down and power at the same time), (2) select
+'fastboot' before (3) connecting the device via USB to a Linux
+machine, (4) request the device identifier token by running 'fastboot
+oem get_identifier_token', (5) request the device unlocking key using
+the <a href="http://www.htcdev.com/bootloader/">HTC developer web
+site</a> and unlock the phone using the key file emailed to you.</p>
+
+<p>Unfortunately, this only work fi you have hboot version 2.00.0029
+or newer, and the device I was working on had 2.00.0027.  This
+apparently can be easily fixed by downloading a Windows program and
+running it on your Windows machine, if you accept the terms Microsoft
+require you to accept to use Windows - which I do not.  So I had to
+come up with a different approach.  I got a lot of help from AndyCap
+on #nuug, and would not have been able to get this working without
+him.</p>
+
+<p>First I needed to extract the hboot firmware from
+<a href="http://www.htcdev.com/ruu/PD9810000_Ace_Sense30_S_hboot_2.00.0029.exe">the
+windows binary for HTC Desire HD</a> downloaded as 'the RUU' from HTC.
+For this there is is <a href="https://github.com/kmdm/unruu/">a github
+project named unruu</a> using libunshield.  The unshield tool did not
+recognize the file format, but unruu worked and extracted rom.zip,
+containing the new hboot firmware and a text file describing which
+devices it would work for.</p>
+
+<p>Next, I needed to get the new firmware into the device.  For this I
+followed some instructions
+<a href="http://www.htc1guru.com/2013/09/new-ruu-zips-posted/">available
+from HTC1Guru.com</a>, and ran these commands as root on a Linux
+machine with Debian testing:</p>
+
+<p><pre>
+adb reboot-bootloader
+fastboot oem rebootRUU
+fastboot flash zip rom.zip
+fastboot flash zip rom.zip
+fastboot reboot
+</pre></p>
+
+<p>The flash command apparently need to be done twice to take effect,
+as the first is just preparations and the second one do the flashing.
+The adb command is just to get to the boot loader menu, so turning the
+device on while holding volume down and the power button should work
+too.</p>
+
+<p>With the new hboot version in place I could start following the
+instructions on the HTC developer web site.  I got the device token
+like this:</p>
+
+<p><pre>
+fastboot oem get_identifier_token 2>&1 | sed 's/(bootloader) //'
+</pre>
+
+<p>And once I got the unlock code via email, I could use it like
+this:</p>
+
+<p><pre>
+fastboot flash unlocktoken Unlock_code.bin
+</pre></p>
+
+<p>And with that final step in place, the phone was unlocked and I
+could start stuffing the software of my own choosing into the device.
+So far I only inserted a replacement recovery image to wipe the phone
+before I start.  We will see what happen next.  Perhaps I should
+install <a href="https://www.debian.org/">Debian</a> on it. :)</p>