You can trivially distinguish those transactions from real ones. In fact so trivial that you could do it in one if clause
#define LATEST_BLOCK_BEFORE_EMERGENCE_OF_QC 76283747
# fill in number when that happens
if (block_height>LATEST_BLOCK_BEFORE_EMERGENCE_OF_QC) {
# Treat transaction as invalid if it still uses SHA256
}
You know transactions are timestamped through the medium of being included in a block, right?