una tarjeta significa quitar que portable online microsd memoria matrices hill encriptar encriptacion ejemplos criptografia con como cifrado celular almacenamiento r encryption privacy

tarjeta - que es encriptar



¿Cómo leo un archivo encriptado desde un disco con R? (1)

Tengo un conjunto de datos confidenciales que nunca deben almacenarse sin cifrar en el disco. ¿Puedo ocuparme de esto o el cifrado de disco completo es mi única opción?


Tengo la sensación de que hay una manera más fácil de hacerlo, pero el paquete de digest , que es el cifrado AES, es lo más parecido a lo que está pidiendo. Esto debería ayudarte a comenzar.

# write encrypted data frame to file write.aes <- function(df,filename, key) { require(digest) zz <- textConnection("out","w") write.csv(df,zz, row.names=F) close(zz) out <- paste(out,collapse="/n") raw <- charToRaw(out) raw <- c(raw,as.raw(rep(0,16-length(raw)%%16))) aes <- AES(key,mode="ECB") aes$encrypt(raw) writeBin(aes$encrypt(raw),filename) } # read encypted data frame from file read.aes <- function(filename,key) { require(digest) dat <- readBin(filename,"raw",n=1000) aes <- AES(key,mode="ECB") raw <- aes$decrypt(dat, raw=TRUE) txt <- rawToChar(raw[raw>0]) read.csv(text=txt) } # sample data set.seed(1) # for reproducible example data <- data.frame(x=rnorm(10),y=rpois(10,1), z=letters[1:10],w=sample(T:F,10,replace=T)) set.seed(123581321) key <- as.raw(sample(1:32,32)) write.aes(data,"encrypted.dat",key) result <- read.aes("encrypted.dat",key) # did it work? all.equal(data,result) # [1] TRUE

Esto usa cifrado AES en modo ECB. Obviamente, necesita usar la misma clave para cifrar y descifrar. write.aes(...) convierte el marco de datos en una cadena de texto con formato csv, lo convierte en crudo (lo cual es necesario para AES), rellena el vector sin formato con un múltiplo de 16 bytes (también se requiere para AES), encripta y escribe en un archivo binario. read.aes(...) básicamente invierte el proceso.

Este es solo un ejemplo, destinado a ser modificado para satisfacer sus necesidades. Por ejemplo, esto guarda el marco de datos sin nombres de fila, lo que podría o no ser un problema.