Abstract: Systems and methods for protecting machine learning engines, artificial intelligence engines, large language models, and deep learning engines. An Offline Protection Unit is configured to analyze one or more characteristics of a Protected Engine, and to perform offline fortification of the Protected Engine against attacks by changing operational properties or operational parameters of the Protected Engine to reduce its vulnerability to attacks. An Online Protection Unit is configured to perform analysis of at least one of: (i) inputs that are directed to be inputs of the Protected Engine, (ii) outputs that are generated by the Protected Engine; and based on the analysis, to dynamically perform online fortification of the Protected Engine against attacks by dynamically changing operational properties or operational parameters of the Protected Engine to reduce its vulnerability to attacks.