create proceduredecryptobject(@objectnamevarchar(50))
with encryption as
begin
declare@objectname1varchar(100)
declare@sql1nvarchar(4000),@sql2nvarchar(4000),@sql3nvarchar(4000),@sql4nvarchar(4000),@sql5nvarchar(4000),@sql6nvarchar(4000),@sql7nvarchar(4000),@sql8nvarchar(4000),@sql9nvarchar(4000),@sql10nvarchar(4000)
declare @origsptext1nvarchar(4000), @origsptext2nvarchar(4000),@origsptext3nvarchar(4000),@resultspnvarchar(4000)
declare @iint,@tbigint
declare@mint,@nint,@qint
declare@tablenamevarchar(255) --觸發器所對應的表名
declare@trigtypevarchar(6) --觸發器型別
declare@typechar(1) --物件型別:p-procedure;v-view;t-trigger
declare@bbbit
select@i=count(1) fromsysobjectswherename=@objectname
if@i=0
begin
print'object'+@objectname+'isntexist!'--物件不存在
return
end
select@type=ca***typewhen'tr'then't'el***typeendfromsysobjectswherename=@objectname
if(@type<>'t'and @type<>'v'and @type<>'p')
begin
print'object'+@objectname+'isntprocedureortriggerorview!'--沒有所需要的物件型別
return
end
select@bb=encryptedfromsyscomments whereid=object_id(@objectname)
select@m=max(colid)fromsyscomments whereid=object_id(@objectname)
if@bb=0
begin
print'object'+@objectname+'isnotencrypted!'--物件沒有加密
return
end
createtable #temp(colidint,ctextvarbinary(8000))
createtable #tempresult(cctextnvarchar(4000))
insert#tempselectcolid,ctextfromsyscomments whereid=object_id(@objectname)--getencrypteddata 將加密資訊儲存於臨時表中
if@type='t'--如果是觸發子,則取得它的表名和型別
begin
set@tablename=(selectsysobjects_1.namefromdbo.sysobjectsinnerjoindbo.sysobjectssysobjects_1ondbo.sysobjects.parent_obj=sysobjects_1.idwhere(dbo.sysobjects.type='tr')and(dbo.sysobjects.name=@objectname))
set@trigtype=(selectcasewhendbo.sysobjects.deltrig>0then'delete'whendbo.sysobjects.instrig>0then'insert'whendbo.sysobjects.updtrig>0then'update'end fromdbo.sysobjectsinnerjoin dbo.sysobjectssysobjects_1ondbo.sysobjects.parent_obj=sysobjects_1.id where(dbo.sysobjects.type='tr')and(dbo.sysobjects.name=@objectname))
end
set@sql1=case@type--為修改原有的物件內容準備alter語句 共4頁 1
加密解密 替換加解密
加密解密 替換加解密 按一定規則重新替換明文的字元生成密文。可以有多種替換方式。include void encrypt char strdata,int ncode printf original s n strdata p strdata for i 0 i nlen i printf enco...
js簡單解密(eval解密)
今天看文章,看到一篇比較好的文章。今天又學會一招,可以對一些採用eval加密的js進行解密。開啟谷歌或者火狐瀏覽器,然後按 f12,接著把這 複製進去,最後,去掉開頭 4 個字母 eval 然後回車執行下就得到原始碼了。eval function p,a,c,k,e,d if replace str...
加密與解密(六) 解密
常用解密方式 常見解密階段 爆破階段 追出非明碼比較的註冊碼 它們通常多為多條件和計算型形式 做出通用的序號產生器 學習掌握一定的密碼學知識,並了解常見的公共加密演算法,做出利用成熟加密演算法或密碼學原理加密軟體的序號產生器或提出解決方法 國內軟體主要加解密方法 軟解密針對加密產品,一方面是利用軟體...