[RELEASE] Reencrypt WFS USBs/MLCs to transfer them between consoles (wfs-reencryptor)

EyeKey

Well-Known Member
OP
Member
Joined
Feb 10, 2017
Messages
281
Trophies
0
XP
1,104
Country
Israel
I have promised to made this tool for few years and it is finally ready. This utility is able to reencrypt the whole device (mlc or usb, or even decrypt it for research purposes). So it can transfer a USB that is encrypted for one console keys to another. Or restore a USB after a factory reset by reencrypting it with the new key.

This utility is still very experimental, so use at your own risk. It is always recommended to create a backup.

The utility can be downloaded as part of the latest WFS Tools release

Source code

Usage:
Code:
usage: wfs-reencryptor --input <input file> [--output <output file>]
                       [--input-type <type>] [--input-otp <path> [--input-seeprom <path>]]
                       [--output-type <type>] [--output-otp <path> [--output-seeprom <path>]]

options:
  --help                  produce help message
  --input arg             input file
  --input-type arg (=usb) input file type (usb/mlc/plain)
  --input-otp arg         input otp file (for usb/mlc types)
  --input-seeprom arg     input seeprom file (for usb type)
  --output arg            output file (default: reencrypt the input file)
  --output-type arg       output file type (default: same as input)
  --output-otp arg        output otp file (for usb/mlc types)
  --output-seeprom arg    output seeprom file (for usb type)

Example usage for reencrypting a usb:
Code:
wfs-reencryptor --input /dev/sdb --input-otp old_console_otp.bin --input-seeprom old_console_seeprom.bin --output-otp new_console_otp.bin --output-seeprom new_console_seeprom.bin

Example usage for decrypting a usb:
Code:
wfs-reencryptor --input /dev/sdb --input-otp otp.bin --input-seeprom seeprom.bin --output-otp new_console_otp.bin --output-type=plain

The rest of the wfs tools are able to handle the plain file (if specified --type=plain when using them)

For reencrypting a usb on Windows, please read the explanation on the Github page. In a future version it will be possible to specify the device letter.

It is also possible to specify the `--output` arg if you don't want to overwrite the original disk.

IMPORTANT NOTE: You still need to have a valid ticket installed to any title that you want to access.
 
Last edited by EyeKey,

ber71

Well-Known Member
Member
Joined
Apr 24, 2019
Messages
566
Trophies
0
Age
58
XP
2,488
Country
Spain
Excellent work.
However, this utility will be really useful when we got a faketik-like program, which doesn't exist atm.
 

EyeKey

Well-Known Member
OP
Member
Joined
Feb 10, 2017
Messages
281
Trophies
0
XP
1,104
Country
Israel
Excellent work.
However, this utility will be really useful when we got a faketik-like program, which doesn't exist atm.
Yeah a very good point, I forgot to mention in the post that you won't be able to see/access any title that you don't have the ticket to installed already. I will edit it
 
  • Like
Reactions: ber71

V800

Well-Known Member
Member
Joined
May 16, 2022
Messages
235
Trophies
0
Age
32
Location
Vigo
XP
713
Country
Spain
So, if you plan to use it in the future, you need the seeprom, the otp and the tickets from the old usb, am I right?
 

Dakangel

Well-Known Member
Newcomer
Joined
Jun 29, 2022
Messages
74
Trophies
0
Age
44
Location
Earth
XP
414
Country
Mexico
Thank you @EyeKey this is just what i was looking for experimient between two Wii u's and the games trought them.

I was thinking for a possibility of an Aroma Module that force the console to completely ignore the encryption / decription calls and instead directly read the games trought a wfs keyless partition (or a fat32 partition) similar to the original wii do it.

That could open a new way to recycle hdd devices with different consoles ,plus an Aroma Pluggin that disable the formating device warning.
 
  • Like
Reactions: Ysecond

CrazySquid

Well-Known Member
Member
Joined
May 27, 2017
Messages
232
Trophies
0
XP
862
Country
Oh, so this will allow me to format my Wii U but still be capable of using the very same HDD with the games and all on it? That's great, I'm a bit afraid of the "experimental part". but I guess it should be stable enough, right?
 

tmnr1992

Well-Known Member
Member
Joined
Oct 22, 2016
Messages
339
Trophies
0
XP
2,091
Country
United States
Regarding the tickets, according to this guide: https://gbatemp.net/threads/play-ss...d-on-sysnand-without-cfw-or-aocptcher.464178/, the tickets are located in: storage_slc/rights/ticket/apps/xxxx/xxx.tik, so would it be possible to simply copy the entire apps folder from one console to the other? Or would I need to edit the tickets in some way first?

Also while checking with FTPiiU the path I found was: /storage_slc/sys/rights/ticket/apps, not sure why the guide does not include the sys folder.
 

CrazySquid

Well-Known Member
Member
Joined
May 27, 2017
Messages
232
Trophies
0
XP
862
Country
Regarding the tickets, according to this guide: https://gbatemp.net/threads/play-ss...d-on-sysnand-without-cfw-or-aocptcher.464178/, the tickets are located in: storage_slc/rights/ticket/apps/xxxx/xxx.tik, so would it be possible to simply copy the entire apps folder from one console to the other? Or would I need to edit the tickets in some way first?

Also while checking with FTPiiU the path I found was: /storage_slc/sys/rights/ticket/apps, not sure why the guide does not include the sys folder.
That's what I'm going to do. You can also use tik2sd. In theory I think it should work without the need of editing them.
 

EyeKey

Well-Known Member
OP
Member
Joined
Feb 10, 2017
Messages
281
Trophies
0
XP
1,104
Country
Israel
Oh, so this will allow me to format my Wii U but still be capable of using the very same HDD with the games and all on it? That's great, I'm a bit afraid of the "experimental part". but I guess it should be stable enough, right?
The "experimental part" is that it hasn't been tested thoroughly and I don't know if anything unexpected may fail. If you are planning to do that I would recommend to use DumpesterU or wfs-extract first to backup all your games/saves so you could restore them in the worst case.
 
  • Like
Reactions: CrazySquid

CrazySquid

Well-Known Member
Member
Joined
May 27, 2017
Messages
232
Trophies
0
XP
862
Country
The "experimental part" is that it hasn't been tested thoroughly and I don't know if anything unexpected may fail. If you are planning to do that I would recommend to use DumpesterU or wfs-extract first to backup all your games/saves so you could restore them in the worst case.
Right, I made a raw image of the HDD, that worked for me in the past as baclup so I will keep it if anything goes wrong. Thanks for the clarification!
 

CrazySquid

Well-Known Member
Member
Joined
May 27, 2017
Messages
232
Trophies
0
XP
862
Country
@EyeKey I have another question, but can this application format in WFS? I mean, having a FAT32 device and making it a encrypted WFS for use with the WIi U on a Windows PC? I'm trying to do that using the following command:

Code:
wfs-reencryptor --input F:\ --input-otp otp.bin --output-otp otp.bin --input-seeprom seeprom.bin --output-seeprom seeprom.bin

Since it's for the same console (this time, I'm just trying the application) I use the same otp.bin and seeprom.bin in both the output and input, but it fails with the following message:

Error: FileDevice: Failed to open file

I tried using the CMD with admin privilegies, but it doesn't work. May try with a Linux machine.

EDIT: After further inspection, I think it's not possible to do what I want to do (having a FAT32/NTFS device and format it in the WFS format without actually lose data). I think I'm better waiting for direct writing support on PC of the WFS filesystem.

EDIT2: Huh, this is weird, the program is not working on Linux when I want to use wfs-fuse or wfs-info:
Code:
$ ./wfs-fuse --input /dev/sdb --type usb --otp otp.bin --seeprom seeprom.bin
Error: FileDevice: Failed to open file

EDIT3: Used the following command
$ sudo ./wfs-fuse /dev/sdb /mnt --otp otp.bin --seeprom seeprom.bin
And I get:
Missing type (--otp)

I have otp.bin and seepron.bin in the same directory as wfs-fuse, what I'm doing wrong? (Yes, the USB is in WFS format this time)

EDIT4: I managed to get it to work by specifing that is a USB type, but still... seems unstable in my use, but I guess that's normal since it's in a experimental state, right?
1710692387237.png
 
Last edited by CrazySquid,

EyeKey

Well-Known Member
OP
Member
Joined
Feb 10, 2017
Messages
281
Trophies
0
XP
1,104
Country
Israel
EDIT3: Used the following command
And I get:

I have otp.bin and seepron.bin in the same directory as wfs-fuse, what I'm doing wrong? (Yes, the USB is in WFS format this time)
Sorry there is a small bug in this version. You must specify `--type usb`

And yes the FAT32 thing is not possible. The write support to WFS is still WIP (but I have made a lot of progress lately, at the current rate I hope that an experimental version will be released sometime in the next 6 months)
 
  • Like
Reactions: CrazySquid

CrazySquid

Well-Known Member
Member
Joined
May 27, 2017
Messages
232
Trophies
0
XP
862
Country
Sorry there is a small bug in this version. You must specify `--type usb`

And yes the FAT32 thing is not possible. The write support to WFS is still WIP (but I have made a lot of progress lately, at the current rate I hope that an experimental version will be released sometime in the next 6 months)
I have just one last question, I'm trying to reencrypt a test USB drive. First I decrypted it via
Code:
sudo ./wfs-reencryptor --input /dev/sdb --input-otp otp.bin --input-seeprom seeprom.bin --output-otp otp.bin --output-type=plain

Now, it's a "plain" WFS USB. If I specify "plain" when using other WFS tools it works fine. The console doesn't recognice the decrypted drive. How I can encrypt the USB drive again? I'm trying with
Code:
sudo ./wfs-reencryptor --input /dev/sdb --input-type plain --input-otp otp.bin --input-seeprom seeprom.bin --output-otp otp.bin --output-seeprom seeprom.bin

And I get:

Code:
Exploring blocks...
Found 1158 blocks! Reencrypting...
Done!

However the device remains as "plain" and the Wii U doesn't recognice it, I'm doing something wrong?

EDIT: I'm a dumbass, I forgot to specify what type I device I wanted, so I added "--output-type=usb"
 
Last edited by CrazySquid,

EyeKey

Well-Known Member
OP
Member
Joined
Feb 10, 2017
Messages
281
Trophies
0
XP
1,104
Country
Israel
I have just one last question, I'm trying to reencrypt a test USB drive. First I decrypted it via
Code:
sudo ./wfs-reencryptor --input /dev/sdb --input-otp otp.bin --input-seeprom seeprom.bin --output-otp otp.bin --output-type=plain

Now, it's a "plain" WFS USB. If I specify "plain" when using other WFS tools it works fine. The console doesn't recognice the decrypted drive. How I can encrypt the USB drive again? I'm trying with
Code:
sudo ./wfs-reencryptor --input /dev/sdb --input-type plain --input-otp otp.bin --input-seeprom seeprom.bin --output-otp otp.bin --output-seeprom seeprom.bin

And I get:

Code:
Exploring blocks...
Found 1158 blocks! Reencrypting...
Done!

However the device remains as "plain" and the Wii U doesn't recognice it, I'm doing something wrong?
Specify --output-type usb (otherwise it assumes that it should be kept at the same format as input)
 
  • Like
Reactions: CrazySquid

CrazySquid

Well-Known Member
Member
Joined
May 27, 2017
Messages
232
Trophies
0
XP
862
Country
Specify --output-type usb (otherwise it assumes that it should be kept at the same format as input)
Yes, that was the issue... Sorry about that! Tried the re-encrypted USB on the Wii U and played a bit with the game that was installed, and yes, it works perfectly fine, so I guess it's safe to use for the day I factory reset my Wii U and want to re-encrypt my real HDD :). (Always with a raw image-backup, just to be safe)

Thanks a lot for this, it is REALLY helpful, I will wait for the blessed day we can finally write to the WFS system from the PC.

Thanks again for all your efforts!
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • Quincy @ Quincy:
    Usually when such a big title leaks the Temp will be the first to report about it (going off of historical reports here, Pokemon SV being the latest one I can recall seeing pop up here)
  • K3Nv2 @ K3Nv2:
    I still like how a freaking mp3 file hacks webos all that security defeated by text yet again
  • BigOnYa @ BigOnYa:
    They have simulators for everything nowdays, cray cray. How about a sim that shows you playing the Switch.
  • K3Nv2 @ K3Nv2:
    That's called yuzu
    +1
  • BigOnYa @ BigOnYa:
    I want a 120hz 4k tv but crazy how more expensive the 120hz over the 60hz are. Or even more crazy is the price of 8k's.
  • K3Nv2 @ K3Nv2:
    No real point since movies are 30fps
  • BigOnYa @ BigOnYa:
    Not a big movie buff, more of a gamer tbh. And Series X is 120hz 8k ready, but yea only 120hz 4k games out right now, but thinking of in the future.
  • K3Nv2 @ K3Nv2:
    Mostly why you never see TV manufacturers going post 60hz
  • BigOnYa @ BigOnYa:
    I only watch tv when i goto bed, it puts me to sleep, and I have a nas drive filled w my fav shows so i can watch them in order, commercial free. I usually watch Married w Children, or South Park
  • K3Nv2 @ K3Nv2:
    Stremio ruined my need for nas
  • BigOnYa @ BigOnYa:
    I stream from Nas to firestick, one on every tv, and use Kodi. I'm happy w it, plays everything. (I pirate/torrent shows/movies on pc, and put on nas)
  • K3Nv2 @ K3Nv2:
    Kodi repost are still pretty popular
  • BigOnYa @ BigOnYa:
    What the hell is Kodi reposts? what do you mean, or "Wut?" -xdqwerty
  • K3Nv2 @ K3Nv2:
    Google them basically web crawlers to movie sites
  • BigOnYa @ BigOnYa:
    oh you mean the 3rd party apps on Kodi, yea i know what you mean, yea there are still a few cool ones, in fact watched the new planet of the apes movie other night w wifey thru one, was good pic surprisingly, not a cam
  • BigOnYa @ BigOnYa:
    Damn, only $2.06 and free shipping. Gotta cost more for them to ship than $2.06
    +1
  • BigOnYa @ BigOnYa:
    I got my Dad a firestick for Xmas and showed him those 3rd party sites on Kodi, he loves it, all he watches anymore. He said he has got 3 letters from AT&T already about pirating, but he says f them, let them shut my internet off (He wants out of his AT&T contract anyways)
  • K3Nv2 @ K3Nv2:
    That's where stremio comes to play never got a letter about it
  • BigOnYa @ BigOnYa:
    I just use a VPN, even give him my login and password so can use it also, and he refuses, he's funny.
  • BigOnYa @ BigOnYa:
    I had to find and get him an old style flip phone even without text, cause thats what he wanted. No text, no internet, only phone calls. Old, old school.
  • Psionic Roshambo @ Psionic Roshambo:
    @BigOnYa, Lol I bought a new USB card reader thing on AliExpress last month for I think like 87 cents. Free shipping from China... It arrived it works and honestly I don't understand how it was so cheap.
    Psionic Roshambo @ Psionic Roshambo: @BigOnYa, Lol I bought a new USB card reader thing on AliExpress last month for I think like 87...