1. A method of providing a digital signal processing function ƒ to an executing device in an obfuscated form; the function ƒ including a function cascade including a plurality of signal processing functions ƒ i , 1≦i≦N, for processing a digital signal input x to yield a digital signal output (for example, FC 1 (x)≡ƒ N ∘. .. ∘ƒ 1 (x)) the method including: selecting a set of 2N invertible permutations p i , 1≦i≦2N; calculating a set of N functions g i , where g i is functionally equivalent to p 2i −1 ∘ƒ i ∘p 2i−1 , for 1≦i≦N; calculating a set of N−1 functions h i , where h i is functionally equivalent to p 2i−1 −1 ∘ƒ i ∘p 2i−2 , for 2≦i≦N; equipping the executing device with an execution device function cascade that includes y N ∘h N ∘y N−1 ∘h N−1 ∘. .. ∘y 1 , where y 1 ,. .. , y N are function parameters (for example, ED 1 (y 1 ,. .. , y N )≡y N ∘h N ∘y N−1 ∘h N−1 ∘. .. ∘y 1 ), providing the functions g 1 ,. .. , g N to the executing device; and in the executing device, applying the execution device function cascade to the functions g 1 ,. .. , g N (for example, ED 1 (g 1 ,. .. , g N )).