Başlangıç > Database, Oracle, PL/SQL > pl/sql de base64 encode & decode kullanımı

pl/sql de base64 encode & decode kullanımı


Merhaba,
Pl/sql yardımı ile database üzerinde kullandığımız bir değişken ya da sabit metinleri şifrelemeye ihtiyacımız olduğu zaman database paketlerinden olan utl_encode paketi bizim ihtiyaçlarımıza cevap verebilir. Bu paket içerisinde bulunan text_encode ve text_decode fonksiyonları ile base64 tipinde verileri şifreleyebiliriz ve base64 tipinde şifrelenmiş verileri çözebiliriz. Öncelikle bu paketi ve altındaki fonksiyonları kullanmak için kendimize encode ve decode işlemlerini yapan fonksiyon yaratalım. Encode işlemi için aşağıdaki fonksiyonu kullanalım.

CREATE OR REPLACE FUNCTION base64_encode(str VARCHAR2) RETURN VARCHAR2 IS
  str_b64 VARCHAR2(4000);
BEGIN
  --/*WE8ISO8859P9 = ISO 8859-9 West European & Turkish*/
  str_b64 := utl_encode.text_encode(str, 'WE8ISO8859P9', utl_encode.base64);

  RETURN(str_b64);
END base64_encode;

Decode işlemi içinde aşağıdaki fonksiyonu kullanalım.

CREATE OR REPLACE FUNCTION base64_decode(str VARCHAR2) RETURN VARCHAR2 IS
  str_b64 VARCHAR2(4000);
BEGIN
  --/*WE8ISO8859P9 = ISO 8859-9 West European & Turkish*/
  str_b64 := utl_encode.text_decode(str, 'WE8ISO8859P9', utl_encode.base64);

  RETURN(str_b64);
END base64_decode;

Her iki fonksiyonumuzu oluşturduktan sonra sıra örnek yapmada. Encode işlemi ile istediğimiz veriyi şifreleyebiliriz. Örnek olarak aşağıdaki kullanım ve çıktı sonuçları mevcuttur.

SELECT base64_encode('PL/SQL Base64 Encode & Decode') FROM dual;

Şifreli çıktı sonucumuz aşağıdadır.

UEwvU1FMIEJhc2U2NCBFbmNvZGUgJiBEZWNvZGU=

Endoce işlemi ile şifrelenen “PL/SQL Base64 Encode & Decode” bilgisinin base64 karşılığını yani “UEwvU1FMIEJhc2U2NCBFbmNvZGUgJiBEZWNvZGU=” bilgisini de decode işleminde kullanarak yapmış olduğumuz şifreleme ve şifre çözme işleminin sağlamasını da yapmış oluyoruz. Encode durumda olan verimizin decode işle çözümleme işlemide aşağıdaki örnekte mevcuttur.

SELECT base64_decode('UEwvU1FMIEJhc2U2NCBFbmNvZGUgJiBEZWNvZGU=') FROM dual;

Bir önceki fonksiyonumuz ile şifrelediğimiz verinin çözülmüş hali aşağıdadır.

PL/SQL Base64 Encode & Decode

Kolay gelsin.

Reklamlar
  1. Henüz yorum yapılmamış.
  1. No trackbacks yet.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Connecting to %s

%d blogcu bunu beğendi: