Yes! This is absolutely a valid method of ensuring files have not been tampered with.
For some background, cryptography as a field provides a handful of useful services when applied. The low-level details of what these are changes depending on who you ask, but they all center around 4 key things:
- Confidentiality (so only the correct parties can view the data)
- Authentication (so we know who the correct parties are)
- Non-repudiation (so the correct parties can't say they didn't do it)
- Integrity (so the correct parties get the correct data)
Sometimes availability (making it so the data can be accessed whenever it's needed) is also included in there. (Here's a Microsoft reference on cryptographic services for the curious.)
Different types of cryptography provide different levels of service. Asymmetric key cryptography provides all of them: using (secure) asymmetric key cryptography, only the known correct parties can get the correct data and can't say they didn't make the data. If you don't have the key, you can't get the data, and you can't the key unless you're the correct party.
Hashing is an interesting case, where it's extremely valuable as a concept and a practice but is very limited in what it can do. Of the 4 cryptographic services, hashing only provides integrity. It provides nothing by way of confidentiality, authentication, or non-repudiation, but cryptographically secure hashing is a fantastic way of ensuring that everything about 2 pieces of content are exactly identical. In fact, in some ways that's the only thing hashing can do.