1. A method for creating a superfingerprint for identifying a software comprising: executing said software at least once; in each execution, selecting specified portions of at least one of said executing software and of results of executing said software; in each execution, performing computations on said selected portions to obtain a collection of fingerprints; and combining said collections of fingerprints found in each execution into the superfingerprint of said software according to a combining rule.