Degree Name

Doctor of Philosophy


School of Information Technology and Computer Science


Computer viruses and other forms of malicious software have been a significant computer security problem for over ten years. We discuss computer viruses and the strategies that can be employed by a virus to complicate automated detection. In particular, the organisation of Macintosh operating system software and the strategies that have been employed by viruses on this platform are considered. Macro viruses, one of the relatively recent developments in the area of computer viruses, are described. A previously unknown attack that could be implemented on a Macintosh and that would allow the infection of application programs without altering any executable code is described. We also discuss a simple countermeasure to this attack. We subsequently extend this attack and consider the effect of operating system changes on Macintosh viruses. There are many other types of malicious software. Applets written in Java can be used to implement a variety of attacks against Internet users. We consider the potential of a Java applet to be used in conjunction with a Web Spoofing attack to perform covert distributed computing. We continue by discussing two combinatorial search problems: finding sequences with zero autocorrelation function, and finding Hadamard matrices using Williamson's method. We report many new results for the search for sequences with zero autocorrelation function, and note that this search, if it is to be extended, would require the application of distributed computing techniques. We describe a distributed search for Hadamard matrices based on Williamson's method; although we do not find any new matrices, we provide independent verification of results presented by others.