Hello,
I'm trying to reverse engineer a game's connection to its web servers. The game uses the eShop to manage subscriptions, and it seems that the game authenticates with the game webserver using a device token, since I'm able to use the game's online features (and pay for a subscription) without having to create an account (even though an account can be linked afterwards). My goal now is to get this token from my switch.
When looking at the game binary, I found uses of the the SDK methods "nn:account:EnsureNetworkServiceAccountAvailable" and "nn:account:GetNetworkServiceAccountId". I believe the latter method sets a buffer with a token linked to the device (and probably signed by Nintendo at some point, so that the web services can verify it). I'd like to call these methods from a homebrew program, which will hopefully help me authenticating properly. Still, I'm not sure how to do that, here are a few methods I'm thinking about:
Is the Nintendo SDK documented somewhere? That'd definitely be helpful, but I could not find that on SwitchBrew.
Any help/hint/guidance is welcome :-)
I'm trying to reverse engineer a game's connection to its web servers. The game uses the eShop to manage subscriptions, and it seems that the game authenticates with the game webserver using a device token, since I'm able to use the game's online features (and pay for a subscription) without having to create an account (even though an account can be linked afterwards). My goal now is to get this token from my switch.
When looking at the game binary, I found uses of the the SDK methods "nn:account:EnsureNetworkServiceAccountAvailable" and "nn:account:GetNetworkServiceAccountId". I believe the latter method sets a buffer with a token linked to the device (and probably signed by Nintendo at some point, so that the web services can verify it). I'd like to call these methods from a homebrew program, which will hopefully help me authenticating properly. Still, I'm not sure how to do that, here are a few methods I'm thinking about:
- Linking the homebrew binary to the SDK binary - is that possible with the current devtools?
- Reverse engineering those methods from the SDK and implementing them in my homebrew. Yet, I'm pretty sure that at some point it will call the switch system services. Can I do that from a homebrew? Is it unsafe with regards to device bans?
- I haven't yet examined my device PRODINFO, could the device token be in there?
Is the Nintendo SDK documented somewhere? That'd definitely be helpful, but I could not find that on SwitchBrew.
Any help/hint/guidance is welcome :-)