Patent ID: 8086863

Claim:
A method for protecting data and a path of a mobile agent (MA) from a first server within a network system having a plurality of servers (S 0 , S 1 , . . . , S n ), wherein the mobile agent has to pass a number of the servers according to an appropriate succession that defines the path of the mobile agent, the method comprising: jointly encrypting the path and data intended for any one of the servers within a nested structure, the nested structure being built up on a number of nested terms corresponding to the number of servers, each nested term being decryptable by exactly one server of the number of servers in such a manner that each server of the number of servers gets access only to the data intended for it and to a section of the path, respectively; and sending the mobile agent through the path, wherein each of the plurality of servers has a pair of a public key (KS 0 , . . . , KS i , . . . , KS n ) and a private key (PKS 0 , . . . , PKS i , . . . , PKS n ) and an ip-address (ip(S 0 ), ip(S 1 ), . . . , ip(S n )), respectively, the method further comprising: choosing a unique number (r0) and assigning it to the mobile agent; choosing for each server the mobile agent has to pass a secret symmetric key (S i Ko), respectively, and assigning S i Ko to that respective server (S i ); encoding each secret key (S i Ko) with the public key (KS i ) of the respective server (S i ); encrypting each secret key (S i Ko) and the public key (KS 0 ) of the first server via a wrapping function (h), thus forming for each respective server (S i ) an authentication code (h(KS 0 , S i Ko)); and encoding via a recursive workflow the data and the path jointly in a nested structure consisting of a number of nested terms corresponding to the number of servers, the workflow starting by encoding as kernel of an innermost term the data (m n ) intended for a last server (S n ) in the succession with the last server's secret key (S n Ko), combining the unique number (r0), the innermost term's kernel ({m n }S n Ko), an encoded respective secret key ({S n Ko}KS n ), a respective data authentication code (h(KS 0 , S n Ko)) and an ip-address (ip(S n )) of the last server (S n ) and an ip-address (ip(S n−1 )) of the second to last server (S n−1 ) and encoding that combination with the private key (PKS 0 ) of the first server (S 0 ), thus forming the innermost term and serving, combined with the ip-address of the last server and the data intended for the second to last server, as kernel of a second innermost term in the nested structure, and continuing accordingly by generating successively the terms of the nested structure correspondingly to the innermost term.