Data recovery from Arduiono and Xbee

Probably this question's answer is very obvious but I could not find.

I am working with Xbee and Arduino which is communicating with another xbee+arduino device. My questions are:

  1. Can anyone, who captures the device, read the data stored in arduino microprocessor? If yes, how to make it secure? Please be informed that it is storing new data after some time.
  2. If I enable the Xbee's encryption (AES), can an adversary capture it and read the key? I have tried to read it later but it does not show anything.
  3. If a device is captured by adversary, is there anyway to know from other device?

Any additional suggestion to improve the scenario would be highly appreciated.

  1. Can anyone, who captures the device, read the data stored in arduino microprocessor?

Depending on the fuse settings, maybe. The "data" is all binary, so making sense of it would be a challenge, in any case.

If yes, how to make it secure?

Change the fuse settings.

Please be informed that it is storing new data after some time.

What is storing new data where? If the data is in variables, that data would be lost when the Arduino was reset, which is, of course, necessary to extract any data stored on the Arduino.

  1. If I enable the Xbee's encryption (AES), can an adversary capture it and read the key?

No. Which means that you don't want to forget it.

  1. If a device is captured by adversary, is there anyway to know from other device?

Silly question. There is no way for the Arduino or XBee to know that the person physically in control of the hardware is friend or foe.