dSQLSRVD - dOMNAR's SQL Server SysComments Decryptor - has been designed to assist developers and administrators of SQL Server 7 and 2000 with examining stored procedures, triggers, views and user-defined functions, in order to gain better insight into 3rd party applications and their database functionality. Such a task is often necessary when integrating a new system with a company's existing systems, or when optimizing a database server's performance.
Unfortunately, some companies insist on using the "With Encryption" clause in their T-SQL-code, which prevents the use of sp_helptext, the stored procedure normally used to extract the stored T-SQL-definition from the syscomments system-table. Why they do this is a puzzle, since encrypting something that can be decrypted without user interaction (i.e., entering of a password) isn't anything else than the infamous security by obscurity. Such "security" can always be broken in short time (speaking in cryptological terms), and offers no real security, which this utility is a proof of. It should be pointed out that Microsoft does not use the encryption clause for any of its own code accompanying SQL Server.
SQL Server encryption notes:
For SQL Server 7 you will only need an account with read-access on the syscomments table, which is the default. The encryption algorithm uses a static key for all encrypted entries.
In SQL Server 2000, Microsoft improved the encryption somewhat, so that it is now impossible for accounts that are not members of the SysAdmin role to decrypt syscomments entries. This is because they changed the encryption algorithm to use dynamically calculated keys based on certain database specific information that can only be read by SysAdmins. Because of the algorithms used, brute forcing would not be a feasible solution.