24

Open Sourcing Metapod, Personalized Executable for All

 5 years ago
source link: https://www.tuicool.com/articles/VniaQvU
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Supercharge your user onboarding, track conversions, watermark your applications, and much with our latest release.

As a Techstars alum company, a core part of our ethos at Rainway is to give first. We proactively work to give back to the ecosystem by sharing our innovations and technologies were applicable with no specific expectations of return. Today is one of those days, and I’m thrilled to share our latest open-source release MetaPod with you all.

What Is MetaPod?

MetaPod is a cross-platform library we’ve developed to create personalized Win32 applications. You’re able to take any digitally signed Windows executable, and append arbitrary metadata to it all while preserving the signature. MetaPod unlocks the ability to do things such as:

  • Generating per-user installers that have login tokens embedded, allowing the program to log in instantly with no user input after installation.

  • Tracking web visitor download conversions by embedding a cookie retrieved from a download request.

  • Uniquely watermark executables to determine the source.

And much more!

Wait… How Does This Work?

You might be surprised to learn you can sign an executable, then modify it while preserving the validity of the signature. MetaPod can do this by placing unverified data within the PKCS#7 blob itself which will not be taken into account when verifying the Authenticode signature.

We start by creating self-signed certificates and then append our metadata to the extensions of the non-CA certificate. The certificates are then inserted into the PKCS#7 certificate chain, and because they are also not hashed when verifying signatures, that data can also be changed without invalidating the digital signature.

Built for Scale

The core library is written in Go and can process a stub application in a few milliseconds. It can also be compiled to a standalone C library so you can invoke it your language of choice (you can see a C# example here ).

However you choose to utilize it, it can be easily deployed on AWS, Azure, and other cloud providers in a serverless manner while doing its job with virtually no overhead.

A Quick Demo

In closing.

We hope you enjoy our latest open source release, and we look forward to seeing your thoughts, and hopefully contributions.

Download MetaPod here .

Let’s keep the conversation going:


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK