반환 지향형 프로그래밍
반환 지향 프로그래밍은 스택 스매싱의 진화된 버전이다. 일반적으로 공격들의 이러한 종류들은 상대방이 프로그램의 버그(주로 버퍼 오버런)를 이용함으로써 콜 스택을 조작할 때 발생한다. 버퍼 오버런 시에 사용자가 제공하는 데이터를 적절한 경계 검사 없이 메모리에 저장하는 함수는 적정한 양보다 더 많은 데이터를 받아들일 수 있다. 데이터가 스택에 겹쳐써지면 초과된 데이터는 함수의 변수에 할당된 공간을 넘치게 되고 반환 주소도 겹쳐쓰게 된다. 이 주소는 이후에 함수에 의해서 제어 흐름을 다시 호출자로 넘겨줄 때 사용된다. 만약 겹쳐써졌다면 제어 흐름은 새로운 반환 주소로 넘겨지게 된다.
주파수 편이 변조
주파수 편이 변조(Frequency-shift keying, FSK)란 반송파(carrier wave)의 이산 주파수(discrete frequencies) 변화를 통해 디지털 정보가 전송되는 주파수 변조 체계이다. 가장 간단한 FSK는 이진 FSK(BFSK)이다. BFSK는 이진수 정보(0과 1로 구성)를 전송하기 위해 한 쌍의 이산 주파수를 사용한다. BFSK에서 "1"은 mark 주파수, 그리고 "0"은 space 주파수라 불린다.
자세히 설명된 참조할만한 구현은 다음과 같다. BFSK 신호의 복조(demodulation)는 Goertzel 알고리즘을 이용해서 매우 효율적으로 구현되며, 낮은 전력의 마이크로컨트롤러(microcontroller)에서도 그러하다.