Thanks for all the comments. I went into the bank and talk to a branch manager and leanred there's really no way to be 100% sure a cashier's check is real. The bank will except my deposit. If the check turn out to be fake, they will void the deposit. As simple as that. In some cases, even a bank teller can not authenticate the cashier's check. That's why they check IDs and even finger print when you cash a check at the issueing bank. Here's advice I got from the branch manager:
1. Know the person you are dealling with. Check IDs/address and make sure the cashier's check was purchased by the person you are dealing with and is payable to you for the exact amount. Absolutely no third party dealing. (most scammer don't want to do this... not only they have to create a fake check, they have to make fake IDs too. They don't want to deal with you directly.)
2. Don't even bother to verify the cashier's check if you can't satisfy #1. No deal period. Call the issueing bank and verify the issue date, amount and remitter. Everything must match exactly. The issue date should be very close to the transaction date. Noboby would keep a cashier check sitting around waiting for something to buy. If the issue date is too old, tell the buyer to get a new cashier's check.
3. Only accept the check in-person and from the actual person you are dealing with (the person you sold the product to, the same person who purchased the check and the same person here to pickup the product and hand you the check.) Nobody else.
If they can't satify #1,2&3. Tell them to send you the check with exact amount and wait at least 10 days to clear. Otherwise, no deal.