You are on page 1of 1

use master

go
if exists(select name from sys.databases
where name='Segurirad')
drop database Segurirad
go
create database Segurirad
go
use Segurirad
go
create table Tarjeta(
IdTar int identity (1,1) primary key not null,
Numero varbinary (8000)not null,
FechaEmi smalldatetime null default getdate(),
FechaVen smalldatetime null default dateadd(mm,2,getdate())
)
go
select * from tarjeta
--agregar datos cifrados para el numero de tarjeta
go
insert into tarjeta(Numero)values(ENCRYPTBYPASSPHRASE('Noelia','123456'))
insert into tarjeta(Numero)values(ENCRYPTBYPASSPHRASE('Alex','9#A5&7B8%'))
insert into tarjeta(Numero)values(ENCRYPTBYPASSPHRASE('Noelia','%se#7=&'))
insert into tarjeta(Numero)values(ENCRYPTBYPASSPHRASE('Mary','8777C9'))

--listar los datos del numero de tarjeta descifrados


-select CONVERT(VARCHAR(300),DECRYPTBYPASSPHRASE('Mary',Numero))as [N de Tarjeta],
'Mary' as Clave
from tarjeta
where DECRYPTBYPASSPHRASE('Mary',Numero) is not null
union
select CONVERT(VARCHAR(300),DECRYPTBYPASSPHRASE('Noelia',Numero)) as [N de Tarjet
a],'Noelia' as Clave
from Tarjeta
where CONVERT(VARCHAR(300),DECRYPTBYPASSPHRASE('Noelia',Numero)) is not null
go

--crear un sp q muestra los numero de tarjetas descifrados, ocn una palabra clav
e enviada como argumento
create proc Busca(@clave varchar(30))
as
select CONVERT(VARCHAR(300),DECRYPTBYPASSPHRASE(@clave,Numero)) as [N de Tarjeta]
,@clave as Clave
from Tarjeta
where CONVERT(VARCHAR(300),DECRYPTBYPASSPHRASE(@clave,Numero)) is not null
go
exec Busca 'Noelia'
go

You might also like