SqlServer数据库存储过程函数加解密
SqlServer存储过程/函数加/解密
存储过程、存储函数的加密:WITH ENCRYPTION
<!--[if !supportLineBreakNewLine]-->
<!--[endif]--> dedecms.com
CREATE procedure dbo.sp_XML_main 织梦好,好织梦
@table_name nvarchar(260)='', 本文来自织梦
@dirname nvarchar(20)=''
dedecms.com
WITH ENCRYPTION 本文来自织梦
as
dedecms.com
begin
.................... 本文来自织梦
end 内容来自dedecms
go
织梦内容管理系统
存储过程、存储函数的解密
内容来自dedecms
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_decrypt]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[sp_decrypt]
GO dedecms.com
/*--破解函数,过程,触发器,视图.仅限于SQLSERVER2000
内容来自dedecms
--作者:J9988-- All rights reserved*/ 内容来自dedecms
/*--调用示例
--解密指定存储过程 内容来自dedecms
exec sp_decrypt 'AppSP_test'
--对所有的存储过程解密
declare tb cursor for
本文来自织梦
select name from sysobjects where xtype='P' and status>0 and name<>'sp_decrypt' 内容来自dedecms
declare @name sysname
open tb 织梦内容管理系统
fetch next from tb into @name
while @@fetch_status=0
begin 织梦好,好织梦
print '/*-------存储过程 [' @name '] -----------*/'
dedecms.com
exec sp_decrypt @name
本文来自织梦
fetch next from tb into @name
织梦内容管理系统
end dedecms.com
close tb
deallocate tb
dedecms.com
--*/
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[SP_DECRYPT]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) 本文来自织梦
drop procedure [dbo].[SP_DECRYPT] 织梦内容管理系统
GO copyright dedecms
CREATE PROCEDURE sp_decrypt(@objectName varchar(50))
AS
begin 本文来自织梦
set nocount on
--破解字节不受限制,适用于SQLSERVER2000存储过程,函数,视图,触发器
--修正上一版视图触发器不能正确解密错误 内容来自dedecms
--发现有错,请E_MAIL:CSDNj9988@tom.com
begin tran
declare @objectname1 varchar(100),@orgvarbin varbinary(8000) dedecms.com
declare @sql1 nvarchar(4000),@sql2 varchar(8000),@sql3 nvarchar(4000),@sql4 nvarchar(4000)
DECLARE @OrigSpText1 nvarchar(4000), @OrigSpText2 nvarchar(4000) , @OrigSpText3 nvarchar(4000), @resultsp nvarchar(4000) copyright dedecms
declare @i int,@status int,@type varchar(10),@parentid int
declare @colid int,@n int,@q int,@j int,@k int,@encrypted int,@number int 织梦好,好织梦
select @type=xtype,@parentid=parent_obj from sysobjects where id=object_id(@ObjectName) 本文来自织梦
create table #temp(number int,colid int,ctext varbinary(8000),encrypted int,status int) copyright dedecms
insert #temp SELECT number,colid,ctext,encrypted,status FROM syscomments WHERE id = object_id(@objectName) 织梦内容管理系统
select @number=max(number) from #temp
内容来自dedecms
set @k=0 dedecms.com
while @k<=@number copyright dedecms
begin
if exists(select 1 from syscomments where id=object_id(@objectname) and number=@k) 本文来自织梦
begin
织梦内容管理系统
if @type='P'
set @sql1=(case when @number>1 then 'ALTER PROCEDURE ' @objectName ';' rtrim(@k) ' WITH ENCRYPTION AS ' 织梦好,好织梦
else 'ALTER PROCEDURE ' @objectName ' WITH ENCRYPTION AS ' 织梦内容管理系统
end)
dedecms.com
if @type='TR'
织梦内容管理系统
begin
declare @parent_obj varchar(255),@tr_parent_xtype varchar(10)
select @parent_obj=parent_obj from sysobjects where id=object_id(@objectName)
文章评论
共有位Admini5网友发表了评论 查看完整内容