Talk:Online Connections: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 1: Line 1:
=== VSH.elf 4.30 ===
Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
006E8FC0  73 70 2D 69 6E 74 00 00 00 00 00 00 00 00 00 00  sp-int..........
006E8FD0  FF FF FF FF 00 00 00 00 FC A4 DD 70 A2 42 E4 C3  ÿÿÿÿ....ü¤Ýp¢BäÃ
006E8FE0  CC F1 5F D6 AE 8F 0A E7 87 49 D1 B3 52 F4 DA 4D  Ìñ_Ö®..ç‡IѳRôÚM
006E8FF0  9D E0 04 E9 F2 D7 2F 6D E3 77 69 9B C2 E5 F8 3A  .à.éò×/mãwi›Âåø:
006E9000  4C 28 EE A5 75 DB EA A2 93 F3 83 5E 8B 7A FA 9A  L(î¥uÛꢓóƒ^‹zúš
006E9010  16 57 3A D5 B0 DE EB CC E1 A7 C5 4C 66 B9 03 AE  .W:Õ°ÞëÌá§ÅLf¹.®
006E9020  41 86 FB D7 EE B2 3F 16 E6 7A 19 42 0B 26 21 14  A†û×î²?.æz.B.&!.
006E9030  08 B9 17 15 AC C3 D1 99 8A 37 A4 63 9F AF F0 64  .¹..¬ÃÑ™Š7¤cŸ¯ðd
006E9040  E9 F9 0C 0F EC B2 8C 81 3F A9 F6 49 07 4C 9A 33  éù..첌.?©öI.Lš3
006E9050  03 92 EA 2B 91 C3 FD 37 32 D1 DF ED 7C A1 51 A2  .’ê+‘Ãý72Ñßí|¡Q¢
006E9060  19 26 F0 B3 15 10 7B F1 FB EA 89 29 E6 8A B3 97  .&ð³..{ñûê‰)抳—
006E9070  20 00 00 00 00 02 00 01 00 03 00 00 00 04 00 00  ...............
006E9080  00 00 00 00 14 A3 21 4C 53 27 08 49 D6 15 B2 A2  .....£!LS'.IÖ.²¢
006E9090  69 4F 24 C7 FB 39 1D 0C C3 38 0B 12 7B 2A 5F 0C  iO$Çû9..Ã8..{*_.
006E90A0  FF 99 89 FE 4E DF 0F 1E 46 7B 2C 7F 2C 8F AF D4  ÿ™‰þNß..F{,.,.¯Ô
006E90B0  03 24 0D 92 E9 7A 4B 6E AA 3C 38 38 92 0D 8F 5C  .$.’ézKnª<88’..\
006E90C0  D8 9F 2A 75 DE D5 21 02 FC 06 40 D5 9C B2 5A 69  ØŸ*uÞÕ!.ü.@Õœ²Zi    006E90C8 passphrase (PSN) 0x40
006E90D0  8E E9 7B 38 33 04 49 64 FF ED 34 F1 CC 9A C3 83  Žé{83.Idÿí4ñ̚Ã
006E90E0  31 7D 91 AB 0C 94 B8 6F 1F EE A0 68 79 81 CC F5  1}‘«.”¸o.î hy.Ìõ
006E90F0  69 2D 2B 50 0A F9 B9 F8 71 C8 9E 0C 5A 79 90 2F  i-+P.ù¹øqÈž.Zy./
006E9100  4E BD 4E 13 50 53 33 5F 43 20 30 2E 30 30 00 00  N½N.PS3_C 0.00..
006E9110  00 00 D7 04 21 F2 92 9C E3 65 6B AC 5D F8 B1 9A  ..×.!ò’œãek¬]ø±š
006E9120  5C 27 13 02 90 C6 EA 04 F0 BE B2 7D 13 DC 20 4E  \'...Æê.ð¾²}.Ü N
006E9130  4F 25 9A 3E 48 5A A7 6D 50 F5 84 67 BD 9E D7 76  O%š>HZ§mPõ„g½ž×v
006E9140  07 55 65 91 3A C8 8D 2B CC 2B 2F A4 D6 5F 08 28  .Ue‘:È.+Ì+/¤Ö_.(
006E9150  1F A2 4C 4E D1 96 1D 40 9C 3B FA EE 60 A5 9A 80  .¢LNÑ–.@œ;úî`¥š€
006E9160  CB 0D EF C2 CE 93 87 7A 38 67 16 15 8C A5 A8 EE  Ë.ïÂΓ‡z8g..Œ¥¨î
006E9170  26 60 8E 0E 03 DE 05 BB ED D0 D4 03 38 40 B5 0E  &`Ž..Þ.»íÐÔ.8@µ.
006E9180  B8 57 30 B2 25 08 C2 AE F9 D3 87 BD 59 4D 19 44  ¸W0²%.®ùÓ‡½YM.D
006E9190  AE 83 00 00 00 02 00 01 00 6D 99 20 00 03 00 00  ®ƒ.......m™ ....
006E91A0  00 6D 99 68 00 04 00 00 00 6D 99 60 00 00 00 00  .m™h.....m™`....
006E91B0  00 00 00 00 00 02 00 01 00 6D 99 58 00 03 00 00  .........m™X....
006E91C0  00 6D 99 10 00 04 00 00 00 6D 99 08 00 00 00 00  .m™......m™.....
006E91D0  00 00 00 00 00 02 00 01 00 6D 99 30 00 03 00 00  .........m™0....
006E91E0  00 6D 99 28 00 04 00 00 00 6D 99 18 00 00 00 00  .m™(.....m™.....
006E91F0  00 00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF  ....ÿÿÿÿÿÿÿÿÿÿÿÿ
006E9200  00 00 00 00 FF FF FF FF 00 00 00 00 FF FF FF FF  ....ÿÿÿÿ....ÿÿÿÿ
006E9210  FF FF FF FF 00 68 07 B8 00 68 07 C0 00 00 00 00  ÿÿÿÿ.h.¸.h.À....
006E9220  00 00 00 00 00 00 00 00 00 00 01 BB 00 00 00 00  ...........»....
006E9230  01 00 00 00 00 00 00 02 83 00 00 00 00 00 00 00  ........ƒ.......
=== to add ===
=== to add ===
   <deroad> @eussNL there is a thing not written in the wiki (i can't access now, don't know why) http://xmb-e.dl.playstation.net/
   <deroad> @eussNL there is a thing not written in the wiki (i can't access now, don't know why) http://xmb-e.dl.playstation.net/

Revision as of 14:57, 22 January 2015

VSH.elf 4.30

Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
006E8FC0  73 70 2D 69 6E 74 00 00 00 00 00 00 00 00 00 00  sp-int..........
006E8FD0  FF FF FF FF 00 00 00 00 FC A4 DD 70 A2 42 E4 C3  ÿÿÿÿ....ü¤Ýp¢BäÃ
006E8FE0  CC F1 5F D6 AE 8F 0A E7 87 49 D1 B3 52 F4 DA 4D  Ìñ_Ö®..ç‡IѳRôÚM
006E8FF0  9D E0 04 E9 F2 D7 2F 6D E3 77 69 9B C2 E5 F8 3A  .à.éò×/mãwi›Âåø:
006E9000  4C 28 EE A5 75 DB EA A2 93 F3 83 5E 8B 7A FA 9A  L(î¥uÛꢓóƒ^‹zúš
006E9010  16 57 3A D5 B0 DE EB CC E1 A7 C5 4C 66 B9 03 AE  .W:Õ°ÞëÌá§ÅLf¹.®
006E9020  41 86 FB D7 EE B2 3F 16 E6 7A 19 42 0B 26 21 14  A†û×î²?.æz.B.&!.
006E9030  08 B9 17 15 AC C3 D1 99 8A 37 A4 63 9F AF F0 64  .¹..¬ÃÑ™Š7¤cŸ¯ðd
006E9040  E9 F9 0C 0F EC B2 8C 81 3F A9 F6 49 07 4C 9A 33  éù..첌.?©öI.Lš3
006E9050  03 92 EA 2B 91 C3 FD 37 32 D1 DF ED 7C A1 51 A2  .’ê+‘Ãý72Ñßí|¡Q¢
006E9060  19 26 F0 B3 15 10 7B F1 FB EA 89 29 E6 8A B3 97  .&ð³..{ñûê‰)抳—
006E9070  20 00 00 00 00 02 00 01 00 03 00 00 00 04 00 00   ...............
006E9080  00 00 00 00 14 A3 21 4C 53 27 08 49 D6 15 B2 A2  .....£!LS'.IÖ.²¢
006E9090  69 4F 24 C7 FB 39 1D 0C C3 38 0B 12 7B 2A 5F 0C  iO$Çû9..Ã8..{*_.
006E90A0  FF 99 89 FE 4E DF 0F 1E 46 7B 2C 7F 2C 8F AF D4  ÿ™‰þNß..F{,.,.¯Ô
006E90B0  03 24 0D 92 E9 7A 4B 6E AA 3C 38 38 92 0D 8F 5C  .$.’ézKnª<88’..\
006E90C0  D8 9F 2A 75 DE D5 21 02 FC 06 40 D5 9C B2 5A 69  ØŸ*uÞÕ!.ü.@Õœ²Zi    006E90C8 passphrase (PSN) 0x40
006E90D0  8E E9 7B 38 33 04 49 64 FF ED 34 F1 CC 9A C3 83  Žé{83.Idÿí4ñ̚Ã
006E90E0  31 7D 91 AB 0C 94 B8 6F 1F EE A0 68 79 81 CC F5  1}‘«.”¸o.î hy.Ìõ
006E90F0  69 2D 2B 50 0A F9 B9 F8 71 C8 9E 0C 5A 79 90 2F  i-+P.ù¹øqÈž.Zy./
006E9100  4E BD 4E 13 50 53 33 5F 43 20 30 2E 30 30 00 00  N½N.PS3_C 0.00..
006E9110  00 00 D7 04 21 F2 92 9C E3 65 6B AC 5D F8 B1 9A  ..×.!ò’œãek¬]ø±š
006E9120  5C 27 13 02 90 C6 EA 04 F0 BE B2 7D 13 DC 20 4E  \'...Æê.ð¾²}.Ü N
006E9130  4F 25 9A 3E 48 5A A7 6D 50 F5 84 67 BD 9E D7 76  O%š>HZ§mPõ„g½ž×v
006E9140  07 55 65 91 3A C8 8D 2B CC 2B 2F A4 D6 5F 08 28  .Ue‘:È.+Ì+/¤Ö_.(
006E9150  1F A2 4C 4E D1 96 1D 40 9C 3B FA EE 60 A5 9A 80  .¢LNÑ–.@œ;úî`¥š€
006E9160  CB 0D EF C2 CE 93 87 7A 38 67 16 15 8C A5 A8 EE  Ë.ïÂΓ‡z8g..Œ¥¨î
006E9170  26 60 8E 0E 03 DE 05 BB ED D0 D4 03 38 40 B5 0E  &`Ž..Þ.»íÐÔ.8@µ.
006E9180  B8 57 30 B2 25 08 C2 AE F9 D3 87 BD 59 4D 19 44  ¸W0²%.®ùÓ‡½YM.D
006E9190  AE 83 00 00 00 02 00 01 00 6D 99 20 00 03 00 00  ®ƒ.......m™ ....
006E91A0  00 6D 99 68 00 04 00 00 00 6D 99 60 00 00 00 00  .m™h.....m™`....
006E91B0  00 00 00 00 00 02 00 01 00 6D 99 58 00 03 00 00  .........m™X....
006E91C0  00 6D 99 10 00 04 00 00 00 6D 99 08 00 00 00 00  .m™......m™.....
006E91D0  00 00 00 00 00 02 00 01 00 6D 99 30 00 03 00 00  .........m™0....
006E91E0  00 6D 99 28 00 04 00 00 00 6D 99 18 00 00 00 00  .m™(.....m™.....
006E91F0  00 00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF  ....ÿÿÿÿÿÿÿÿÿÿÿÿ
006E9200  00 00 00 00 FF FF FF FF 00 00 00 00 FF FF FF FF  ....ÿÿÿÿ....ÿÿÿÿ
006E9210  FF FF FF FF 00 68 07 B8 00 68 07 C0 00 00 00 00  ÿÿÿÿ.h.¸.h.À....
006E9220  00 00 00 00 00 00 00 00 00 00 01 BB 00 00 00 00  ...........»....
006E9230  01 00 00 00 00 00 00 02 83 00 00 00 00 00 00 00  ........ƒ.......


to add

 <deroad> @eussNL there is a thing not written in the wiki (i can't access now, don't know why) http://xmb-e.dl.playstation.net/
 <deroad> a guy told me that homebrews under PSN category sends this to sony: xmb-e.dl.playstation.net/xmb/l?env=np&serv=PSChannel&cc=us

found in explore_plugin.sprx --Nas plugi 04:58, 9 August 2013 (MSK)

Ports

http://portforward.com/cports.htm

3.55 spoofed with jailbait SEN/PSN enabler

http://www.ps3hax.net/showthread.php?t=38472&page=18

Title Status Remarks
Army of Two the 40th day Yes
Battlefield 1943 (PSN) Yes
Battlefield BC2 Yes work with last update (1.05)
Battlefield 3 Yes only invite
Blur Yes
Borderlands Yes
Burnout Paradise and DLC (PSN) Yes
Burnout Yes
Call of Duty 4 Yes
Call of Duty Black Ops No param.sfo edit app version to 1.13
Call of Duty Modern Warfare 2 Yes Needs update 1.12
Call of Duty Modern Warfare 3 (TB) No
Call of Duty World At War Yes
Call of Juarez: Bond by Blood Yes
Crash Bandicot (PSN) Yes
Crysis 2 Yes
Dead Rising 2 Yes
Dead Space 2 Yes
Dragon Ball Raging Blast 2 Yes
Far Cry 2 Yes
FIFA11 Yes
FIFA12 Yes param.sfo edit app version to 1.07 (that way hard to find match!) OR backup EBOOT.BIN & fifazf.self (leave param.sfo original), update game to 1.06 replace EBOOT.BIN & fifazf.self with backuped one. (That way it found matches quickly BUT! for me fifa lags ALOOOT in both kick off and online head to head, controls lags, replay lags like 2 FPS .... )
Fifa Street (TB) Yes
GTA IV Yes
Homefront Yes
Infamous 2 No
Killzone 2 Yes
Killzone 3 No
Little Big Planet GOTY Yes
Lara Croft: Guardian of Light Yes
Marvel Ultimate Alliance 2 Yes
Marvel vs Capcom 3 Yes
MK vs Dc Yes
Mortal Kombat 9 Yes
Naruto Ultimate Ninja Storm 2 Yes
NBA 2k11 Yes
NBA 2k12 No
Need for Speed Hot Pursuit No
Need for Speed Undercover No
PES11 Yes
PES12 Yes
Pure Yes
Red Dead Redemption: Undead Nightmare Yes work with last update
Rage Yes Join?
Resident Evil 5 Gold edition Yes
Ridge Racer 7 Yes
Saints Row 2 Yes
Singularity Yes
Smackdown vs RAW 2011 Yes
Tekken 6 Yes
Top Spin 4 No
Transformers: War For Cybertron Yes Update 1.01
Tron: Evolution Yes Update 1.02
Uncharted 3 No Update does not work
Unreal Tournament 3 Yes Update 2.00
Virtual Tennis 4 Yes
White Knight Chronicles Yes Update 1.01
WWE All Stars Yes
Yes
Yes
No
No

Passphrase, ID, Sig

So a little bit about the passphrase and ID... the passphrase is 128 bytes encrypted.

SceNpCommunicationId communication_id = {
		{'N','P','X','S','0','0','0','0','5'},
		'\0',
		0,
		0
};

SceNpCommunicationPassphrase communication_passphrase = {
	{
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa
	}
};


SceNpCommunicationId *get_np_communication_id(void)
{
	return &communication_id;
}

SceNpCommunicationPassphrase *get_np_communication_passphrase(void)
{
	return &communication_passphrase;
}

I shouldn't really have to explain this but just in case...

ID

static const SceNpCommunicationId s_communication_id = {
	{'N','P','X','S','0','0','0','2','7'},
	'\0',
	0,
	0
};

This is the format in which the NP ID will be displayed (don't know much about it).

The request for the ID is very simple:

const SceNpCommunicationId* NpConf::npCommId(int i)
{
	(void)i;
	return(&s_communication_id);
}

Passphrase

As we know it's 128 bytes encrypted. Displayed like so...

static const SceNpCommunicationPassphrase s_communication_passphrase = {
	{
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,
		0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa,0xaa
	}

};

The auth is as simple as the IDs.

const SceNpCommunicationPassphrase* NpConf::npCommPassphrase(int i)
{
	(void)i;
	return(&s_communication_passphrase);
}


Also, this a encrypted passphrase (maybe) from 4.00 it's taken from the same format in the code above but there's a lot more characters...

8dade4164f15e26e323668124aa89083b44414c66db2bddcc0ef67f6ca4c1eedc364db4800b62d63e5ecb33e2a1b4db4edc1ee3802a042f06d600eb5cb40236cefcda6136c5a26dd624a1a2fc197b25a4a3b06660f0d3f44bf538971089e44a91169f062c6743dd701f90f256ab5ab539dc943e057303559f66057b39e49b661

Sig

Digital Signature (know nothing about it).

Not sure how it's displayed but it's auth is simple.

const SceNpCommunicationSignature* NpConf::npCommSig(int i)
{
	(void)i;
	return 0;
}

gen_keying_material.py

#!python2

import sys, os, struct, hashlib, re

if len(sys.argv) < 6:
	script_file_name = os.path.split(sys.argv[0])[1]
	print 'usage: {0} <premaster secret> <client random> <server random> <session id> <log file>'.format(script_file_name)
	sys.exit()

def clean_whitespace(s):
	return re.sub(r'\s+', '', s)

ssl3_premaster_secret_size = 48
ssl3_random_size = 32
ssl3_session_id_size = 32

premaster_secret = clean_whitespace(sys.argv[1]).decode('hex')
client_random = clean_whitespace(sys.argv[2]).decode('hex')
if len(client_random) != ssl3_random_size:
	print 'error: client random should have {0} bytes'.format(ssl3_random_size)
	sys.exit()

server_random = clean_whitespace(sys.argv[3]).decode('hex')
if len(server_random) != ssl3_random_size:
	print 'error: server random should have {0} bytes'.format(ssl3_random_size)
	sys.exit()

session_id = clean_whitespace(sys.argv[4]).decode('hex')
if len(session_id) != ssl3_session_id_size:
	print 'error: session id should have {0} bytes'.format(ssl3_session_id_size)
	sys.exit()

log_file_path = sys.argv[5]
if os.path.exists(log_file_path) and not os.path.isfile(log_file_path):
	print 'error: invalid log file specified'
	sys.exit()

def sha1(data):
	return hashlib.sha1(data).digest()

def md5(data):
	return hashlib.md5(data).digest()

def ssl3_prf(secret, rnd1, rnd2):
	result = ''
	for salt in ['A', 'BB', 'CCC']:
		result += md5(secret + sha1(salt + secret + rnd1 + rnd2))
	return result

master_secret = ssl3_prf(premaster_secret, client_random, server_random)
with open(log_file_path, 'a') as log_file:
	log_file.write('RSA Session-ID:{0} Master-Key:{1}\n'.format(session_id.encode('hex').upper(), master_secret.encode('hex').upper()))