Laws for tourists can get expensive/bad! Be careful its a funny culture of needy desperate ppl.. Its no joke that a guy will sell you stuff on the street for a decent price, then tell a cop what he did and point you out for a few bucks.. If he does that then you'll need to bribe the cop alot more than you payed, and he might haul you in anyways.. Citizenship has its advantages..
Your safer sources will actually probably be on your Americanized resort area, but the prices will likely be much higher than what some rasta dude on the street has to offer..