Does you know how the CCK Private Fields module works? Any API? Do you know how the CCK Private Fields module works?
What I'm interested in is having a user who can switch all their content profile fields to private. 

Is there an API that I can call to switch all the user's content profile fields to private?
Is there any better way to have a user opt-out and become basically an invisible user?
The definition I'm getting for opt-out is to never display the user in any search, browse or page.
Looking at the description page of this module, it seems that user can do what you want:


  Overview:
  
  This module allows users to mark administrator selected CCK fields as
  Public (visible to everyone), Hidden (visible to node author, hidden
  from everyone else) or Private (visible to node author and "friends";
  see requirements section below).


Regarding the option to "disappear" a user, I'm not really sure as there's a lot of place where a user can appear, however if you give this user a certain role, you can customize your views to exclude users with this role.