주요 콘텐츠

이 페이지는 기계 번역을 사용하여 번역되었습니다. 영어 원문을 보려면 여기를 클릭하십시오.

보호된 모델에 대한 사용자 지정 난독화 도구를 지정하기

보호된 모델을 생성할 때, 보호된 모델 생성 과정에서 생성되는 파일에 대해 사용자 정의 후처리 함수를 지정할 수 있습니다. 보호된 모델 파일을 패키징하기 전에, 이 함수는 Simulink.ModelReference.protect 함수에 의해 호출됩니다. 다음 단계를 따라 이 함수를 사용하여 생성된 파일에 사용자 지정 난독화 도구를 적용할 수 있습니다:

  1. 후처리 함수를 작성하세요. 이 함수를 사용하여 사용자 지정 난독화기를 호출하십시오. 이 함수는 MATLAB® 경로에 있어야 하며, Simulink.ModelReference.ProtectedModel.HookInfo 객체를 입력 변수로 받아들여야 합니다.

  2. 함수 내에서, 사용자 지정 난독화 도구가 보호된 모델 파일을 처리하는 데 필요한 파일과 내보낸 심볼 정보를 가져옵니다. 파일과 정보를 확인하려면 함수의 입력 변수 속성을 열어보세요. 이 변수는 다음과 같은 속성을 가진 Simulink.ModelReference.ProtectedModel.HookInfo 객체입니다:

    • SourceFiles

    • NonSourceFiles

    • ExportedSymbols

  3. 보호된 모델 파일 정보를 사용자 지정 난독화 도구에 전달하십시오. 다음은 사용자 지정 난독화를 위한 후처리 함수의 예시입니다:

    function myHook(protectedModelInfo)
    
        % Get source file list information.
        srcFileList = protectedModelInfo.SourceFiles;
        disp('### Obfuscating...');
        for i=1:length(srcFileList)
            disp(['### Obfuscator: Processing ' srcFileList{i} '...']);
            % call to custom obfuscator
            customObfuscator(srcFileList{i});
        end
    end

  4. 보호된 모델을 생성할 때 후처리 함수를 지정하십시오:

    Simulink.ModelReference.protect('myModel, ...
        'Mode', ...
        'CodeGeneration', ...
        'CustomPostProcessingHook', ... 
        @(protectedModelInfo)myHook(protectedModelInfo))

보호된 모델 생성자는 Simulink.ModelReference.protect 함수의 ‘ObfuscateCode’ 옵션을 통해 시뮬레이션 타깃 코드와 생성된 코드의 난독화를 활성화할 수도 있습니다. 사용자 지정 난독화 도구는 생성된 코드에서만 실행되며, 시뮬레이션 타깃 코드나 생성된 HDL 코드에서는 실행되지 않습니다. 두 난독화 도구가 모두 사용 중인 경우, 사용자 지정 난독화 도구는 파일이 패키징되기 직전에 생성된 코드에 대해 가장 마지막에 실행됩니다.

참고 항목

도움말 항목