macho-unsign
TypeScript icon, indicating that this package has built-in type declarations

1.1.1 • Public • Published

Mach-O Unsign

Package for removing Mach-O code signatures

npm node

size downloads

Build Status

Overview

A broken code signature is often worse than no signature, so it can be desirable to remove a signature.

This package can remove code signatures from Mach-O binaries.

Both thin and fat binaries are supported.

Usage

Just pass an ArrayBuffer or an object that is a view of an ArrayBuffer to the unsign function.

If the binary is signed, an unsigned binary in a new ArrayBuffer will be returned.

If the binary has no signatures, null will be returned.

import fs from 'fs';
import {unsign} from 'macho-unsign';

const unsigned = unsign(fs.readFileSync('macho-binary'));
if (unsigned) {
	console.log('Signature Removed', unsigned);
	fs.writeFileSync('macho-binary-unsigned', Buffer.from(unsigned));
} else {
	console.log('Not signed');
}

Bugs

If you find a bug or have compatibility issues, please open a ticket under issues section for this repository.

License

Copyright (c) 2019-2022 Alexander O'Mara

Licensed under the Mozilla Public License, v. 2.0.

If this license does not work for you, feel free to contact me.

Install

npm i macho-unsign

DownloadsWeekly Downloads

29

Version

1.1.1

License

MPL-2.0

Unpacked Size

103 kB

Total Files

24

Last publish

Collaborators

  • alexanderomara