Any USA resident of 18 years and over having his Green Card and living in the
US for at least 5 years (or 3 years if his/hers spouse is already a United States citizen) has the right to naturalization in the USA. Please note that at least half of this time the applicant for naturalization must be physically present in the country, and he must live in his state for at least during the last three months.
The other requirements for being approved for naturalization include the absence of previous convictions (except for the small ones and the statute of limitations) and high moral qualities. When considering your application, USCIS will check whether you were brought to responsibility for prostitution, drugs usage and distribution, etc.