ROM Hack [Release] FunKeyCIA - make GOOD cias from eshop content, no tickets needed!

cearp

瓜老外
OP
Developer
Joined
May 26, 2008
Messages
8,714
Trophies
2
XP
8,441
Country
Tuvalu
A NEW big update to FunKeyCIA!
It can now create tickets only (use -ticketsonly)
It can now accept a encTitleKeys.bin file as input, have the file in the same directory as FunKeyCIA.
Use -keyfile to read the file, OR use -nfskeyfile and the latest fresh encTitleKeys.bin straight from 3ds.nfsho... will be downloaded and used :)
You can use -all to go through everything, or -title and write multiple title ids that you want to download.
You can still use a single title id and key if you want :)


I'm removing the download from the OP, 932 downloads, that was fast :O thanks guys

Please download the latest file from my github.
https://github.com/llakssz/FunKeyCIA/raw/master/FunKeyCIA.py

-----------------------

Here is FunKeyCIA!
This is not a replacement for FunkyCIA, which uses the ticket.db/tickets to download titles and create good CIAs.
This tool lets you enter a Title ID and an Encrypted Title Key to download and build a good CIA.
The Encrypted Title Key can be obtained straight from the ticket.db.

This tool will unlock stuff, the DLC cias, everything will be unlocked, and with demos, the limits are removed.

When I say GOOD CIA, I mean a cia that will not interfere with eshop downloads.
For example, download a GOOD CIA of an update. In the future, that update can gets updated. You download the new update from eshop, it installs fine.
You can delete the installed game if you want, and still redownload it via eshop!
With a BAD CIA (like from plaicdn), eshop will give you an error at 99% if you try to update/redownload via eshop.

This tool, like FunkyCIA, will not lose any of the data of the content, for example, the manual, download play ability, etc.
This tool, like FunkyCIA, you can build any content, DSiware, updates, DLC... unlike plaicdn.

I created FunkyCIA (and now FunKeyCIA) so that the community could share better CIAs, because CDNto3DS was not a good option.
The method it uses is bad, the method is meant for raw content, not for eshop content. plaicdn uses this old method, so it is a new tool, but uses old methods, it is a step backwards for cia creation and the community.

CIAs created with FunKeyCIA, like FunkyCIA, will have the same hash/checksum each time.
If using plaicdn, the hash will be different each time, not good for verifying etc...

I hope in the future some cfw/dev will discover what is stopping us from installing personal legit CIAs, as made by FunkyCIA. Then we can have our 'true'/'lossless'/'perfect' CIA backups.

ENCRYPTED KEY not decrypted key

HOW TO USE:
python FunKeyCIA.py -title XXXXXXXXXXXXXXXX -key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

ENCRYPTED KEY not decrypted key

Use Decrypt9 to dump your encrypted title keys :)

Download FunKeyCIA at my github
https://github.com/llakssz/FunKeyCIA/
(https://github.com/llakssz/FunKeyCIA/raw/master/FunKeyCIA.py)
 
Last edited by cearp,

Xenon Hacks

Well-Known Member
Member
Joined
Nov 13, 2014
Messages
7,414
Trophies
1
Age
30
XP
4,687
Country
United States
Code:
C:\Users\??????\Desktop\FunKeyCIA>FunKeyCIA.py 0004000000125500 ?????????????????????????????????????????
usage: FunKeyCIA.py [-h] [-outputdir OUTPUT_DIR] [-nodownload] [-nobuild]
[-retry {0,1,2,3,4,5,6,7,8,9}] [-titleid TITLEID]
[-key KEY]
FunKeyCIA.py: error: unrecognized arguments: 0004000000125500 ???????????????????????????????????????
 

Kohmei

Well-Known Member
Member
Joined
Feb 17, 2013
Messages
824
Trophies
0
XP
1,039
Country
United States
So I have a probably stupid question: are the encrypted and decrypted keys at all related? For instance, could you use a fixed algorithm on a decrypted key and derive an encrypted key?
 

cearp

瓜老外
OP
Developer
Joined
May 26, 2008
Messages
8,714
Trophies
2
XP
8,441
Country
Tuvalu
Code:
C:\Users\??????\Desktop\FunKeyCIA>FunKeyCIA.py 0004000000125500 ?????????????????????????????????????????
usage: FunKeyCIA.py [-h] [-outputdir OUTPUT_DIR] [-nodownload] [-nobuild]
[-retry {0,1,2,3,4,5,6,7,8,9}] [-titleid TITLEID]
[-key KEY]
FunKeyCIA.py: error: unrecognized arguments: 0004000000125500 ???????????????????????????????????????
ooh, my first user used it wrong ;)
you need to specify what the title is and what the key is, see the op.
python FunKeyCIA.py -title XXXXXXXXXXXXXXXX -key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

--------------------- MERGED ---------------------------

So I have a probably stupid question: are the encrypted and decrypted keys at all related? For instance, could you use a fixed algorithm on a decrypted key and derive an encrypted key?
i believe you can encrypt the decrypted key and get the encrypted key yes.
but, ideally we will extract all these encrypted keys straight from the ticket.db, either on the computer or via a 3ds homebrew.
having a homebrew that uploads the keys to a server would be beautiful, downloading the keys too, and then downloading/making the cia right on your 3ds would be cool.
 
  • Like
Reactions: Xenosaiga

Xenon Hacks

Well-Known Member
Member
Joined
Nov 13, 2014
Messages
7,414
Trophies
1
Age
30
XP
4,687
Country
United States
Nothing happens

Code:
Microsoft Windows [Version 10.0.10586]
(c) 2015 Microsoft Corporation. All rights reserved.

C:\Users\??????>cd C:\Users\??????\Desktop\FunKeyCIA

C:\Users\??????\Desktop\FunKeyCIA>funkeycia.py -title 0004000000125500 -key XXXXXXXXXXXXXXXXXXXXXXXXXXXXX

C:\Users\??????\Desktop\FunKeyCIA>
 

cearp

瓜老外
OP
Developer
Joined
May 26, 2008
Messages
8,714
Trophies
2
XP
8,441
Country
Tuvalu
@Xenon Hacks i don't use python on windows, but you don't need to type python at the start of the line?
and, are you on python 2 or 3?
maybe the mistake is you, maybe me, but for me this works perfectly :)
 

cearp

瓜老外
OP
Developer
Joined
May 26, 2008
Messages
8,714
Trophies
2
XP
8,441
Country
Tuvalu
i call upon the community to start sharing encrypted title keys.
i can only do so much, i am not a strong dev, i would wish to make a 3ds homebrew to parse the tickets and extract the keys (better yet, upload them), but it would take me some time!
if anyone wants to help, please tell me, because this method IS better than failectcdn but of course, it needs to be used to be useful.

Works smooth in Windows 7 using python 3 (Well i have python 2.7 installen with python 3)
thank you, very happy to hear it :)
to be honest, i'm using windows but i do this stuff in cygwin, so it's not really the same ;)
 

Xenosaiga

Time to switch it up
Member
Joined
Oct 9, 2015
Messages
1,501
Trophies
0
Age
33
Location
The Shadows
XP
1,070
Country
United States
So which version of python should I install then?
I have both python 2.7 and python 3 on windows 10.
what you do for windows:
  • have both installed just because.
  • In the folder with the FunKey.py hold down shift key and the right click in the folder.
  • click on "Open command window here"
  • type: FunKeyCIA.py -title XXXXXXXXXXXXXXXX -key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  • It should start downloading like that.
EDIT: I opened FunKey.py and saw it calls for Python 2.7 so there is that.
 
Last edited by Xenosaiga,
  • Like
Reactions: Prince Frost

Bu2d85

Well-Known Member
Member
Joined
Nov 6, 2014
Messages
1,042
Trophies
0
Age
38
XP
1,271
Country
United States
If I already installed a "bad" cia will installing a "good" cia over fix my ticket? If not, is there a way to remove the bad ticket?
 

Xenon Hacks

Well-Known Member
Member
Joined
Nov 13, 2014
Messages
7,414
Trophies
1
Age
30
XP
4,687
Country
United States
i'm sorry :( do other python tools work for you?
Well if it makes you feel any better PlaiCDN still works correctly :rolleyes:

--------------------- MERGED ---------------------------

I have both python 2.7 and python 3 on windows 10.
what you do for windows:
  • have both installed just because.
  • In the folder with the FunKey.py hold down shift key and the right click in the folder.
  • click on "Open command window here"
  • type: FunKeyCIA.py -title XXXXXXXXXXXXXXXX -key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  • It should start downloading like that.
EDIT: I opened FunKey.py and saw it calls for Python 2.7 so there is that.
Im using 2.7 im about to make a video
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    K3Nv2 @ K3Nv2: Sorry for accidentally bending over