Here's a little puzzler for those of you with a puzzling mind ...

Background
I'm writing a licence manager / key generator to protect a piece of software (an add-in for the NT IIS Admin service). The user will have to re-licence periodically and will be asked for the server IP that their system runs on and will be given a new licence.

But why are you posting this?
I want to be fairly sure that the users won't be able to figure out how to make their own codes once they have several licences to compare. If anyone can figure it out this one I'll post this version of the code and rewrite it (sorry - I can't post it if I use it - I'm being paid for this one ) and we'll try again

What will the user know?
Say the users IP was 63.146.109.212. They would get the following licences/expiry dates:
Expires 01/04/2003: 3EAC281-3F9B7CE-3F91CB9-4088350
Expires 01/06/2003: 3EAC281-3F9B7D2-3F91CB9-4088350
Expires 01/01/2004: 3EAC282-3F9B7CF-3F91CB9-4088350
Expires 01/06/2004: 3EAC281-3F9B7D2-3F91CB9-4088351

Challenge 1
Create a code with a new expiry data.

Challenge 2
Create a code with a new IP address