道与魔:SqlServer存储过程/函数加/解密
存储过程、存储函数的加密:WITH ENCRYPTION
一外国牛人所写
CREATE procedure dbo.sp_XML_main
*s;}$bQ!l7cZ7I0无忧脚本X7A
]0p+BE
@table_name nvarchar(260)='',无忧脚本{)]"B
d-m#y-P'Ti
无忧脚本YrkP@
@dirname nvarchar(20)=''无忧脚本%Zjm6S"e?K
a mbP^N0WITH ENCRYPTION
~(G2EV1?0无忧脚本6tU}8Ey5@,Adys\
as无忧脚本)qw}P?G'?T;vi3f1u
B1dB8D1P4aP0begin无忧脚本]h DVGh|#L M u
.{.ev F#I)t CuIs0....................
4RBK1{X5l6m-vO0无忧脚本
t3[6e}I+KR)dP r4?{
end
8w"g?M+DiU(l0
_:K.Z1y Pl0go
存储过程、存储函数的解密(以下是一位绝世高人编写的代码)无忧脚本#Qn'V4Fki
[被屏蔽广告]
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_decrypt]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
u]1bgFtV0
8@8iSz![h,L^$|0drop procedure [dbo].[sp_decrypt]无忧脚本*@BNBQt9J_L
无忧脚本{
G[
V.O[1dh
GO无忧脚本2V%wS;g%E,MX
无忧脚本ZYs7K5I4_*^,V K#_
/*--破解函数,过程,触发器,视图.仅限于SQLSERVER2000
7b;[e7]f^a7L5G0无忧脚本'w2k3An5|C(v'o
--作者:J9988-- All rights reserved*/
l F6uQ;R5V ak0无忧脚本|"a]dQ&OM
{#p
/*--调用示例
l
TZ`
M&}5kv0无忧脚本/d8M]C'i
--解密指定存储过程
R$\'u t*Y%t0
my2FDC#B;I0exec sp_decrypt 'AppSP_test'无忧脚本:ARaU'QX"FZ
无忧脚本&Mu\-qtd
--对所有的存储过程解密
7MZcP9U0无忧脚本6uM,s.Z KCX,Vsp
q
declare tb cursor for
W,t"O:BIzp/e0
oj'Y[Eu3vU+x0select name from sysobjects where xtype='P' and status>0 and name<>'sp_decrypt'
q%j { ZN6H0
'h$GVt6_H7T"e8i0
)L(\'j??S5DI#{p#^0declare @name sysname
n3]1`%?A/u,b)zc0
6c
OY\yH{I*y{0open tb
!@d7T2J3V
dW0无忧脚本
l1`z3rM
fetch next from tb into @name无忧脚本I)~1q.E2km9j9m]
U%f
+{}ee,ZQuh9~0while @@fetch_status=0
,l
j5mt4D^t0无忧脚本^w7S0URMh
begin
/kG'u
O5K0
}1?(G#Oz/H0print '/*-------存储过程 ['+@name+'] -----------*/'无忧脚本(jf L
{:MJA%U
m,f\/|)T X$X0exec sp_decrypt @name
]$n+kyTUX0
@E){o`0fetch next from tb into @name
4rM0dN2D;d?0无忧脚本E9op
g ~
i0N/~t
K1h
end
u]cn8S@i0
!{]1\:@d[(UJo6a0close tb
)EFF9`y0无忧脚本o!SG!\*H
deallocate tb无忧脚本[lmI;Tj|Q%qN
