Well, cross-correlation is generally already a good method, but usually very time and power-consuming due to the lot of floating-point multiplications and additions. A good alternative could be the binary or threshold-correlation. You are defining a threshold (also possible per single signal). Above this threshold your "virtual signal" is 1, below it is 0. Now you can simply correlate these "virtual signals" what is usually similarly precise but much faster and/or less power consuming as usually no multiplication engine is needed.
You can take the mean-square difference of the two signals to get the mean-square "error" between them.
Alternatively you might also apply the Bartlett processor, which is the generalized cosine (normalized projection) of one (complex-valued) signal A against another (complex-valued) signal B. In particular:
Bartlett = A* B / (|A| |B|)
where
A = vector holding sequence of time or location samples of a complex-valued signal A
B = vector holding sequence of time or location samples of a complex-valued signal B
@Volker Skwarek , @ just to clarify my questions more. the two signals were the estimated and the measured signal. there are some approaches uses the cross correlation others uses euclidean distance or cosine matching so Im somehow trying to find and alternative way
my goal is to get accurate result in case there will be an attack so finding the difference between the two shapes will give an idea if there is an attack happened or not.
In addition to the above mentioned methods you can use the sum of absolute difference SAD as a measure of similarity between the two signals. I thin its mathematical effort is relatively low and it is a direct expression of the differences between the two waveforms. This method is used in comparing pixel blocks in video compression for motion estimation in the video codecs.