Domanda

ho creato una chiave asimmetrica su uno dei miei server SQL (2008). Ho criptato un campo password e sono in grado di recuperare la password che bene sul mio server di sviluppo.

La questione entra in gioco in cui ho bisogno di spostare questi dati per un server di produzione.

Ecco il codice per la chiave che è stato creato:

CREATE MASTER KEY ENCRYPTION BY PASSWORD='#########'
CREATE ASYMMETRIC KEY UserEncryptionKey
WITH ALGORITHM = RSA_2048

Ora, quando faccio funzionare questo sul server di produzione, si crea il bene chiave. Tuttavia, quando eseguo il mio sproc per ottenere la password, restituisce NULL.

SQL:

    SELECT EncryptByAsymKey(AsymKey_ID('UserEncryptionKey'), Password ) 
    FROM Users WHERE UserName = '######'

Ogni pensiero su quello che devo fare per ottenere il campo criptato di lavorare su più server SQL?

Per favore fatemi sapere se ho bisogno di chiarire qualcosa.

Grazie

È stato utile?

Soluzione

Non spostare i dati crittografati da un database a un altro. è tecnicamente possibile, è vero, ma è probabile che compromettere la chiave nel processo in modo che non si dica piuttosto come farlo.

Quando i dati vengono scambiati tra siti, la consueta procedura separa la gestione delle chiavi e distribuzione dalla trasferimento dati. I dati vengono decifrati prima di schemi di trasferimento e di crittografia dedicare per il trasferimento dati sono utilizzati, come TLS e SSL, che eliminano il problema della distribuzione e la condivisione delle chiavi di crittografia attuale.

Asa nota a margine, normalmente lo fa non crittografare i dati con chiavi asimmetriche. Sono troppo lento per le operazioni di dati. Che cosa ognuno fa è che crittografare i dati con una chiave simmetrica e quindi crittografare la chiave simmetrica con una chiave asimmetrica.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top