EncryptionProvider Interface


Provides the methods for setting up permissions, applying the cryptography of the underlying encryption and decryption, and user authentication.

public interface class EncryptionProvider
public interface EncryptionProvider
Public Interface EncryptionProvider


Encryption providers are implemented through custom COM add-ins. You are provided with storage within Office documents for add-in specific information to store whatever information you need to encrypt, decrypt, apply rights, and display permission setup or authentication user interfaces.


Authenticate(Object, Object, UInt32)

Used to determine whether the user has the proper permissions to open the encrypted document.


Creates a second, working copy of the EncryptionProvider object’s encryption session for a file that is about to be saved.

DecryptStream(Int32, String, Object, Object)

Decrypts and returns a stream of encrypted data for a document.

EncryptStream(Int32, String, Object, Object)

Encrypts and returns a stream of data for a document.


Ends the current encryption session.


Displays information about the encryption of the current document.


Used by the EncryptionProvider object to create a new encryption session. This session is used by the provider to cache document-specific information about the encryption, users, and rights while the document is in memory.

Save(Int32, Object)

Saves an encrypted document.

ShowSettings(Int32, Object, Boolean, Boolean)

Used to display a dialog of the encryption settings for the current document.

Applies to