Hardware Security : A Hands-on Learning Approach