Dbms_crypto_toolkit

The oracle database is dose have the package specification after installing all dbms packges but for this package it doesnot have a package body and so some stored procedures reffering to DBMS_CRYPTO_TOOLKIT packge cant compile or raise a reutime exception...

DBMS_CRYPTO_TOOLKIT is undocumented. That means that Oracle is perfectly free to change the interface any time it wants. And it means that it has probably not been regression tested for general purpose use. So it would be inappropriate to write code that referenced this package, particularly because you are dealing with encryption which implies you are trying to secure your data. The last thing you would want is for Oracle to tweak something in this package on a patch release and to have that make all your encrypted data unencryptable. Or to break your encryption and decryption routines. Or to find out that Oracle had never tested the code path that you happened to use.
Justin

Similar Messages

  • DBMS_CRYPTO_TOOLKIT in 10g?

    This was posted in the Security forum a week or so back, but has had no response. Perhaps one of the Oracle DB Product Managers could respond...
    Can anyone clarify the current state of DBMS_CRYPTO_TOOLKIT in 10g? It is still in 10gDB, but not documented, and appears to require the Oracle Security Server. Has this package been updated under the hood to work with Identity Management / Certificate Authority?
    I am trying to find the "least headache" approach to PKI (RSA) encryption in the DB. While integration all the way up the stack to SSO and certificates would be nice, it is not really necessary in this context. I can certainly use Java Stored Procedures that implement RSA, but that would not even come close to the speed of the native FFIs that were used with DBMS_CRYPTO_TOOLKIT.
    Bottom Line :
    1) Is anyone doing RSA in the database using DBMS_CRYPTO_TOOLKIT?
    2) Does anyone have a workable alternative using native PL/SQL, Java Stored Procedures or C? (I am aware of DBCrypt, but it is a fairly "canned" system and appears to lack the flexibility I need)

    Hi, both the "dbms_obfuscation_toolkit" and "dbms_crypto" are available and functioning in 10g, but "dbms_crypto" should be used. See this link for details:
    http://download-west.oracle.com/docs/cd/B14117_01/network.101/b10773/apdvncrp.htm#1006258
    Cheers, Peter

  • ERROR EXECUTE DBMS_CRYPTO_TOOLKIT

    Hello,
    I installed Oracle Crypographic Toolkit. This package has procedures that i need like SignDetached and VerifyDetached.
    the installation was successful and and no invalid packages
    I have one certificate intall in oracle Wallet which i need to verify digitally signatures.
    The oracle version is 10.2.0.1 and my problem is:
    SQL> EXEC dbms_crypto_toolkit.Initialize;
    BEGIN dbms_crypto_toolkit.Initialize; END;
    ERROR en línea 1:
    ORA-28817: La función PL/SQL ha devuelto un error.
    ORA-06512: en "SYS.DBMS_CRYPTO_TOOLKIT_FFI", línea 6
    ORA-06512: en "SYS.DBMS_CRYPTO_TOOLKIT", línea 43
    ORA-06512: en línea 1
    anyone knows the solution. I have searched everywhere and have not seen anything?

    This code article in metalink is for DBMS_CRYPTO. My error is using DBMS_CRYPTO_TOOLKIT
    I'm using DBMS_CRYPTO_TOOLKIT because i need verify digital signature using certificates stores in Oracle Wallet.
    DBMS_CRYPTO can't verify digital signature using certificates.
    Know someone verifiy digital signature with certificates stores in Oracle Wallet usign DBMS_CRYPTO?

  • Dbms_crypto_toolkit documentation?

    Is there any documentation available for the dbms_crypto_toolkit? Or is this package internal use only?

    DBMS_CRYPTO_TOOLKIT is undocumented. That means that Oracle is perfectly free to change the interface any time it wants. And it means that it has probably not been regression tested for general purpose use. So it would be inappropriate to write code that referenced this package, particularly because you are dealing with encryption which implies you are trying to secure your data. The last thing you would want is for Oracle to tweak something in this package on a patch release and to have that make all your encrypted data unencryptable. Or to break your encryption and decryption routines. Or to find out that Oracle had never tested the code path that you happened to use.
    Justin

  • Third try: DBMS_CRYPTO_TOOLKIT -- is it supported in 10g?

    Still waiting for an answer. This question has been posted several times in several different forums:
    What is the state of DBMS_CRYPTO_TOOLKIT in 10g -- is it supported or not? Is it functional or not?
    See :
    RSA / PKI encryption in the database

    Hi, both the "dbms_obfuscation_toolkit" and "dbms_crypto" are available and functioning in 10g, but "dbms_crypto" should be used. See this link for details:
    http://download-west.oracle.com/docs/cd/B14117_01/network.101/b10773/apdvncrp.htm#1006258
    Cheers, Peter

  • EXPDP error - ORA-39126: Worker unexpected fatal error in KUPW$WORKER.UNLOA

    Greetings All,
    Oracle 11g (11.2.0.0) on Windows 2008 R2
    I am getting the error below during a schema export of just 1 particular schema. Other schema expdp’s don’t encounter this problem.
    Processing object type SCHEMA_EXPORT/PACKAGE/PACKAGE_BODY
    Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT
    ORA-39126: Worker unexpected fatal error in KUPW$WORKER.UNLOAD_METADATA [REF_CONSTRAINT:"CM_MASTER"."PPY_PEN_FK"]
    ORA-04063: package body "XDB.DBMS_XDBUTIL_INT" has errors
    ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
    ORA-06512: at "SYS.KUPW$WORKER", line 8165
    ----- PL/SQL Call Stack -----
      object      line  object
      handle    number  name
    000000047B38A000     18990  package body SYS.KUPW$WORKER
    000000047B38A000      8192  package body SYS.KUPW$WORKER
    000000047B38A000      2823  package body SYS.KUPW$WORKER
    000000047B38A000      8847  package body SYS.KUPW$WORKER
    000000047B38A000      1649  package body SYS.KUPW$WORKER
    000000047A576CD0         2  anonymous block
    Job "CM_MASTER"."EXP_CM_MASTER" stopped due to fatal error at 17:11:30I have deleted the identified constraint, but then errors out again on another constraint.
    I have found a tentative resolution for the ORA-39126 error (delete database stats, then gather database stats) but have not done so yet.
    I have tried deleting the statistics for just the schema (cm_master), and then re-gathered stats for the same schema. Still get the error.
    I am concerned about the ORA-04063: package body “XDB.DBMS_XDBUTIL_INT” has errors.
    I have unlocked and set new password for the XDB user, but am not able to logon as XDB to re-compile the package body in question.
    We had some maintenance applied over the weekend that “revoked execute from public” on the following packages:
    dbms_datapump
    dbms_crypto
    dbms_crypto_toolkit
    dbms_java_test
    dbms_random
    dbms_sql
    utl_file
    utl_http
    utl_mail
    utl_smtp
    utl_tcpThe user performing the export with the problem (cm_master) was then granted execute back on the following packages:
    dbms_datapump
    dbms_crypto
    dbms_random
    dbms_sql
    utl_file
    utl_http
    utl_mail
    (not: dbms_crypto_toolkit, dbms_java_test,  utl_smtp, utl_tcp,)Other schemas were granted execute on the following packages and are NOT having expdp problems:
    dbms_datapump
    dbms_sql
    utl_file
    utl_http
    utl_mail
    (not: dbms_crypto, dbms_crypto_toolkit, dbms_random, utl_smtp, utl_tcp )I don't think the public revokes are causing this error because the "Other schemas" do not have this error and were not specifically granted back all of the public revokes that cm_master received back.
    I appreciate any suggestions.
    Thanks for your time,
    Bob
    Edited by: Snyds on Jun 5, 2012 10:03 AM

    rjamya,
    I checked dba_registry, all 18 rows returned are VALID.
    I attempted to compile the package body identified in the error messages:
    ORA-04063: package body "XDB.DBMS_XDBUTIL_INT" has errorswith
    alter package xdb.dbms_xdbutil_int compile body;I got thje following results
    Error starting at line 60 in command:
    alter package xdb.dbms_xdbutil_int compile body
    Error report:
    SQL Command: package XDB.DBMS_XDBUTIL_INT
    Failed: ORA-24344: success with compilation error
    24344. 00000 -  "success with compilation error"
    *Cause:    A sql/plsql compilation error occurred.
    *Action:   Return OCI_SUCCESS_WITH_INFO along with the error code
    package XDB.DBMS_XDBUTIL_INT altered.Any other suggestions regarding how to resolve errors in the XDB.DBMS_ packages?
    I also tried granting CM_MASTER execute on the packages that I revoked execute to PUBLIC on, with no effect.
    I tried “exclude=REF_CONSTRAINT” on the export, the problem seemed to move to the next section:
    Estimate in progress using BLOCKS method...
    Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
    Total estimation using BLOCKS method: 96.31 MB
    Processing object type SCHEMA_EXPORT/USER
    Processing object type SCHEMA_EXPORT/SYSTEM_GRANT
    Processing object type SCHEMA_EXPORT/ROLE_GRANT
    Processing object type SCHEMA_EXPORT/DEFAULT_ROLE
    Processing object type SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
    Processing object type SCHEMA_EXPORT/DB_LINK
    Processing object type SCHEMA_EXPORT/SEQUENCE/SEQUENCE
    Processing object type SCHEMA_EXPORT/TABLE/TABLE
    Processing object type SCHEMA_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT
    Processing object type SCHEMA_EXPORT/TABLE/INDEX/INDEX
    Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
    Processing object type SCHEMA_EXPORT/TABLE/COMMENT
    Processing object type SCHEMA_EXPORT/PACKAGE/PACKAGE_SPEC
    Processing object type SCHEMA_EXPORT/FUNCTION/FUNCTION
    Processing object type SCHEMA_EXPORT/PACKAGE/COMPILE_PACKAGE/PACKAGE_SPEC/ALTER_PACKAGE_SPEC
    Processing object type SCHEMA_EXPORT/FUNCTION/ALTER_FUNCTION
    Processing object type SCHEMA_EXPORT/VIEW/VIEW
    Processing object type SCHEMA_EXPORT/PACKAGE/PACKAGE_BODY
    ORA-39126: Worker unexpected fatal error in KUPW$WORKER.UNLOAD_METADATA [PACKAGE_BODY:"CM_MASTER"."SR_MAINTENANCE"]
    ORA-04063: package body "XDB.DBMS_XDBUTIL_INT" has errors
    ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
    ORA-06512: at "SYS.KUPW$WORKER", line 8165
    ----- PL/SQL Call Stack -----
      object      line  object
      handle    number  name
    000000047B38A000     18990  package body SYS.KUPW$WORKER
    000000047B38A000      8192  package body SYS.KUPW$WORKER
    000000047B38A000      2823  package body SYS.KUPW$WORKER
    000000047B38A000      8847  package body SYS.KUPW$WORKER
    000000047B38A000      1649  package body SYS.KUPW$WORKER
    000000047A576CD0         2  anonymous block
    Job "CM_MASTER"."EXP_CM_MASTER" stopped due to fatal error at 19:36:23I tried the suggestion from my Google-ing, drop database statistics, then gather database statistics. No effect, same error.
    I also tried granting CM_MASTER execute on the packages that I revoked execute to PUBLIC on, with no effect.
    Again what seems odd is that I can export other schemas without errors.
    Any other suggestions, please.
    Thanks,
    Bob
    Edited by: Snyds on Jun 5, 2012 12:04 PM

  • Error from dbms_random package

    I have tried unsuccessfully to get the dbms_random package installed. This is my latest error message. Can anyone help me out?
    call dbms_random.initialize(12345)
    ERROR at line 1:
    ORA-04068: existing state of packages has been discarded
    ORA-04063: package body "SYS.DBMS_CRYPTO_TOOLKIT" has errors
    ORA-06508: PL/SQL: could not find program unit being called
    ORA-06512: at "SYS.DBMS_RANDOM", line 19
    ORA-06512: at line 1
    null

    If you are running Oracle8 Release 8.0.3, DBMS_RANDOM may not have been installed in your database. In this case, you need to execute the following scripts in the specified order from within your SYS account: dbmsoctk.sql, prvtoctk.plb, and finally dbmsrand.sql (it contains both the package specification and body for DBMS_RANDOM).
    Good Luck

  • Dbms_random distribution

    What number distribution does the random number generator in the dbms_random package produce?

    Michael Peddemors (guest) wrote:
    : Is the DBMS_RANDOM package included in the 8.0.5 distribution?
    : My calls to it are the typical..
    : PLS-00201: identifier 'DBMS_RANDOM.INITIALIZE' must be declared
    Okay, Thanks, found that $ORACLE_HOME/rdbms/admin/dbmsrand.sql
    and ran it but.. it required the dbms_crypto_toolkit
    So, I found dbmsoctk.sql but it has no function body
    ORA-04068: existing state of packages has been discarded
    ORA-04067: not executed, package body "SYS.DBMS_CRYPTO_TOOLKIT"
    does not exist
    ORA-06508: PL/SQL: could not find program unit being called
    ORA-06512: at "SYS.DBMS_RANDOM", line 19
    ORA-06512: at line 7
    Did a grep of all the .sql files and found few bodies, EXCEPT in
    the dbmsrand.sql...
    But it requires this.. anyone??
    null

  • How to use DBMS_RANDOM

    I use The ORACLE version is 8.05 and the OS is win2000 server.
    I want to know execute DBMS_RANDOM, it must be installed what
    associated packages? And before this i run the script
    dbmsoctk.sql and dbmsrand.sql and grant execute privilege to the
    user, Why when I Execute the procedure randomdata the ORACLE
    tell me the package body "SYS.DBMS_CRYPTO_TOOLKIT" not exist?
    Urgent! Pls help me!

    If you can find later versions of dbmsrand.sql, they don't
    require that package. Or you could use
    http://burtleburtle.net/bob/other/rnd.sql
    which is similar to the later versions.

  • Hashing a string

    Using Oracle 10g R2.
    I want to hash a string using SHA-1 and the documentation that comes with 10g R2 talks about using the DBMS_CRYPTO package. It apparently has a nice little Hash function where you pass it your string and the type of crypto you want to use.
    Unfortunately there isn't a DBMS_CRYPTO package.
    There is however a DBMS_CRYPTO_TOOLKIT package which also has a Hash function in it, but this seems to take a few more parameters including "Persona"'s etc. and there's no documentation on this package included in the Oracle documentation.
    All I want to do is generate a SHA-1 hash value for a string.
    Can anyone give me any pointers please.
    Cheers

    Through both TOAD and SQL*Plus (logged on as sys user) it doesn't exist...
    (output from SQL Plus session)
    SQL> exec dbms_crypto.hash('a');
    BEGIN dbms_crypto.hash('a'); END;
    ERROR at line 1:
    ORA-06550: line 1, column 7:
    PLS-00201: identifier 'DBMS_CRYPTO' must be declared
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    SQL> exec dbms_crypto_toolkit.hash('a');
    BEGIN dbms_crypto_toolkit.hash('a'); END;
    ERROR at line 1:
    ORA-06550: line 1, column 7:
    PLS-00306: wrong number or types of arguments in call to 'HASH'
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignoredThe dbms_crypto_toolkit exists, but not the dbms_crypto package.

  • Too many tables with EXECUTE permision

    Hi Gurus,
    I found that my live databases has too many tables with EXECUTE permision. But I dont know how it happens: my query as follows:
    select table_name
    from dba_tab_privs
    where owner='SYS' AND
    privilege = 'EXECUTE' AND
    grantee = 'PUBLIC'
    result
    TABLE_NAME
    /598cc2d9_AWExceptionMessageRe
    /24bd47b0_AWExceptionMessageRe
    /b99e8561_AWExceptionMessageRe
    /968869b8_AWExceptionMessageRe
    /f8bf68b3_AWExceptionMessageRe
    /9abd5a42_AWExceptionMessageRe
    /5e83964b_AWExceptionMessageRe
    /f01cb9e5_AWExceptionMessageRe
    /380f765f_AWExpressCommandExce
    /adef78c4_AWMemberExistsExcept
    /5166f5c2_AWObjectExistsExcept
    TABLE_NAME
    oracle/AWXML/SparseDefinition
    oracle/AWXML/ModelDimRef
    /9d17934e_AWFunctionNotSupport
    /d18d9de8_AWHandlerBaseTest
    DBMS_AW_XML
    INTERACTIONEXECUTE
    CWM2_OLAP_INSTALLER
    DBMS_XSOQ_ODBO
    OLAPI_MDX_ROWSET_IMPL_T
    OLAPI_MDX_ROWSET_TABLE
    16444 rows selected.
    ==========================================================
    Then I execute above query in other database. result was:
    TABLE_NAME
    STANDARD
    UTL_HTTP
    DBMS_PICKLER
    DBMS_JAVA_TEST
    UTL_FILE
    UTL_RAW
    UTL_TCP
    UTL_INADDR
    UTL_SMTP
    DBMS_TRANSACTION
    DBMS_SESSION
    DBMS_DDL
    DBMS_UTILITY
    DBMS_SPACE
    DBMS_ROWID
    DBMS_PCLXUTIL
    DBMS_APPLICATION_INFO
    DBMS_OUTPUT
    DBMS_DESCRIBE
    DBMS_SQL
    DBMS_EXPORT_EXTENSION
    DBMS_JOB
    DBMS_STATS
    DBMS_ZHELP_IR
    DBMS_PSP
    DBMS_RULE
    AQ$_AGENT
    AQ$_DEQUEUE_HISTORY
    AQ$_SUBSCRIBERS
    AQ$_RECIPIENTS
    AQ$_HISTORY
    AQ$_NOTIFY_MSG
    AQ$_DUMMY_T
    DBMS_AQ_EXP_QUEUE_TABLES
    DBMS_AQ_EXP_INDEX_TABLES
    DBMS_AQ_EXP_TIMEMGR_TABLES
    DBMS_AQ_EXP_HISTORY_TABLES
    DBMS_AQ_EXP_SUBSCRIBER_TABLES
    DBMS_AQ_EXP_QUEUES
    DBMS_AQ_IMP_INTERNAL
    DBMS_RMIN
    DBMS_RESOURCE_MANAGER
    DBMS_RESOURCE_MANAGER_PRIVS
    DBMS_RMGR_PLAN_EXPORT
    DBMS_RMGR_GROUP_EXPORT
    DBMS_RMGR_PACT_EXPORT
    LOW_GROUP
    DEFAULT_CONSUMER_GROUP
    DBMS_DEBUG_VC2COLL
    DBMS_DEBUG
    PBSDE
    DBMS_SUMMARY
    DBMS_SNAPSHOT
    DBMS_REFRESH
    DBMS_SNAPSHOT_UTL
    DBMS_REFRESH_EXP_SITES
    DBMS_REFRESH_EXP_LWM
    DBMS_TRACE
    DBMS_LOB
    UTL_REF
    UTL_COLL
    ODCIPREDINFO
    ODCIRIDLIST
    ODCIINDEXCTX
    ODCIARGDESCLIST
    ODCIFUNCINFO
    ODCISTATSOPTIONS
    ODCICOLINFOLIST
    ODCIOBJECT
    ODCIOBJECTLIST
    ODCIQUERYINFO
    ODCICONST
    SYSEVENT
    DICTIONARY_OBJ_TYPE
    DICTIONARY_OBJ_OWNER
    DICTIONARY_OBJ_NAME
    DATABASE_NAME
    INSTANCE_NUM
    LOGIN_USER
    IS_SERVERERROR
    SERVER_ERROR
    DES_ENCRYPTED_PASSWORD
    IS_ALTER_COLUMN
    IS_DROP_COLUMN
    GRANTEE
    REVOKEE
    PRIVILEGE_LIST
    WITH_GRANT_OPTION
    DICTIONARY_OBJ_OWNER_LIST
    DICTIONARY_OBJ_NAME_LIST
    IS_CREATING_NESTED_TABLE
    CLIENT_IP_ADDRESS
    DBMS_REPUTIL
    DBMS_REPUTIL2
    DBMS_OFFLINE_RGT
    DBMS_REPCAT_RGT_EXP
    DBMS_REPCAT_INSTANTIATE
    DBMS_CRYPTO_TOOLKIT
    DBMS_RANDOM
    how come it happens? need help from u all !!!!!!!!!!

    you asked why you have such grant found in dba_tab_privs. Let's try to find DBMS_RANDOM (listed on your output) in $ORACLE_HOME/rdbms/admin:
    cd $ORACLE_HOME/rdbms/admin
    grep dbms_random *
    dbmsrand.sql:CREATE OR REPLACE PACKAGE dbms_random AS
    dbmsrand.sql: -- execute dbms_random.seed(12345678);
    dbmsrand.sql: -- execute dbms_random.seed(TO_CHAR(SYSDATE,'MM-DD-YYYY HH24:MI:SS'));
    dbmsrand.sql: -- my_random_number := dbms_random.random;
    dbmsrand.sql: -- my_random_real := dbms_random.value;
    dbmsrand.sql: -- select dbms_random.value from dual;
    dbmsrand.sql: -- insert into a values (dbms_random.value);
    dbmsrand.sql: -- execute :x := dbms_random.value;
    dbmsrand.sql:END dbms_random;
    dbmsrand.sql:CREATE OR REPLACE PACKAGE BODY dbms_random AS
    dbmsrand.sql:END dbms_random;
    dbmsrand.sql:CREATE OR REPLACE PUBLIC SYNONYM dbms_random FOR sys.dbms_random;
    dbmsrand.sql:GRANT EXECUTE ON dbms_random TO public;
    This is run by catproc.sql script which you run while creating database.

Maybe you are looking for