Мне не совсем понятно.
Я предполагаю, что у вас есть данные в Oracle, которые зашифрованы.Вы хотите извлечь эти данные из таблицы, а затем использовать функцию Oracle для их расшифровки.
Когда вы шифруете данные, которые обычно хотите сохранить, это RAW или BLOB, потому что они больше не являются строкой, и вы нене требуется, чтобы на нем происходила какая-либо строка, например преобразование набора символов (например, удаление акцентов из символов).Альтернативой хранилищу RAW / BLOB является преобразование байтов в шестнадцатеричное представление, но это тратит много памяти, поэтому я бы не рекомендовал это делать.
Итак, первый шаг - определить, хранятся ли данные Oracle.как RAW / BLOB, HEX или использовали ли они VARCHAR2 и использовали ли они одинаковый набор символов, чтобы избежать проблем с конвертацией.Если последнее, определите набор символов базы данных (администратор БД должен быть в состоянии получить это из v $ nls_parameters, если он не знает его из рук вон).
В основном вам нужно убедиться, что точно такие же байтывыталкиваются в алгоритм расшифровки, как были извлечены из базы данных.В зависимости от архитектуры вы можете просто выполнить
SELECT расшифровать (encrypted_column,: key_variable) FROM table WHERE id = ....;