Количество сигнатур вовсе не равно количеству вирусов. А если и равно - тогда разработчик антивируса совершил хорошую ошибку. В современном ав-софте в базах не только сигнатуры вирусов, но и алгоритмы эвристика, распаковщика, и т.д. Да и кстати сигнатура вовсе не означает что это маска по которой прогоняется файл, есть сигнатуры угроз..выпаливает антивирус что как-то подозрительно винт скрипит...куда-то пакеты идут

и делает окончательный вердикт основываясь на своих подозрениях. Для удобства наработки тоже обновляются в виде баз данных. Если взять к примеру 100 вирусов, которые отличаются на пару байт, гораздо эффективней сровнять все эти 100 семплов, выделить участки которые наиболее часто совпадают, составить по ним сигнатуры, затем для модификаций еще записи..допустим МД5 хеш по смещению 0x..... от "общей" сигнатуры..этого вполне достаточно для выделения семейства. Generic-сигнатуры вроде это называется. Затем, часто бывает так, что вирусные аналитики вполне могут удалить некоторые сигнатуры вирусов, которые якобы они посчитали устаревшими и безопасными (из личных наблюдений), скачивается апдейт, а там сказано что удалить с базы такие-то записи...и удаляется. И наконец, с нынешними темпами появления новых вирусов без эвристика и облачных технологий просто никуда.