First and foremost, serious researchers should read Lowe 2004, describing SIFT in detail. Under a set of apparently reasonable axioms regarding the structure of a scale space, the only scaling function by which a scale space may be created is the Laplacian of Gaussian. This function has an efficient discrete approximation by successive Differences of Gaussians or DoGs. These DoGs are created by pixelwise subtracting images which have been successively convolved with a Gaussian kernel. When one finds extrema of these DoGs, they approximate the extrema of the Laplacian of Gaussian: scale invariant features.
So, what are the specifics of my implementation? My SIFT detector is written in c and compiled with the gcc. It operates on image files of the form .ppm (ascii format). It reads in an image in this format and outputs a data file containing the features in the format "x y z", as well as a new .ppm image which is a grayscale version of the original with the feature points overlayed on top as red dots. Additionally, if you have (or would like to get) the graphics program AquaTerm, my program can display the original .ppm picture, the DoGs with features superimposed, and finally, the original picture with features superimposed. The displays can be turned on or off (default off) by the constants at the top of the sift.c file. Speaking of which, the other parameters which can be varied are the cutoffs for contrast and edges. Lowe suggests 8 for contrast and 12 for edges, but I seem to get nice pics with 4 and 8, respectively.
You should know that SIFT is patented in the US, so if you are a resident here, you should consider all applicable laws before using any of this code. That being said, if you do have permission granted to use this patent, or are using the code for research, my code is freely available under the GPL v.3.