I was looking at native option. So you saying using sql server native method data masking can be done from SQL server 2016 onwards?
When you say "mask the data" what do you mean? That is a big determining factor for whether or not something within SQL Server can get the job done for you or not.
Let's say you want to mask information within your production server such that only certain roles have access. That is what the native Dynamic Data Masking is all about. It hides data based on security. What this doesn't do, is hide data in less secure environments.
So, let's say you want to hide data from your developers because of the GDPR or similar compliance requirements. If you use Dynamic Data Masking in your non-production servers, and the people there have elevated privileges, which they most certainly will in most cases, they'll be able to see the "masked" data. This is why, when talking about masking in non-production environments, the term gets overloaded. It means, change the data because you can no longer simply hide the data.
If you clarify your goals, it'll be easier to point you to a viable solution.