Skip to content

sylvarant/secure-ml-compiler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Secure ML Modules Compiler

Build Status Coverage Status artistic

What is this repository for?

This repository contains the implementation of the secure compiler for ModuleML described in the APLAS 2015 paper:A Secure Compiler for ML Modules.

Setup

Set up the environment:

make setup

Compile the compiler:

make now

Compile and run the tests:

make test

Repository Structure

  • src/ : compiler source code
  • lib/ : run-time environment for the compiled secure code
  • tests/ : all compiler tests
    • interoperation : implementations of the low-level contexts that test the output of the compiler
    • timing : implementations of the low-level contexts used to obtain the experimental results
  • log/ : stores logs of test runs
  • out/ : stores the low-level objects and executables

Scripts

  • compile : a bash wrapper around the compiler
compile -s <file> # compile securely
compile -n <file> # comile naively
  • link : a wrapper around the gcc linker to help combining modules and contexts
link <object> <file> [-DINSECURE]
  • test : custom built testing mechanism

License

Artistic License 2.0

About

A ML compiler that secures ML's abstractions at the low-level

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published