Get Even More Visitors To Your Blog, Upgrade To A Business Listing >>

SOLVED: Reverse engineering base64 algorithm and text encoding/charset

Mathjoh:

I am trying to Figure out the pre-base64-encoded stats of a string as well as the Algorithm used to encode it so I can edit a decoded json string and then re-encode with the same encoding.

I am able to decode the original. But am not able to replicate the encoding.

Example of encoded text:


6gYAAAAAAAB7ACIAbQBUAGUAeAB0AFAAYQByAGEAbQAiADoAewAiAG0AQQBsAGkAZwBuAG0AZQBuAHQAIgA6ADAALAAiAG0ARABlAGYAYQB1AGwAdABSAHUAbgAiADoAWwBdACwAIgBtAEgAZQBpAGcAaAB0ACIAOgAxADYANwAsACIAbQBIAGkAbgBkAGkARABpAGcAaQB0AHMAIgA6AGYAYQBsAHMAZQAsACIAbQBJAG4AZABpAGMAIgA6AGYAYQBsAHMAZQAsACIAbQBJAHMAVgBlAHIAdABpAGMAYQBsAFQAZQB4AHQAIgA6AGYAYQBsAHMAZQAsACIAbQBMAGUAYQBkAGkAbgBnACIAOgAwACwAIgBtAEwAaQBnAGEAdAB1AHIAZQBzACIAOgBmAGEAbABzAGUALAAiAG0AUgBUAEwAIgA6AGYAYQBsAHMAZQAsACIAbQBTAGgAYQBkAG8AdwBBAG4AZwBsAGUAIgA6ADEAMwA1ACwAIgBtAFMAaABhAGQAbwB3AEIAbAB1AHIAIgA6ADAALAAiAG0AUwBoAGEAZABvAHcAQwBvAGwAbwByACIAOgAwACwAIgBtAFMAaABhAGQAbwB3AE8AZgBmAHMAZQB0ACIAOgAxADAALAAiAG0AUwBoAGEAZABvAHcATwBwAGEAYwBpAHQAeQAiADoAMQAwADAALAAiAG0AUwBoAGEAZABvAHcAVgBpAHMAaQBiAGwAZQAiADoAZgBhAGwAcwBlACwAIgBtAFMAdAB5AGwAZQBTAGgAZQBlAHQAIgA6AHsAIgBtAEIAYQBzAGUAbABpAG4AZQBTAGgAaQBmAHQAIgA6AHsAIgBtAFAAYQByAGEAbQBWAGEAbAB1AGUAcwAiADoAWwBbADAALAAwAF0AXQB9ACwAIgBtAEYAaQBsAGwAQwBvAGwAbwByACIAOgB7ACIAbQBQAGEAcgBhAG0AVgBhAGwAdQBlAHMAIgA6AFsAWwAwACwAMQA2ADcANwA3ADIAMQA1AF0AXQB9ACwAIgBtAEYAaQBsAGwATwB2AGUAcgBTAHQAcgBvAGsAZQAiADoAewAiAG0AUABhAHIAYQBtAFYAYQBsAHUAZQBzACIAOgBbAFsAMAAsAHQAcgB1AGUAXQBdAH0ALAAiAG0ARgBpAGwAbABWAGkAcwBpAGIAbABlACIAOgB7ACIAbQBQAGEAcgBhAG0AVgBhAGwAdQBlAHMAIgA6AFsAWwAwACwAdAByAHUAZQBdAF0AfQAsACIAbQBGAG8AbgB0AE4AYQBtAGUAIgA6AHsAIgBtAFAAYQByAGEAbQBWAGEAbAB1AGUAcwAiADoAWwBbADAALAAiAEwAdQBjAGkAZABhAEcAcgBhAG4AZABlACIAXQBdAH0ALAAiAG0ARgBvAG4AdABTAGkAegBlACIAOgB7ACIAbQBQAGEAcgBhAG0AVgBhAGwAdQBlAHMAIgA6AFsAWwAwACwAMQAwADAAXQBdAH0ALAAiAG0ASwBlAHIAbgBpAG4AZwAiADoAewAiAG0AUABhAHIAYQBtAFYAYQBsAHUAZQBzACIAOgBbAFsAMAAsADAAXQBdAH0ALAAiAG0AUwB0AHIAbwBrAGUAQwBvAGwAbwByACIAOgB7ACIAbQBQAGEAcgBhAG0AVgBhAGwAdQBlAHMAIgA6AFsAWwAwACwAMQA2ADcANwA3ADIAMQA1AF0AXQB9ACwAIgBtAFMAdAByAG8AawBlAFYAaQBzAGkAYgBsAGUAIgA6AHsAIgBtAFAAYQByAGEAbQBWAGEAbAB1AGUAcwAiADoAWwBbADAALABmAGEAbABzAGUAXQBdAH0ALAAiAG0AUwB0AHIAbwBrAGUAVwBpAGQAdABoACIAOgB7ACIAbQBQAGEAcgBhAG0AVgBhAGwAdQBlAHMAIgA6AFsAWwAwACwAMQBdAF0AfQAsACIAbQBUAGUAeAB0ACIAOgAiAEYAYQBlAG4AIABkAGUAdAB0AGUAIABmAHUAbgBnAGUAcgBlAHIAIABpAGsAawBlAFwAcgBcAHIAIgAsACIAbQBUAHIAYQBjAGsAaQBuAGcAIgA6AHsAIgBtAFAAYQByAGEAbQBWAGEAbAB1AGUAcwAiADoAWwBbADAALAAwAF0AXQB9ACwAIgBtAFQAcwB1AG0AaQAiADoAewAiAG0AUABhAHIAYQBtAFYAYQBsAHUAZQBzACIAOgBbAFsAMAAsADAAXQBdAH0AfQAsACIAbQBUAGEAYgBXAGkAZAB0AGgAIgA6ADQAMAAwACwAIgBtAFcAaQBkAHQAaAAiADoAMQAyADYAMgB9ACwAIgBtAFYAZQByAHMAaQBvAG4AIgA6ADEAfQA=

Decoded example:


{"mTextParam":{"mAlignment":0,"mDefaultRun":[],"mHeight":167,"mHindiDigits":false,"mIndic":false,"mIsVerticalText":false,"mLeading":0,"mLigatures":false,"mRTL":false,"mShadowAngle":135,"mShadowBlur":0,"mShadowColor":0,"mShadowOffset":10,"mShadowOpacity":100,"mShadowVisible":false,"mStyleSheet":{"mBaselineShift":{"mParamValues":[[0,0]]},"mFillColor":{"mParamValues":[[0,16777215]]},"mFillOverStroke":{"mParamValues":[[0,true]]},"mFillVisible":{"mParamValues":[[0,true]]},"mFontName":{"mParamValues":[[0,"LucidaGrande"]]},"mFontSize":{"mParamValues":[[0,100]]},"mKerning":{"mParamValues":[[0,0]]},"mStrokeColor":{"mParamValues":[[0,16777215]]},"mStrokeVisible":{"mParamValues":[[0,false]]},"mStrokeWidth":{"mParamValues":[[0,1]]},"mText":"Faen dette fungerer ikke\r\r","mTracking":{"mParamValues":[[0,0]]},"mTsumi":{"mParamValues":[[0,0]]}},"mTabWidth":400,"mWidth":1262},"mVersion":1}

NOTE: There is an ACK character at the beginning of the text.

I have tried with several charsets and encoding combinations. Mainly UTF-16 (big endian, small endian, with and and without byte order mark) as I suspect the signs to be 16-bit because of length.

Is there a way to easily figure out the charset and encoding and if there is a specific implementation of base64?



Posted in S.E.F
via StackOverflow & StackExchange Atomic Web Robots
This Question have been answered
HERE


This post first appeared on Stack Solved, please read the originial post: here

Share the post

SOLVED: Reverse engineering base64 algorithm and text encoding/charset

×

Subscribe to Stack Solved

Get updates delivered right to your inbox!

Thank you for your subscription

×