A framework to protect mobile agents by using reference states To protect mobile agents from attacks by their execution environments or hosts one class of protection mechanisms uses reference states to detect modification attacks. Reference states are agent states that have been produced by non attacking or reference hosts. This paper examines this class of mechanisms and present the bandwidth of the achieved protection. First a new general definition of attacks against mobile agents is presented. As this general definition does not lead to a practicable protection scheme the notion of reference states is introduced. This notion allows to define a protection scheme that can be used to practically realize a whole number of mechanisms to protect mobile agents. Therefore after an initial analysis of already existing approaches the abstract features of these approaches are extracted. A discussion examines the strengths and weaknesses of the general protection scheme and a framework is presented that allows an agent programmer to choose a level of protection using the reference states scheme. An example illustrates the usage of the framework measurements present the overhead of the framework for the case of the example mechanism.