In my country during the year 2016, 8th November the government announced currencies with highest denomination like 1000₹ and 500₹ won't be valued anymore. People are supposed to reach the banks and exchange it to any other denomination. In the event of this people suffered much, because there is no money to spend and banks were full of crowd. More than 100 lost their live standing in queue.
Whats the reason for such an immediate decision ?
The government stated it a reason to fight illegal funding to terrorism and recove the black money.
If there is validity or expiry for every currency same as day to day life needs, then people will make use of it and exchange to new currencies at the right time. This way everything can be made to be in circulation rather than getting accumulated for years. Here black money can also be avoided.
I believe even if you place those parameters it still won't stop terrorist group or those person or organization assisting them because they would surely find a way to bypass the expiration and validation if it is implemented and will find loopholes and exploits to continue their assistance. There would surely be some backer behind that can manipulate those parameters which can bypass the policy.