Created
August 10, 2021 01:46
vroid web view vrm decrypt
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
using System.Security.Cryptography; | |
using System.IO; | |
using System.IO.Compression; | |
namespace Vroid | |
{ | |
class Vroiddec | |
{ | |
static void Main(string[] args) | |
{ | |
using (FileStream fs = new FileStream(args[0],FileMode.Open)) { | |
using (BinaryReader bs = new BinaryReader(fs)) { | |
int buff_size=(int)(fs.Length)-48; | |
RijndaelManaged rDel=new RijndaelManaged(); | |
rDel.IV=bs.ReadBytes(16); | |
rDel.Key=bs.ReadBytes(32); | |
rDel.Mode=CipherMode.CBC; | |
byte[] resultarray=rDel.CreateDecryptor().TransformFinalBlock(bs.ReadBytes(buff_size),0,buff_size); | |
using(MemoryStream ms =new MemoryStream(resultarray)){ | |
using(GZipStream gzs=new GZipStream(ms,CompressionMode.Decompress)){ | |
using(FileStream df=new FileStream(args[0]+".dec",FileMode.OpenOrCreate,FileAccess.Write)) | |
{ | |
int data; | |
while((data=gzs.ReadByte())!=-1) | |
{ | |
df.WriteByte((byte)data); | |
} | |
} | |
} | |
} | |
} | |
} | |
log_msg("Done!"); | |
} | |
static void log_msg(string msg) | |
{ | |
Console.WriteLine(msg); | |
} | |
} | |
} |
Nice post!
I checked the differences between the downloaded VRM and the VRM in the browser, and found that the vertex coordinate data had undergone some transformations
true dude, I hope this will shows how it works:
https://toon.link/blog/1740863435/borrowing-intellectual-property
Just think this will be helpful? https://inside.pixiv.blog/2024/02/05/120000
now i get a decrypted .bin file. it seems that this .bin file contains a pmx model and its textures and meshes. but i cannnot read this file. hope somebody could give me some suggestions. https://github.com/TenjoinWai/symphony-miku
bumping on this, wondering how the older models are handled
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
VRoid Hub obfuscates the mesh of the preview models. You can read more on this here: https://toon.link/blog/1740863435/borrowing-intellectual-property.