RiiConnect24 / RiiConnect24-Patcher

This patcher will guide you through RiiConnect24 installation process.
GNU General Public License v3.0
309 stars 55 forks source link

Feature Request: Runtime patching with Priiloader #27

Closed eku closed 4 years ago

eku commented 4 years ago

Priiloader provides a way to live patch Wii code in memory. It would be much easier for the users and there would be no need to install WADs. Would you please offer the patches the EVPatcher makes in a version for the Priiloader?

@Leseratte10 is currently working on something comparable for the system menu.

InternalLoss commented 4 years ago

While this would be a cool idea, Priiloader can only directly patch System Menu code; IOS runs on a separate ARM core to the main PPC one, and it's unknown if we could do this (you'd probably still need to patch the IOSes, so it'd likely defeat the purpose of not having to patch).

What'd be more ideal is a way to do the downloads and patches on the device itself (i.e. installing EVC on the Wii and then patching it), but I don't know how easy it'd be to do so.

eku commented 4 years ago

@InternalLoss I wonder, however, why patching is necessary at all. You can bend the DNS requests with an alternative DNS server. The RSA key for the data transfer still remains. I don't know anything about the latter and don't understand reason. Can you explain this to me?

InternalLoss commented 4 years ago

Okay, sure! WiiConnect24 files (all files; news, weather, EVC, nintendo channel, announcements, etc) have a signed WC24 header. This header is signed by Nintendo's private key, and is unique for each file (with a hash of the file inside) - if this RSA signature does not match, a WC24 error will be raised and the channels will not work. We replace this key because we don't have Nintendo's 2048-bit private WC24 key, so we generate our own.

InternalLoss commented 4 years ago

Closing as this is not currently in-scope for RiiConnect24's patching system at the time.