Silverlight 5 WinRT

  public sealed class DataProtectionProtectOperation
  : __ComObject, IAsyncOperation`1<IBuffer>, IAsyncInfo
  public virtual AsyncOperationCompletedHandler`1<IBuffer> Completed { get; set; }
  public virtual Exception ErrorCode { get; }
  public virtual UInt32 Id { get; }
  public virtual AsyncStatus Status { get; }
  public virtual void Cancel();
  public virtual void Close();
  public virtual IBuffer GetResults();
  public virtual void Start();

  public sealed class DataProtectionProvider
  : __ComObject, IDataProtectionProvider
  public virtual DataProtectionProtectOperation ProtectAsync(IBuffer Data);
  public virtual DataProtectionStreamAction ProtectStreamAsync(IInputStream src, IOutputStream dest);
  public virtual DataProtectionUnprotectOperation UnprotectAsync(IBuffer Data);
  public virtual DataProtectionStreamAction UnprotectStreamAsync(IInputStream src, IOutputStream dest);

  public sealed class DataProtectionStreamAction
  : __ComObject, IAsyncAction, IAsyncInfo
  public virtual AsyncActionCompletedHandler Completed { get; set; }
  public virtual Exception ErrorCode { get; }
  public virtual UInt32 Id { get; }
  public virtual AsyncStatus Status { get; }
  public virtual void Cancel();
  public virtual void Close();
  public virtual void GetResults();
  public virtual void Start();

  public sealed class DataProtectionUnprotectOperation
  : __ComObject, IAsyncOperation`1<IBuffer>, IAsyncInfo
  public virtual AsyncOperationCompletedHandler`1<IBuffer> Completed { get; set; }
  public virtual Exception ErrorCode { get; }
  public virtual UInt32 Id { get; }
  public virtual AsyncStatus Status { get; }
  public virtual void Cancel();
  public virtual void Close();
  public virtual IBuffer GetResults();
  public virtual void Start();