Hacking Compile A9LH on demand

  • Thread starter Thread starter felipejfc
  • Start date Start date
  • Views Views 38,784
  • Replies Replies 194
  • Likes Likes 35
This worked very well my hashes match from my own arm9loaderhax.3dsx but now we need a thread that keep track of latest payloads and what they actually do.
 
My mistake was that I first thought the hash from otp.bin should match the output armloader9 3dsx file but that must be totally wrong thinking of me right ?
 
I made the necessary adjustments to get this working on Python 3 if anybody wants it:
Code:
import urllib.request
import shutil

data = open('./otp.bin', 'rb').read()
print("uploading otp file...")
req = urllib.request.Request('https://felipejfc.com/a9lh', data)
res = urllib.request.urlopen(req)
chunk = 16 * 1024

with open('arm9loaderhax.3dsx', 'wb') as f:
  shutil.copyfileobj(res, f)

print('arm9loaderhax.3dsx received! now check the sha256sums')

print('arm9loaderhax.3dsx sha256: ' + res.getheader('Installer-Sha256'))
print('otp.bin sha256: ' + res.getheader('OTP-Sha256'))

print('press enter to exit')

input()
These were minor tweaks at best but this is the first time I've ever done anything at all in Python, so if your face explodes too bad. It should be fine though, the SHA-256 sums still check out with this version.

I also fixed a purely cosmetic typo in the original script, which prints arm9loaderhax.3ds <-- missing an "x".
 
Last edited by Vague Rant,
FYI: This didn't seem to work on my O3DSXL . I tried a few times (sha256 matched and did the minipasta trick), and hung at the exploiting arm9 every time. I compiled myself on windows and it worked first time. Hope this helps if someone else gets stuck
 
  • Like
Reactions: CeeDee
FYI: This didn't seem to work on my O3DSXL . I tried a few times (sha256 matched and did the minipasta trick), and hung at the exploiting arm9 every time. I compiled myself on windows and it worked first time. Hope this helps if someone else gets stuck
Same here. Shame too, as I have literally no idea how to compile it.
 
So any Python version should work with this?

If there is any specific requirement, let me know. Thanks
 
I just tested myself with my otp and it worked... (N3DS Here)



Try 2.7
Is there anything else except Python? Run but nothing generated. First timee it upload the otp.bin then work something. Now I can't run it and it closes so quick without uploading otp.bin again. Where should the output goes to in case I miss something here?

Is there a way to freeze the screen so I can read what happen. Hard to know what is happening when it closes within 1s
 
Last edited by tivu100,
is otp.bin in same folder as the python script? Is your otp 256 bytes in size? How are you running the script and under which platform?
 
Maybe its your python version then... you can try to run it from console so that you can see what the error is
 
Maybe its your python version then... you can try to run it from console so that you can see what the error is
Definitely something to do with my laptop. I take OTP.bin files from other people on the a9lh technical thread (which someone successfully compiled), and tried with your script, and same result: Nothing being output.

I never compile anything on this laptop. Only install Python.So is there anything else I need so I can use your python script?
 
Last edited by tivu100,
no, just python, check otp.bin name and try to run from console to get output
I don;t know how to run from console.

I am sure it's otp.bin. I take people otp.bin ( this post) and tried. Same result from my laptop

Edit: Not sure if I am running in console mode, @felipejfc

Here is the error (red text):

Traceback (most recent call last):
File "C:\Users\Satellite A665\Desktop\data_input\post_otp.py", line 7, in <module>
res = urllib2.urlopen(req)
File "C:\Python27\lib\urllib2.py", line 154, in urlopen
return opener.open(url, data, timeout)
File "C:\Python27\lib\urllib2.py", line 431, in open
response = self._open(req, data)
File "C:\Python27\lib\urllib2.py", line 449, in _open
'_open', req)
File "C:\Python27\lib\urllib2.py", line 409, in _call_chain
result = func(*args)
File "C:\Python27\lib\urllib2.py", line 1240, in https_open
context=self._context)
File "C:\Python27\lib\urllib2.py", line 1197, in do_open
raise URLError(err)
URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)>
>>>
 
Last edited by tivu100,
I don;t know how to run from console.

I am sure it's otp.bin. I take people otp.bin ( this post) and tried. Same result from my laptop

Edit: Not sure if I am running in console mode, @felipejfc

Here is the error (red text):

Traceback (most recent call last):
File "C:\Users\Satellite A665\Desktop\data_input\post_otp.py", line 7, in <module>
res = urllib2.urlopen(req)
File "C:\Python27\lib\urllib2.py", line 154, in urlopen
return opener.open(url, data, timeout)
File "C:\Python27\lib\urllib2.py", line 431, in open
response = self._open(req, data)
File "C:\Python27\lib\urllib2.py", line 449, in _open
'_open', req)
File "C:\Python27\lib\urllib2.py", line 409, in _call_chain
result = func(*args)
File "C:\Python27\lib\urllib2.py", line 1240, in https_open
context=self._context)
File "C:\Python27\lib\urllib2.py", line 1197, in do_open
raise URLError(err)
URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)>
>>>

Ah, I see what happened, you're using an old and outdated windows so you do not trust letsencrypt ssl certificates, dont you have another computer to try? last case, pm me your otp.bin and I can run it for you.
 
Ah, I see what happened, you're using an old and outdated windows so you do not trust letsencrypt ssl certificates, dont you have another computer to try? last case, pm me your otp.bin and I can run it for you.
I am saving toward new laptop, so no other PC at the moment.

Thanks. Still very interesting to learn if there is a workaround this.
 
Sorry i am a noob, how can i post on your site the otp.bin ? I used che python command but i don't know know if i should have done the site thing also
 

Site & Scene News

Popular threads in this forum