LoginLogin
Nintendo shutting down 3DS + Wii U online services, see our post

Connecting to SB's multiplayer from a PC, etc?

Root / General / [.]

benjymousCreated:
Has anyone figured out how to connect a PC to SB's multiplayer sessions? I've figured out that it creates a WEP WiFi access point with a hidden SSID but I need to sit down with some tools to crack the password (which must be hard coded in order for other 3DSs to connect to it) If we can get in, then I can imagine it'd open all sorts of doors (e.g easily sync files so you can edit on the PC and copy it over) Anyone got any ideas?

Every time the player uses "MPSTART" It uses a "Communication identifier string". That string has something to do with the SSID I'm not sure what the exact relation is.

This concept seems interesting. If we find a way to crack the multiplayer system, a whole new world could open up for SB programs. Heck, we could probably implement an internet system for SB with this!

Here's what I know so far
  • The 3DS creates a hidden WiFi AP using WEP encryption- this can be detected using WiFi scanning tools (which let you attempt to connect even if you don't know the SSID)
  • This is good, as WEP is by far the weakest form of WiFi encryption, and simplest to crack.
  • You can recognise the AP from the manufacturer ID embedded in the MAC address so we should be able to spot the AP even if we can't decode it's name
  • It's possible the password is related to the identifier string given to the MPSTART command, but really need two 3DSs each with Smile Basic so we can use something like WireShark to sniff the connection and figure it out.
  • Assuming the password is always the same given the same setup params (since two devices running the same program need to be able to connect to each other) then it shouldn't matter if we can't figure out how the password is generated, we just need an example of one.
  • Once we're connected to the AP we'll need to figure out the connection protocol - hopefully this is something simple, but there's no guarantees.

  • It's possible the password is related to the identifier string given to the MPSTART command, but really need two 3DSs each with Smile Basic so we can use something like WireShark to sniff the connection and figure it out.
I have two functional 3DS's with SmileBASIC (If you want me to try something).

  • It's possible the password is related to the identifier string given to the MPSTART command, but really need two 3DSs each with Smile Basic so we can use something like WireShark to sniff the connection and figure it out.
I have two functional 3DS's with SmileBASIC (If you want me to try something).
You'd also need the necessary knowhow (and compatible hardware) to run WiFi Sniffing tools (this require specific compatible wifi cards, so aren't necessarily usable by anyone) e.g. http://www.wirelesshack.org/step-by-step-kali-linux-and-wireless-hacking-basics-wep-hacking-part-3.html

The "WiFi" access point is just a beacon for the thing the 3DS uses for local communication called UDS. It has encryption, which can only be decrypted with keys from the 3DS itself and SmileBASIC. You can read up on UDS on 3DBrew

The "WiFi" access point is just a beacon for the thing the 3DS uses for local communication called UDS. It has encryption, which can only be decrypted with keys from the 3DS itself and SmileBASIC. You can read up on UDS on 3DBrew
So does that mean, if we can get the keys, we don't need to worry about the "WiFi" at all. But... if you need a device specific key to decrypt the communications, how do two 3DSs talk to each other, since they won't have each others keys?

The "WiFi" access point is just a beacon for the thing the 3DS uses for local communication called UDS. It has encryption, which can only be decrypted with keys from the 3DS itself and SmileBASIC. You can read up on UDS on 3DBrew
So does that mean, if we can get the keys, we don't need to worry about the "WiFi" at all. But... if you need a device specific key to decrypt the communications, how do two 3DSs talk to each other, since they won't have each others keys?
Dumping the keys and sharing them publicly would be illegal I believe. The only other way to get them is homebrew. The 3DS keys are the same for every 3DS, and the SmileBASIC key is the same for every copy of SmileBASIC.

The "WiFi" access point is just a beacon for the thing the 3DS uses for local communication called UDS. It has encryption, which can only be decrypted with keys from the 3DS itself and SmileBASIC. You can read up on UDS on 3DBrew
So does that mean, if we can get the keys, we don't need to worry about the "WiFi" at all. But... if you need a device specific key to decrypt the communications, how do two 3DSs talk to each other, since they won't have each others keys?
Dumping the keys and sharing them publicly would be illegal I believe. The only other way to get them is homebrew. The 3DS keys are the same for every 3DS, and the SmileBASIC key is the same for every copy of SmileBASIC.
Are you saying that someone with homebrew could find out the keys and post them? Why would it be illegal though?

The "WiFi" access point is just a beacon for the thing the 3DS uses for local communication called UDS. It has encryption, which can only be decrypted with keys from the 3DS itself and SmileBASIC. You can read up on UDS on 3DBrew
So does that mean, if we can get the keys, we don't need to worry about the "WiFi" at all. But... if you need a device specific key to decrypt the communications, how do two 3DSs talk to each other, since they won't have each others keys?
Dumping the keys and sharing them publicly would be illegal I believe. The only other way to get them is homebrew. The 3DS keys are the same for every 3DS, and the SmileBASIC key is the same for every copy of SmileBASIC.
Are you saying that someone with homebrew could find out the keys and post them? Why would it be illegal though?
Because the encryption keys are copyrighted by Nintendo, and releasing it would be against the DMCA

Because the encryption keys are copyrighted by Nintendo, and releasing it would be against the DMCA
Good point. In the US this has parallels with the DVD encryption key saga ( https://en.m.wikipedia.org/wiki/AACS_encryption_key_controversy) However, jailbreaking *is* legal (in the US), so presumably a small homebrew app that retrieved the necessary keys would be perfectly legal for personal use... It just wouldn't be legal to share those keys in places where the DMCA laws apply