Flag
To implement "a trusted contact"? you could use the Flag module, whereas a user can "flag" another user as "I trust that user".
Views
Create some view using the Views module, in the format of a block, whereas you use the userid as a filter for such view. The actual content of such view should match with the "activities" you have in mind.
Rules block visibility
Use the Rules block visibility module to control the visibility of such block. Here is a quote from its project page:
The Rules block visibility module allows Rules components to be used to control block visibility. This provides Drupal administrators and developers extreme flexibility in controlling when blocks should be displayed on their websites, in addition to the default visibility options provided by Drupal.
The general idea is that if you can do it with Rules, you can use it to control block visibility, so the possibilities are limitless:
Need to show a block only for users registered more than a month ago?
Perhaps you have a block that must be shown only between 8am-5pm on weekdays?
What about displaying or hiding a block based on current weather conditions?
All of this can be done by using Rules block visibility.
With that, and as per the "if you can do it with Rules, you can use it to control block visibility" above, you've reduced your question to creating a Rules Component to verify if the "current user" has flagged the user of the profile being viewed as a trusted contact. As per the great integration of the Flag module with Rules, that should really be like a "Getting started with Rules" exercise.