This plugin by webprodigy, allows you to encrypt download links, protect against leeching, and hide downloads from non-members.
Non-members would see a predefined replacement text that will default to the global option specified in the settings. Users specify a download directory in the settings, and add links to your posts using the following shortcode: [dlprotect file=”yourfile.mp4″ visibility=”private”]Link Text[/dlprotect]
The ‘visibility’ attribute is optional, and so is the Link text. The plugin will work with defaults using [dlprotect file=”yourfile.mp4″]. When visibility is ‘private’, this file will have an encrypted download link for members only, and non-members will see the replacement code you specify in options or in the tag content. Requires PHP5
Download: http://wordpress.org/extend/plugins/download-protect/