Programming languages and trojans

From: David Mertz <voting-project_at_gnosis_dot_cx>
Date: Wed Apr 21 2004 - 12:35:10 CDT

On Apr 21, 2004, at 12:58 PM, Douglas W. Jones wrote:
> Generally, there is no way to test for the presence of trojans by any
> form of regression testing.

I'm absolutely in agreement here.

> This is central to my original objections to relying on any language
> that rests on a large interpreter such as Python for anything other
> than a prototype.

Here I don't agree at all. At least not in the context of Doug's other
remarks. There's a lot more code in GCC and libc than there is in the
Python interpreter. Ipso facto, a lot more code in which to hide
trojans. Just because it's compiled doesn't mean something malicious
isn't included in the machine code.

And a Java JVM is WAY, WAY bigger than Python's VM. And JVM's aren't
even Free Software, for the most part. If you actually want small,
look at TCL, or Lua, or maybe small-Eiffel.

As for strong typing... well, Java is still pretty weakly typed as
things go, certainly no more so than Python. If you want STRONG
typing, use Haskell or ML.

Overall, I would have more confidence (security-wise) in an open
program written in Python or Ruby than in any of the other options.
Perl is similarly architecturally, but it's code positively
-encourages- obscure and subtle misbehavior.

If we run EVM software on a version of Python that was released prior
to Aug 2003 (when we launched EVM2003), it's pretty darn hard to
imagine anyone anticipated our project, and inserted a trojan just in
case we developed it (and used a particular set of libraries and
techniques, etc).

Yours, David...

A nice word for MS: <IMG SRC="c:\con\con">
= The content of this message, with the exception of any external 
= quotations under fair use, are released to the Public Domain    
Received on Fri Apr 30 23:17:14 2004

This archive was generated by hypermail 2.1.8 : Fri Apr 30 2004 - 23:17:29 CDT