There are several methods. Most are a
time-on-time system (the boat's elapsed time is used to calculate a corrected time which is then compared to other boats' corrected time). Another system is time on distance, where the length of the course is the basis for determining corrected times.
The most common in the US is the Portsmouth Yardstick system. Information on what it is and how to use it is here:
http://offshore.ussailing.org/Page1132.aspx. It's a time-on-time system based on performance data submitted by regatta organizers. Unfortunately, the system hasn't had much data input lately, so the rating numbers may be stale, or in the cases of new boats, non-existent.
A system popular in Europe is the Small Catamaran Handicap Rating System (SCHRS -
http://www.schrs.com). It's a measurement based, time-on-time system that is generally considered to be a more accurate rating system.
However, each system has its weaknesses. Boats perform differently in different weight, wind and wave configurations which may not be reflected in the ratings. Some boats will be accused of having "soft" ratings and will do well regardless, while others will have their "favorite conditions" that they do well against other types of boats.