Software based data protection