質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Windows 7

Microsoft Windows 7は過去にリリースされたMicrosoft WindowsのOSであり、Windows8の1代前です。2009年の7月にリリースされ販売されました。Windows7の前はWindowsVistaで、その更に3年前にリリースされました。

Oracle Database 11g

Oracle DatabaseはRDBMSの商品です。具体的な発売商品として知られているのが、 Oracle9i、Oracle10g、Oracle 11gとOracle 12cです。

Q&A

解決済

1回答

6912閲覧

Oracle 11g AESで復号化できない

doumeishi

総合スコア52

Windows 7

Microsoft Windows 7は過去にリリースされたMicrosoft WindowsのOSであり、Windows8の1代前です。2009年の7月にリリースされ販売されました。Windows7の前はWindowsVistaで、その更に3年前にリリースされました。

Oracle Database 11g

Oracle DatabaseはRDBMSの商品です。具体的な発売商品として知られているのが、 Oracle9i、Oracle10g、Oracle 11gとOracle 12cです。

0グッド

0クリップ

投稿2016/01/08 07:42

Windowsのoracle 11g 32bit
で、AESで暗号化されたフィールドを復号化しようとしているのですが、エラーがでて
SQLの結果がでません。
これを回避するにはどうしたらよいでしょうか。
下記のSQLは、UTL_I18N.RA...の部分を除くとちゃんと結果が帰ってきます。

SELECT MST_USER.user_id, MST_USER.login_id, MST_USER.password, MST_USER.access_id, MST_USER.group_id, MST_USER.auth_lock_flag,
UTL_I18N.RAW_TO_CHAR(
DBMS_CRYPTO.DECRYPT(
src => MST_USER.user_name,
typ => 8 + 256 + 4096,
key => UTL_I18N.STRING_TO_RAW(RPAD('xxxx',32, CHR(0)), 'AL32UTF8')
), 'AL32UTF8')
as user_name FROM MST_USER LEFT JOIN TBL_STORE ON TBL_STORE.user_id = MST_USER.user_id LEFT JOIN MST_COMPANY ON MST_COMPANY.company_kameiten_id = MST_USER.company_kameiten_id AND MST_COMPANY.status < 91 LEFT JOIN MST_STORE ON MST_STORE.store_kameiten_id = TBL_STORE.store_kameiten_id AND MST_STORE.status < 91 WHERE MST_USER.login_id = 'admin' AND MST_USER.status < 91 AND ( ((MST_USER.access_id = '6' OR MST_USER.access_id = '7') AND MST_COMPANY.status < 91 AND MST_STORE.status < 91) OR (MST_USER.access_id = '5' AND MST_COMPANY.status < 91) OR (MST_USER.access_id = '4' AND MST_STORE.status < 91) OR (MST_USER.access_id < '4' OR MST_USER.access_id = '8') )
;

ORA-28817: PL/SQLファンクションからエラーが戻されました。
ORA-06512: "SYS.DBMS_CRYPTO_FFI", 行67
ORA-06512: "SYS.DBMS_CRYPTO", 行44
ORA-06512: 行1

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

matobaa

2016/01/13 03:30 編集

すいません、見にくいので、お手数ですが SQLの部分を ```sql と ``` で囲ってもらえませんか。 ```sql select * from dual; ``` みたいに あと可能であれば、質問に関係のなさそうな LEFT JOIN とかは外していただけると。
guest

回答1

0

自己解決

復号化残念ですが、あきらめたので、この件、クローズにさせていただきます。
すみません。

投稿2016/01/13 03:30

doumeishi

総合スコア52

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問