What shall I use for expiration after trial period, that cannot be cracked or reverse engineered?
There is not much that can't be cracked. Please read my answer over here. As a reverse engineer myself I totally agree with Adam Rosenfield's comment on your question. It's an arms race, no more no less. Make your software cool and interesting and someone might actually take the time to crack the most time-consuming protection scheme.
I never did this before, so basically I am clueless here.
This makes things even worse, because it means that you cannot even judge well which solution may stand a chance and which won't. The thing is, you can only deter "crackers" so much. But the more interesting question if your protection doesn't get cracked whether it was good or whether your software is perhaps so uninteresting that no one makes an effort to crack it. Again, read my linked answer on the related topic.
The gist: I am questioning the motivation for this kind of protection mechanisms. The best trial w.r.t. protection from IP "theft" is the feature-limited trial, not the time-limited trial.
Let me quote myself from the linked answer:
The general problem in most of these cases is that on one hand you
trust the users (because you sell to them), but on the other hand you
don't trust them (because you try to protect your software somehow).
When you look at it this way you can see how futile it actually is.