Gnutella only supports searches by hashes via the DHT, because these cannot be routing-optimized as well as keyword seaarches (and with millions of simultaneous users these optimisations are crucial - they save about 90% bandwidth - Info:
QRP ).
The DHT is a Kademlia-network (optimized for exact match retrieval) which is based on sha1 hashes (though you could just sha1 hash a tth to make it searcheable via DHT).