0% encontró este documento útil (0 votos)
241 vistas8 páginas

SybaseCifradoDeDatos1 3

Este documento explica cómo cifrar datos en una base de datos Sybase Anywhere utilizando los algoritmos AES y AES256. Se crea una tabla con datos de ejemplo y se cifran los campos "Email" y "Telefonos" usando AES y AES256 respectivamente. Luego se muestran los datos desencriptados para verificar que el cifrado funciona correctamente.

Cargado por

Edwin Campos
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
241 vistas8 páginas

SybaseCifradoDeDatos1 3

Este documento explica cómo cifrar datos en una base de datos Sybase Anywhere utilizando los algoritmos AES y AES256. Se crea una tabla con datos de ejemplo y se cifran los campos "Email" y "Telefonos" usando AES y AES256 respectivamente. Luego se muestran los datos desencriptados para verificar que el cifrado funciona correctamente.

Cargado por

Edwin Campos
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 8

UNIVERSIDAD NACIONAL DE SAN MARTIN

Facultad de Ingeniería de Sistemas e Informática

CONOCIENDO EL GESTOR:

Integrantes:
Andy Hirvyn Rucoba Reategui
Karen Alely Chamaya Guevara
Marco Israel Calderón García
Oliver Chavez Fasabi
Edwin Campos Sánchez

2022 - I
CONTENIDO
CRIFADO DE DATOS................................................................................................................3
1. Algoritmos que soporta Sybase Anywhere.......................................................................3
1.1. Cifrado/encriptado....................................................................................................3
1.2. Decifrado/Desencriptado..........................................................................................3
2. Creación de tabla con inserción de datos..........................................................................4
3. Elegir un capo para cifrar.................................................................................................4
4. AES..................................................................................................................................5
4.1. Encriptar un campo...................................................................................................5
4.2. Mostrar sin cifrar......................................................................................................6
5. AES256............................................................................................................................6
5.1. Encriptar un campo...................................................................................................6
5.2. Mostrar sin cifrar......................................................................................................8
CRIFADO DE DATOS
Aquí veremos como cifrar una base de datos en SYBASE ANYWHERE mediante algoritmos
nuestro gestor soporta.

1. Algoritmos que soporta Sybase Anywhere


1.1. Cifrado/encriptado
Los gestores permiten la encriptación y desencriptación de columnas, fortaleciendo así
la seguridad y el acceso a los datos almacenados en la base de datos, de tal manera que
sólo los usuarios debidamente autorizados tengan acceso a la información. Algunos
algoritmos son AES, AES256, AES_FIPS, AES256_FIPS, RSA, RSA_FIPS.
Analizaremos dos tipos de algoritmos el AES y el AES256.
AES: Es uno de los más comunes en datos que se cifran mediante el algoritmo AES.
Si no se especifica el formato de algoritmo, se utiliza AES de forma
predeterminada. Para el algoritmo AES, el relleno puede ser P KCS5, ZEROES o
NONE. El relleno predeterminado es PKCS5.
AES256: Los datos se cifran mediante el algoritmo AES de 256 bits. Para AES256,
el relleno puede ser PKCS5, ZEROES y NONE (si FORMAT = RAW). Para usar
el AES256 necesitamos:
Cláusula FORMAT: Utilice la cláusula FORMAT opcional para especificar el
formato de almacenamiento de los datos.
Cuando se especifica FORMAT=RAW, los datos se cifran mediante cifrado sin
procesar. Debe especificar la clave de cifrado, el vector de inicialización y,
opcionalmente, el formato de relleno. Estos mismos valores deben especificarse
al descifrar los datos.
Cláusula PADDING: esta cláusula se usa dependiendo del algoritmo que
usemos, en este caso estamos usando AES. Es por eso que usaremos es el
PKCS5
PKCS5: Los datos se rellenan mediante el algoritmo PKCS # 5. Los datos
cifrados son de 1 a 16 bytes más largos que los datos descifrados. Esta opción
solo está disponible para el cifrado AES256.
Vector de inicialización Este vector se utiliza para los dos algoritmos
anteriores y es un parámetro vectorial de inicialización. Este mismo es necesario
cuando se especifica FORMAT=RAW. Esta cadena no se puede establecer en
NULL. El Vector de inicialización va después de poner el format, padding,
ThisIsTeIV)

1.2. Decifrado/Desencriptado
Para desencriptar los datos encriptados udaremos la función cast
CAST = Esta función se utiliza para convertir la contraseña de nuevo a un tipo de datos
CHAR porque la función DECRYPT convierte los valores a tipo de datos LONG
BINARY, que es ilegible. Luego se coloca el nombre del campo el cual se va a descifrar
en este caso “Email” y “Telefonos”, entonces aplicamos en los siguientes algoritmos:
2. Creación de tabla con inserción de datos
Crearemos una tabla en una Base de Datos BDencriptacion, con la tabla Persona, con 5
campos y 10 registros.

INSERT INTO Persona VALUES


(101,'Tom','Cruise','[email protected]','910345139');

INSERT INTO Persona VALUES


CREATE TABLE Persona( (102,'Harry','Potter','[email protected]','925345139');
IdPersona int not null, INSERT INTO Persona VALUES
(103,'Karen','Chamaya','[email protected]','956345139');
Nombres varchar(100),
INSERT INTO Persona VALUES
Apellidos varchar(100), (104,'Oliver','Chavez','[email protected]','925635139');
Emaill varchar(200), INSERT INTO Persona VALUES
(105,'Edwin','Campos','[email protected]','989345139');
Telefonos varchar (200),
INSERT INTO Persona VALUES
constraint PK_Interesado (106,'Marco','Cruise','[email protected]','996345139');
primary key(IdPersona)); INSERT INTO Persona VALUES
(107,'Alely','Deeee','[email protected]','987345139');

INSERT INTO Persona VALUES


(108,'Oliver','Peeeee','[email protected]','982345139');

INSERT INTO Persona VALUES


(109,'Peter','Parker','[email protected]','900345139');

INSERT INTO Persona VALUES


(110,'Ron','Wisley','[email protected]','925645139');
3. Elegir un capo para cifrar
Elegiremos uno de los campos para cifrarlo, que no sea el campo que forma parte de la
llave primaria. Con el algoritmo AES cifraremos el campo Email y con el algoritmo
AES256 cifraremos el campo Telefonos.
4. AES
4.1. Encriptar un campo
Usamos el UPDATE para modificar seguido de la tabla en este caso la tabla Persona,
con el SET escribiremos el campo a encriptarse. Escribimos la palabra encrypt y dentro
de este escribiremos el campo a encriptarse, seguido de una contraseña que le
asignamos en este caso ABC (la contraseña es a criterio personal) y finalmente
especificamos el algoritmo AES. Con el siguiente Comando cifraremos los datos
insertados del campo “Email”
UPDATE Persona SET Emaill=encrypt(Emaill ,'ABC', 'AES' )

Ejecutando el comando tenemos que en el campo Email los datos están encriptados

Para ver el resultado del cifrado con su tamaño aplicamos un con SELECT*,
LENGTH (Email) FROM Persona; para el resultado siguiente.
4.2. Mostrar sin cifrar
Ahora mostraremos los datos sin cifrar, para ello usaremos un SELECT en el escribo los
campos que quiero mostrar, para desencriptar el campo encriptado escribiré un cast para
convertir los valores, dentro del cast escribiremos decrypt para desencriptar lo que ya
habíamos encriptado en el numeral 4.1. todo lo desencriptado se mostrara con el nombre
del campo que se encripto.
SELECT IdPersona, Nombres,cast(decrypt(Emaill ,'ABC', 'AES') as varchar)as Emaill
FROM Persona

Aquí se muestra el campo Email sin cifrar

5. AES256
5.1. Encriptar un campo
Para campo encriptar el campo Teléfonos usaremos las clausulas ya antes mencionadas
en el apartado 1.
Los datos se cifrados tendrá una clave de cifrado que es ‘ABC', el cifrado AES va con
formato FORMAT=RAW, PADDING=PKCS5 y con una inicialización ThisIsTheIV.
Lo siguiente es un comando para cifrar los datos en el campo “Telofonos”
UPDATE Persona
SET
Telefonos=encrypt(Telefonos ,'ABC','AES256(FORMAT=RAW;PADDIN
G=PKCS5)','ThisIsTheIV');
Ejecutando el comando tenemos que en el campo Telefonos los datos están encriptados

Para ver el resultado del cifrado con su tamaño aplicamos un con SELECT*,
LENGTH (Telefonos) FROM Persona; para el resultado siguiente.
5.2. Mostrar sin cifrar
Ahora mostraremos los datos sin cifrar, para ello usaremos un SELECT en el escribo los
campos que quiero mostrar, para desencriptar el campo encriptado escribiré un cast para
convertir los valores, dentro del cast escribiremos decrypt para desencriptar lo que ya
habíamos encriptado en el numeral 5.1. todo lo desencriptado se mostrará con el nombre
del campo que se encripto.
SELECT IdPersona, Nombres,
cast(decrypt(Telefonos ,'ABC','AES256(FORMAT=RAW;PADDING=PKCS5)','T
hisIsTheIV') as long varchar) AS Telefonos
FROM Persona

También podría gustarte