[continued]
offset 0x000113c8 [=abs position 0x000f13c8]:
DCD 0xBAB3737B,0xE13BD70F,0x773E361E,0xE3A63061,0xFFE94451,0x4D2ADD1A,0x606E6743,0x30F46C89; unk
DCD 0xA8473DC9,0x4CB64E72,0x4881EB74,0xBD132132,0x47FFE8F4,0xA6F10FB3,0x58086F1F,0x66FABAEC; unk
[...]
ROM:0001F5F4 zeroes
DCD 0,
0, 0, 0,
0, 0,
0, 0, 0,
0, 0, 0,
0, 0,
0, 0
[...]
zeroes repeat until 0x0001ffe0
disk_signature: struct rsa_signature
ROM:0001FE00 DCW 1912 ; num_bits
ROM:0001FE00 DCB 0, 0, 0xF, 0x2A, 0x91, 0x4A, 0xAA, 0x51, 0xA9, 0x51; signature
ROM:0001FE00 DCB 0x59, 4, 8, 0x15, 6, 0x10, 0x12, 0x40, 0x52, 0x41; signature
ROM:0001FE00 DCB 0x46, 0x64, 0x45, 0x64, 0x44, 0x65, 0x20, 0x40, 0xA0; signature
ROM:0001FE00 DCB 0x14, 0x65, 0x14, 0x20, 0x15, 0x25, 0x55, 0x20, 0x51; signature
ROM:0001FE00 DCB 0x64, 0x11, 0x64, 4, 0x46, 0x10, 0x16, 0x11, 0x52; signature
ROM:0001FE00 DCB 0x85, 0x40, 0x84, 0, 0x91, 0x54, 0x81, 0x10, 0x24; signature
ROM:0001FE00 DCB 0x10, 0x21, 0x15, 8, 0x14, 8, 0x55, 0x18, 0x45, 8; signature
ROM:0001FE00 DCB 0x40, 9, 4, 0x19, 4, 0x56, 5, 0x12, 0x54, 0x46, 0x44; signature
ROM:0001FE00 DCB 0x12, 0x64, 4, 0x64, 5, 0x65, 0x81, 0x11, 0x60, 1; signature
ROM:0001FE00 DCB 0x64, 0x50, 0x64, 0x54, 0x61, 0x41, 0x56, 0x94, 0x11; signature
ROM:0001FE00 DCB 0x58, 0, 0x58, 0x50, 0x59, 0x44, 0x49, 0x55, 0x58; signature
ROM:0001FE00 DCB 0x18, 0x11, 0x49, 0x64, 0x40, 0x20, 0x11, 0x65, 0x44; signature
ROM:0001FE00 DCB 8, 0x11, 8, 0x94, 0x11, 0x84, 0x45, 0x21, 0x44, 0x59; signature
ROM:0001FE00 DCB 0x85, 5, 0x59, 0x40, 0x52, 0x50, 6, 0x64, 0x15, 0x25; signature
ROM:0001FE00 DCB 1, 0x65, 0x10, 0x65, 0x10, 0x61, 4, 6, 0x65, 0x55; signature
ROM:0001FE00 DCB 0x42, 0x40, 0x52, 0x85, 0x15, 0x85, 5, 0x18, 0x81; signature
ROM:0001FE00 DCB 0x15, 0x19, 0x44, 0x59, 0x50, 0x48, 5, 0x16, 0x14; signature
ROM:0001FE00 DCB 0x12, 0x42, 0x61, 0x50, 0x59, 0x21, 0, 0x80, 0x50; signature
ROM:0001FE00 DCB 2, 0x15, 0x42, 0x65, 0x11, 0x48, 0x54, 0x46, 1, 6; signature
ROM:0001FE00 DCB 0x14, 0x56, 0x94, 0x10, 0x91, 0, 0x58, 0x41, 8, 0x41; signature
ROM:0001FE00 DCB 0x49, 1, 0x46, 1, 0x56, 0x50, 6, 0x52, 5, 0x46, 0x81; signature
ROM:0001FE00 DCB 1, 0x95, 0x11, 0x80, 5, 0x91, 0x54, 0x84, 0x44, 0x21; signature
ROM:0001FE00 DCB 0x54, 0x58, 0x44, 0x48, 0x40, 0x12, 0x84, 0x51, 0x84; signature
ROM:0001FE00 DCB 0x50, 0x48, 0x94, 0x40, 0x95, 1, 0x19, 1, 2, 0x44; signature
ROM:0001FE00 DCB 0x16, 0x11, 0x56, 0x64; 0x54, 0x49, 0, 0x18, 0, 0xa8; signature
for comparison's sake:
seg001:0000 linux_sig
DCW
1898
; num_bits
seg001:0000
DCB
0, 0, 0x9F, 0x1A, 0xA1,
0x92, 0x6A, 0x14, 0x25,
0; signature
seg001:0000
DCB
0x60, 0xA4, 0x41, 0x80,
5, 0x19, 0x10, 9, 0x11,
0x48; signature
seg001:0000
DCB
4, 8, 0, 0x20, 0x44, 0x64, 0x55, 0x20, 0x11, 0x60; signature
seg001:0000
DCB
0x45, 0x12, 5, 6, 0x80,
0x41, 0x21, 1, 0x24, 0x44; signature
seg001:0000
DCB
0x61, 0x19, 0x41, 6, 0x42, 0x11, 0x42, 0x50, 0x16; signature
seg001:0000
DCB
0x50, 6, 0x60, 0, 0x58,
1, 0x59, 0x80, 0x11, 0x94; signature
seg001:0000
DCB
0x11, 0x25, 0x10, 0x60,
0x44, 0x24, 0x91, 0x55,
0x95; signature
seg001:0000
DCB
0x41, 0x95, 0x10, 0x81,
0x50, 0x48, 0x50, 0x59,
0x15; signature
seg001:0000
DCB
0x58, 5, 0x19, 0x84, 0x11, 0x94, 0x54, 0x18, 0x55; signature
seg001:0000
DCB
0x52, 0x60, 4, 0x65, 1,
0x61, 4, 0x18, 0x15, 0x18; signature
seg001:0000
DCB
0x50, 0x58, 5, 0x56, 0x60, 0x50, 0x24, 0x40, 0x61; signature
seg001:0000
DCB
1, 0x24, 0x44, 0x19, 0x16, 0x44, 2, 0x80, 0x44,
0x85; signature
seg001:0000
DCB
1, 0x58, 0x44, 0x58, 0x94, 4, 0x24, 0x44, 0x60,
0x10; signature
seg001:0000
DCB
0x59, 0x44, 8, 0x94, 0x19, 0x91, 0x85, 0x11, 0x90; signature
seg001:0000
DCB
5, 0x91, 0x11, 0x91, 0x11, 0x80, 0x54, 0x65, 0x40; signature
seg001:0000
DCB
0x29, 0x55, 0x24, 0x15,
0x65, 5, 6, 0x95, 0x14,
0x49; signature
seg001:0000
DCB
5, 0x59, 0x60, 0x14, 0x24, 0x40, 0x24, 0x10, 0x24; signature
seg001:0000
DCB
0, 0x58, 0x81, 0x14, 0x94, 0, 0x52, 0x40, 6, 8,
4; signature
seg001:0000
DCB
0x18, 0x95, 0x54, 0x94,
0x44, 0x65, 0x51, 0x20,
0x54; signature
seg001:0000
DCB
0x21, 0x10, 0x20, 4, 0x48, 0x24, 0x41, 0x21, 4,
0x18; signature
seg001:0000
DCB
0x64, 0x15, 0x25, 0x50,
0x60, 4, 0x65, 0x19, 0x54; signature
seg001:0000
DCB
2, 0x41, 0x42, 0x54, 6,
0x84, 0x90, 0x14, 0x94,
5; signature
seg001:0000
DCB
0x46, 0x81, 0x10, 0x95,
0x15, 0x84, 0x51, 2, 0x40; signature
seg001:0000
DCB
6, 0x91, 1, 0x25, 0x50,
0x21, 4, 2, 0x45, 0x46,
0x94; signature
seg001:0000
DCB
0x45, 0x91, 0x50, 0x25;
signature
seg001:00ED
DCB
0x15
seg001:00EE
DCB
0x65 ; e
seg001:00EF
DCB
0
seg001:00F0
DCB
0xA0 ;
seg001:00F1
DCB
2
seg001:00F1 ; seg001
ends
Unfortunately, both the big binary chunk and the interspersed binary chunk are "random", in the sense that I ran a frequency analysis on them and they came out more or less equal for 0x00-0xff. So, they are all either 1. keys, 2. encrypted data, or 3. compressed. Or 2 AND 3.
That big block of data has to be encrypted code, but I don't know what exactly.
Here's my latest speculation as to where we are:
I read some back-posts that said that the PB boots out of "protected" firmware, which handles all reflashing. So, there's code that runs at bootup that is not flashable by software means, and that code probably uses one or more of those keys to validate the drive signature and to validate linux.
If that's the case, maybe we could replace some / all of those 100 keys with our own, then sign the drive ourselves?
[ugh, formatting sux, PM me if you want the whole file. -b]