Jak zaszyfrować informacje o karcie kredytowej w bazie danych SQL

Dane karty kredytowej w bazie danych Twojej firmy są o wiele bezpieczniejsze, jeśli je zaszyfrujesz. Jeśli przechowujesz te informacje jako zwykły tekst, pozbawieni skrupułów użytkownicy mogą łatwo wykraść dane za pośrednictwem zapytań online SQL lub skanując pliki na dysku twardym serwera bazy danych. Oprogramowanie bazy danych Microsoft SQL Server oferuje dwie łatwe w użyciu funkcje, z których jedna szyfruje dane za pomocą hasła, a druga odszyfrowuje je za pomocą tego samego hasła. Użyj tych funkcji w instrukcjach SQL INSERT, SELECT i UPDATE, aby przechowywać i pobierać informacje w postaci zaszyfrowanej.

1.

Kliknij przycisk "Start". Przenieś kursor do "Microsoft SQL Server" w sekcji "Wszystkie programy", a następnie kliknij "SQL Server Management Studio." Spowoduje to uruchomienie programu Management Studio i wyświetlenie okna dialogowego "Connect to Server".

2.

Wybierz pozycję komputera serwera SQL w oknie dialogowym "Połącz z serwerem", klikając ją. Ustaw listę rozwijaną "Uwierzytelnianie" na "Uwierzytelnianie Windows", a następnie kliknij przycisk "Połącz".

3.

Kliknij "Nowe zapytanie" na pasku narzędzi Management Studio. Spowoduje to otwarcie edytora tekstowego po prawej stronie ekranu.

4.

Dodaj pole danych "VARBINARY" do tabeli bazy danych, w której chcesz przechowywać informacje o zaszyfrowanej karcie kredytowej. Użyj następującego kodu SQL jako przewodnika:

ALTER TABLE customer_info ADD cc_number VARBINARY (100) null;

Kliknij symbol "Uruchom" - zielony, prawy trójkąt na pasku narzędzi Management Studio - aby wykonać ten kod. Dodaje to 100-bajtowe zmienne pole binarne "cc_number" do istniejącej tabeli "customer_info." Funkcje szyfrowania konwertują tekst i dane liczbowe na pliki binarne, więc tabela wymaga pola binarnego do przechowywania danych.

5.

Dodaj rekord do tabeli za pomocą funkcji "Encryptbypassphrase ()" w celu zaszyfrowania informacji o karcie kredytowej, na przykład w następującym przykładzie:

INSERT INTO customer_info ("customer_id", "name", "cc_number") VALUES ("50120", "Sam Jones", Encryptbypassphrase ("kod tajny", "1212704331100"));

Kliknij symbol "Uruchom". To dodaje rekord do tabeli customer_info dla Sam Jones, którego numer karty kredytowej to 1212704331100. Funkcja "Encryptbypassphrase" przekształca numer karty kredytowej w zaszyfrowane pole binarne za pomocą hasła "tajny kod".

6.

Odczytaj rekord za pomocą instrukcji SQL SELECT. Aby pobrać informacje o karcie kredytowej, użyj funkcji "Decryptbypassphrase ()", dostarczając jej oryginalne hasło. Bez hasła szyfrowane dane pozostają nieczytelne. Po odszyfrowaniu numeru karty kredytowej, użyj funkcji "Konwertuj ()", aby przekształcić dane binarne z powrotem na znaki. Instrukcja SELECT wygląda następująco:

SELECT name, Convert (varchar (20), Decryptbypassphrase ('secretcode', cc_number)) FROM customer_info WHERE customer_ID = '50120';

Kliknij symbol "Uruchom", aby wykonać instrukcję SELECT.

Popularne Wiadomości