It is not possible to make a piece of software completely secure because software sits atop hardware and hardware introduces its own security vulnerabilities that leak into software without possible recourse.