Skip to content

Lama3L9R/zakosign

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

76 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zakosign

An ELF and PK file signing tool.

996.icu LICENSE


Purpose

Magisk Modules or Kernel Patch Modules have the highest permissions in your system, yet they are not signed. At the same time, regular Android Apps, which does not aquire the HIGHEST permissions on your device, are all signed by the developers. By signing modules, suspicious and unwanted modification to the module can be prevented. An example can be that a virus module pretend to be a popular module by simply cloning module properties. As Android root managers (Magisk, KernelSU, APatch, and their forks) does not verify the integrity of Magisk Modules or Kernel Patch Modules, this project is here to solve the problem without introducing any breaking changes. zakosign provides a complete solution for signing both PK (aka ZIP) and ELF files.

It is important to verify before installation but not after installation because with root privileges you can basically bypass all signature verification in your system. So, it is important to prevent the installation of suspicious modules.

For Root Implementations

Please read docs/INTEGRATION_GUIDE.md for more information on integrating zakosign.

For Developers

To sign your module, you will first need a ED25519 keypair. RSA keypair is not supported. If you already have one, you can skip this step.

$ zakosign key new yourkey.pem

Signing your module

$ zakosign sign example.zip --key yourkey.pem --output example.signed.zip

If you wish to add certificates, specify them by using --certificate repeatly. You can add maximium of four certificates.

$ zakosign sign example.kpm --key l3.pem --output example.signed.kpm --certificate l3.crt --certificate l2.crt --force