Main Content

Model Protection

Create a protected model for simulation and code generation to share with a third-party

A protected model provides a model reference that conceals underlying implementation details. The model protection process compiles the model and packages the derived artifacts, which support model functionalities without including sensitive IP. See Protect Models to Conceal Contents.


expand all

Simulink.ModelReference.ProtectedModel.HookInfoFiles and exported symbols generated by creation of protected model
Simulink.ProtectedModel.CallbackCallback code that executes in response to protected model events
Simulink.ProtectedModel.CallbackInfoProtected model information for use in callbacks


expand all

Simulink.ModelReference.protectObscure referenced model contents to hide intellectual property
Simulink.ModelReference.modifyProtectedModelModify existing protected model
Simulink.ModelReference.ProtectedModel.setPasswordForCertificateProvide password for digital certificate
Simulink.ModelReference.ProtectedModel.setPasswordForCodeGenerationAdd or provide encryption password for code generation from protected model
Simulink.ModelReference.ProtectedModel.setPasswordForModifyAdd or provide password for modifying protected model
Simulink.ModelReference.ProtectedModel.setPasswordForSimulationAdd or provide encryption password for simulation of protected model
Simulink.ModelReference.ProtectedModel.setPasswordForViewAdd or provide encryption password for read-only view of protected model
Simulink.ModelReference.ProtectedModel.clearPasswordsClear cached passwords for protected models
Simulink.ModelReference.ProtectedModel.clearPasswordsForModelClear cached passwords for a protected model
Simulink.ProtectedModel.addTargetAdd code generation support for current target to protected model
Simulink.ProtectedModel.getCallbackInfoGet Simulink.ProtectedModel.CallbackInfo object for use by callbacks
Simulink.ProtectedModel.getConfigSetGet configuration set for current protected model target or for specified target
Simulink.ProtectedModel.getCurrentTargetGet current protected model target
Simulink.ProtectedModel.getSupportedTargetsGet list of targets that protected model supports
Simulink.ProtectedModel.openOpen protected model
Simulink.ProtectedModel.removeTargetRemove support for specified target from protected model
Simulink.ProtectedModel.setCurrentTargetConfigure protected model to use specified target
Simulink.ProtectedModel.signAttach digital signature to protected model


Protect Models to Conceal Contents

Protect a model when you want to share a model with a third party without revealing intellectual property.

Test Protected Models

Test your protected model by comparing it to the original model.

Sign a Protected Model

Attach a digital signature to your protected model.

Package and Share Protected Models

Files to include in the protected model package.

Specify Custom Obfuscators for Protected Models

Specify a post-processing function for files that the protected model creation process generates.

Create Protected Models with Multiple Targets

Create a protected model that supports multiple code generation targets.

Define Callbacks for Protected Models

Customize protected model behavior by defining callbacks.

Best Practices for Creating Protected Models

Choose modeling patterns and protection options to allow the functionalities that you want your protected model to support.