- 相關(guān)推薦
三級數(shù)據(jù)庫:在SQLSERVER中實現(xiàn)RSA加密算法
為了使廣大考生在備戰(zhàn)計算機等級考試時,更快的掌握相應(yīng)知識點,下面是小編搜索整理的三級數(shù)據(jù)庫:在SQLSERVER中實現(xiàn)RSA加密算法,供參考練習(xí),預(yù)?忌鷤兛汲鲎约豪硐氲某煽!
三級數(shù)據(jù)庫:在SQLSERVER中實現(xiàn)RSA加密算法
/*本次修改增加了unicode的支持,但是加密后依然顯示為16進制數(shù)據(jù),因為進行RSA加密后所得到的unicode編碼是無法顯示的,所以密文依然采用16進制數(shù)據(jù)顯示。
需要特別注意:如果要對中文進行加密,那么所選取的兩個素數(shù)要比較大,兩個素數(shù)的成績最好要大于65536,即大于unicode的最大編碼值
在SQL SERVER中實現(xiàn)RSA加密算法(第二版)
--判斷是否為素數(shù)
if object_id(’f_primeNumTest’) is not null
drop function f_primeNumTest
go
create function [dbo].[f_primeNumTest]
(@p int)
returns bit
begin
declare @flg bit,@i int
select @flg=1, @i=2
while @i<sqrt(@p)
begin
if(@p%@i=0 )
beginwww.Examw.CoM
set @flg=0
break
end
set @i=@i+1
end
return @flg
end
go
--判斷兩個數(shù)是否互素
if object_id(’f_isNumsPrime’) is not null
drop function f_isNumsPrime
go
create function f_isNumsPrime
(@num1 int,@num2 int)
returns bit
begin考試通
declare @tmp int,@flg bit
set @flg=1
while (@num2%@num1<>0)
begin
select @tmp=@num1,@num1=@num2%@num1,@num2=@tmp
end
if @num1=1
set @flg=0
return @flg
end
go
--產(chǎn)生密鑰對
if object_id(’p_createKey’) is not null
drop proc p_createKey
go
create proc p_createKey
@p int,@q int
as
【三級數(shù)據(jù)庫:在SQLSERVER中實現(xiàn)RSA加密算法】相關(guān)文章:
phpYii2框架實現(xiàn)數(shù)據(jù)庫的方法07-11
java加密算法是什么09-14
如何實現(xiàn)yii2 數(shù)據(jù)庫讀寫分離配置07-01