miRNA analysis just using BLAST against mirbase.org
You don't need to use TopHat but it is better to use bowtie instead of BLAST. First of all you need to get rid of the adapter sequences (along with other processing steps prior to alignment). 

Now there are two aspects here: 


miRNA quantification
miRNA discovery


First one is relatively straightforward whereas the second one requires you to perform additional tests such as prediction of stem loops etc. There are published software that can handle both the aspects (mirDeep, miRScan etc). See this review for details on different miRNA gene finders. I have used miRdeep and it uses bowtie-1 to align.

BLAST would work but you have to set parameters which are suitable for small sequences (increase E-value cutoff, reduce word size etc). Moreover, BLAST does not have a cutoff option for the number of mismatches and the length of alignment (it only has a post alignment filter for percentage identity). 

I also personally prefer bowtie because it has something called as n- alignment mode. In this mode the entire read is divided into seed and non-seed regions. You can specify the length of the seed region and the mismatch cutoff. Since for miRNAs the seed region (bases 2-8) is critical for its function, I generally set the seed mismatch cutoff to zero while allowing one or two mismatches in the non-seed region (note that in bowtie the seed always starts at 1).

In general, I would advise that you should go for miRdeep instead of BLAST. However, miRdeep doesn't straight away perform an alignment against the mature sequences. It maps the location of mature sequences in the pre-miRNA sequences (stem loops) and then aligns the reads to the pre-miRNA sequences. If the location of reads has a significant overlap with the mature region (you can adjust the window) then the read is considered as a valid miRNA.