2016-02-09 2 views
1

Je vais commencer par poser cette question en disant que je suis complètement nouveau pour le concept de hachage par mot de passe ... ours avec moi.Décodage des mots de passe hachés pour une utilisation avec RODBC

J'utilise la fonction ODBCConnect du package rodbc pour établir une connexion à une base de données. Pour rationaliser mes processus, j'ai stocké mon mot de passe localement dans un fichier texte, puis je l'ai lu, en le passant à la fonction pour établir la connexion. Ma fonction personnalisée pour établir la connexion ressemble à quelque chose comme ceci:

setconnect <- function(){ 
    db <-"myODBCname" 
    user <- readChar("C:\\Credentials\\username.txt",file.info("C:\\Credentials\\username.txt")$size) 
    pass <- readChar("C:\\Credentials\\my_password.txt", file.info("C:\\Credentials\\my_password.txt")$size) 
    conn <- odbcConnect(db, uid = user, pwd = pass) 
    return(conn) 
}  

Je veux remplacer ce fichier texte avec un mot de passe pour hachés rendre plus sûr.

Je hachage un mot de passe à l'aide du bcrypt fonctionnent comme si ce paquet de hashpw:

> pass <- "myPassword" 
> hash <- hashpw(pass) 
> hash 
[1] "$2a$12$jNtZmPwUt4pqEoTumGxK5e5MU.AgMGlygbGWyJUxMmShl7p1/VWBW" 

Idéalement, je remplacerais ce qui est dans le username.txt et my_password.txt fichier noté ci-dessus avec le résultat de ce hachage, et modifier ma fonction setconnect pour décoder le hachage avant de le passer à odbcConnect.

Cependant, je ne sais pas comment procéder pour décoder le hachage ... Est-ce possible?

Répondre

1

Il n'est pas possible de décoder un hachage cryptographique, c'est le point de hachage, c'est une fonction unidirectionnelle.

On ne peut que forcer, c'est-à-dire essayer des mots de passe dans l'espoir de trouver un hachage correspondant, qui prendra probablement jusqu'à la fin de la Terre. Selon la plate-forme, il peut y avoir un stockage de clés sécurisé pour enregistrer le mot de passe.