2010-09-07 18 views
6

So come crittografare i dati utilizzando ColdFusion utilizzando AES_128. So anche come crittografare i dati utilizzando MSSQL AES_128. Qualcuno sa se è possibile crittografare i dati in ColdFusion usando AES_128, quindi decifrare la stringa in MSSQL?Crittografia SQL e ColdFusion

Ho giocato molto con esso e non riesco a capirlo.

Grazie, Paul

+0

Hai provato a utilizzare la crittografia/decrittografia passphrase su entrambi i lati? –

+0

Sì, l'ho già provato. Non penso che tu possa usare un algoritmo avanzato come AES con passphrase in sql. – Paul

risposta

3

Sì questo è possibile. Non c'è nulla su AES che lo rende proprietario. Tuttavia, ci sono molti modi per implementare un codice a blocchi e molti di questi sono errati. Lo encryptbykey() di MS SQL utilizza la modalità ECB e il valore predefinito è ANSI_PADDING. Vorrei provare a decifrare un messaggio utilizzando la stessa chiave con un AES in modalità ECB e sarà probabilmente funzionare solo. Dovrebbe essere usata la modalità CBC, ma questo richiede un IV e encryptbykey() non accetta un IV come parametro, quindi la sua modalità ECB. (MySQL anche in modalità ecb, ho visto il codice. È un peccato non poterlo fare con MS SQL).

+0

Sto già usando il metodo encryptbykey(). Sono in grado di crittografare e decifrare la stringa in SQL, ma penso che il problema che sto avendo è che MSSQL utilizza una chiave simmetrica per crittografare e decrittografare i dati e il linguaggio lato server che sto usando (che è ColdFusion) richiede anche una chiave, ma non riesco a replicare quella chiave in ColdFusion perché, per quanto ne so, non è possibile visualizzare correttamente il contenuto della chiave simmetrica? Ho provato a usare il tasto gui_key della chiave simmetrica, ma questo non ha funzionato. – Paul

+0

@Paul aes è un codice simmetrico. gui_key() è una funzione stringa2key e non ha nulla a che fare con la simmetria, in realtà è un digest di messaggi. Potresti usare un'altra funzione string2key, o generare casualmente una chiave e lì per te non sarebbe necessaria una funzione string2key. – rook

Problemi correlati